/* ========================================
   GSTG - 全站主样式 (Part 1: Base & Layout)
   全国权威AI商业信源服务平台
   ======================================== */

:root {
  --color-primary: #1A365D;
  --color-primary-light: #2A4A7D;
  --color-primary-dark: #0F2440;
  --color-accent: #D69E2E;
  --color-accent-light: #E6B03A;
  --color-accent-dark: #B08020;
  --color-bg: #F5F7FA;
  --color-surface: #FFFFFF;
  --color-text-primary: #1A202C;
  --color-text-secondary: #4A5568;
  --color-text-muted: #718096;
  --color-border: #E2E8F0;
  --color-success: #38A169;
  --color-danger: #E53E3E;
  --shadow-sm: 0 1px 3px rgba(26, 54, 93, 0.06);
  --shadow-md: 0 2px 8px rgba(26, 54, 93, 0.08);
  --shadow-lg: 0 4px 16px rgba(26, 54, 93, 0.12);
  --shadow-gold: 0 2px 12px rgba(214, 158, 46, 0.2);
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 12px;
  --transition-base: 0.3s ease-in-out;
  --font-base: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", -apple-system, BlinkMacSystemFont, sans-serif;
  --container-max: 1200px;
  --nav-height: 64px;
  --nav-height-mobile: 56px;
}

/* ========== 找客户页 Hero 统一风格 ========== */
.cust-hero {
  padding: 48px 0 40px;
}
.cust-hero .chi-title {
  font-size: 36px;
  background: linear-gradient(135deg, #ffffff 0%, #E6F0FF 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.cust-hero .csb-factory .csb-btn {
  min-width: 110px;
  font-size: 15px;
  font-weight: 600;
}
.cust-hero .chi-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.cust-hero .chi-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 14px;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 20px;
  font-size: 12px;
  color: rgba(255,255,255,0.9);
  backdrop-filter: blur(10px);
}
.cust-hero .chi-badge i {
  font-style: normal;
  font-size: 14px;
}
.cust-hero .chjc-btn {
  width: 100%;
  height: 46px;
  border: none;
  border-radius: 10px;
  background: linear-gradient(135deg, #155DFC 0%, #08A9F4 100%);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(21, 93, 252, 0.3);
}
.cust-hero .chjc-btn:hover { box-shadow: 0 6px 20px rgba(21, 93, 252, 0.4);
}

/* 找客户页 列表区优化 */
.cust-hero + .list-ai-banner { margin-top: 0; }

@media (max-width: 1023px) {
  .cust-hero { padding: 32px 0 24px; }
  .cust-hero .chi-title { font-size: 28px; }
}
@media (max-width: 767px) {
  .cust-hero { padding: 24px 0 20px; }
  .cust-hero .chi-title { font-size: 22px; }
  .cust-hero .chi-badges { gap: 6px; }
  .cust-hero .chi-badge { padding: 4px 10px; font-size: 11px; }
}

*,*::before,*::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: var(--font-base);
  font-size: 14px;
  line-height: 1.6;
  color: var(--color-text-primary);
  background-color: var(--color-bg);
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; transition: color var(--transition-base); }
a:hover { color: var(--color-accent); }
img { max-width: 100%; display: block; }
ul,ol { list-style: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; }
h1,h2,h3,h4,h5,h6 { font-weight: 700; color: var(--color-primary); line-height: 1.3; }
h1 { font-size: 32px; } h2 { font-size: 24px; } h3 { font-size: 20px; } h4 { font-size: 16px; }

.container { max-width: var(--container-max); margin: 0 auto; padding: 0 20px; }

/* Header & Nav */
.site-header {
  position: fixed; top: 0; left: 0; right: 0;
  height: var(--nav-height);
  background-color: var(--color-primary);
  z-index: 1000;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  transition: background-color var(--transition-base);
}
.site-header.scrolled { background-color: rgba(26,54,93,0.98); box-shadow: 0 4px 12px rgba(0,0,0,0.2); }
.nav-container {
  max-width: var(--container-max); margin: 0 auto; padding: 0 20px; height: 100%;
  display: flex; align-items: center; justify-content: space-between;
}
.logo {
  display: flex; align-items: center; gap: 10px;
  color: #fff; font-size: 22px; font-weight: 700; letter-spacing: 1px;
}
.logo-mark {
  width: 36px; height: 36px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-light));
  border-radius: var(--radius-md);
  display: flex; align-items: center; justify-content: center;
  color: var(--color-primary-dark); font-size: 18px; font-weight: 800;
}
.logo-text { color: #fff; }
.logo-text span { color: var(--color-accent); }
.main-nav { display: flex; align-items: center; gap: 4px; }
.main-nav a {
  color: rgba(255,255,255,0.85);
  padding: 8px 16px; font-size: 15px;
  border-radius: var(--radius-sm);
  transition: all var(--transition-base);
}
.main-nav a:hover, .main-nav a.active {
  color: var(--color-accent);
  background-color: rgba(214,158,46,0.1);
}
.nav-actions { display: flex; align-items: center; gap: 12px; }

.btn {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 0 20px; height: 36px;
  border-radius: var(--radius-md);
  font-size: 14px; font-weight: 500;
  transition: all var(--transition-base);
  cursor: pointer; border: 1px solid transparent;
}
.btn-primary { background-color: var(--color-accent); color: var(--color-primary-dark); }
.btn-primary:hover { background-color: var(--color-accent-light); color: var(--color-primary-dark); }
.btn-secondary { background-color: transparent; color: #fff; border-color: rgba(255,255,255,0.3); }
.btn-secondary:hover { border-color: var(--color-accent); color: var(--color-accent); }
.btn-outline { background-color: #fff; color: var(--color-primary); border: 1px solid var(--color-border); }
.btn-outline:hover { border-color: var(--color-accent); color: var(--color-accent); }
.btn-sm { height: 32px; padding: 0 14px; font-size: 13px; }
.btn-lg { height: 44px; padding: 0 28px; font-size: 16px; }

.menu-toggle {
  display: none;
  width: 40px; height: 40px;
  flex-direction: column; align-items: center; justify-content: center; gap: 5px;
  cursor: pointer;
}
.menu-toggle span {
  display: block; width: 22px; height: 2px;
  background-color: #fff; border-radius: 1px;
  transition: all var(--transition-base);
}
.menu-toggle.active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.menu-toggle.active span:nth-child(2) { opacity: 0; }
.menu-toggle.active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.page-wrapper { padding-top: var(--nav-height); min-height: 100vh; display: flex; flex-direction: column; }
main { flex: 1; }

/* Hero */
.hero {
  background: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 50%, var(--color-primary-light) 100%);
  padding: 60px 0 80px;
  position: relative; overflow: hidden;
}
.hero::before {
  content: ''; position: absolute; top: 0; right: 0;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(214,158,46,0.15) 0%, transparent 70%);
  transform: translate(30%, -30%);
  pointer-events: none;
}
.hero-content { position: relative; z-index: 1; }
.hero h1 { color: #fff; font-size: 42px; margin-bottom: 16px; letter-spacing: 1px; }
.hero h1 .accent { color: var(--color-accent); }
.hero-subtitle { color: rgba(255,255,255,0.75); font-size: 18px; margin-bottom: 32px; max-width: 600px; }
.hero-stats { display: flex; gap: 40px; margin-top: 40px; }
.hero-stat-num { font-size: 32px; font-weight: 700; color: var(--color-accent); line-height: 1; }
.hero-stat-label { font-size: 13px; color: rgba(255,255,255,0.6); margin-top: 6px; }
.hero-search {
  max-width: 600px;
  display: flex;
  background: #fff;
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0,0,0,0.2);
}
.hero-search input {
  flex: 1; padding: 0 20px; height: 52px;
  border: none; outline: none;
  font-size: 15px; color: var(--color-text-primary);
  font-family: inherit;
}
.hero-search button {
  width: 120px; height: 52px;
  background-color: var(--color-accent);
  color: var(--color-primary-dark);
  font-size: 16px; font-weight: 600;
  border: none; cursor: pointer;
  transition: background-color var(--transition-base);
}
.hero-search button:hover { background-color: var(--color-accent-light); }

/* Sections */
.section { padding: 56px 0; }
.section-bg { background-color: var(--color-surface); }
.section-header {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 28px;
}
.section-title-wrap { display: flex; align-items: center; gap: 12px; }
.section-title-bar {
  width: 4px; height: 24px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-accent-dark));
  border-radius: 2px;
}
.section-title { font-size: 24px; color: var(--color-primary); margin: 0; }
.section-subtitle { font-size: 14px; color: var(--color-text-muted); margin-top: 4px; }
.section-more { color: var(--color-text-secondary); font-size: 14px; display: flex; align-items: center; gap: 4px; }
.section-more:hover { color: var(--color-accent); }

/* Industry quick entries */
.industry-grid { display: grid; grid-template-columns: repeat(8, 1fr); gap: 16px; }
.industry-item {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 20px 12px;
  text-align: center;
  transition: all var(--transition-base);
  border: 1px solid var(--color-border);
}
.industry-item:hover { box-shadow: var(--shadow-lg);
  border-color: var(--color-accent);
}
.industry-icon {
  width: 48px; height: 48px;
  margin: 0 auto 12px;
  background: linear-gradient(135deg, rgba(26,54,93,0.08), rgba(214,158,46,0.08));
  border-radius: var(--radius-md);
  display: flex; align-items: center; justify-content: center;
  font-size: 24px;
}
.industry-name { font-size: 14px; color: var(--color-text-primary); font-weight: 500; }

/* Badges & Tags */
.rank-badge {
  display: inline-flex; align-items: center; justify-content: center;
  width: 32px; height: 32px;
  border-radius: 50%;
  font-size: 14px; font-weight: 700;
  color: #fff; flex-shrink: 0;
}
.rank-1 { background: linear-gradient(135deg, #FFD700, #DAA520); box-shadow: 0 2px 6px rgba(255,215,0,0.4); color: var(--color-primary-dark); }
.rank-2 { background: linear-gradient(135deg, #C0C0C0, #808080); box-shadow: 0 2px 6px rgba(192,192,192,0.4); }
.rank-3 { background: linear-gradient(135deg, #CD7F32, #8B4513); box-shadow: 0 2px 6px rgba(205,127,50,0.4); }
.rank-default { background-color: var(--color-text-muted); color: #fff; }

.cert-badge {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 2px 8px;
  background: linear-gradient(135deg, rgba(214,158,46,0.15), rgba(214,158,46,0.05));
  border: 1px solid var(--color-accent);
  border-radius: var(--radius-sm);
  font-size: 11px; color: var(--color-accent-dark);
  font-weight: 600;
}
.cert-badge::before {
  content: '\2713';
  display: inline-flex; align-items: center; justify-content: center;
  width: 14px; height: 14px;
  border-radius: 50%;
  background-color: var(--color-accent);
  color: #fff; font-size: 9px;
}

.tag {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 999px;
  font-size: 12px; font-weight: 500; line-height: 1.6;
}
.tag-gold { background-color: rgba(214,158,46,0.12); color: var(--color-accent-dark); }
.tag-green { background-color: rgba(56,161,105,0.12); color: var(--color-success); }
.tag-blue { background-color: rgba(26,54,93,0.1); color: var(--color-primary); }
.tag-red { background-color: rgba(229,62,62,0.1); color: var(--color-danger); }
.tag-gray { background-color: var(--color-border); color: var(--color-text-secondary); }

/* Brand cards */
.brands-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.brand-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 24px 20px;
  border: 1px solid var(--color-border);
  transition: all var(--transition-base);
  position: relative; overflow: hidden;
}
.brand-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-accent-light));
  transform: scaleX(0); transform-origin: left;
  transition: transform var(--transition-base);
}
.brand-card:hover { box-shadow: var(--shadow-lg); border-color: var(--color-accent); }
.brand-card:hover::before { transform: scaleX(1); }
.brand-card-top { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.brand-logo {
  width: 48px; height: 48px;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  display: flex; align-items: center; justify-content: center;
  color: var(--color-accent); font-size: 18px; font-weight: 700;
  flex-shrink: 0;
}
.brand-info h4 { font-size: 16px; color: var(--color-text-primary); margin-bottom: 4px; }
.brand-category { font-size: 12px; color: var(--color-text-muted); }
.brand-desc {
  font-size: 13px; color: var(--color-text-secondary);
  line-height: 1.6; margin-bottom: 16px;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden; min-height: 42px;
}
.brand-footer {
  display: flex; align-items: center; justify-content: space-between;
  padding-top: 12px; border-top: 1px solid var(--color-border);
}
.brand-score { font-size: 13px; color: var(--color-text-secondary); }
.brand-score strong { color: var(--color-accent); font-size: 16px; font-weight: 700; }

/* Factory cards */
.factories-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.factory-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  overflow: hidden;
  transition: all var(--transition-base);
}
.factory-card:hover { box-shadow: var(--shadow-lg); border-color: var(--color-accent); }
.factory-img {
  height: 160px;
  background: linear-gradient(135deg, var(--color-primary-light), var(--color-primary));
  display: flex; align-items: center; justify-content: center;
  color: var(--color-accent); font-size: 48px;
  position: relative;
}
.factory-badges { position: absolute; top: 12px; left: 12px; display: flex; gap: 6px; }
.factory-info { padding: 18px; }
.factory-name { font-size: 16px; font-weight: 600; color: var(--color-text-primary); margin-bottom: 8px; }
.factory-products { font-size: 13px; color: var(--color-text-secondary); margin-bottom: 12px; }
.factory-meta { display: flex; align-items: center; justify-content: space-between; font-size: 13px; }
.factory-location { color: var(--color-text-muted); display: flex; align-items: center; gap: 4px; }
.factory-price { color: var(--color-danger); font-weight: 600; }
.factory-price span { font-size: 11px; color: var(--color-text-muted); font-weight: 400; }

/* Property cards */
.properties-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.property-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  overflow: hidden;
  transition: all var(--transition-base);
}
.property-card:hover { box-shadow: var(--shadow-lg); border-color: var(--color-accent); }
.property-img {
  height: 180px;
  background: linear-gradient(135deg, #2A4A7D, #1A365D);
  display: flex; align-items: center; justify-content: center;
  color: var(--color-accent); font-size: 48px;
  position: relative;
}
.property-city {
  position: absolute; top: 12px; right: 12px;
  background: rgba(26,54,93,0.8);
  color: #fff; padding: 4px 10px;
  border-radius: var(--radius-sm); font-size: 12px;
}
.property-info { padding: 18px; }
.property-name { font-size: 16px; font-weight: 600; color: var(--color-text-primary); margin-bottom: 6px; }
.property-addr { font-size: 13px; color: var(--color-text-muted); margin-bottom: 12px; }
.property-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 14px; }
.property-footer {
  display: flex; align-items: center; justify-content: space-between;
  padding-top: 12px; border-top: 1px solid var(--color-border);
}
.property-price { color: var(--color-danger); font-size: 20px; font-weight: 700; }
.property-price small { font-size: 12px; font-weight: 400; color: var(--color-text-muted); margin-left: 2px; }
.property-type { font-size: 12px; color: var(--color-text-secondary); }

/* Franchise cards */
.franchises-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.franchise-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  overflow: hidden;
  transition: all var(--transition-base);
}
.franchise-card:hover { box-shadow: var(--shadow-lg); border-color: var(--color-accent); }
.franchise-top {
  padding: 20px;
  display: flex; align-items: center; gap: 14px;
  border-bottom: 1px solid var(--color-border);
}
.franchise-logo {
  width: 56px; height: 56px;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  display: flex; align-items: center; justify-content: center;
  color: var(--color-accent); font-size: 20px; font-weight: 700;
  flex-shrink: 0;
}
.franchise-title h4 { font-size: 16px; color: var(--color-text-primary); margin-bottom: 4px; }
.franchise-category { font-size: 12px; color: var(--color-text-muted); }
.franchise-body { padding: 16px 20px; }
.franchise-invest { display: flex; align-items: baseline; gap: 4px; margin-bottom: 12px; }
.franchise-invest .amount { font-size: 22px; font-weight: 700; color: var(--color-danger); }
.franchise-invest .unit { font-size: 13px; color: var(--color-text-secondary); }
.franchise-desc {
  font-size: 13px; color: var(--color-text-secondary); line-height: 1.6;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden; margin-bottom: 12px; min-height: 42px;
}
.franchise-stats {
  display: flex; gap: 16px;
  font-size: 12px; color: var(--color-text-muted);
  padding-top: 12px; border-top: 1px solid var(--color-border);
}
.franchise-stats span strong { color: var(--color-primary); font-weight: 600; }

/* Store cards */
.stores-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.store-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  padding: 20px;
  transition: all var(--transition-base);
  display: flex; gap: 14px;
}
.store-card:hover { box-shadow: var(--shadow-lg); border-color: var(--color-accent); }
.store-avatar {
  width: 64px; height: 64px;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--color-primary-light), var(--color-primary));
  display: flex; align-items: center; justify-content: center;
  color: var(--color-accent); font-size: 24px;
  flex-shrink: 0;
}
.store-content { flex: 1; min-width: 0; }
.store-name-row { display: flex; align-items: center; gap: 8px; margin-bottom: 6px; }
.store-name { font-size: 15px; font-weight: 600; color: var(--color-text-primary); }
.store-category { font-size: 12px; color: var(--color-text-muted); margin-bottom: 8px; }
.store-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.store-address { font-size: 12px; color: var(--color-text-muted); display: flex; align-items: center; gap: 4px; }
.store-rating { display: flex; align-items: center; gap: 4px; font-size: 13px; color: var(--color-accent); font-weight: 600; }

/* Association cards */
.associations-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.association-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 24px 20px;
  border: 1px solid var(--color-border);
  transition: all var(--transition-base);
  text-align: center;
}
.association-card:hover { box-shadow: var(--shadow-lg); border-color: var(--color-accent); }
.assoc-badge {
  width: 64px; height: 64px;
  margin: 0 auto 16px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 28px;
  box-shadow: var(--shadow-gold);
}
.assoc-name { font-size: 16px; font-weight: 600; color: var(--color-text-primary); margin-bottom: 6px; }
.assoc-type { font-size: 12px; color: var(--color-text-muted); margin-bottom: 12px; }
.assoc-cert { display: flex; justify-content: center; gap: 8px; margin-bottom: 14px; }
.assoc-stats {
  display: flex; justify-content: center; gap: 24px;
  padding-top: 14px; border-top: 1px solid var(--color-border);
}
.assoc-stat { text-align: center; }
.assoc-stat-num { font-size: 18px; font-weight: 700; color: var(--color-primary); }
.assoc-stat-label { font-size: 12px; color: var(--color-text-muted); }

/* News cards */
.news-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 20px; }
.news-card-featured {
  grid-row: span 2;
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  overflow: hidden;
  transition: all var(--transition-base);
}
.news-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  overflow: hidden;
  transition: all var(--transition-base);
}
.news-card:hover, .news-card-featured:hover { box-shadow: var(--shadow-lg);
  border-color: var(--color-accent);
}
.news-img {
  height: 200px;
  background: linear-gradient(135deg, var(--color-primary-light), var(--color-primary));
  display: flex; align-items: center; justify-content: center;
  color: var(--color-accent); font-size: 48px;
}
.news-card-featured .news-img { height: 240px; }
.news-content { padding: 18px; }
.news-category {
  display: inline-block;
  padding: 2px 10px;
  background-color: rgba(26,54,93,0.1);
  color: var(--color-primary);
  border-radius: 999px;
  font-size: 12px; font-weight: 500;
  margin-bottom: 10px;
}
.news-title {
  font-size: 16px; font-weight: 600; color: var(--color-text-primary);
  line-height: 1.5; margin-bottom: 10px;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden;
}
.news-card-featured .news-title { font-size: 20px; -webkit-line-clamp: 3; }
.news-summary {
  font-size: 13px; color: var(--color-text-secondary); line-height: 1.6;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden; margin-bottom: 12px;
}
.news-meta { display: flex; align-items: center; gap: 16px; font-size: 12px; color: var(--color-text-muted); }

/* List pages */
.page-header {
  background: linear-gradient(135deg, var(--color-primary-dark), var(--color-primary));
  padding: 40px 0;
  color: #fff;
}
.page-header h1, .page-header .ph-h1 { color: #fff; font-size: 32px; margin-bottom: 8px; }
.page-header p { color: rgba(255,255,255,0.7); font-size: 15px; }

.breadcrumb { padding: 16px 0; font-size: 13px; color: var(--color-text-muted); }
.breadcrumb a { color: var(--color-text-secondary); }
.breadcrumb a:hover { color: var(--color-accent); }
.breadcrumb .sep { margin: 0 8px; }

.filter-bar {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 20px 24px;
  margin-bottom: 24px;
  border: 1px solid var(--color-border);
}
.filter-row {
  display: flex; align-items: flex-start;
  padding: 10px 0;
  border-bottom: 1px dashed var(--color-border);
}
.filter-row:last-child { border-bottom: none; padding-bottom: 0; }
.filter-label {
  flex-shrink: 0; width: 80px;
  font-size: 14px; color: var(--color-text-secondary);
  font-weight: 500; padding-top: 4px;
}
.filter-options { flex: 1; display: flex; flex-wrap: wrap; gap: 8px; }
.filter-options a {
  padding: 4px 12px;
  font-size: 13px; color: var(--color-text-secondary);
  border-radius: var(--radius-sm);
  transition: all var(--transition-base);
}
.filter-options a:hover, .filter-options a.active {
  background-color: var(--color-primary);
  color: var(--color-accent);
}

.list-section { padding: 24px 0 48px; }
.list-header {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 20px;
}
.list-count { font-size: 14px; color: var(--color-text-secondary); }
.list-count strong { color: var(--color-accent); }
.sort-bar { display: flex; gap: 4px; }
.sort-bar a {
  padding: 6px 14px;
  font-size: 13px; color: var(--color-text-secondary);
  border-radius: var(--radius-sm);
  border: 1px solid var(--color-border);
  background: var(--color-surface);
}
.sort-bar a.active, .sort-bar a:hover { border-color: var(--color-accent); color: var(--color-accent); }

.list-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }

.pagination {
  display: flex; justify-content: center; align-items: center;
  gap: 6px; margin-top: 40px;
}
.pagination a {
  min-width: 36px; height: 36px;
  display: inline-flex; align-items: center; justify-content: center;
  padding: 0 10px;
  font-size: 14px; color: var(--color-text-secondary);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
  transition: all var(--transition-base);
}
.pagination a:hover { border-color: var(--color-accent); color: var(--color-accent); }
.pagination a.active {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-accent);
  font-weight: 600;
}
.pagination .ellipsis { color: var(--color-text-muted); padding: 0 4px; }

/* Detail pages */
.detail-section { padding: 32px 0 60px; }
.detail-layout { display: grid; grid-template-columns: 1fr 320px; gap: 32px; }
.detail-main {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  padding: 32px;
}
.detail-sidebar { display: flex; flex-direction: column; gap: 20px; }
.detail-header {
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--color-border);
}
.detail-title { font-size: 28px; color: var(--color-primary); margin-bottom: 12px; line-height: 1.4; }
.detail-meta {
  display: flex; flex-wrap: wrap; align-items: center;
  gap: 16px; font-size: 13px; color: var(--color-text-muted);
}
.detail-meta .detail-tags { display: flex; gap: 6px; margin-left: auto; }

.detail-body { font-size: 15px; line-height: 1.8; color: var(--color-text-primary); }
.detail-body h3 {
  font-size: 20px;
  margin: 28px 0 16px;
  padding-left: 12px;
  border-left: 3px solid var(--color-accent);
}
.detail-body h4 { font-size: 17px; margin: 20px 0 12px; color: var(--color-primary); }
.detail-body p { margin-bottom: 16px; color: var(--color-text-secondary); }
.detail-body ul, .detail-body ol { margin-bottom: 16px; padding-left: 24px; color: var(--color-text-secondary); }
.detail-body ul li { list-style: disc; margin-bottom: 8px; }
.detail-body ol li { list-style: decimal; margin-bottom: 8px; }
.detail-body table {
  width: 100%; border-collapse: collapse;
  margin-bottom: 20px; font-size: 14px;
}
.detail-body th, .detail-body td {
  padding: 12px 16px; text-align: left;
  border: 1px solid var(--color-border);
}
.detail-body th {
  background-color: rgba(26,54,93,0.05);
  color: var(--color-primary); font-weight: 600;
}

.sidebar-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  padding: 20px;
}
.sidebar-title {
  font-size: 16px; color: var(--color-primary);
  margin-bottom: 16px; padding-bottom: 10px;
  border-bottom: 2px solid var(--color-accent);
  display: inline-block;
}
.info-table { width: 100%; font-size: 14px; }
.info-table tr {
  display: flex;
  padding: 10px 0;
  border-bottom: 1px dashed var(--color-border);
}
.info-table tr:last-child { border-bottom: none; }
.info-table th {
  width: 90px; text-align: left;
  font-weight: 400; color: var(--color-text-muted);
  flex-shrink: 0;
}
.info-table td { flex: 1; color: var(--color-text-primary); font-weight: 500; }

/* Footer */
.site-footer {
  background-color: var(--color-primary-dark);
  color: rgba(255,255,255,0.7);
  padding: 48px 0 0;
  margin-top: auto;
}
.footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
  gap: 32px;
  margin-bottom: 32px;
}
.footer-brand .logo { margin-bottom: 16px; }
.footer-desc {
  font-size: 13px; line-height: 1.7;
  margin-bottom: 16px;
  color: rgba(255,255,255,0.6);
}
.footer-contact { font-size: 13px; color: rgba(255,255,255,0.6); }
.footer-contact p { margin-bottom: 6px; }
.footer-col h4 { color: #fff; font-size: 15px; margin-bottom: 16px; }
.footer-col ul li { margin-bottom: 10px; }
.footer-col a { color: rgba(255,255,255,0.6); font-size: 13px; }
.footer-col a:hover { color: var(--color-accent); }
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.1);
  padding: 20px 0;
  display: flex; align-items: center; justify-content: space-between;
  font-size: 12px;
  color: rgba(255,255,255,0.4);
}
.footer-links { display: flex; gap: 20px; }
.footer-links a { color: rgba(255,255,255,0.4); }
.footer-links a:hover { color: var(--color-accent); }

/* Responsive */
@media (max-width: 1024px) {
  .industry-grid { grid-template-columns: repeat(4, 1fr); }
  .brands-grid { grid-template-columns: repeat(3, 1fr); }
  .factories-grid, .properties-grid, .franchises-grid,
  .stores-grid, .associations-grid, .list-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .news-grid { grid-template-columns: 1fr 1fr; }
  .news-card-featured { grid-row: span 1; grid-column: span 2; }
  .footer-grid { grid-template-columns: 1fr 1fr 1fr; }
  .detail-layout { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
  /* 52px 与 #siteHeader 移动端实际高（ID !important 覆盖）对齐，二级 sticky 导航吸顶同步受益 */
  :root { --nav-height: 52px; }
  h1 { font-size: 24px; } h2 { font-size: 20px; } h3 { font-size: 17px; }
  .section { padding: 36px 0; }
  .section-header { margin-bottom: 20px; }
  .section-title { font-size: 20px; }
  .hero { padding: 36px 0 48px; }
  .hero h1 { font-size: 28px; }
  .hero-subtitle { font-size: 15px; margin-bottom: 20px; }
  .hero-stats { gap: 24px; margin-top: 28px; }
  .hero-stat-num { font-size: 24px; }
  .main-nav, .nav-actions { display: none; }
  .menu-toggle { display: flex; }
  .main-nav.mobile-open {
    display: flex; flex-direction: column;
    position: absolute; top: var(--nav-height); left: 0; right: 0;
    background-color: var(--color-primary-dark);
    padding: 16px; gap: 4px;
  }
  .main-nav.mobile-open a { display: block; width: 100%; padding: 12px 16px; }
  .industry-grid { grid-template-columns: repeat(3, 1fr); gap: 12px; }
  .industry-item { padding: 16px 8px; }
  .industry-icon { width: 40px; height: 40px; font-size: 20px; }
  .industry-name { font-size: 12px; }
  .brands-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
  .factories-grid, .properties-grid, .franchises-grid,
  .stores-grid, .associations-grid, .list-grid {
    grid-template-columns: 1fr; gap: 14px;
  }
  .news-grid { grid-template-columns: 1fr; }
  .news-card-featured { grid-column: span 1; }
  .filter-row { flex-direction: column; gap: 8px; }
  .filter-label { width: auto; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
  .footer-bottom { flex-direction: column; gap: 8px; text-align: center; }
  .page-header { padding: 28px 0; }
  .page-header h1, .page-header .ph-h1 { font-size: 24px; }
  .detail-main { padding: 20px; }
  .detail-title { font-size: 22px; }
}

@media (max-width: 480px) {
  .industry-grid { grid-template-columns: repeat(2, 1fr); }
  .brands-grid { grid-template-columns: 1fr; }
  .hero h1 { font-size: 24px; }
  .hero-search { flex-direction: column; }
  .hero-search button { width: 100%; }
  .hero-stats { flex-wrap: wrap; }
  .footer-grid { grid-template-columns: 1fr; }
}

/* ========================================
   Tab 切换组件
   ======================================== */
.tab-bar {
  display: flex;
  gap: 4px;
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 6px;
  margin-bottom: 24px;
  box-shadow: var(--shadow-sm);
  border-bottom: 1px solid var(--color-border);
}
.tab-btn {
  flex: 1;
  padding: 12px 24px;
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-secondary);
  border-radius: var(--radius-md);
  transition: all var(--transition-base);
  white-space: nowrap;
}
.tab-btn:hover {
  color: var(--color-primary);
  background: var(--color-bg);
}
.tab-btn.active {
  color: var(--color-accent);
  background: var(--color-primary);
  box-shadow: var(--shadow-md);
}
.tab-panel { display: block; }
.tab-panel[hidden] { display: none; }

/* 门店卡片网格 */
.stores-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 32px;
}
.store-card {
  display: flex;
  gap: 14px;
  padding: 18px;
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--color-border);
  transition: all var(--transition-base);
}
.store-card:hover {
  box-shadow: var(--shadow-lg);
  border-color: var(--color-accent);
  }
.store-avatar {
  width: 52px;
  height: 52px;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  flex-shrink: 0;
}
.store-content { flex: 1; min-width: 0; }
.store-name-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 4px;
}
.store-name {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cert-badge {
  display: inline-block;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 600;
  color: var(--color-accent-dark);
  background: linear-gradient(135deg, #FFF8E7, #FFEFA3);
  border: 1px solid var(--color-accent);
  border-radius: 10px;
  white-space: nowrap;
  flex-shrink: 0;
}
.store-category {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-bottom: 8px;
}
.store-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
}
.store-address {
  font-size: 12px;
  color: var(--color-text-secondary);
  margin-bottom: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.store-rating {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-accent);
}

@media (max-width: 1023px) {
  .stores-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
  .stores-grid { grid-template-columns: 1fr; }
  .tab-btn { padding: 10px 14px; font-size: 14px; }
}

/* 多级筛选 - 地区 */
.filter-options-region {
  max-height: none;
}

/* 字母索引 */
.alpha-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-secondary);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  transition: all var(--transition-base);
}
.alpha-link:hover {
  color: var(--color-accent);
  border-color: var(--color-accent);
  background: #FFF8E7;
}

/* ========================================
   Brand Ranking - 品牌榜单专题样式
   ======================================== */

/* 品牌页 Hero 区域 */
.brand-hero {
  background: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 50%, var(--color-primary-light) 100%);
  padding: 48px 0 56px;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.brand-hero::before {
  content: '';
  position: absolute;
  top: -80px; right: -80px;
  width: 320px; height: 320px;
  background: radial-gradient(circle, rgba(214,158,46,0.15), transparent 70%);
  border-radius: 50%;
}
.brand-hero::after {
  content: '';
  position: absolute;
  bottom: -120px; left: -60px;
  width: 280px; height: 280px;
  background: radial-gradient(circle, rgba(214,158,46,0.1), transparent 70%);
  border-radius: 50%;
}
.brand-hero .container { position: relative; z-index: 2; }
.brand-hero h1 {
  color: #fff; font-size: 32px; margin-bottom: 8px;
}
.brand-hero h1 .accent { color: var(--color-accent); }
.brand-hero .subtitle {
  font-size: 15px; color: rgba(255,255,255,0.75);
  margin-bottom: 24px;
}
.brand-search-box {
  display: flex;
  max-width: 560px;
  background: #fff;
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-lg);
}
.brand-search-box input {
  flex: 1;
  padding: 0 20px;
  border: none;
  font-size: 15px;
  outline: none;
  height: 48px;
  font-family: var(--font-base);
}
.brand-search-box button {
  background: var(--color-accent);
  color: var(--color-primary-dark);
  padding: 0 32px;
  font-weight: 600;
  font-size: 15px;
  border: none;
  cursor: pointer;
  transition: background var(--transition-base);
}
.brand-search-box button:hover { background: var(--color-accent-light); }
.brand-hero-tags {
  margin-top: 16px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.brand-hero-tags span { color: rgba(255,255,255,0.6); font-size: 13px; }
.brand-hero-tags a {
  color: rgba(255,255,255,0.85);
  font-size: 13px;
  padding: 2px 10px;
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 20px;
  transition: all var(--transition-base);
}
.brand-hero-tags a:hover {
  color: var(--color-accent);
  border-color: var(--color-accent);
  background: rgba(214,158,46,0.1);
}

/* 品牌页统计栏 */
.brand-stats-bar {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  padding: 16px 0;
}
.brand-stats {
  display: flex;
  gap: 48px;
}
.brand-stat-item {
  text-align: center;
  flex: 1;
}
.brand-stat-num {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-primary);
  line-height: 1.2;
}
.brand-stat-num .gold { color: var(--color-accent); }
.brand-stat-label {
  font-size: 13px;
  color: var(--color-text-muted);
  margin-top: 4px;
}

/* 分类入口条 */
.category-nav-bar {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  padding: 12px 0;
  position: sticky;
  top: var(--nav-height);
  z-index: 100;
}
.category-nav-scroll {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  padding: 4px 0;
  scrollbar-width: none;
}
.category-nav-scroll::-webkit-scrollbar { display: none; }
.category-nav-item {
  white-space: nowrap;
  font-size: 14px;
  color: var(--color-text-secondary);
  padding: 6px 4px;
  border-bottom: 2px solid transparent;
  transition: all var(--transition-base);
  cursor: pointer;
}
.category-nav-item:hover { color: var(--color-accent); }
.category-nav-item.active {
  color: var(--color-accent);
  font-weight: 600;
  border-bottom-color: var(--color-accent);
}

/* 排行榜模块 */
.rank-list {
  background: #fff;
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
}
.rank-list-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid var(--color-border);
}
.rank-list-title {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-primary);
  display: flex;
  align-items: center;
  gap: 8px;
}
.rank-list-title::before {
  content: '';
  width: 4px; height: 18px;
  background: var(--color-accent);
  border-radius: 2px;
}
.rank-list-more {
  font-size: 13px;
  color: var(--color-text-muted);
}
.rank-list-more:hover { color: var(--color-accent); }

.rank-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 20px;
  border-bottom: 1px solid var(--color-border);
  transition: background var(--transition-base);
  cursor: pointer;
}
.rank-item:last-child { border-bottom: none; }
.rank-item:hover { background: var(--color-bg); }
.rank-num {
  width: 24px;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-muted);
  flex-shrink: 0;
}
.rank-num.top-1 { color: var(--color-accent); }
.rank-num.top-2 { color: #8899A6; }
.rank-num.top-3 { color: #CD7F32; }
.rank-logo {
  width: 44px; height: 44px;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, #f0f4f8, #e2e8f0);
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 16px;
  color: var(--color-primary);
  flex-shrink: 0;
}
.rank-info { flex: 1; min-width: 0; }
.rank-name {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rank-meta {
  font-size: 12px;
  color: var(--color-text-muted);
  display: flex;
  gap: 12px;
}
.rank-index-score {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-accent);
  flex-shrink: 0;
}
.rank-trend {
  font-size: 11px;
  padding: 2px 6px;
  border-radius: 10px;
  flex-shrink: 0;
}
.rank-trend.up { background: #F0FFF4; color: #38A169; }
.rank-trend.down { background: #FFF5F5; color: #E53E3E; }
.rank-trend.flat { background: #F7FAFC; color: #718096; }

/* 投票按钮 */
.vote-btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 12px;
  border: 1px solid var(--color-border);
  border-radius: 20px;
  font-size: 12px;
  color: var(--color-text-secondary);
  background: #fff;
  cursor: pointer;
  transition: all var(--transition-base);
  flex-shrink: 0;
}
.vote-btn:hover {
  color: var(--color-accent);
  border-color: var(--color-accent);
  background: rgba(214,158,46,0.05);
}
.vote-btn.voted {
  color: var(--color-accent);
  border-color: var(--color-accent);
  background: rgba(214,158,46,0.1);
}

/* 品牌卡片增强 */
.brand-card {
  position: relative;
  background: #fff;
  border-radius: var(--radius-lg);
  padding: 20px;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--color-border);
  transition: all var(--transition-base);
}
.brand-card:hover {
  box-shadow: var(--shadow-lg);
  border-color: var(--color-accent);
}
.brand-card-header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--color-border);
}
.brand-card-rank {
  position: absolute;
  top: 0; left: 0;
  width: 36px; height: 36px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-light));
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  display: flex; align-items: center; justify-content: center;
  border-radius: var(--radius-lg) 0 var(--radius-md) 0;
}
.brand-card-rank.silver {
  background: linear-gradient(135deg, #94A3B8, #CBD5E1);
}
.brand-card-rank.bronze {
  background: linear-gradient(135deg, #B45309, #D97706);
}
.brand-card-rank.normal {
  background: #E2E8F0;
  color: var(--color-text-secondary);
  font-size: 14px;
}
.brand-card-logo {
  width: 60px; height: 60px;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, #f0f4f8, #e2e8f0);
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 24px;
  color: var(--color-primary);
  flex-shrink: 0;
  margin-left: 30px;
}
.brand-card-info { flex: 1; min-width: 0; }
.brand-card-name {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 4px;
}
.brand-card-name .brand-en {
  font-size: 12px;
  color: var(--color-text-muted);
  font-weight: 400;
  margin-left: 6px;
}
.brand-card-category {
  font-size: 13px;
  color: var(--color-text-muted);
}
.brand-card-badges {
  display: flex;
  gap: 6px;
  margin-top: 6px;
  flex-wrap: wrap;
}
.brand-badge {
  font-size: 11px;
  padding: 2px 8px;
  border-radius: 4px;
  background: rgba(26,54,93,0.08);
  color: var(--color-primary);
  font-weight: 500;
}
.brand-badge.gold {
  background: rgba(214,158,46,0.12);
  color: var(--color-accent-dark);
}
.brand-card-desc {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin-bottom: 14px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.brand-card-stats {
  display: flex;
  gap: 16px;
  padding-top: 12px;
  border-top: 1px solid var(--color-border);
}
.brand-stat-mini {
  text-align: center;
  flex: 1;
}
.brand-stat-mini strong {
  display: block;
  font-size: 16px;
  color: var(--color-accent);
  font-weight: 700;
}
.brand-stat-mini span {
  font-size: 11px;
  color: var(--color-text-muted);
}
.brand-card-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px dashed var(--color-border);
}

/* 榜单介绍模块 */
.rank-intro {
  background: #fff;
  border-radius: var(--radius-lg);
  padding: 24px;
  box-shadow: var(--shadow-sm);
  margin-bottom: 24px;
}
.rank-intro h3 {
  font-size: 18px;
  color: var(--color-primary);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.rank-intro h3::before {
  content: '';
  width: 4px; height: 18px;
  background: var(--color-accent);
  border-radius: 2px;
}
.rank-intro p {
  color: var(--color-text-secondary);
  font-size: 14px;
  line-height: 1.8;
}
.rank-intro .tags {
  margin-top: 12px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.rank-intro .tag {
  font-size: 12px;
  padding: 4px 12px;
  background: var(--color-bg);
  color: var(--color-text-secondary);
  border-radius: 20px;
}

/* 品牌详情页 */
.brand-detail-hero {
  background: linear-gradient(135deg, var(--color-primary-dark), var(--color-primary));
  padding: 40px 0;
  color: #fff;
}
.brand-detail-header {
  display: flex;
  align-items: flex-start;
  gap: 28px;
  flex-wrap: wrap;
}
.brand-detail-logo {
  width: 120px; height: 120px;
  background: #fff;
  border-radius: var(--radius-lg);
  display: flex; align-items: center; justify-content: center;
  font-size: 48px;
  font-weight: 700;
  color: var(--color-primary);
  box-shadow: var(--shadow-lg);
  flex-shrink: 0;
}
.brand-detail-main { flex: 1; min-width: 280px; }
.brand-detail-name {
  font-size: 32px;
  color: #fff;
  margin-bottom: 4px;
}
.brand-detail-name .en {
  font-size: 16px;
  color: rgba(255,255,255,0.6);
  font-weight: 400;
  margin-left: 12px;
}
.brand-detail-slogan {
  font-size: 15px;
  color: rgba(255,255,255,0.8);
  margin-bottom: 16px;
}
.brand-detail-tags {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}
.brand-detail-tag {
  padding: 4px 12px;
  background: rgba(255,255,255,0.15);
  color: #fff;
  font-size: 12px;
  border-radius: 20px;
  backdrop-filter: blur(10px);
}
.brand-detail-tag.gold {
  background: var(--color-accent);
  color: var(--color-primary-dark);
  font-weight: 600;
}
.brand-detail-stats {
  display: flex;
  gap: 32px;
}
.brand-detail-stat {
  text-align: center;
}
.brand-detail-stat .num {
  font-size: 22px;
  font-weight: 700;
  color: var(--color-accent);
}
.brand-detail-stat .label {
  font-size: 12px;
  color: rgba(255,255,255,0.7);
  margin-top: 2px;
}

/* 详情页 Tab 导航 */
.detail-tab-bar {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: var(--nav-height);
  z-index: 100;
}
.detail-tabs {
  display: flex;
  gap: 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.detail-tabs::-webkit-scrollbar { display: none; }
.detail-tab {
  padding: 16px 24px;
  font-size: 15px;
  color: var(--color-text-secondary);
  border-bottom: 2px solid transparent;
  cursor: pointer;
  white-space: nowrap;
  transition: all var(--transition-base);
}
.detail-tab:hover { color: var(--color-accent); }
.detail-tab.active {
  color: var(--color-accent);
  font-weight: 600;
  border-bottom-color: var(--color-accent);
}

/* 详情内容 */
.detail-section {
  background: #fff;
  border-radius: var(--radius-lg);
  padding: 28px;
  box-shadow: var(--shadow-sm);
  margin-bottom: 20px;
}
.detail-section-title {
  font-size: 18px;
  color: var(--color-primary);
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--color-border);
  position: relative;
}
.detail-section-title::before {
  content: '';
  position: absolute;
  bottom: -2px; left: 0;
  width: 48px; height: 2px;
  background: var(--color-accent);
}
.detail-section p {
  color: var(--color-text-secondary);
  line-height: 1.9;
  margin-bottom: 12px;
}
.detail-info-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px 24px;
}
.detail-info-item {
  display: flex;
  padding: 10px 0;
  border-bottom: 1px dashed var(--color-border);
}
.detail-info-label {
  width: 100px;
  color: var(--color-text-muted);
  flex-shrink: 0;
}
.detail-info-value {
  color: var(--color-text-primary);
  flex: 1;
}

/* 产品展示 */
.product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.product-card {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  overflow: hidden;
  transition: all var(--transition-base);
}
.product-card:hover {
  box-shadow: var(--shadow-md);
  }
.product-img {
  height: 160px;
  background: linear-gradient(135deg, #f0f4f8, #e2e8f0);
  display: flex; align-items: center; justify-content: center;
  font-size: 40px;
}
.product-info { padding: 12px; }
.product-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 4px;
}
.product-price {
  font-size: 15px;
  color: var(--color-danger);
  font-weight: 700;
}

/* 荣誉墙 */
.honor-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.honor-card {
  text-align: center;
  padding: 16px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  transition: all var(--transition-base);
}
.honor-card:hover {
  border-color: var(--color-accent);
  background: rgba(214,158,46,0.03);
}
.honor-icon {
  width: 48px; height: 48px;
  margin: 0 auto 10px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-light));
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px;
  color: #fff;
}
.honor-title {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 4px;
}
.honor-year {
  font-size: 11px;
  color: var(--color-text-muted);
}

/* 侧边栏 */
.sidebar-widget {
  background: #fff;
  border-radius: var(--radius-lg);
  padding: 20px;
  box-shadow: var(--shadow-sm);
  margin-bottom: 20px;
}
.sidebar-widget-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 16px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--color-accent);
  display: inline-block;
}
.sidebar-rank-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px dashed var(--color-border);
}
.sidebar-rank-item:last-child { border-bottom: none; }
.sidebar-rank-num {
  width: 20px;
  font-weight: 700;
  color: var(--color-text-muted);
  font-size: 13px;
  text-align: center;
}
.sidebar-rank-num.top-1 { color: var(--color-accent); }
.sidebar-rank-num.top-2 { color: #8899A6; }
.sidebar-rank-num.top-3 { color: #CD7F32; }
.sidebar-rank-name {
  flex: 1;
  font-size: 13px;
  color: var(--color-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sidebar-rank-score {
  font-size: 12px;
  color: var(--color-accent);
  font-weight: 600;
}

/* 热门行业 */
.hot-industries {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.hot-industry-tag {
  padding: 6px 14px;
  background: var(--color-bg);
  border-radius: 20px;
  font-size: 13px;
  color: var(--color-text-secondary);
  transition: all var(--transition-base);
  cursor: pointer;
}
.hot-industry-tag:hover {
  background: var(--color-primary);
  color: #fff;
}

/* 品牌页两栏布局 */
.brand-page-layout {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 24px;
}
.brand-page-main { min-width: 0; }
.brand-page-sidebar { min-width: 0; }

/* 品牌卡片网格 */
.brand-card-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

@media (max-width: 1023px) {
  .brand-page-layout {
    grid-template-columns: 1fr;
  }
  .brand-page-sidebar { order: -1; }
}

@media (max-width: 768px) {
  .brand-hero h1 { font-size: 24px; }
  .brand-stats { gap: 16px; }
  .brand-stat-num { font-size: 18px; }
  .brand-card-grid { grid-template-columns: 1fr; }
  .detail-info-grid { grid-template-columns: 1fr; }
  .product-grid { grid-template-columns: repeat(2, 1fr); }
  .honor-grid { grid-template-columns: repeat(2, 1fr); }
  .brand-detail-header { flex-direction: column; }
  .brand-detail-logo { width: 80px; height: 80px; font-size: 32px; }
  .brand-detail-name { font-size: 24px; }
  .detail-section { padding: 18px; }
}

/* ========== 工厂榜专属样式 ========== */

/* 工厂Hero */
.factory-hero {
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 50%, #1A365D 100%);
  padding: 60px 0;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.factory-hero::before {
  content: '';
  position: absolute;
  top: 0; right: 0;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(214,158,46,0.15) 0%, transparent 70%);
  border-radius: 50%;
  top: -100px; right: -100px;
}
.factory-hero h1 {
  font-size: 36px;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.factory-hero .hero-badge {
  background: var(--color-accent);
  color: #fff;
  padding: 4px 12px;
  border-radius: 20px;
  font-size: 14px;
  font-weight: 600;
}
.factory-hero .hero-desc {
  font-size: 16px;
  opacity: 0.85;
  margin-bottom: 30px;
}
.factory-stats {
  display: flex;
  gap: 40px;
  margin-top: 30px;
}
.factory-stat {
  text-align: center;
}
.factory-stat-num {
  font-size: 28px;
  font-weight: 700;
  color: var(--color-accent);
}
.factory-stat-label {
  font-size: 13px;
  opacity: 0.8;
  margin-top: 4px;
}

/* 工厂搜索栏 */
.factory-search-bar {
  background: #fff;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 8px 30px rgba(26,54,93,0.15);
  margin-top: 30px;
  position: relative;
  z-index: 2;
}
.factory-search-row {
  display: flex;
  gap: 12px;
  margin-bottom: 16px;
}
.factory-search-row input {
  flex: 1;
  height: 48px;
  padding: 0 20px;
  border: 2px solid var(--color-border);
  border-radius: 8px;
  font-size: 15px;
  transition: border-color 0.3s;
}
.factory-search-row input:focus {
  outline: none;
  border-color: var(--color-accent);
}
.factory-search-row .btn-search {
  min-width: 140px;
  height: 48px;
  background: var(--color-primary);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 16px;
  cursor: pointer;
  transition: background 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.factory-search-row .btn-search:hover {
  background: var(--color-primary-light);
}
.factory-hot-tags {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}
.factory-hot-tags .label {
  font-size: 13px;
  color: var(--color-text-muted);
}
.factory-hot-tags a {
  font-size: 13px;
  color: var(--color-text-secondary);
  padding: 4px 12px;
  background: var(--color-bg);
  border-radius: 15px;
  transition: all 0.2s;
}
.factory-hot-tags a:hover {
  color: var(--color-accent);
  background: rgba(214,158,46,0.1);
}

/* 行业分类条 */
.factory-category-bar {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: 64px;
  z-index: 50;
}
.factory-category-bar .container {
  display: flex;
  gap: 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.factory-category-bar a {
  flex-shrink: 0;
  padding: 16px 22px;
  font-size: 14px;
  color: var(--color-text-secondary);
  border-bottom: 2px solid transparent;
  transition: all 0.2s;
  white-space: nowrap;
}
.factory-category-bar a:hover {
  color: var(--color-primary);
}
.factory-category-bar a.active {
  color: var(--color-accent);
  border-bottom-color: var(--color-accent);
  font-weight: 600;
}

/* 实力筛选栏 */
.factory-filter-bar {
  background: #fff;
  padding: 16px 0;
  border-bottom: 1px solid var(--color-border);
}
.factory-filter-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 0;
}
.factory-filter-label {
  width: 80px;
  flex-shrink: 0;
  font-size: 13px;
  color: var(--color-text-muted);
  text-align: right;
}
.factory-filter-options {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  flex: 1;
}
.factory-filter-options a {
  padding: 5px 14px;
  font-size: 13px;
  color: var(--color-text-secondary);
  border-radius: 4px;
  transition: all 0.2s;
}
.factory-filter-options a:hover {
  color: var(--color-primary);
}
.factory-filter-options a.active {
  background: var(--color-primary);
  color: #fff;
}

/* 工厂卡片 */
.factory-card-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.factory-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 24px;
  display: flex;
  gap: 24px;
  transition: all 0.3s;
  cursor: pointer;
}
.factory-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 6px 24px rgba(26,54,93,0.12);
}
.factory-card-badge {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 18px;
  color: #fff;
}
.badge-rank-gold {
  background: linear-gradient(135deg, #D69E2E, #E6B03A);
}
.badge-rank-silver {
  background: linear-gradient(135deg, #A0AEC0, #CBD5E0);
}
.badge-rank-copper {
  background: linear-gradient(135deg, #C05621, #DD6B20);
}
.badge-rank-normal {
  background: #E2E8F0;
  color: var(--color-text-secondary);
}
.factory-card-logo {
  width: 100px;
  height: 100px;
  flex-shrink: 0;
  background: var(--color-bg);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 14px;
  color: var(--color-primary);
}
.factory-card-info {
  flex: 1;
  min-width: 0;
}
.factory-card-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.factory-card-title:hover {
  color: var(--color-primary);
}
.factory-cert-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}
.factory-cert-tag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 2px 8px;
  font-size: 11px;
  border-radius: 3px;
}
.cert-verified {
  background: #EDF2F7;
  color: var(--color-primary);
  border: 1px solid #BEE3F8;
}
.cert-sgs {
  background: #E6FFFA;
  color: #234E52;
  border: 1px solid #81E6D9;
}
.cert-iso {
  background: #F0FFF4;
  color: #276749;
  border: 1px solid #9AE6B4;
}
.cert-bsci {
  background: #FFF5F5;
  color: #9B2C2C;
  border: 1px solid #FEB2B2;
}
.cert-gold {
  background: #FFFAF0;
  color: #975A16;
  border: 1px solid #F6E05E;
}
.cert-diamond {
  background: #EBF8FF;
  color: #2C5282;
  border: 1px solid #90CDF4;
}
.factory-card-desc {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin-bottom: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.factory-card-meta {
  display: flex;
  gap: 24px;
  font-size: 12px;
  color: var(--color-text-muted);
  flex-wrap: wrap;
}
.factory-card-meta span strong {
  color: var(--color-text-primary);
  margin-left: 4px;
  font-weight: 600;
}
.factory-card-side {
  flex-shrink: 0;
  width: 200px;
  border-left: 1px solid var(--color-border);
  padding-left: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.factory-rating {
  margin-bottom: 12px;
}
.factory-rating-score {
  font-size: 28px;
  font-weight: 700;
  color: var(--color-accent);
}
.factory-rating-label {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-top: 2px;
}
.factory-contact-info {
  font-size: 12px;
  color: var(--color-text-secondary);
  margin-bottom: 12px;
}
.factory-contact-info .name {
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 4px;
}
.btn-contact {
  display: block;
  width: 100%;
  height: 36px;
  line-height: 36px;
  text-align: center;
  background: var(--color-accent);
  color: #fff;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  transition: background 0.2s;
}
.btn-contact:hover {
  background: var(--color-accent-light);
  color: #fff;
}

/* 工厂主详情 */
.factory-hero-detail {
  background: linear-gradient(135deg, #1A365D 0%, #0F2440 100%);
  padding: 50px 0;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.factory-hero-detail::before {
  content: '';
  position: absolute;
  inset: 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='%23D69E2E' 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");
}
.factory-hero-detail .container {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 40px;
  align-items: flex-start;
}
.factory-logo-big {
  width: 160px;
  height: 160px;
  background: #fff;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 700;
  color: var(--color-primary);
  flex-shrink: 0;
  box-shadow: 0 8px 24px rgba(0,0,0,0.2);
}
.factory-main-info {
  flex: 1;
  min-width: 0;
}
.factory-main-info h1 {
  font-size: 32px;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.factory-ename {
  font-size: 14px;
  opacity: 0.7;
  margin-bottom: 12px;
}
.factory-tags-row {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.factory-tags-row .cert-tag {
  padding: 3px 10px;
  font-size: 12px;
  border-radius: 4px;
  background: rgba(255,255,255,0.15);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.2);
}
.factory-tags-row .cert-tag.gold {
  background: var(--color-accent);
  border-color: var(--color-accent);
}
.factory-data-row {
  display: flex;
  gap: 40px;
  margin-top: 20px;
}
.factory-data-item .num {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-accent);
}
.factory-data-item .label {
  font-size: 12px;
  opacity: 0.7;
  margin-top: 2px;
}

/* 工厂详情Tab */
.factory-detail-tabs {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: 0;
  z-index: 100;
}
.fac-sticky-head {
  position: sticky;
  top: 64px;
  z-index: 100;
  background: #fff;
}
.fac-sticky-head > .biz-quick-info,
.fac-sticky-head > .factory-detail-tabs {
  position: static;
}
.fac-sticky-head ~ main .factory-info-section[id],
.fac-sticky-head ~ main .fac-anchor[id] {
  scroll-margin-top: calc(64px + var(--fac-head-h, 170px) + 12px);
}
@media (max-width: 640px) {
  .fac-sticky-head { display: contents; }
  .fac-sticky-head > .factory-detail-tabs { position: sticky; top: 64px; }
  .fac-sticky-head ~ main .factory-info-section[id],
  .fac-sticky-head ~ main .fac-anchor[id] { scroll-margin-top: 140px; }
}
.factory-detail-tabs ul {
  display: flex;
  gap: 0;
}
.factory-detail-tabs li a {
  display: block;
  padding: 18px 28px;
  font-size: 15px;
  color: var(--color-text-secondary);
  border-bottom: 2px solid transparent;
  transition: all 0.2s;
}
.factory-detail-tabs li a:hover {
  color: var(--color-primary);
}
.factory-detail-tabs li a.active {
  color: var(--color-accent);
  border-bottom-color: var(--color-accent);
  font-weight: 600;
}

/* 工厂信息块 */
.factory-info-section {
  margin-bottom: 30px;
}
.factory-info-section h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 16px;
  padding-left: 12px;
  border-left: 4px solid var(--color-accent);
}
.factory-info-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  background: var(--color-bg);
  border-radius: 8px;
  overflow: hidden;
}
.factory-info-item {
  display: flex;
  padding: 14px 20px;
  font-size: 14px;
}
.factory-info-item .info-label {
  width: 100px;
  color: var(--color-text-muted);
  flex-shrink: 0;
}
.factory-info-item .info-value {
  color: var(--color-text-primary);
  flex: 1;
}

/* 产品展示网格 */
.product-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.product-item {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.2s;
}
.product-item:hover {
  border-color: var(--color-accent);
  box-shadow: 0 6px 16px rgba(26,54,93,0.1);
}
.product-img {
  height: 140px;
  background: linear-gradient(135deg, #F5F7FA, #E2E8F0);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
}
.product-info {
  padding: 12px;
}
.product-name {
  font-size: 13px;
  color: var(--color-text-primary);
  margin-bottom: 6px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.product-price {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-danger);
}
.product-price span {
  font-size: 11px;
  font-weight: 400;
  color: var(--color-text-muted);
}
.product-moq {
  font-size: 11px;
  color: var(--color-text-muted);
  margin-top: 4px;
}

/* 资质荣誉 */
.cert-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.cert-item {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 16px;
  text-align: center;
  transition: all 0.2s;
}
.cert-item:hover {
  border-color: var(--color-accent);
  box-shadow: 0 4px 12px rgba(26,54,93,0.08);
}
.cert-icon {
  width: 60px;
  height: 60px;
  margin: 0 auto 10px;
  background: linear-gradient(135deg, #FFF5E6, #FFE4B5);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
}
.cert-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 4px;
}
.cert-time {
  font-size: 11px;
  color: var(--color-text-muted);
}

/* 工厂实力数据 */
.capability-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.capability-card {
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 8px;
  padding: 20px;
  text-align: center;
}
.capability-card .num {
  font-size: 28px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 4px;
}
.capability-card .unit {
  font-size: 14px;
  color: var(--color-text-secondary);
  margin-left: 2px;
}
.capability-card .label {
  font-size: 13px;
  color: var(--color-text-muted);
}

/* 验厂报告 */
.audit-report {
  background: #F0FFF4;
  border: 1px solid #9AE6B4;
  border-radius: 8px;
  padding: 20px;
}
.audit-report h4 {
  color: #276749;
  font-size: 16px;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.audit-items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.audit-item {
  background: #fff;
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 13px;
  color: var(--color-text-secondary);
  display: flex;
  justify-content: space-between;
}
.audit-item .status {
  color: var(--color-success);
  font-weight: 600;
}

/* 联系卡片 */
.contact-card {
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  border-radius: 8px;
  padding: 24px;
}
.contact-card h4 {
  color: #fff;
  margin-bottom: 16px;
  font-size: 16px;
}
.contact-item {
  display: flex;
  gap: 10px;
  margin-bottom: 12px;
  font-size: 13px;
}
.contact-item .label {
  opacity: 0.7;
  width: 50px;
  flex-shrink: 0;
}
.contact-item .value {
  flex: 1;
}
.btn-call-factory {
  display: block;
  margin-top: 16px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  background: var(--color-accent);
  color: #fff;
  border-radius: 6px;
  font-weight: 600;
  transition: background 0.2s;
}
.btn-call-factory:hover {
  background: var(--color-accent-light);
  color: #fff;
}

/* ========== 1688风格工厂榜 ========== */

/* 顶部Banner区 */
.banner-factory {
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 40%, #D69E2E 100%, #E6B03A 100%);
  padding: 48px 0 80px;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.banner-factory::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(255,255,255,0.15) 0%, transparent 60%);
  border-radius: 50%;
}
.banner-factory::after {
  content: '';
  position: absolute;
  bottom: -100px;
  left: -50px;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(214,158,46,0.3) 0%, transparent 60%);
  border-radius: 50%;
}
.banner-factory .container {
  position: relative;
  z-index: 2;
}
.banner-title {
  font-size: 42px;
  font-weight: 800;
  margin-bottom: 8px;
  letter-spacing: 2px;
}
.banner-title em {
  color: #FFD700;
  font-style: normal;
  font-size: 48px;
}
.banner-subtitle {
  font-size: 18px;
  opacity: 0.9;
  margin-bottom: 32px;
}
.banner-pills {
  display: flex;
  gap: 12px;
  margin-bottom: 36px;
}
.banner-pill {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 18px;
  background: rgba(255,255,255,0.15);
  backdrop-filter: blur(10px);
  border-radius: 24px;
  font-size: 14px;
  border: 1px solid rgba(255,255,255,0.25);
}
.banner-pill::before {
  content: '';
  width: 6px;
  height: 6px;
  background: var(--color-accent);
  border-radius: 50%;
}

/* Banner搜索框 */
.banner-search {
  display: flex;
  max-width: 700px;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0,0,0,0.2);
}
.banner-search .search-select {
  flex-shrink: 0;
  padding: 0 18px;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  color: var(--color-text-primary);
  border-right: 1px solid var(--color-border);
  cursor: pointer;
}
.banner-search .search-select::after {
  content: '';
  border: 4px solid transparent;
  border-top-color: var(--color-text-muted);
  margin-top: 4px;
}
.banner-search input {
  flex: 1;
  height: 54px;
  padding: 0 20px;
  border: none;
  font-size: 15px;
  outline: none;
}
.banner-search button {
  width: 140px;
  background: var(--color-primary);
  color: #fff;
  border: none;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s;
}
.banner-search button:hover {
  background: var(--color-primary-light);
}

/* Banner数据条 */
.banner-stats {
  display: flex;
  gap: 48px;
  margin-top: 32px;
}
.banner-stat-item {
  display: flex;
  flex-direction: column;
}
.banner-stat-num {
  font-size: 26px;
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.2;
}
.banner-stat-label {
  font-size: 13px;
  opacity: 0.85;
  margin-top: 4px;
}

/* 悬浮平台权益 */
.privilege-bar {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 8px 32px rgba(26,54,93,0.12);
  margin-top: -40px;
  position: relative;
  z-index: 10;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  overflow: hidden;
}
.privilege-item {
  padding: 24px 20px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-right: 1px solid var(--color-border);
  transition: background 0.2s;
}
.privilege-item:last-child {
  border-right: none;
}
.privilege-item:hover {
  background: var(--color-bg);
}
.privilege-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #FFF5E6, #FFE4B5);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
}
.privilege-text h4 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 2px;
}
.privilege-text p {
  font-size: 12px;
  color: var(--color-text-muted);
}

/* 品类分类导航 */
.category-grid {
  background: #fff;
  border-radius: 12px;
  padding: 24px;
  margin-bottom: 24px;
}
.category-grid-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.category-grid-title::before {
  content: '';
  width: 4px;
  height: 20px;
  background: var(--color-accent);
  border-radius: 2px;
}
.category-items {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  gap: 8px;
}
.category-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 14px 8px;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
}
.category-item:hover {
  background: rgba(214,158,46,0.08);
  }
.category-item-icon {
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
}
.category-item:hover .category-item-icon {
  background: linear-gradient(135deg, #FFF5E6, #FFE4B5);
}
.category-item-name {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.3;
}
.category-item:hover .category-item-name {
  color: var(--color-accent);
  font-weight: 600;
}

/* 1688风格工厂卡片（网格布局） */
.factory-grid-1688 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.factory-card-1688 {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid var(--color-border);
  transition: all 0.3s;
  cursor: pointer;
  position: relative;
}
.factory-card-1688:hover {
  border-color: var(--color-accent);
  box-shadow: 0 10px 30px rgba(26,54,93,0.15);
  }

/* 卡片头部主图区 */
.card-factory-img {
  position: relative;
  height: 160px;
  background: linear-gradient(135deg, #E2E8F0 0%, #CBD5E0 100%);
  overflow: hidden;
}
.card-factory-img::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 60%, rgba(0,0,0,0.5) 100%);
}
.card-factory-logo {
  position: absolute;
  bottom: 12px;
  left: 12px;
  width: 44px;
  height: 44px;
  background: #fff;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  color: var(--color-primary);
  z-index: 2;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
.card-rank-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 700;
  z-index: 2;
  color: #fff;
}
.rank-gold {
  background: linear-gradient(135deg, #D69E2E, #E6B03A);
  box-shadow: 0 2px 8px rgba(214,158,46,0.4);
}
.rank-silver {
  background: linear-gradient(135deg, #A0AEC0, #CBD5E0);
}
.rank-copper {
  background: linear-gradient(135deg, #C05621, #DD6B20);
}
.card-level-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 3px 10px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 600;
  z-index: 2;
}
.level-gold {
  background: linear-gradient(135deg, #FFD700, #FFA500);
  color: #7B3F00;
}
.level-diamond {
  background: linear-gradient(135deg, #667eea, #764ba2);
  color: #fff;
}
.card-factory-name {
  position: absolute;
  bottom: 14px;
  left: 64px;
  right: 12px;
  z-index: 2;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 卡片信息区 */
.card-factory-body {
  padding: 14px;
}
.card-factory-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 10px;
  min-height: 22px;
}
.card-factory-tag {
  padding: 2px 6px;
  font-size: 11px;
  border-radius: 3px;
}
.tag-verified {
  background: #EBF8FF;
  color: #2B6CB0;
}
.tag-sgs {
  background: #E6FFFA;
  color: #2C7A7B;
}
.tag-iso {
  background: #F0FFF4;
  color: #2F855A;
}
.tag-oem {
  background: #FAF5FF;
  color: #6B46C1;
}
.tag-odm {
  background: #FFF5F5;
  color: #C53030;
}
.tag-bsci {
  background: #FFFFF0;
  color: #975A16;
}

.card-main-product {
  font-size: 13px;
  color: var(--color-text-secondary);
  margin-bottom: 10px;
  line-height: 1.5;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* 价格行（1688风格） */
.card-price-row {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 8px;
}
.card-price {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-danger);
}
.card-price .symbol {
  font-size: 12px;
  font-weight: 500;
  margin-right: 1px;
}
.card-price-moq {
  font-size: 11px;
  color: var(--color-text-muted);
}

/* 信息行 */
.card-meta-row {
  display: flex;
  gap: 12px;
  font-size: 12px;
  color: var(--color-text-muted);
  padding-top: 10px;
  border-top: 1px dashed var(--color-border);
  margin-bottom: 12px;
}
.card-meta-row span {
  display: flex;
  align-items: center;
  gap: 3px;
}
.card-meta-row strong {
  color: var(--color-text-secondary);
  font-weight: 500;
}

/* 底部操作栏 */
.card-action-row {
  display: flex;
  gap: 8px;
}
.card-btn-primary {
  flex: 1;
  height: 32px;
  line-height: 32px;
  text-align: center;
  background: var(--color-accent);
  color: #fff;
  border-radius: 4px;
  font-size: 13px;
  font-weight: 600;
  transition: background 0.2s;
}
.card-btn-primary:hover {
  background: var(--color-accent-dark);
  color: #fff;
}
.card-btn-ghost {
  width: 32px;
  height: 32px;
  border: 1px solid var(--color-border);
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  color: var(--color-text-muted);
  transition: all 0.2s;
}
.card-btn-ghost:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
}

/* 楼层标题 */
.floor-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}
.floor-title h2 {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-text-primary);
  display: flex;
  align-items: center;
  gap: 12px;
}
.floor-title h2::before {
  content: '';
  width: 6px;
  height: 26px;
  background: linear-gradient(to bottom, var(--color-accent), var(--color-accent-dark));
  border-radius: 3px;
}
.floor-title-nav {
  display: flex;
  gap: 4px;
  align-items: center;
}
.floor-title-nav a {
  padding: 6px 14px;
  font-size: 13px;
  color: var(--color-text-secondary);
  border-radius: 16px;
  transition: all 0.2s;
}
.floor-title-nav a.active,
.floor-title-nav a:hover {
  background: var(--color-primary);
  color: #fff;
}

/* 侧栏热销榜 */
.hot-ranking-sidebar {
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 18px;
}
.hot-ranking-sidebar h3 {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.hot-ranking-sidebar h3::before {
  content: '🔥';
  font-size: 18px;
}
.hot-rank-item {
  display: flex;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--color-border);
  align-items: center;
  cursor: pointer;
  transition: background 0.2s;
}
.hot-rank-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.hot-rank-item:hover {
  background: var(--color-bg);
  margin: 0 -8px;
  padding: 10px 8px;
  border-radius: 6px;
}
.hot-rank-no {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  background: #CBD5E0;
  color: #fff;
}
.hot-rank-item:nth-child(1) .hot-rank-no { background: linear-gradient(135deg, #D69E2E, #E6B03A); }
.hot-rank-item:nth-child(2) .hot-rank-no { background: linear-gradient(135deg, #A0AEC0, #CBD5E0); }
.hot-rank-item:nth-child(3) .hot-rank-no { background: linear-gradient(135deg, #C05621, #DD6B20); }
.hot-rank-name {
  flex: 1;
  font-size: 13px;
  color: var(--color-text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hot-rank-item:hover .hot-rank-name {
  color: var(--color-primary);
}
.hot-rank-value {
  font-size: 12px;
  color: var(--color-accent);
  font-weight: 600;
  flex-shrink: 0;
}


/* ========== 企业服务榜（zbj风格） ========== */

/* Hero区 */
.service-hero {
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 50%, #D69E2E 100%);
  padding: 60px 0 80px;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.service-hero::before {
  content: '';
  position: absolute;
  top: -100px;
  right: -50px;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(255,255,255,0.12) 0%, transparent 60%);
  border-radius: 50%;
}
.service-hero::after {
  content: '';
  position: absolute;
  bottom: -80px;
  left: 10%;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(214,158,46,0.3) 0%, transparent 60%);
  border-radius: 50%;
}
.service-hero .container {
  position: relative;
  z-index: 2;
}
.service-hero-title {
  font-size: 40px;
  font-weight: 800;
  margin-bottom: 10px;
}
.service-hero-title em {
  color: #FFD700;
  font-style: normal;
}
.service-hero-desc {
  font-size: 16px;
  opacity: 0.9;
  margin-bottom: 28px;
}
.service-hero-features {
  display: flex;
  gap: 28px;
  margin-bottom: 32px;
}
.service-hero-feat {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  opacity: 0.9;
}
.service-hero-feat::before {
  content: '✓';
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--color-accent);
  color: #fff;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

/* 服务搜索 */
.service-search {
  display: flex;
  max-width: 720px;
  height: 56px;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0,0,0,0.2);
}
.service-search input {
  flex: 1;
  padding: 0 24px;
  border: none;
  outline: none;
  font-size: 15px;
  height: 100%;
}
.service-search button {
  width: 150px;
  background: var(--color-accent);
  color: #fff;
  border: none;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.2s;
}
.service-search button:hover {
  background: var(--color-accent-dark);
}

/* 数据条 */
.service-stats-bar {
  display: flex;
  gap: 48px;
  margin-top: 30px;
}
.service-stat-item {
  display: flex;
  flex-direction: column;
}
.service-stat-num {
  font-size: 26px;
  font-weight: 700;
  color: var(--color-accent);
}
.service-stat-label {
  font-size: 13px;
  opacity: 0.85;
  margin-top: 2px;
}

/* 服务分类导航（6列宫格） */
.service-category-grid {
  background: #fff;
  border-radius: 12px;
  padding: 28px;
  margin-top: -40px;
  position: relative;
  z-index: 10;
  box-shadow: 0 8px 32px rgba(26,54,93,0.12);
}
.service-category-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.service-category-title::before {
  content: '';
  width: 4px;
  height: 20px;
  background: var(--color-accent);
  border-radius: 2px;
}
.service-category-items {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 10px;
}
.service-cat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 18px 10px;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
}
.service-cat-item:hover {
  background: rgba(214,158,46,0.08);
  }
.service-cat-icon {
  width: 54px;
  height: 54px;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  transition: all 0.2s;
}
.service-cat-item:hover .service-cat-icon {
  background: linear-gradient(135deg, #FFF5E6, #FFE4B5);
}
.service-cat-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-primary);
}
.service-cat-sub {
  font-size: 11px;
  color: var(--color-text-muted);
}

/* 服务排行榜标题栏 */
.rank-floor-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}
.rank-floor-title {
  display: flex;
  align-items: center;
  gap: 12px;
}
.rank-floor-title h2 {
  font-size: 24px;
  font-weight: 800;
  color: var(--color-text-primary);
}
.rank-floor-title h2::before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 28px;
  background: linear-gradient(to bottom, var(--color-accent), var(--color-accent-dark));
  border-radius: 3px;
  margin-right: 12px;
  vertical-align: middle;
}
.rank-floor-subtitle {
  font-size: 13px;
  color: var(--color-text-muted);
}
.rank-tabs {
  display: flex;
  gap: 4px;
  background: var(--color-bg);
  border-radius: 8px;
  padding: 4px;
}
.rank-tabs a {
  padding: 8px 20px;
  font-size: 13px;
  color: var(--color-text-secondary);
  border-radius: 6px;
  transition: all 0.2s;
  white-space: nowrap;
}
.rank-tabs a.active,
.rank-tabs a:hover {
  background: #fff;
  color: var(--color-accent);
  font-weight: 600;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

/* 服务商卡片（列表式） */
.service-provider-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.service-provider-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 24px;
  display: flex;
  gap: 24px;
  transition: all 0.3s;
  cursor: pointer;
  position: relative;
}
.service-provider-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 8px 28px rgba(26,54,93,0.12);
}
.sp-rank {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 800;
  color: #fff;
  background: #CBD5E0;
}
.sp-rank.gold { background: linear-gradient(135deg, #D69E2E, #E6B03A); }
.sp-rank.silver { background: linear-gradient(135deg, #A0AEC0, #CBD5E0); }
.sp-rank.copper { background: linear-gradient(135deg, #C05621, #DD6B20); }

.sp-logo {
  width: 80px;
  height: 80px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 14px;
  color: var(--color-primary);
}
.sp-info {
  flex: 1;
  min-width: 0;
}
.sp-name-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}
.sp-name {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
}
.sp-name:hover {
  color: var(--color-primary);
}
.sp-level-badge {
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 600;
  border-radius: 4px;
}
.level-gold { background: linear-gradient(135deg, #FFD700, #FFA500); color: #7B3F00; }
.level-diamond { background: linear-gradient(135deg, #667eea, #764ba2); color: #fff; }
.level-crown { background: linear-gradient(135deg, #D69E2E, #B08020); color: #fff; }

.sp-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}
.sp-tag {
  padding: 2px 8px;
  font-size: 11px;
  border-radius: 3px;
}
.tag-crown { background: #FFF5E6; color: #C05621; }
.tag-guarantee { background: #E6FFFA; color: #2C7A7B; }
.tag-enterprise { background: #EBF8FF; color: #2B6CB0; }
.tag-good-praise { background: #F0FFF4; color: #276749; }
.tag-fast { background: #FAF5FF; color: #6B46C1; }
.tag-quality { background: #FFF5F5; color: #C53030; }
.tag-team { background: #FFFFF0; color: #975A16; }
.tag-hot { background: #FFEDD5; color: #9A3412; }

.sp-service {
  font-size: 13px;
  color: var(--color-text-secondary);
  margin-bottom: 10px;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.sp-meta {
  display: flex;
  gap: 20px;
  font-size: 12px;
  color: var(--color-text-muted);
  flex-wrap: wrap;
}
.sp-meta span strong {
  color: var(--color-accent);
  font-weight: 700;
  margin-right: 2px;
}
.sp-side {
  flex-shrink: 0;
  width: 200px;
  border-left: 1px solid var(--color-border);
  padding-left: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.sp-score {
  text-align: center;
  margin-bottom: 12px;
}
.sp-score-num {
  font-size: 32px;
  font-weight: 800;
  color: var(--color-accent);
  line-height: 1;
}
.sp-score-stars {
  font-size: 12px;
  color: var(--color-accent);
  margin-top: 6px;
}
.sp-score-label {
  font-size: 11px;
  color: var(--color-text-muted);
  margin-top: 2px;
}
.btn-hire {
  display: block;
  width: 100%;
  height: 38px;
  line-height: 38px;
  text-align: center;
  background: var(--color-accent);
  color: #fff;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  transition: background 0.2s;
}
.btn-hire:hover {
  background: var(--color-accent-dark);
  color: #fff;
}
.btn-consult {
  display: block;
  width: 100%;
  height: 34px;
  line-height: 32px;
  text-align: center;
  border: 1px solid var(--color-primary);
  color: var(--color-primary);
  border-radius: 6px;
  font-size: 13px;
  margin-top: 8px;
  transition: all 0.2s;
}
.btn-consult:hover {
  background: var(--color-primary);
  color: #fff;
}

/* 服务详情页 */
.service-detail-hero {
  background: linear-gradient(135deg, #1A365D 0%, #0F2440 100%);
  padding: 50px 0;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.service-detail-hero .container {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 36px;
}
.sp-avatar-big {
  width: 140px;
  height: 140px;
  flex-shrink: 0;
  background: #fff;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 700;
  color: var(--color-primary);
  box-shadow: 0 8px 24px rgba(0,0,0,0.2);
}
.sp-main-info {
  flex: 1;
}
.sp-main-info h1 {
  font-size: 30px;
  font-weight: 700;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.sp-slogan {
  font-size: 14px;
  opacity: 0.8;
  margin-bottom: 16px;
}
.sp-badge-row {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.sp-badge-row .sp-badge {
  padding: 4px 12px;
  font-size: 12px;
  border-radius: 20px;
  background: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.2);
}
.sp-badge-row .sp-badge.gold {
  background: var(--color-accent);
  border-color: var(--color-accent);
  font-weight: 600;
}
.sp-detail-stats {
  display: flex;
  gap: 40px;
  margin-top: 20px;
}
.sp-detail-stat .num {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-accent);
}
.sp-detail-stat .label {
  font-size: 12px;
  opacity: 0.7;
  margin-top: 2px;
}

/* 详情Tab */
.service-tabs {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: 0;
  z-index: 100;
}
.service-tabs ul {
  display: flex;
}
.service-tabs li a {
  display: block;
  padding: 18px 28px;
  font-size: 15px;
  color: var(--color-text-secondary);
  border-bottom: 2px solid transparent;
  transition: all 0.2s;
}
.service-tabs li a.active,
.service-tabs li a:hover {
  color: var(--color-accent);
  border-bottom-color: var(--color-accent);
  font-weight: 600;
}

/* 案例展示 */
.case-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.case-item {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.2s;
}
.case-item:hover {
  border-color: var(--color-accent);
  box-shadow: 0 6px 20px rgba(26,54,93,0.1);
}
.case-img {
  height: 160px;
  background: linear-gradient(135deg, #E2E8F0, #CBD5E0);
  position: relative;
}
.case-category {
  position: absolute;
  top: 10px;
  left: 10px;
  background: rgba(0,0,0,0.6);
  color: #fff;
  padding: 3px 10px;
  font-size: 11px;
  border-radius: 4px;
}
.case-info {
  padding: 12px 14px;
}
.case-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 6px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.case-meta {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: var(--color-text-muted);
}

/* 评价区域 */
.review-item {
  padding: 18px 0;
  border-bottom: 1px solid var(--color-border);
}
.review-item:last-child {
  border-bottom: none;
}
.review-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
.review-user {
  display: flex;
  align-items: center;
  gap: 10px;
}
.review-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-primary), var(--color-accent));
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
}
.review-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-primary);
}
.review-stars {
  color: var(--color-accent);
  font-size: 13px;
}
.review-time {
  font-size: 12px;
  color: var(--color-text-muted);
}
.review-content {
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.7;
}
.review-project {
  font-size: 12px;
  color: var(--color-primary);
  margin-top: 8px;
  background: #EBF8FF;
  display: inline-block;
  padding: 2px 10px;
  border-radius: 4px;
}

/* 侧边栏联系卡片 */
.service-contact-card {
  background: #fff;
  border-radius: 10px;
  padding: 24px;
  margin-bottom: 18px;
  border-top: 4px solid var(--color-accent);
}
.service-contact-card h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 16px;
}
.contact-row {
  display: flex;
  gap: 10px;
  margin-bottom: 12px;
  font-size: 13px;
}
.contact-row .label {
  color: var(--color-text-muted);
  width: 60px;
  flex-shrink: 0;
}
.contact-row .value {
  color: var(--color-text-primary);
  flex: 1;
  font-weight: 500;
}
.btn-instant-chat {
  display: block;
  width: 100%;
  height: 42px;
  line-height: 42px;
  text-align: center;
  background: var(--color-accent);
  color: #fff;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 600;
  margin-top: 16px;
  transition: background 0.2s;
}
.btn-instant-chat:hover {
  background: var(--color-accent-dark);
  color: #fff;
}

/* 服务能力雷达 */
.capability-radar-list {
  background: var(--color-bg);
  border-radius: 8px;
  padding: 16px 20px;
}
.capability-radar-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 0;
}
.cap-name {
  width: 80px;
  font-size: 13px;
  color: var(--color-text-secondary);
  flex-shrink: 0;
}
.cap-bar {
  flex: 1;
  height: 8px;
  background: #E2E8F0;
  border-radius: 4px;
  overflow: hidden;
}
.cap-fill {
  height: 100%;
  background: linear-gradient(90deg, var(--color-accent), var(--color-accent-light));
  border-radius: 4px;
}
.cap-score {
  width: 40px;
  text-align: right;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-accent);
  flex-shrink: 0;
}

/* 服务分类排行榜 */
.service-rank-cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-bottom: 28px;
}
.service-rank-card {
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  border: 1px solid var(--color-border);
  transition: all 0.3s;
}
.service-rank-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 6px 20px rgba(26,54,93,0.1);
}
.service-rank-card h3 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.service-rank-card h3::before {
  content: '🏆';
  font-size: 18px;
}
.rank-mini-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px dashed var(--color-border);
  font-size: 13px;
}
.rank-mini-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.rank-mini-no {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  background: #CBD5E0;
  color: #fff;
}
.rank-mini-item:nth-child(2) .rank-mini-no { background: linear-gradient(135deg, #D69E2E, #E6B03A); }
.rank-mini-item:nth-child(3) .rank-mini-no { background: linear-gradient(135deg, #A0AEC0, #CBD5E0); }
.rank-mini-item:nth-child(4) .rank-mini-no { background: linear-gradient(135deg, #C05621, #DD6B20); }
.rank-mini-name {
  flex: 1;
  color: var(--color-text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rank-mini-item:hover .rank-mini-name {
  color: var(--color-primary);
}
.rank-mini-score {
  font-size: 12px;
  color: var(--color-accent);
  font-weight: 600;
  flex-shrink: 0;
}


/* ========== 商协会优化（AI信源增强） ========== */

/* Hero区 */
.assoc-hero {
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 50%, #D69E2E 100%);
  padding: 60px 0 90px;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.assoc-hero::before {
  content: '';
  position: absolute;
  top: -150px;
  right: -100px;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 60%);
  border-radius: 50%;
}
.assoc-hero::after {
  content: '';
  position: absolute;
  bottom: -100px;
  left: 15%;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(214,158,46,0.25) 0%, transparent 60%);
  border-radius: 50%;
}
.assoc-hero .container { position: relative; z-index: 2; }
.assoc-hero-title {
  font-size: 42px;
  font-weight: 800;
  margin-bottom: 10px;
}
.assoc-hero-title em {
  color: #FFD700;
  font-style: normal;
}
.assoc-hero-desc {
  font-size: 17px;
  opacity: 0.9;
  margin-bottom: 30px;
  max-width: 700px;
  line-height: 1.7;
}
.assoc-hero-badges {
  display: flex;
  gap: 12px;
  margin-bottom: 30px;
  flex-wrap: wrap;
}
.assoc-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  background: rgba(255,255,255,0.12);
  backdrop-filter: blur(8px);
  border-radius: 20px;
  font-size: 13px;
  border: 1px solid rgba(255,255,255,0.2);
}
.assoc-hero-badge::before {
  content: '✓';
  font-weight: 700;
  color: var(--color-accent);
}

/* Hero搜索框 */
.assoc-search {
  display: flex;
  max-width: 720px;
  height: 54px;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0,0,0,0.2);
}
.assoc-search input {
  flex: 1;
  padding: 0 22px;
  border: none;
  outline: none;
  font-size: 15px;
  height: 100%;
}
.assoc-search button {
  width: 140px;
  background: var(--color-primary);
  color: #fff;
  border: none;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
}
.assoc-search button:hover {
  background: var(--color-primary-light);
}

/* Hero数据 */
.assoc-stats {
  display: flex;
  gap: 52px;
  margin-top: 32px;
}
.assoc-stat {
  display: flex;
  flex-direction: column;
}
.assoc-stat-num {
  font-size: 28px;
  font-weight: 700;
  color: var(--color-accent);
}
.assoc-stat-label {
  font-size: 13px;
  opacity: 0.85;
  margin-top: 4px;
}

/* 双认证/双体系 悬浮条 */
.assoc-privilege-bar {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 8px 32px rgba(26,54,93,0.12);
  margin-top: 16px;
  position: relative;
  z-index: 10;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.assoc-priv-item {
  padding: 26px 24px;
  display: flex;
  gap: 14px;
  align-items: center;
  border-right: 1px solid var(--color-border);
  transition: background 0.2s;
}
.assoc-priv-item:last-child { border-right: none; }
.assoc-priv-item:hover { background: var(--color-bg); }
.assoc-priv-icon {
  width: 52px;
  height: 52px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #FFF5E6, #FFE4B5);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
}
.assoc-priv-text h4 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 4px;
}
.assoc-priv-text p {
  font-size: 12px;
  color: var(--color-text-muted);
  line-height: 1.5;
}
@media (max-width: 1023px) {
  .assoc-privilege-bar { grid-template-columns: repeat(2, 1fr); }
  .assoc-priv-item { padding: 18px 16px; }
  .assoc-priv-item:nth-child(2n) { border-right: none; }
  .assoc-priv-item:nth-child(1), .assoc-priv-item:nth-child(2) { border-bottom: 1px solid var(--color-border); }
  .assoc-priv-icon { width: 44px; height: 44px; font-size: 22px; }
}
@media (max-width: 480px) {
  .assoc-priv-item { gap: 10px; }
  .assoc-priv-text h4 { font-size: 14px; }
}

/* 商协会分类 */
.assoc-category-bar {
  background: #fff;
  border-radius: 10px;
  padding: 20px 24px;
  margin-bottom: 24px;
}
.assoc-category-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.assoc-category-title::before {
  content: '';
  width: 4px;
  height: 18px;
  background: var(--color-accent);
  border-radius: 2px;
}
.assoc-category-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.assoc-category-tags a {
  padding: 6px 16px;
  font-size: 13px;
  color: var(--color-text-secondary);
  border-radius: 20px;
  background: var(--color-bg);
  transition: all 0.2s;
}
.assoc-category-tags a:hover,
.assoc-category-tags a.active {
  background: var(--color-primary);
  color: #fff;
}

/* 商协会卡片（增强版） */
.assoc-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 24px;
  margin-bottom: 16px;
  display: flex;
  gap: 24px;
  transition: all 0.3s;
  cursor: pointer;
  position: relative;
}
.assoc-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 8px 28px rgba(26,54,93,0.12);
}
.assoc-rank {
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 800;
  color: #fff;
  background: #CBD5E0;
}
.assoc-rank.gold { background: linear-gradient(135deg, #D69E2E, #E6B03A); }
.assoc-rank.silver { background: linear-gradient(135deg, #A0AEC0, #CBD5E0); }
.assoc-rank.copper { background: linear-gradient(135deg, #C05621, #DD6B20); }

.assoc-logo {
  width: 90px;
  height: 90px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 16px;
  color: var(--color-primary);
  text-align: center;
  line-height: 1.3;
  padding: 8px;
}
.assoc-info {
  flex: 1;
  min-width: 0;
}
.assoc-name-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}
.assoc-name {
  font-size: 19px;
  font-weight: 700;
  color: var(--color-text-primary);
}
.assoc-name:hover { color: var(--color-primary); }
.assoc-ename {
  font-size: 12px;
  color: var(--color-text-muted);
}

.assoc-cert-row {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}
.assoc-cert-tag {
  padding: 2px 10px;
  font-size: 11px;
  border-radius: 4px;
}
.cert-5a { background: linear-gradient(135deg, #FFD700, #FFA500); color: #7B3F00; font-weight: 700; }
.cert-national { background: #EBF8FF; color: #2B6CB0; border: 1px solid #BEE3F8; }
.cert-official { background: #F0FFF4; color: #276749; border: 1px solid #9AE6B4; }
.cert-aa { background: #FFF5E6; color: #C05621; border: 1px solid #FBD38D; }
.cert-pro { background: #FAF5FF; color: #6B46C1; border: 1px solid #D6BCFA; }
.cert-industry { background: #EBF8FF; color: #2C5282; border: 1px solid #90CDF4; }
.cert-4a { background: linear-gradient(135deg, #C0C0C0, #A0AEC0); color: #fff; font-weight: 600; }
.cert-academic { background: #F0FFF4; color: #276749; border: 1px solid #9AE6B4; }
.cert-united { background: #FFF5F5; color: #C53030; border: 1px solid #FEB2B2; }
.cert-foundation { background: #FAF5FF; color: #553C9A; border: 1px solid #D6BCFA; }
.cert-local { background: #FFFAF0; color: #975A16; border: 1px solid #FBD38D; }
.cert-chamber { background: #FFFFF0; color: #975A16; border: 1px solid #F6E05E; }
.cert-3a { background: linear-gradient(135deg, #CD7F32, #B8860B); color: #fff; font-weight: 600; }
.cert-research { background: #E6FFFA; color: #234E52; border: 1px solid #81E6D9; }
.cert-promotion { background: #FFF5F5; color: #742A2A; border: 1px solid #FC8181; }
.cert-youth { background: #F0FFF4; color: #22543D; border: 1px solid #68D391; }
.cert-women { background: #FFF5F7; color: #742A2A; border: 1px solid #FBB6CE; }
.cert-fellowship { background: #EDF2F7; color: #2D3748; border: 1px solid #CBD5E0; }
.cert-regional { background: #EBF4FF; color: #2C5282; border: 1px solid #A3BFFA; }
.cert-finance { background: #FFFFF0; color: #744210; border: 1px solid #F6E05E; }
.cert-capital { background: #FAF5FF; color: #44337A; border: 1px solid #B794F4; }
.cert-official { background: #EDF2F7; color: #2D3748; border: 1px solid #A0AEC0; }

.assoc-desc {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin-bottom: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* 会员企业展示栏 */
.member-preview {
  background: var(--color-bg);
  border-radius: 6px;
  padding: 10px 14px;
  margin-bottom: 10px;
}
.member-preview-label {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-bottom: 6px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.member-preview-label strong {
  color: var(--color-text-primary);
  font-weight: 600;
}
.member-preview-count {
  color: var(--color-accent);
  font-weight: 600;
}
.member-preview-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.member-preview-item {
  padding: 2px 10px;
  font-size: 12px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 4px;
  color: var(--color-text-secondary);
  transition: all 0.2s;
}
.member-preview-item:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
}

.assoc-meta {
  display: flex;
  gap: 20px;
  font-size: 12px;
  color: var(--color-text-muted);
  flex-wrap: wrap;
}
.assoc-meta span strong {
  color: var(--color-text-primary);
  font-weight: 600;
  margin-left: 4px;
}

.assoc-card-side {
  flex-shrink: 0;
  width: 180px;
  border-left: 1px solid var(--color-border);
  padding-left: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.assoc-score {
  text-align: center;
}
.assoc-score-num {
  font-size: 30px;
  font-weight: 800;
  color: var(--color-accent);
  line-height: 1;
}
.assoc-score-label {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-top: 4px;
}
.assoc-score-stars {
  color: var(--color-accent);
  font-size: 12px;
  margin-top: 6px;
}
.btn-assoc-detail {
  display: block;
  width: 100%;
  height: 36px;
  line-height: 36px;
  text-align: center;
  background: var(--color-primary);
  color: #fff;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  transition: background 0.2s;
  margin-top: 12px;
}
.btn-assoc-detail:hover {
  background: var(--color-primary-light);
  color: #fff;
}
.btn-assoc-join {
  display: block;
  width: 100%;
  height: 32px;
  line-height: 30px;
  text-align: center;
  border: 1px solid var(--color-accent);
  color: var(--color-accent);
  border-radius: 6px;
  font-size: 12px;
  margin-top: 6px;
  transition: all 0.2s;
}
.btn-assoc-join:hover {
  background: var(--color-accent);
  color: #fff;
}

/* 商协会详情页 */
.assoc-detail-hero {
  background: linear-gradient(135deg, #1A365D 0%, #0F2440 100%);
  padding: 50px 0;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.assoc-detail-hero .container {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 40px;
  align-items: flex-start;
}
.assoc-logo-big {
  width: 150px;
  height: 150px;
  flex-shrink: 0;
  background: #fff;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  text-align: center;
  line-height: 1.4;
  padding: 16px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.2);
}
.assoc-main-info { flex: 1; min-width: 0; }
.assoc-main-info h1 {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 6px;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.assoc-main-info .ename {
  font-size: 14px;
  opacity: 0.7;
  margin-bottom: 12px;
}
.assoc-detail-badges {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}
.assoc-detail-badges .badge {
  padding: 4px 12px;
  font-size: 12px;
  border-radius: 4px;
  background: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.2);
}
.assoc-detail-badges .badge.gold {
  background: var(--color-accent);
  border-color: var(--color-accent);
  font-weight: 600;
}
.assoc-detail-data {
  display: flex;
  gap: 40px;
  margin-top: 20px;
}
.assoc-detail-data .item .num {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-accent);
}
.assoc-detail-data .item .label {
  font-size: 12px;
  opacity: 0.7;
  margin-top: 2px;
}

/* 详情Tab */
.assoc-tabs {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: 0;
  z-index: 100;
}
.assoc-tabs ul { display: flex; flex-wrap: wrap; }
.assoc-tabs li a {
  display: block;
  padding: 18px 24px;
  font-size: 14px;
  color: var(--color-text-secondary);
  border-bottom: 2px solid transparent;
  transition: all 0.2s;
}
.assoc-tabs li a.active,
.assoc-tabs li a:hover {
  color: var(--color-accent);
  border-bottom-color: var(--color-accent);
  font-weight: 600;
}

/* 会员企业名录 */
.member-directory-section {
  margin-bottom: 30px;
}
.member-directory-section h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 16px;
  padding-left: 12px;
  border-left: 4px solid var(--color-accent);
}
.member-filter-row {
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}
.member-filter-row a {
  padding: 5px 14px;
  font-size: 12px;
  color: var(--color-text-secondary);
  border-radius: 16px;
  background: var(--color-bg);
  transition: all 0.2s;
}
.member-filter-row a.active,
.member-filter-row a:hover {
  background: var(--color-primary);
  color: #fff;
}

.member-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.member-item {
  display: flex;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  transition: all 0.2s;
  cursor: pointer;
  background: #fff;
}
.member-item:hover {
  border-color: var(--color-accent);
  box-shadow: 0 4px 12px rgba(26,54,93,0.08);
}
.member-item-logo {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  color: var(--color-primary);
  text-align: center;
  line-height: 1.3;
  padding: 4px;
}
.member-item-info {
  flex: 1;
  min-width: 0;
}
.member-item-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.member-item-name:hover { color: var(--color-primary); }
.member-item-tag {
  display: inline-block;
  padding: 1px 8px;
  font-size: 11px;
  border-radius: 3px;
  background: #EBF8FF;
  color: #2B6CB0;
  margin-right: 4px;
}
.member-item-tag.vice { background: #FFF5E6; color: #C05621; }
.member-item-tag.standing { background: #F0FFF4; color: #276749; }
.member-item-tag.normal { background: var(--color-bg); color: var(--color-text-secondary); }
.member-item-tag.group { background: #EBF8FF; color: #2B6CB0; border: 1px solid #BEE3F8; }

/* 会员行业分布 */
.member-industry-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-top: 4px;
}
.member-industry-block {
  background: var(--color-bg);
  border-radius: 8px;
  padding: 14px;
  border: 1px solid var(--color-border);
}
.member-industry-block h4 {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--color-border);
}
.mib-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.mib-list span {
  font-size: 12px;
  color: var(--color-text-secondary);
  background: #fff;
  padding: 3px 8px;
  border-radius: 4px;
  border: 1px solid var(--color-border);
  line-height: 1.4;
}

/* 会员地区分布 */
.member-region-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-top: 4px;
}
.mrg-region-block {
  background: var(--color-bg);
  border-radius: 8px;
  padding: 14px;
  border: 1px solid var(--color-border);
}
.mrg-region-block h5 {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--color-border);
}
.mrg-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.mrg-list span {
  font-size: 12px;
  color: var(--color-text-secondary);
  background: #fff;
  padding: 3px 8px;
  border-radius: 4px;
  border: 1px solid var(--color-border);
  line-height: 1.4;
  cursor: pointer;
  transition: all 0.2s ease;
}
.mrg-list span:hover {
  background: var(--color-primary);
  color: #fff;
  border-color: var(--color-primary);
}
@media (max-width: 1023px) {
  .member-region-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .member-region-grid { grid-template-columns: 1fr; }
}
@media (max-width: 1023px) {
  .member-industry-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .member-industry-grid { grid-template-columns: 1fr; }
}

.member-item-desc {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-top: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 协会领导机构 */
.leadership-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.leader-card {
  background: var(--color-bg);
  border-radius: 8px;
  padding: 16px;
  text-align: center;
}
.leader-avatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-primary), var(--color-accent));
  margin: 0 auto 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
}
.leader-name {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 2px;
}
.leader-title {
  font-size: 12px;
  color: var(--color-accent);
  font-weight: 600;
  margin-bottom: 4px;
}
.leader-org {
  font-size: 12px;
  color: var(--color-text-muted);
}

/* 协会基本信息表 */
.assoc-info-table {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  background: var(--color-bg);
  border-radius: 8px;
  overflow: hidden;
}
.assoc-info-row {
  display: flex;
  padding: 14px 18px;
  font-size: 13px;
  border-bottom: 1px solid #fff;
}
.assoc-info-row:nth-last-child(-n+2) { border-bottom: none; }
.assoc-info-row .info-label {
  width: 100px;
  color: var(--color-text-muted);
  flex-shrink: 0;
}
.assoc-info-row .info-value {
  color: var(--color-text-primary);
  flex: 1;
  font-weight: 500;
}

/* 侧栏AI信源标识 */
.ai-source-card {
  background: linear-gradient(135deg, #F0FFF4, #C6F6D5);
  border-radius: 10px;
  padding: 18px;
  margin-bottom: 18px;
  border: 1px solid #9AE6B4;
}
.ai-source-card h4 {
  color: #276749;
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.ai-source-card p {
  font-size: 12px;
  color: #2F855A;
  line-height: 1.6;
  margin-bottom: 8px;
}
.ai-source-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.ai-source-list li {
  font-size: 12px;
  color: #276749;
  padding: 3px 0;
  display: flex;
  align-items: center;
  gap: 6px;
}
.ai-source-list li::before {
  content: '✓';
  font-weight: 700;
  color: #38A169;
}


/* ========== 招商加盟 maigoo风格 ========== */

/* Hero */
.franchise-hero {
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 50%, #D69E2E 100%);
  padding: 55px 0 80px;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.franchise-hero::before {
  content: '';
  position: absolute;
  top: -120px;
  right: -60px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(255,255,255,0.12) 0%, transparent 60%);
  border-radius: 50%;
}
.franchise-hero .container { position: relative; z-index: 2; }
.franchise-hero-title {
  font-size: 42px;
  font-weight: 800;
  margin-bottom: 10px;
}
.franchise-hero-title em {
  color: #FFD700;
  font-style: normal;
}
.franchise-hero-desc {
  font-size: 16px;
  opacity: 0.9;
  margin-bottom: 26px;
  max-width: 650px;
  line-height: 1.7;
}
.franchise-hero-tags {
  display: flex;
  gap: 12px;
  margin-bottom: 28px;
  flex-wrap: wrap;
}
.franchise-hero-tag {
  padding: 7px 16px;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 20px;
  font-size: 13px;
}
.franchise-search {
  display: flex;
  max-width: 720px;
  height: 54px;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0,0,0,0.2);
}
.franchise-search input {
  flex: 1;
  padding: 0 22px;
  border: none;
  outline: none;
  font-size: 15px;
  height: 100%;
}
.franchise-search button {
  width: 140px;
  background: var(--color-accent);
  color: #fff;
  border: none;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
}
.franchise-stats {
  display: flex;
  gap: 48px;
  margin-top: 30px;
}
.franchise-stat .num {
  font-size: 26px;
  font-weight: 700;
  color: var(--color-accent);
}
.franchise-stat .label {
  font-size: 13px;
  opacity: 0.85;
  margin-top: 4px;
}

/* 行业分类宫格 */
.franchise-cats {
  background: #fff;
  border-radius: 12px;
  padding: 28px;
  margin-top: -45px;
  position: relative;
  z-index: 10;
  box-shadow: 0 8px 32px rgba(26,54,93,0.12);
}
.franchise-cats-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.franchise-cats-title::before {
  content: '';
  width: 4px;
  height: 20px;
  background: var(--color-accent);
  border-radius: 2px;
}
.franchise-cat-grid {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  gap: 8px;
}
.franchise-cat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 14px 6px;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
}
.franchise-cat-item:hover {
  background: rgba(214,158,46,0.08);
  }
.franchise-cat-icon {
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
}
.franchise-cat-item:hover .franchise-cat-icon {
  background: linear-gradient(135deg, #FFF5E6, #FFE4B5);
}
.franchise-cat-name {
  font-size: 13px;
  color: var(--color-text-secondary);
}
.franchise-cat-item:hover .franchise-cat-name {
  color: var(--color-accent);
  font-weight: 600;
}

/* 楼层标题 */
.floor-title-mg {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}
.floor-title-mg h2 {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-text-primary);
  display: flex;
  align-items: center;
  gap: 10px;
}
.floor-title-mg h2::before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 26px;
  background: linear-gradient(to bottom, var(--color-accent), var(--color-accent-dark));
  border-radius: 3px;
  vertical-align: middle;
}
.floor-title-mg .subtitle {
  font-size: 13px;
  color: var(--color-text-muted);
  margin-left: 10px;
  font-weight: 400;
}
.floor-title-tabs {
  display: flex;
  gap: 4px;
  background: var(--color-bg);
  border-radius: 8px;
  padding: 4px;
}
.floor-title-tabs a {
  padding: 6px 18px;
  font-size: 13px;
  color: var(--color-text-secondary);
  border-radius: 6px;
  transition: all 0.2s;
}
.floor-title-tabs a.active,
.floor-title-tabs a:hover {
  background: #fff;
  color: var(--color-accent);
  font-weight: 600;
  box-shadow: 0 2px 6px rgba(0,0,0,0.06);
}

/* 加盟品牌卡片（maigoo式） */
.franchise-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.franchise-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  overflow: hidden;
  transition: all 0.3s;
  cursor: pointer;
}
.franchise-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 10px 28px rgba(26,54,93,0.14);
  }
.franchise-card-head {
  position: relative;
  height: 120px;
  background: linear-gradient(135deg, #E2E8F0 0%, #CBD5E0 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}
.franchise-card-head::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 50%, rgba(26,54,93,0.08) 100%);
}
.franchise-card-logo {
  width: 80px;
  height: 80px;
  background: #fff;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 14px;
  color: var(--color-primary);
  z-index: 2;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.franchise-rank-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
  z-index: 2;
}
.franchise-rank-badge.gold { background: linear-gradient(135deg, #D69E2E, #E6B03A); }
.franchise-rank-badge.silver { background: linear-gradient(135deg, #A0AEC0, #CBD5E0); }
.franchise-rank-badge.copper { background: linear-gradient(135deg, #C05621, #DD6B20); }

.franchise-card-body {
  padding: 14px;
}
.franchise-card-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.franchise-card-tags {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  margin-bottom: 10px;
  min-height: 20px;
}
.f-tag {
  padding: 2px 8px;
  font-size: 11px;
  border-radius: 3px;
}
.f-tag-hot { background: #FFF5F5; color: #C53030; }
.f-tag-new { background: #F0FFF4; color: #276749; }
.f-tag-brand { background: #FFF5E6; color: #C05621; }
.f-tag-quality { background: #EBF8FF; color: #2B6CB0; }
.f-tag-chain { background: #FAF5FF; color: #6B46C1; }

.franchise-invest-row {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px dashed var(--color-border);
}
.franchise-invest-label {
  font-size: 12px;
  color: var(--color-text-muted);
}
.franchise-invest-amount {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-danger);
}
.franchise-invest-unit {
  font-size: 12px;
  color: var(--color-text-secondary);
}

.franchise-meta-row {
  display: flex;
  gap: 14px;
  font-size: 12px;
  color: var(--color-text-muted);
}
.franchise-meta-row span strong {
  color: var(--color-text-primary);
  font-weight: 600;
}

.franchise-card-action {
  display: flex;
  gap: 8px;
  margin-top: 12px;
}
.f-btn-primary {
  flex: 1;
  height: 32px;
  line-height: 32px;
  text-align: center;
  background: var(--color-accent);
  color: #fff;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  transition: background 0.2s;
}
.f-btn-primary:hover { background: var(--color-accent-dark); color: #fff; }
.f-btn-ghost {
  width: 32px;
  height: 32px;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  color: var(--color-text-muted);
  transition: all 0.2s;
}
.f-btn-ghost:hover { border-color: var(--color-primary); color: var(--color-primary); }

/* 热门加盟榜 */
.hot-franchise-list {
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 18px;
}
.hot-franchise-list h3 {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.hot-franchise-list h3::before { content: '🔥'; font-size: 18px; }
.hot-f-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px dashed var(--color-border);
  cursor: pointer;
}
.hot-f-item:last-child { border-bottom: none; }
.hot-f-item:hover .hot-f-name { color: var(--color-accent); }
.hot-f-no {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  background: #CBD5E0;
  color: #fff;
}
.hot-f-item:nth-child(2) .hot-f-no { background: linear-gradient(135deg, #D69E2E, #E6B03A); }
.hot-f-item:nth-child(3) .hot-f-no { background: linear-gradient(135deg, #A0AEC0, #CBD5E0); }
.hot-f-item:nth-child(4) .hot-f-no { background: linear-gradient(135deg, #C05621, #DD6B20); }
.hot-f-name {
  flex: 1;
  font-size: 13px;
  color: var(--color-text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hot-f-invest {
  font-size: 12px;
  color: var(--color-danger);
  font-weight: 600;
  flex-shrink: 0;
}

/* ========== 精英名人堂 ========== */
.hall-of-fame-hero {
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 50%, #D69E2E 100%);
  padding: 60px 0 80px;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.hall-of-fame-hero::before {
  content: '';
  position: absolute;
  top: -100px;
  right: -50px;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(255,215,0,0.15) 0%, transparent 60%);
  border-radius: 50%;
}
.hall-of-fame-hero .container { position: relative; z-index: 2; }
.hall-title {
  font-size: 42px;
  font-weight: 800;
  margin-bottom: 8px;
  letter-spacing: 2px;
}
.hall-title em {
  color: #FFD700;
  font-style: normal;
}
.hall-subtitle {
  font-size: 17px;
  opacity: 0.9;
  margin-bottom: 28px;
}
.hall-features {
  display: flex;
  gap: 24px;
  margin-bottom: 30px;
  flex-wrap: wrap;
}
.hall-feat {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 18px;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 24px;
  font-size: 13px;
}
.hall-feat::before {
  content: '★';
  color: var(--color-accent);
  font-weight: 700;
}
.hall-search {
  display: flex;
  max-width: 650px;
  height: 52px;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0,0,0,0.2);
}
.hall-search input {
  flex: 1;
  padding: 0 22px;
  border: none;
  outline: none;
  font-size: 15px;
  height: 100%;
}
.hall-search button {
  width: 130px;
  background: var(--color-primary);
  color: #fff;
  border: none;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
}
.hall-stats {
  display: flex;
  gap: 44px;
  margin-top: 28px;
}
.hall-stat .num {
  font-size: 26px;
  font-weight: 700;
  color: var(--color-accent);
}
.hall-stat .label {
  font-size: 13px;
  opacity: 0.85;
  margin-top: 4px;
}

/* 名人分类 */
.hall-category-bar {
  background: #fff;
  border-radius: 10px;
  padding: 20px 24px;
  margin-top: -40px;
  position: relative;
  z-index: 10;
  box-shadow: 0 6px 24px rgba(26,54,93,0.1);
}
.hall-cat-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.hall-cat-title::before {
  content: '';
  width: 4px;
  height: 18px;
  background: var(--color-accent);
  border-radius: 2px;
}
.hall-cat-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.hall-cat-tags a {
  padding: 7px 18px;
  font-size: 13px;
  color: var(--color-text-secondary);
  border-radius: 20px;
  background: var(--color-bg);
  transition: all 0.2s;
}
.hall-cat-tags a:hover,
.hall-cat-tags a.active {
  background: var(--color-accent);
  color: #fff;
  font-weight: 600;
}

/* 名人卡片网格 */
.fame-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.fame-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.3s;
  cursor: pointer;
  position: relative;
}
.fame-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 12px 32px rgba(26,54,93,0.15);
  }
.fame-card-photo {
  position: relative;
  height: 200px;
  background: linear-gradient(135deg, #2A4A7D 0%, #1A365D 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.fame-card-photo::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 80%, rgba(214,158,46,0.25) 0%, transparent 60%);
}
.fame-avatar {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 38px;
  font-weight: 700;
  z-index: 2;
  box-shadow: 0 8px 24px rgba(0,0,0,0.3);
  border: 3px solid rgba(255,255,255,0.3);
}
.fame-rank {
  position: absolute;
  top: 12px;
  right: 12px;
  padding: 4px 12px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
  z-index: 2;
}
.fame-rank.gold { background: linear-gradient(135deg, #FFD700, #FFA500); color: #7B3F00; }
.fame-rank.silver { background: linear-gradient(135deg, #E2E8F0, #CBD5E0); color: #2D3748; }
.fame-rank.copper { background: linear-gradient(135deg, #DD6B20, #C05621); }
.fame-badge-honor {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 3px 10px;
  background: rgba(255,255,255,0.2);
  backdrop-filter: blur(6px);
  border-radius: 4px;
  font-size: 11px;
  color: #FFD700;
  z-index: 2;
  border: 1px solid rgba(255,215,0,0.3);
}

.fame-card-body {
  padding: 16px;
  text-align: center;
}
.fame-name {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 4px;
}
.fame-title {
  font-size: 13px;
  color: var(--color-accent);
  font-weight: 600;
  margin-bottom: 6px;
}
.fame-company {
  font-size: 12px;
  color: var(--color-text-secondary);
  margin-bottom: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fame-tags {
  display: flex;
  justify-content: center;
  gap: 4px;
  flex-wrap: wrap;
  margin-bottom: 12px;
}
.fame-tag {
  padding: 2px 8px;
  font-size: 11px;
  background: var(--color-bg);
  color: var(--color-text-muted);
  border-radius: 3px;
}
.fame-stats-row {
  display: flex;
  gap: 0;
  border-top: 1px solid var(--color-border);
  margin: 0 -16px -16px;
  padding: 10px 0;
}
.fame-stat {
  flex: 1;
  text-align: center;
  border-right: 1px solid var(--color-border);
}
.fame-stat:last-child { border-right: none; }
.fame-stat .num {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-primary);
}
.fame-stat .label {
  font-size: 11px;
  color: var(--color-text-muted);
  margin-top: 2px;
}

/* 名人详情Hero */
.fame-detail-hero {
  background: linear-gradient(135deg, #1A365D 0%, #0F2440 100%);
  padding: 50px 0;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.fame-detail-hero .container {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 40px;
  align-items: flex-start;
}
.fame-big-avatar {
  width: 160px;
  height: 160px;
  flex-shrink: 0;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 52px;
  font-weight: 700;
  box-shadow: 0 8px 32px rgba(0,0,0,0.3);
  border: 4px solid rgba(255,215,0,0.3);
}
.fame-main-info { flex: 1; }
.fame-main-info h1 {
  font-size: 34px;
  font-weight: 700;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.fame-position {
  font-size: 18px;
  color: var(--color-accent);
  margin-bottom: 6px;
  font-weight: 600;
}
.fame-company-name {
  font-size: 14px;
  opacity: 0.85;
  margin-bottom: 16px;
}
.fame-person-badges {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.fame-person-badges .badge {
  padding: 4px 14px;
  font-size: 12px;
  border-radius: 4px;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
}
.fame-person-badges .badge.gold {
  background: linear-gradient(135deg, #FFD700, #FFA500);
  color: #7B3F00;
  border-color: transparent;
  font-weight: 600;
}
.fame-person-stats {
  display: flex;
  gap: 40px;
  margin-top: 18px;
}
.fame-person-stats .item .num {
  font-size: 22px;
  font-weight: 700;
  color: var(--color-accent);
}
.fame-person-stats .item .label {
  font-size: 12px;
  opacity: 0.75;
  margin-top: 2px;
}

/* ========== 商业资讯优化 ========== */
.news-hero {
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 50%, #0F2440 100%);
  padding: 55px 0 80px;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.news-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -30px;
  width: 350px;
  height: 350px;
  background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 60%);
  border-radius: 50%;
}
.news-hero .container { position: relative; z-index: 2; }
.news-hero-title {
  font-size: 40px;
  font-weight: 800;
  margin-bottom: 8px;
}
.news-hero-title em { color: var(--color-accent); font-style: normal; }
.news-hero-desc {
  font-size: 16px;
  opacity: 0.9;
  margin-bottom: 24px;
  max-width: 650px;
  line-height: 1.7;
}
.news-search {
  display: flex;
  max-width: 600px;
  height: 48px;
  background: #fff;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(0,0,0,0.15);
}
.news-search input {
  flex: 1;
  padding: 0 20px;
  border: none;
  outline: none;
  font-size: 14px;
}
.news-search button {
  width: 120px;
  background: var(--color-accent);
  color: #fff;
  border: none;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
}

/* 资讯分类 */
.news-category-nav {
  background: #fff;
  border-bottom: 2px solid var(--color-border);
  margin-bottom: 24px;
}
.news-category-nav ul {
  display: flex;
  gap: 0;
  flex-wrap: wrap;
}
.news-category-nav li a {
  display: block;
  padding: 16px 22px;
  font-size: 14px;
  color: var(--color-text-secondary);
  border-bottom: 2px solid transparent;
  margin-bottom: -2px;
  transition: all 0.2s;
  white-space: nowrap;
}
.news-category-nav li a.active,
.news-category-nav li a:hover {
  color: var(--color-accent);
  border-bottom-color: var(--color-accent);
  font-weight: 600;
}

/* 大图头条新闻 */
.top-news-big {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 24px;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
}
.top-news-img {
  position: relative;
  background: linear-gradient(135deg, #2A4A7D, #1A365D);
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.top-news-img .badge {
  position: absolute;
  top: 16px;
  left: 16px;
  padding: 5px 14px;
  background: var(--color-danger);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  border-radius: 4px;
  z-index: 2;
}
.top-news-img .big-title-text {
  font-size: 28px;
  font-weight: 800;
  color: #fff;
  text-align: center;
  padding: 20px;
  line-height: 1.4;
}
.top-news-content {
  padding: 28px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.top-news-category {
  display: inline-block;
  padding: 3px 10px;
  background: rgba(214,158,46,0.1);
  color: var(--color-accent);
  font-size: 12px;
  font-weight: 600;
  border-radius: 4px;
  margin-bottom: 12px;
  width: fit-content;
}
.top-news-title {
  font-size: 22px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 12px;
  line-height: 1.4;
}
.top-news-title:hover { color: var(--color-primary); }
.top-news-summary {
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.7;
  margin-bottom: 18px;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.top-news-meta {
  display: flex;
  gap: 18px;
  font-size: 12px;
  color: var(--color-text-muted);
  flex-wrap: wrap;
}

/* 资讯双列列表 */
.news-list-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.news-item-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 18px;
  display: flex;
  gap: 18px;
  transition: all 0.2s;
  cursor: pointer;
}
.news-item-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 6px 20px rgba(26,54,93,0.1);
}
.news-item-thumb {
  width: 160px;
  height: 100px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #E2E8F0, #CBD5E0);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  color: var(--color-text-muted);
  font-weight: 600;
}
.news-item-body { flex: 1; min-width: 0; }
.news-item-category {
  font-size: 11px;
  color: var(--color-accent);
  font-weight: 600;
  margin-bottom: 6px;
}
.news-item-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 8px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.news-item-card:hover .news-item-title { color: var(--color-primary); }
.news-item-summary {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin-bottom: 8px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.news-item-meta {
  display: flex;
  gap: 14px;
  font-size: 12px;
  color: var(--color-text-muted);
  flex-wrap: wrap;
}

/* 热门资讯侧栏 */
.hot-news-sidebar {
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 18px;
}
.hot-news-sidebar h3 {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.hot-news-sidebar h3::before { content: '🔥'; font-size: 18px; }
.hot-news-item {
  display: flex;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px dashed var(--color-border);
  cursor: pointer;
}
.hot-news-item:last-child { border-bottom: none; }
.hot-news-no {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  background: #CBD5E0;
  color: #fff;
}
.hot-news-item:nth-child(2) .hot-news-no { background: linear-gradient(135deg, #D69E2E, #E6B03A); }
.hot-news-item:nth-child(3) .hot-news-no { background: linear-gradient(135deg, #A0AEC0, #CBD5E0); }
.hot-news-item:nth-child(4) .hot-news-no { background: linear-gradient(135deg, #C05621, #DD6B20); }
.hot-news-title {
  flex: 1;
  font-size: 13px;
  color: var(--color-text-primary);
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.hot-news-item:hover .hot-news-title { color: var(--color-accent); }
.hot-news-views {
  font-size: 11px;
  color: var(--color-text-muted);
  margin-top: 4px;
}


/* ========== 合规与AI信源 ========== */

/* 合规声明条 */
.compliance-notice {
  background: #F7FAFC;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 14px 18px;
  margin-top: 20px;
  font-size: 12px;
  color: var(--color-text-muted);
  line-height: 1.7;
}
.compliance-notice strong {
  color: var(--color-text-secondary);
}

/* AI信源认证标识 */
.ai-source-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  background: #F0FFF4;
  border: 1px solid #9AE6B4;
  border-radius: 20px;
  font-size: 12px;
  color: #276749;
  font-weight: 500;
}
.ai-source-badge::before {
  content: '✓';
  font-weight: 700;
}

/* 页脚声明栏 */
.footer-statement {
  background: var(--color-primary-dark);
  padding: 14px 0;
  color: rgba(255,255,255,0.6);
  font-size: 12px;
  line-height: 1.8;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.footer-statement .container {
  text-align: center;
}
.footer-statement a {
  color: rgba(255,255,255,0.7);
  margin: 0 8px;
}
.footer-statement a:hover {
  color: var(--color-accent);
}
.footer-statement .copyright {
  margin-top: 8px;
  opacity: 0.8;
}

/* 数据说明 */
.data-disclaimer {
  background: var(--color-bg);
  border-left: 3px solid var(--color-accent);
  padding: 12px 16px;
  font-size: 12px;
  color: var(--color-text-muted);
  line-height: 1.7;
  margin: 16px 0;
  border-radius: 0 6px 6px 0;
}
.data-disclaimer strong {
  color: var(--color-text-secondary);
  display: block;
  margin-bottom: 4px;
}

/* ========== 首页升级样式 ========== */

/* 新Hero区 */
.home-hero {
  position: relative;
  background: linear-gradient(135deg, #0F2440 0%, #1A365D 40%, #2A4A7D 70%, #D69E2E 100%);
  padding: 70px 0 100px;
  color: #fff;
  overflow: hidden;
}
.home-hero::before {
  content: '';
  position: absolute;
  top: -120px;
  right: -60px;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(255,215,0,0.15) 0%, transparent 65%);
  border-radius: 50%;
}
.home-hero::after {
  content: '';
  position: absolute;
  bottom: -100px;
  left: 5%;
  width: 350px;
  height: 350px;
  background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 60%);
  border-radius: 50%;
}
.home-hero .container {
  position: relative;
  z-index: 2;
  text-align: center;
}
.home-hero-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 20px;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 24px;
  font-size: 13px;
  margin-bottom: 20px;
  backdrop-filter: blur(10px);
}
.home-hero-label::before {
  content: '';
  width: 6px;
  height: 6px;
  background: var(--color-accent);
  border-radius: 50%;
}
.home-hero-title {
  font-size: 48px;
  font-weight: 800;
  margin-bottom: 16px;
  letter-spacing: 2px;
  line-height: 1.3;
}
.home-hero-title em {
  color: #FFD700;
  font-style: normal;
  background: linear-gradient(90deg, #FFD700, #FFA500);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.home-hero-desc {
  font-size: 17px;
  opacity: 0.9;
  margin-bottom: 36px;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.8;
}

/* Hero搜索 */
.hero-search {
  max-width: 700px;
  margin: 0 auto 32px;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 16px 48px rgba(0,0,0,0.25);
}
.hero-search-tabs {
  display: flex;
  gap: 0;
  border-bottom: 1px solid var(--color-border);
  background: #F7FAFC;
}
.hero-search-tabs a {
  flex: 1;
  padding: 12px 0;
  font-size: 13px;
  color: var(--color-text-secondary);
  text-align: center;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  transition: all 0.2s;
}
.hero-search-tabs a.active {
  color: var(--color-accent);
  background: #fff;
  border-bottom-color: var(--color-accent);
  font-weight: 600;
}
.hero-search-input {
  display: flex;
  height: 60px;
}
.hero-search-input input {
  flex: 1;
  padding: 0 24px;
  border: none;
  outline: none;
  font-size: 16px;
  height: 100%;
}
.hero-search-input button {
  width: 150px;
  background: var(--color-primary);
  color: #fff;
  border: none;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.2s;
}
.hero-search-input button:hover {
  background: var(--color-primary-light);
}

/* Hero热门词 */
.hero-hot-tags {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 36px;
}
.hero-hot-tags .label {
  font-size: 13px;
  opacity: 0.8;
}
.hero-hot-tags a {
  padding: 5px 14px;
  font-size: 12px;
  color: rgba(255,255,255,0.85);
  background: rgba(255,255,255,0.1);
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,0.15);
  transition: all 0.2s;
}
.hero-hot-tags a:hover {
  background: rgba(255,255,255,0.2);
  color: #fff;
  border-color: var(--color-accent);
}

/* Hero数据 */
.hero-stats {
  display: flex;
  justify-content: center;
  gap: 60px;
  flex-wrap: wrap;
}
.hero-stat-item {
  text-align: center;
}
.hero-stat-num {
  font-size: 32px;
  font-weight: 800;
  color: var(--color-accent);
  line-height: 1;
}
.hero-stat-num .unit {
  font-size: 16px;
  font-weight: 600;
  margin-left: 2px;
}
.hero-stat-label {
  font-size: 13px;
  opacity: 0.85;
  margin-top: 8px;
}

/* 悬浮平台入口 */
.hero-entry-grid {
  background: #fff;
  border-radius: 14px;
  padding: 28px;
  margin-top: -60px;
  position: relative;
  z-index: 10;
  box-shadow: 0 12px 40px rgba(26,54,93,0.15);
}
.hero-entry-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.hero-entry-title::before {
  content: '';
  width: 4px;
  height: 18px;
  background: var(--color-accent);
  border-radius: 2px;
}
.hero-entry-items {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  gap: 10px;
}
.hero-entry-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 16px 8px;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.25s;
  text-align: center;
}
.hero-entry-item:hover {
  background: rgba(214,158,46,0.08);
  }
.hero-entry-icon {
  width: 52px;
  height: 52px;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  transition: all 0.25s;
}
.hero-entry-item:hover .hero-entry-icon {
  background: linear-gradient(135deg, #FFF5E6, #FFE4B5);
}
.hero-entry-name {
  font-size: 13px;
  color: var(--color-text-secondary);
  font-weight: 500;
}
.hero-entry-item:hover .hero-entry-name {
  color: var(--color-accent);
  font-weight: 700;
}

/* 统一板块样式 */
.home-section {
  padding: 56px 0;
}
.home-section.alt-bg {
  background: var(--color-bg);
}
.section-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 28px;
}
.section-title-group {
  flex: 1;
}
.section-title {
  font-size: 26px;
  font-weight: 800;
  color: var(--color-text-primary);
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}
.section-title::before {
  content: '';
  width: 6px;
  height: 30px;
  background: linear-gradient(to bottom, var(--color-accent), var(--color-accent-dark));
  border-radius: 3px;
}
.section-title .en {
  font-size: 13px;
  color: var(--color-text-muted);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.section-subtitle {
  font-size: 14px;
  color: var(--color-text-muted);
  margin-left: 18px;
}
.section-tabs-bar {
  display: flex;
  gap: 8px;
  margin-left: 18px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}
.section-tabs-bar .section-tab {
  padding: 4px 14px;
  font-size: 13px;
  color: var(--color-text-secondary);
  background: var(--color-bg);
  border-radius: 16px;
  text-decoration: none;
  transition: all 0.25s;
}
.section-tabs-bar .section-tab:hover {
  color: var(--color-primary);
  background: #E8F0FE;
}
.section-tabs-bar .section-tab.active {
  background: var(--color-primary);
  color: #fff;
}
.section-more {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--color-text-secondary);
  transition: all 0.2s;
}
.section-more:hover {
  color: var(--color-accent);
  gap: 10px;
}

/* 板块分类导航 */
.section-cats {
  display: flex;
  gap: 4px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
.section-cats a {
  padding: 6px 18px;
  font-size: 13px;
  color: var(--color-text-secondary);
  border-radius: 18px;
  background: var(--color-bg);
  transition: all 0.2s;
}
.section-cats a.active,
.section-cats a:hover {
  background: var(--color-primary);
  color: #fff;
}

/* 品牌卡片（首页版4列） */
.home-brand-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
}
.home-brand-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 20px 16px;
  text-align: center;
  transition: all 0.3s;
  cursor: pointer;
  position: relative;
}
.home-brand-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  }
.home-brand-rank {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 26px;
  height: 26px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  background: #CBD5E0;
}
.home-brand-card:nth-child(1) .home-brand-rank { background: linear-gradient(135deg, #D69E2E, #E6B03A); }
.home-brand-card:nth-child(2) .home-brand-rank { background: linear-gradient(135deg, #A0AEC0, #CBD5E0); }
.home-brand-card:nth-child(3) .home-brand-rank { background: linear-gradient(135deg, #C05621, #DD6B20); }
.home-brand-logo {
  width: 70px;
  height: 70px;
  margin: 10px auto 12px;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 700;
  color: var(--color-primary);
}
.home-brand-name {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 4px;
}
.home-brand-tag {
  font-size: 11px;
  color: var(--color-accent);
  margin-bottom: 8px;
}
.home-brand-index {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-primary);
}
.home-brand-index span {
  font-size: 11px;
  font-weight: 400;
  color: var(--color-text-muted);
}

/* 工厂卡片（首页3列） */
.home-factory-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.home-factory-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  overflow: hidden;
  transition: all 0.3s;
  cursor: pointer;
}
.home-factory-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 10px 28px rgba(26,54,93,0.12);
  }
.home-factory-head {
  position: relative;
  height: 100px;
  background: linear-gradient(135deg, #E2E8F0 0%, #CBD5E0 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}
.home-factory-logo {
  width: 64px;
  height: 64px;
  background: #fff;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  color: var(--color-primary);
  z-index: 2;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.home-factory-rank {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
  color: #fff;
  z-index: 2;
}
.home-factory-card:nth-child(1) .home-factory-rank { background: linear-gradient(135deg, #D69E2E, #E6B03A); }
.home-factory-card:nth-child(2) .home-factory-rank { background: linear-gradient(135deg, #A0AEC0, #CBD5E0); }
.home-factory-card:nth-child(3) .home-factory-rank { background: linear-gradient(135deg, #C05621, #DD6B20); }
.home-factory-body {
  padding: 14px 16px;
}
.home-factory-name {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.home-factory-tags {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.home-factory-tag {
  padding: 1px 6px;
  font-size: 10px;
  border-radius: 3px;
}
.home-factory-meta {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: var(--color-text-muted);
  padding-top: 8px;
  border-top: 1px dashed var(--color-border);
}

/* 楼盘卡片（首页4列） */
.home-property-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.home-property-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  overflow: hidden;
  transition: all 0.3s;
  cursor: pointer;
}
.home-property-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 10px 28px rgba(26,54,93,0.12);
  }
.home-property-img {
  position: relative;
  height: 140px;
  background: linear-gradient(135deg, #2A4A7D, #1A365D);
}
.home-property-tag {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 3px 10px;
  background: var(--color-danger);
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  border-radius: 4px;
  z-index: 2;
}
.home-property-city {
  position: absolute;
  bottom: 10px;
  left: 12px;
  color: rgba(255,255,255,0.9);
  font-size: 12px;
  z-index: 2;
}
.home-property-body {
  padding: 14px;
}
.home-property-name {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.home-property-addr {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-bottom: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.home-property-price {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-danger);
}
.home-property-price span {
  font-size: 12px;
  font-weight: 400;
}

/* 加盟卡片（首页3列） */
.home-franchise-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.home-franchise-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  overflow: hidden;
  transition: all 0.3s;
  cursor: pointer;
}
.home-franchise-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 10px 28px rgba(26,54,93,0.12);
  }
.home-franchise-head {
  position: relative;
  height: 100px;
  background: linear-gradient(135deg, #E2E8F0 0%, #CBD5E0 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}
.home-franchise-logo {
  width: 64px;
  height: 64px;
  background: #fff;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  color: var(--color-primary);
  z-index: 2;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.home-franchise-body {
  padding: 14px 16px;
}
.home-franchise-name {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 6px;
}
.home-franchise-invest {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-danger);
  margin-bottom: 8px;
}
.home-franchise-invest span {
  font-size: 12px;
  font-weight: 400;
}
.home-franchise-meta {
  display: flex;
  gap: 16px;
  font-size: 12px;
  color: var(--color-text-muted);
}

/* 资讯列表（首页两列） */
.home-news-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
.home-news-card {
  display: flex;
  gap: 16px;
  padding: 16px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  transition: all 0.25s;
  cursor: pointer;
}
.home-news-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 6px 20px rgba(26,54,93,0.1);
}
.home-news-thumb {
  width: 120px;
  height: 90px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #2A4A7D, #1A365D);
  border-radius: 6px;
}
.home-news-body { flex: 1; min-width: 0; }
.home-news-cat {
  font-size: 11px;
  color: var(--color-accent);
  font-weight: 600;
  margin-bottom: 6px;
}
.home-news-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  line-height: 1.4;
  margin-bottom: 8px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.home-news-card:hover .home-news-title { color: var(--color-primary); }
.home-news-meta {
  font-size: 12px;
  color: var(--color-text-muted);
  display: flex;
  gap: 14px;
}

/* 商协会/服务卡片（首页4列） */
.home-service-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.home-service-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 24px 20px;
  text-align: center;
  transition: all 0.3s;
  cursor: pointer;
}
.home-service-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  }
.home-service-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto 14px;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  transition: all 0.3s;
}
.home-service-card:hover .home-service-icon {
  background: linear-gradient(135deg, #FFF5E6, #FFE4B5);
}
.home-service-name {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 6px;
}
.home-service-desc {
  font-size: 12px;
  color: var(--color-text-muted);
  line-height: 1.6;
  margin-bottom: 10px;
}
.home-service-count {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-accent);
}
.home-service-count span {
  font-size: 12px;
  font-weight: 400;
  color: var(--color-text-muted);
}

/* 名人堂横向滚动 */
.home-celebrity-row {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
}
.home-celebrity-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 20px 16px;
  text-align: center;
  transition: all 0.3s;
  cursor: pointer;
}
.home-celebrity-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  }
.home-celebrity-avatar {
  width: 72px;
  height: 72px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  border: 3px solid rgba(255,215,0,0.3);
}
.home-celebrity-name {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 4px;
}
.home-celebrity-title {
  font-size: 12px;
  color: var(--color-accent);
  font-weight: 600;
  margin-bottom: 4px;
}
.home-celebrity-company {
  font-size: 11px;
  color: var(--color-text-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 底部CTA */
.home-cta-section {
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 100%);
  padding: 60px 0;
  color: #fff;
}
.home-cta-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}
.home-cta-text h2 {
  font-size: 28px;
  font-weight: 800;
  margin-bottom: 12px;
}
.home-cta-text p {
  font-size: 15px;
  opacity: 0.85;
  line-height: 1.7;
}
.home-cta-buttons {
  display: flex;
  gap: 16px;
  flex-shrink: 0;
}
.home-cta-btn {
  padding: 14px 32px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  transition: all 0.2s;
}
.home-cta-btn.primary {
  background: var(--color-accent);
  color: #fff;
}
.home-cta-btn.primary:hover {
  background: var(--color-accent-light);
  box-shadow: 0 8px 20px rgba(214,158,46,0.4);
}
.home-cta-btn.ghost {
  border: 2px solid rgba(255,255,255,0.4);
  color: #fff;
}
.home-cta-btn.ghost:hover {
  border-color: #fff;
  background: rgba(255,255,255,0.1);
}

/* 合作伙伴 */
.home-partners {
  padding: 48px 0;
  background: var(--color-bg);
}
.home-partners-title {
  text-align: center;
  font-size: 22px;
  font-weight: 800;
  color: var(--color-text-primary);
  margin-bottom: 8px;
}
.home-partners-sub {
  text-align: center;
  font-size: 13px;
  color: var(--color-text-muted);
  margin-bottom: 32px;
}
.partners-logos {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 16px;
}
.partner-logo {
  height: 64px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-secondary);
  transition: all 0.25s;
}
.partner-logo:hover {
  border-color: var(--color-accent);
  color: var(--color-primary);
  box-shadow: 0 4px 12px rgba(26,54,93,0.08);
}

/* 响应式 - 首页 */
@media (max-width: 1023px) {
  .home-hero-title { font-size: 36px; }
  .hero-entry-items { grid-template-columns: repeat(5, 1fr); }
  .home-brand-grid { grid-template-columns: repeat(3, 1fr); }
  .home-factory-grid { grid-template-columns: repeat(2, 1fr); }
  .home-property-grid { grid-template-columns: repeat(2, 1fr); }
  .home-franchise-grid { grid-template-columns: repeat(2, 1fr); }
  .home-news-grid { grid-template-columns: 1fr; }
  .home-service-grid { grid-template-columns: repeat(2, 1fr); }
  .home-celebrity-row { grid-template-columns: repeat(3, 1fr); }
  .partners-logos { grid-template-columns: repeat(4, 1fr); }
  .home-cta-content { flex-direction: column; text-align: center; }
}
@media (max-width: 767px) {
  .home-hero { padding: 40px 0 60px; }
  .home-hero-title { font-size: 26px; letter-spacing: 1px; }
  .home-hero-desc { font-size: 14px; }
  .hero-search-input { height: 48px; }
  .hero-search-input button { width: 100px; font-size: 14px; }
  .hero-stats { gap: 24px; }
  .hero-stat-num { font-size: 22px; }
  .hero-entry-items { grid-template-columns: repeat(4, 1fr); }
  .home-section { padding: 36px 0; }
  .section-title { font-size: 20px; }
  .home-brand-grid { grid-template-columns: repeat(2, 1fr); }
  .home-factory-grid { grid-template-columns: 1fr; }
  .home-property-grid { grid-template-columns: 1fr; }
  .home-franchise-grid { grid-template-columns: 1fr; }
  .home-service-grid { grid-template-columns: 1fr; }
  .home-celebrity-row { grid-template-columns: repeat(2, 1fr); }
  .partners-logos { grid-template-columns: repeat(3, 1fr); }
  .home-cta-btn { padding: 12px 24px; font-size: 14px; }
}

/* ===== 招商加盟 + 商协会 双栏升级 ===== */
.fa-dual-layout {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 28px;
}
.fa-col {
  min-width: 0;
}

/* --- 招商加盟侧 --- */
.franchise-feature {
  background: linear-gradient(135deg, #ffffff 0%, #FFF8E7 100%);
  border: 1px solid #F0E6C8;
  border-radius: 12px;
  padding: 20px;
  display: flex;
  gap: 16px;
  align-items: center;
  margin-bottom: 14px;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}
.franchise-feature::before {
  content: '';
  position: absolute;
  top: -30px;
  right: -30px;
  width: 120px;
  height: 120px;
  background: radial-gradient(circle, rgba(214,158,46,0.12), transparent 70%);
  pointer-events: none;
}
.franchise-feature:hover { box-shadow: 0 6px 20px rgba(214,158,46,0.18);
  border-color: var(--color-accent);
}
.franchise-feature-badge {
  background: linear-gradient(135deg, #FFD700, #E6A817);
  color: #6B3410;
  border-radius: 10px;
  padding: 10px 12px;
  text-align: center;
  font-weight: 700;
  flex-shrink: 0;
  box-shadow: 0 3px 10px rgba(230,168,23,0.3);
}
.franchise-feature-info {
  flex: 1;
  min-width: 0;
}
.franchise-feature-brand {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
}
.franchise-feature-logo {
  width: 48px;
  height: 48px;
  background: #fff;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  color: var(--color-primary);
  border: 1px solid var(--color-border);
  flex-shrink: 0;
}
.franchise-feature-brand h3 {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 6px 0;
}
.franchise-feature-tags .tag {
  font-size: 11px;
  padding: 2px 8px;
  margin-right: 4px;
}
.franchise-feature-stats {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 8px;
}
.franchise-feature-stats > div {
  text-align: center;
}
.franchise-feature-stats b {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
}
.franchise-feature-stats span {
  font-size: 11px;
  color: var(--color-text-muted);
}
.franchise-feature-cta {
  background: var(--color-primary);
  color: #fff;
  padding: 8px 14px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
  transition: all 0.3s;
}
.franchise-feature:hover .franchise-feature-cta {
  background: var(--color-accent);
}
.franchise-feature-cta .arrow {
  transition: transform 0.3s;
}
.franchise-feature:hover .franchise-feature-cta .arrow {
  transform: translateX(3px);
}

/* 加盟排行榜 */
.franchise-rank-list {
  background: #fff;
  border-radius: 10px;
  border: 1px solid var(--color-border);
  overflow: hidden;
}
.franchise-rank-item {
  display: grid;
  grid-template-columns: 32px 1fr auto auto auto;
  gap: 12px;
  align-items: center;
  padding: 11px 16px;
  border-bottom: 1px solid #F0F4F8;
  cursor: pointer;
  transition: background 0.2s;
}
.franchise-rank-item:last-child {
  border-bottom: none;
}
.franchise-rank-item:hover {
  background: #FAFBFD;
}
.rank-num {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  background: #E2E8F0;
  color: var(--color-text-secondary);
  font-size: 13px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
.rank-num.rank-2 {
  background: linear-gradient(135deg, #C0C0C0, #E8E8E8);
  color: #fff;
}
.rank-num.rank-3 {
  background: linear-gradient(135deg, #CD7F32, #E8A86A);
  color: #fff;
}
.rank-brand-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rank-invest {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-danger);
}
.rank-tag {
  font-size: 11px;
  padding: 2px 8px;
}
.rank-action {
  font-size: 12px;
  color: var(--color-primary);
  font-weight: 500;
}
.franchise-rank-item:hover .rank-action {
  color: var(--color-accent);
}

/* --- 商协会侧 --- */
.assoc-feature-cards {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 14px;
}
.assoc-feature-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 14px 16px;
  display: flex;
  gap: 14px;
  align-items: center;
  cursor: pointer;
  transition: all 0.3s;
  position: relative;
}
.assoc-feature-card::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 60%;
  background: var(--color-accent);
  border-radius: 0 3px 3px 0;
}
.assoc-feature-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 4px 12px rgba(26,54,93,0.08);
  transform: translateX(2px);
}
.assoc-badge {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: linear-gradient(135deg, #FFD700, #E6A817);
  color: #6B3410;
  font-size: 16px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(230,168,23,0.3);
}
.assoc-badge-red {
  background: linear-gradient(135deg, #FF6B6B, #E53E3E);
  color: #fff;
  box-shadow: 0 2px 8px rgba(229,62,62,0.3);
}
.assoc-info {
  flex: 1;
  min-width: 0;
}
.assoc-info h4 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 4px 0;
}
.assoc-info p {
  font-size: 12px;
  color: var(--color-text-muted);
  margin: 0 0 6px 0;
}
.assoc-tags .tag {
  font-size: 10px;
  padding: 2px 6px;
  margin-right: 4px;
}

/* 会员企业名录 */
.assoc-member-section {
  background: linear-gradient(180deg, #F7FAFC 0%, #ffffff 100%);
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 14px;
}
.assoc-member-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
.assoc-member-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-primary);
}
.assoc-member-count {
  font-size: 11px;
  color: var(--color-text-muted);
}
.assoc-member-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 6px;
  margin-bottom: 10px;
}
.member-logo {
  aspect-ratio: 1;
  background: #fff;
  border: 1px solid #EDF2F7;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 600;
  color: var(--color-primary);
  text-align: center;
  padding: 2px;
  transition: all 0.2s;
  cursor: pointer;
}
.member-logo:hover {
  border-color: var(--color-accent);
  color: var(--color-accent);
  transform: scale(1.05);
}
.assoc-member-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 10px;
  border-top: 1px dashed #E2E8F0;
  font-size: 12px;
  cursor: pointer;
}
.assoc-member-footer span:first-child {
  color: var(--color-primary);
  font-weight: 500;
}
.assoc-member-footer:hover span:first-child {
  color: var(--color-accent);
}
.ai-source-tag {
  display: flex;
  align-items: center;
  gap: 5px;
  background: #F0FFF4;
  color: #276749;
  padding: 3px 8px;
  border-radius: 10px;
  font-size: 10px;
  font-weight: 600;
}
.ai-dot {
  width: 6px;
  height: 6px;
  background: #38A169;
  border-radius: 50%;
  animation: aiPulse 2s infinite;
}
@keyframes aiPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(0.8); }
}

.tag-orange {
  background: #FFFAF0;
  color: #C05621;
  border: 1px solid #FEEBC8;
}
.tag-purple {
  background: #FAF5FF;
  color: #553C9A;
  border: 1px solid #E9D8FD;
}

/* 响应式：双栏降级 */
@media (max-width: 900px) {
  .fa-dual-layout {
    grid-template-columns: 1fr;
  }
  .franchise-feature {
    flex-wrap: wrap;
  }
  .franchise-feature-cta {
    width: 100%;
    justify-content: center;
  }
  .franchise-feature-stats {
    grid-template-columns: repeat(2,1fr);
  }
  .assoc-member-grid {
    grid-template-columns: repeat(4,1fr);
  }
}

/* ===== 会员结构分析 ===== */
.member-stats-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
.ms-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 20px 24px;
}
.ms-card h3 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 16px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--color-bg);
}
.ms-bar-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ms-bar-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ms-bar-label {
  display: flex;
  justify-content: space-between;
  font-size: 13px;
  color: var(--color-text-secondary);
}
.ms-bar-label span:last-child {
  font-weight: 600;
  color: var(--color-primary);
  font-size: 12px;
}
.ms-bar-track {
  height: 6px;
  background: var(--color-bg);
  border-radius: 3px;
  overflow: hidden;
}
.ms-bar-fill {
  height: 100%;
  background: linear-gradient(90deg, #1A365D, #2A4A7D);
  border-radius: 3px;
  transition: width 0.6s ease;
}
.ms-bar-fill.ms-fill-2 {
  background: linear-gradient(90deg, #D69E2E, #E6B03A);
}
@media (max-width: 768px) {
  .member-stats-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== 板块Tab ===== */
.section-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}
.section-tab {
  padding: 5px 14px;
  font-size: 13px;
  color: var(--color-text-secondary);
  border-radius: 18px;
  cursor: pointer;
  transition: all 0.25s;
  text-decoration: none;
}
.section-tab:hover {
  color: var(--color-primary);
  background: #EDF2F7;
}
.section-tab.active {
  background: var(--color-primary);
  color: #fff;
  font-weight: 600;
}
.section-actions .section-more {
  margin-left: 10px;
}

/* ===== 招商加盟（独立全宽） ===== */
.franchise-full-layout {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  gap: 24px;
}

/* 主推加盟大卡 */
.franchise-feature-big {
  background: linear-gradient(135deg, #ffffff 0%, #FFF8E7 50%, #FFEEC2 100%);
  border: 1px solid #F0DFA8;
  border-radius: 14px;
  padding: 28px;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.35s ease;
}
.franchise-feature-big::before {
  content: '';
  position: absolute;
  top: -60px;
  right: -60px;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(214,158,46,0.2), transparent 65%);
  pointer-events: none;
}
.franchise-feature-big::after {
  content: '';
  position: absolute;
  bottom: -80px;
  left: -40px;
  width: 220px;
  height: 220px;
  background: radial-gradient(circle, rgba(26,54,93,0.06), transparent 65%);
  pointer-events: none;
}
.franchise-feature-big:hover { box-shadow: 0 12px 32px rgba(214,158,46,0.22);
  border-color: var(--color-accent);
}
.ffb-badge {
  display: inline-block;
  background: linear-gradient(135deg, #FFD700, #E6A817);
  color: #6B3410;
  padding: 6px 14px;
  border-radius: 20px;
  margin-bottom: 18px;
  font-size: 11px;
  font-weight: 600;
  box-shadow: 0 3px 10px rgba(230,168,23,0.35);
}
.ffb-badge strong {
  display: block;
  font-size: 18px;
  font-weight: 800;
  margin-top: 2px;
  letter-spacing: 1px;
}
.ffb-main {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
  position: relative;
  z-index: 1;
}
.ffb-logo {
  width: 80px;
  height: 80px;
  background: #fff;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 800;
  color: var(--color-primary);
  border: 2px solid #F0E6C8;
  flex-shrink: 0;
  box-shadow: 0 4px 12px rgba(26,54,93,0.08);
}
.ffb-content {
  flex: 1;
  min-width: 0;
}
.ffb-content h3 {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-text-primary);
  margin: 0 0 8px 0;
}
.ffb-content p {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin: 0 0 10px 0;
}
.ffb-tags .tag {
  font-size: 11px;
  padding: 3px 10px;
  margin-right: 6px;
}
.ffb-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-bottom: 20px;
  padding: 16px;
  background: rgba(255,255,255,0.7);
  border-radius: 10px;
  border: 1px solid rgba(214,158,46,0.2);
  position: relative;
  z-index: 1;
}
.ffb-stat {
  text-align: center;
  border-right: 1px solid #EDF2F7;
}
.ffb-stat:last-child {
  border-right: none;
}
.ffb-stat b {
  display: block;
  font-size: 20px;
  font-weight: 800;
  color: var(--color-primary);
  margin-bottom: 4px;
}
.ffb-stat span {
  font-size: 12px;
  color: var(--color-text-muted);
}
.ffb-cta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: var(--color-primary);
  color: #fff;
  padding: 12px 20px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  position: relative;
  z-index: 1;
  transition: all 0.3s;
}
.ffb-cta em {
  font-style: normal;
  font-size: 18px;
  transition: transform 0.3s;
}
.franchise-feature-big:hover .ffb-cta {
  background: var(--color-accent);
  color: #4A3400;
}
.franchise-feature-big:hover .ffb-cta em {
  transform: translateX(6px);
}

/* 加盟排行面板 */
.franchise-rank-panel {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.rank-panel-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  border-bottom: 1px solid var(--color-border);
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
}
.rank-panel-header h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0;
}
.rank-panel-header a {
  font-size: 12px;
  color: var(--color-accent);
  text-decoration: none;
  font-weight: 500;
}
.rank-list {
  flex: 1;
  padding: 8px 0;
}
/* 侧栏/首页迷你榜行（勿污染 brands/top 的 .rank-table .rank-row） */
.rank-list .rank-row,
.rank-panel .rank-row {
  display: grid;
  grid-template-columns: 40px 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 10px 20px;
  cursor: pointer;
  transition: background 0.2s;
}
.rank-list .rank-row:hover,
.rank-panel .rank-row:hover {
  background: #FAFBFD;
}
.rank-badge {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  background: #E2E8F0;
  color: var(--color-text-secondary);
  font-size: 14px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
.rank-badge.gold {
  background: linear-gradient(135deg, #FFD700, #E6A817);
  color: #6B3410;
  box-shadow: 0 2px 6px rgba(230,168,23,0.3);
}
.rank-badge.silver {
  background: linear-gradient(135deg, #C0C0C0, #E8E8E8);
  color: #4A5568;
}
.rank-badge.bronze {
  background: linear-gradient(135deg, #CD7F32, #E8A86A);
  color: #fff;
}
.rank-info {
  min-width: 0;
}
.rank-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rank-desc {
  font-size: 11px;
  color: var(--color-text-muted);
}
.rank-row .rank-invest {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-danger);
  white-space: nowrap;
}

/* ===== 商协会（独立全宽 · 优化版） ===== */
.assoc-full-layout {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  gap: 24px;
  align-items: stretch;
}

/* 协会卡片网格（等高三列改为一列三卡等高） */
.assoc-cards-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}
.assoc-card-item {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 22px 24px;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.assoc-card-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-accent-dark));
  transition: width 0.3s;
  border-radius: 12px 0 0 12px;
}
.assoc-card-item:hover {
  transform: translateX(3px);
  box-shadow: 0 8px 24px rgba(26,54,93,0.1);
  border-color: var(--color-accent);
}
.assoc-card-item:hover::before {
  width: 5px;
}

/* 顶部：徽章+标题 */
.assoc-card-top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 12px;
}
.assoc-card-badge {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  background: linear-gradient(135deg, #FFD700, #E6A817);
  color: #6B3410;
  font-size: 18px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 4px 10px rgba(230,168,23,0.3);
  letter-spacing: 0.5px;
}
.assoc-card-badge.red {
  background: linear-gradient(135deg, #FF6B6B, #C53030);
  color: #fff;
  box-shadow: 0 4px 10px rgba(197,48,48,0.3);
}
.assoc-card-badge.blue {
  background: linear-gradient(135deg, #4299E1, #2B6CB0);
  color: #fff;
  font-size: 13px;
  letter-spacing: 0;
  box-shadow: 0 4px 10px rgba(66,153,225,0.3);
}
.assoc-card-title {
  flex: 1;
  min-width: 0;
}
.assoc-card-title h4 {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 4px 0;
}
.assoc-card-level {
  font-size: 12px;
  color: var(--color-accent-dark);
  background: #FFF8E7;
  padding: 2px 8px;
  border-radius: 4px;
  font-weight: 500;
}

/* 描述 */
.assoc-card-desc {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.65;
  margin: 0 0 14px 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* 数据统计条 */
.assoc-card-stats {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  align-items: center;
  padding: 12px 0;
  margin-bottom: 14px;
  border-top: 1px solid #F0F4F8;
  border-bottom: 1px solid #F0F4F8;
}
.acs-item {
  text-align: center;
  padding: 0 4px;
}
.acs-item b {
  display: block;
  font-size: 17px;
  font-weight: 800;
  color: var(--color-primary);
  margin-bottom: 3px;
}
.acs-item span {
  font-size: 11px;
  color: var(--color-text-muted);
}
.acs-divider {
  width: 1px;
  height: 28px;
  background: #E2E8F0;
}

/* 标签 */
.assoc-card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: auto;
}
.assoc-card-tags .tag {
  font-size: 11px;
  padding: 3px 10px;
}

/* ===== 会员名录面板 ===== */
.member-directory-panel {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}
.member-directory-panel::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-primary), var(--color-accent));
}
.mdp-header {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid #F0F4F8;
}
.mdp-icon {
  width: 44px;
  height: 44px;
  background: linear-gradient(135deg, #FFF8E7, #FFEEC2);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}
.mdp-header h4 {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 3px 0;
}
.mdp-header p {
  font-size: 12px;
  color: var(--color-text-muted);
  margin: 0;
}

.mdp-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4px;
  margin-bottom: 18px;
  padding: 14px 10px;
  background: #F7FAFC;
  border-radius: 8px;
}
.mdp-stat {
  text-align: center;
  position: relative;
}
.mdp-stat:not(:last-child)::after {
  content: '';
  position: absolute;
  right: 0;
  top: 20%;
  height: 60%;
  width: 1px;
  background: #E2E8F0;
}
.mdp-stat b {
  display: block;
  font-size: 18px;
  font-weight: 800;
  color: var(--color-accent);
  margin-bottom: 2px;
}
.mdp-stat span {
  font-size: 11px;
  color: var(--color-text-muted);
}

.mdp-logos {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-bottom: 14px;
}
.mdp-logo {
  aspect-ratio: 1.5/1;
  background: #FAFBFD;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 600;
  color: var(--color-primary);
  text-align: center;
  padding: 4px;
  transition: all 0.25s;
  cursor: pointer;
}
.mdp-logo:hover {
  border-color: var(--color-accent);
  color: var(--color-accent);
  transform: scale(1.06);
  background: #FFFDF5;
  box-shadow: 0 2px 8px rgba(214,158,46,0.2);
}

.mdp-tags-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 16px;
  justify-content: center;
}
.mdp-tag {
  font-size: 11px;
  color: var(--color-text-secondary);
  background: #F0F4F8;
  padding: 3px 10px;
  border-radius: 10px;
  font-weight: 500;
}

.mdp-cta-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
}
.mdp-cta {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 10px 16px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s;
  margin-right: 10px;
}
.mdp-cta em {
  font-style: normal;
  transition: transform 0.3s;
}
.mdp-cta:hover {
  background: linear-gradient(135deg, var(--color-accent-dark), var(--color-accent));
  }
.mdp-cta:hover em {
  transform: translateX(4px);
}
.ai-source-tag-lg {
  display: flex;
  align-items: center;
  gap: 5px;
  background: #F0FFF4;
  color: #276749;
  padding: 5px 10px;
  border-radius: 14px;
  font-size: 11px;
  font-weight: 600;
  flex-shrink: 0;
}
.ai-source-tag-lg .ai-dot {
  width: 6px;
  height: 6px;
  background: #38A169;
  border-radius: 50%;
  animation: aiPulse 2s infinite;
}

/* 响应式 */
@media (max-width: 1023px) {
  .franchise-full-layout,
  .assoc-full-layout {
    grid-template-columns: 1fr;
  }
  .section-actions {
    flex-wrap: wrap;
  }
}
@media (max-width: 640px) {
  .ffb-main {
    flex-direction: column;
  }
  .ffb-stats {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
  .ffb-stat:nth-child(2) {
    border-right: none;
  }
  .mdp-logos {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* ===== 企业服务 / 生活服务 独立板块 ===== */
.svc-full-layout {
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 24px;
  align-items: stretch;
}
.life .svc-full-layout {
  grid-template-columns: 1fr 320px;
}

/* ===== 排行榜卡片（左右通用） ===== */
.svc-ranking-card,
.life-ranking-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.svc-rank-header,
.life-rank-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 18px;
  border-bottom: 1px solid var(--color-border);
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
}
.svc-rank-header h4,
.life-rank-header h4 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0;
}
.svc-rank-header a,
.life-rank-header a {
  font-size: 12px;
  color: var(--color-accent);
  text-decoration: none;
  font-weight: 500;
}

.svc-rank-list,
.life-rank-list {
  flex: 1;
  padding: 6px 0;
}

.svc-rank-item {
  display: grid;
  grid-template-columns: 32px 1fr auto;
  gap: 10px;
  align-items: center;
  padding: 10px 18px;
  cursor: pointer;
  transition: background 0.2s;
  border-bottom: 1px dashed #F0F4F8;
}
.svc-rank-item:last-child {
  border-bottom: none;
}
.svc-rank-item:hover {
  background: #FAFBFD;
}
.svc-rank-num {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  background: #E2E8F0;
  color: var(--color-text-secondary);
  font-size: 13px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
.svc-rank-num.gold {
  background: linear-gradient(135deg, #FFD700, #E6A817);
  color: #6B3410;
  box-shadow: 0 2px 6px rgba(230,168,23,0.3);
}
.svc-rank-num.silver {
  background: linear-gradient(135deg, #C0C0C0, #E8E8E8);
  color: #4A5568;
}
.svc-rank-num.bronze {
  background: linear-gradient(135deg, #CD7F32, #E8A86A);
  color: #fff;
}
.svc-rank-info {
  min-width: 0;
}
.svc-rank-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.svc-rank-desc {
  font-size: 11px;
  color: var(--color-text-muted);
}
.svc-rank-data {
  text-align: right;
  flex-shrink: 0;
}
.svc-rank-score {
  font-size: 15px;
  font-weight: 800;
  color: var(--color-accent);
}
.svc-rank-orders {
  font-size: 10px;
  color: var(--color-text-muted);
}

/* ===== 企业服务分类网格 ===== */
.svc-cat-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.svc-cat-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 16px;
  cursor: pointer;
  transition: all 0.3s;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.svc-cat-card:hover { box-shadow: 0 6px 18px rgba(26,54,93,0.1);
  border-color: var(--color-accent);
}
.svc-cat-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
}
.svc-cat-info h5 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 4px 0;
}
.svc-cat-info p {
  font-size: 11px;
  color: var(--color-text-muted);
  margin: 0 0 8px 0;
  line-height: 1.4;
}
.svc-cat-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 11px;
  color: var(--color-text-secondary);
  padding-top: 8px;
  border-top: 1px dashed #E2E8F0;
}
.svc-cat-meta b {
  color: var(--color-accent);
  font-weight: 700;
}

/* ===== 生活服务分类网格 ===== */
.life-cat-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.life-cat-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.3s;
  display: flex;
  flex-direction: column;
}
.life-cat-card:hover { box-shadow: 0 6px 18px rgba(26,54,93,0.1);
  border-color: var(--color-accent);
}
.life-cat-img {
  height: 80px;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 36px;
}
.life-cat-body {
  padding: 12px 14px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.life-cat-body h5 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 4px 0;
}
.life-cat-body p {
  font-size: 11px;
  color: var(--color-text-muted);
  margin: 0 0 8px 0;
  line-height: 1.4;
}
.life-cat-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
  padding-top: 8px;
  border-top: 1px dashed #E2E8F0;
  font-size: 11px;
  color: var(--color-text-secondary);
}
.life-cat-meta b {
  color: var(--color-accent);
  font-weight: 700;
}

/* ===== 生活商家排行 ===== */
.life-rank-item {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 12px 16px;
  cursor: pointer;
  transition: background 0.2s;
  border-bottom: 1px dashed #F0F4F8;
}
.life-rank-item:last-child {
  border-bottom: none;
}
.life-rank-item:hover {
  background: #FAFBFD;
}
.life-rank-img {
  width: 44px;
  height: 44px;
  background: linear-gradient(135deg, #FFF8E7, #FFEEC2);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}
.life-rank-info {
  flex: 1;
  min-width: 0;
}
.life-rank-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.life-rank-tags {
  display: flex;
  gap: 8px;
  margin-bottom: 4px;
}
.life-rank-tags span {
  font-size: 11px;
  color: var(--color-text-secondary);
  background: #F0F4F8;
  padding: 1px 6px;
  border-radius: 3px;
}
.life-rank-meta {
  display: flex;
  gap: 8px;
  align-items: center;
  font-size: 10px;
  color: var(--color-text-muted);
}
.life-rank-score {
  color: var(--color-accent);
  font-weight: 700;
  font-size: 11px;
}

/* 响应式 */
@media (max-width: 1023px) {
  .svc-full-layout,
  .life .svc-full-layout {
    grid-template-columns: 1fr;
  }
  .svc-cat-grid,
  .life-cat-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 640px) {
  .svc-cat-grid,
  .life-cat-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ===== 高端品质生活服务 ===== */
.life-premium-section {
  background: linear-gradient(180deg, #F5F7FA 0%, #E2E8F0 50%, #F5F7FA 100%);
}
.life-premium-section .section-title {
  background: linear-gradient(135deg, var(--color-primary), var(--color-accent));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.life-premium-layout {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 24px;
}

/* 高端分类网格 */
.premium-cat-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: 1fr;
  gap: 14px;
}
.premium-cat-card {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  cursor: pointer;
  min-height: 130px;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.premium-cat-card.large {
  grid-column: span 2;
  grid-row: span 2;
  min-height: 274px;
}
.premium-cat-bg {
  position: absolute;
  inset: 0;
  transition: transform 0.5s;
}
.premium-cat-card:hover .premium-cat-bg {
  transform: scale(1.08);
}
.premium-cat-content {
  position: relative;
  z-index: 1;
  height: 100%;
  padding: 18px 20px;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.55) 100%);
}
.premium-cat-icon {
  font-size: 28px;
  margin-bottom: auto;
}
.premium-cat-card.large .premium-cat-icon {
  font-size: 48px;
  margin-bottom: 16px;
}
.premium-cat-content h4,
.premium-cat-content h5 {
  color: #fff;
  margin: 0 0 4px 0;
  font-weight: 700;
}
.premium-cat-content h4 {
  font-size: 22px;
}
.premium-cat-content h5 {
  font-size: 15px;
}
.premium-cat-content p {
  font-size: 12px;
  opacity: 0.85;
  margin: 0 0 8px 0;
}
.premium-count {
  font-size: 11px;
  opacity: 0.75;
  font-weight: 500;
}
.premium-cat-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  margin-top: 4px;
}
.premium-cat-meta span {
  opacity: 0.85;
}
.premium-cat-meta b {
  color: var(--color-accent);
  font-weight: 700;
  font-size: 13px;
}
.premium-cat-badge {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 2;
  background: linear-gradient(135deg, #FFD700, #E6A817);
  color: #6B3410;
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(230,168,23,0.4);
}
.premium-cat-card:hover {
  box-shadow: 0 12px 28px rgba(26,54,93,0.25);
}
.premium-cat-card.large:hover {
  box-shadow: 0 16px 36px rgba(26,54,93,0.3);
}

/* 臻选榜 */
.premium-rank-panel {
  background: linear-gradient(180deg, #1A365D 0%, #0F2440 100%);
  border-radius: 12px;
  overflow: hidden;
  color: #fff;
  display: flex;
  flex-direction: column;
  position: relative;
}
.premium-rank-panel::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #FFD700, #D69E2E, #FFD700);
}
.premium-rank-header {
  padding: 20px 22px 16px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.premium-rank-header h4 {
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 4px 0;
}
.premium-rank-header p {
  font-size: 12px;
  opacity: 0.6;
  margin: 0;
}
.premium-tag {
  background: linear-gradient(135deg, #FFD700, #D69E2E);
  color: #6B3410;
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1px;
}

.premium-rank-list {
  flex: 1;
  padding: 8px 0;
}
.premium-rank-item {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 12px 22px;
  cursor: pointer;
  transition: background 0.25s;
  position: relative;
}
.premium-rank-item::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 22px;
  right: 22px;
  height: 1px;
  background: rgba(255,255,255,0.06);
}
.premium-rank-item:last-child::after {
  display: none;
}
.premium-rank-item:hover {
  background: rgba(255,255,255,0.06);
}
.premium-rank-img {
  width: 56px;
  height: 56px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  flex-shrink: 0;
  border: 1px solid rgba(255,255,255,0.15);
}
.premium-rank-info {
  min-width: 0;
}
.premium-rank-name {
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 5px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.premium-rank-tags {
  display: flex;
  gap: 5px;
  margin-bottom: 6px;
  flex-wrap: wrap;
}
.ptag {
  font-size: 10px;
  padding: 2px 7px;
  border-radius: 4px;
  background: rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.8);
  font-weight: 500;
}
.ptag.gold {
  background: rgba(214,158,46,0.25);
  color: #FFD700;
}
.premium-rank-meta {
  display: flex;
  gap: 10px;
  align-items: center;
  font-size: 11px;
}
.pr-price {
  color: #FFD700;
  font-weight: 700;
}
.pr-score {
  color: #48BB78;
  font-weight: 600;
}
.pr-city {
  opacity: 0.55;
}
.premium-rank-no {
  font-size: 22px;
  font-weight: 800;
  color: rgba(255,255,255,0.15);
  font-style: italic;
  letter-spacing: -1px;
}
.premium-rank-item:nth-child(1) .premium-rank-no {
  color: #FFD700;
}
.premium-rank-item:nth-child(2) .premium-rank-no {
  color: #C0C0C0;
}
.premium-rank-item:nth-child(3) .premium-rank-no {
  color: #CD7F32;
}

.premium-rank-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 22px;
  background: rgba(0,0,0,0.2);
  border-top: 1px solid rgba(255,255,255,0.08);
}
.premium-rank-footer a {
  color: #FFD700;
  text-decoration: none;
  font-size: 12px;
  font-weight: 600;
}

@media (max-width: 1023px) {
  .life-premium-layout {
    grid-template-columns: 1fr;
  }
  .premium-cat-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .premium-cat-card.large {
    grid-column: span 2;
    grid-row: span 1;
    min-height: 130px;
  }
}
@media (max-width: 640px) {
  .premium-cat-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .premium-cat-card.large {
    grid-column: span 2;
  }
}

/* ===== 生活服务企业（商业信息展示） ===== */
.life-biz-section .section-title {
  color: var(--color-primary);
}
.life-biz-layout {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 24px;
}

/* 左侧分类导航 */
.biz-cat-panel {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 16px;
  height: fit-content;
}
.biz-cat-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--color-accent);
  display: inline-block;
}
.biz-cat-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.biz-cat-group-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 8px;
}
.biz-cat-items {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.biz-cat-items a {
  font-size: 12px;
  color: var(--color-text-secondary);
  padding: 4px 10px;
  background: #F7FAFC;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.2s;
  border: 1px solid transparent;
}
.biz-cat-items a:hover {
  color: var(--color-accent);
  background: #FFFDF5;
  border-color: var(--color-accent);
}

/* 右侧企业列表 */
.biz-company-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.biz-list-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-primary);
}
.biz-list-sort {
  display: flex;
  gap: 4px;
  font-size: 12px;
  font-weight: normal;
}
.biz-list-sort a {
  padding: 4px 10px;
  border-radius: 4px;
  color: var(--color-text-secondary);
  text-decoration: none;
  transition: all 0.2s;
}
.biz-list-sort a:hover {
  color: var(--color-primary);
  background: #EDF2F7;
}
.biz-list-sort a.active {
  color: var(--color-accent);
  background: #FFF8E7;
  font-weight: 600;
}

.biz-company-items {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.biz-company-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 18px 20px;
  display: grid;
  grid-template-columns: 72px 1fr 130px;
  gap: 16px;
  align-items: stretch;
  cursor: pointer;
  transition: all 0.25s;
}
.biz-company-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 4px 14px rgba(26,54,93,0.08);
}
.biz-company-logo {
  width: 72px;
  height: 72px;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  color: var(--color-primary);
  line-height: 1.3;
  padding: 4px;
  flex-shrink: 0;
}
.biz-company-info {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.biz-company-name {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.biz-tag {
  font-size: 10px;
  padding: 2px 7px;
  border-radius: 4px;
  font-weight: 600;
  vertical-align: middle;
}
.biz-tag.blue {
  background: #EBF8FF;
  color: #2B6CB0;
}
.biz-tag.gold {
  background: #FFF8E7;
  color: #B08020;
}
.biz-tag.green {
  background: #F0FFF4;
  color: #276749;
}
.biz-tag.purple {
  background: #FAF5FF;
  color: #553C9A;
}
.biz-company-desc {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.biz-company-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  font-size: 11px;
  color: var(--color-text-muted);
}
.biz-company-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.biz-company-tags span {
  font-size: 11px;
  padding: 2px 8px;
  background: #F7FAFC;
  color: var(--color-text-secondary);
  border-radius: 3px;
  border: 1px solid #EDF2F7;
}
.biz-company-contact {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-left: 1px dashed #E2E8F0;
  padding-left: 16px;
}
.biz-contact-btn {
  width: 100%;
  text-align: center;
  padding: 8px 12px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.25s;
}
.biz-contact-btn:hover {
  background: linear-gradient(135deg, var(--color-accent-dark), var(--color-accent));
}
.biz-detail-link {
  font-size: 11px;
  color: var(--color-text-muted);
}
.biz-company-card:hover .biz-detail-link {
  color: var(--color-accent);
}
.biz-list-more {
  text-align: center;
  padding: 12px;
  background: #fff;
  border: 1px dashed var(--color-border);
  border-radius: 8px;
  color: var(--color-primary);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.25s;
  margin-top: 4px;
}
.biz-list-more:hover {
  border-color: var(--color-accent);
  color: var(--color-accent);
  background: #FFFDF5;
}

@media (max-width: 900px) {
  .life-biz-layout {
    grid-template-columns: 1fr;
  }
  .biz-company-card {
    grid-template-columns: 60px 1fr;
  }
  .biz-company-contact {
    grid-column: span 2;
    border-left: none;
    border-top: 1px dashed #E2E8F0;
    padding-left: 0;
    padding-top: 12px;
    flex-direction: row;
  }
  .biz-contact-btn {
    width: auto;
    flex: 1;
  }
}

/* 列表页企业卡片适配（更宽更舒展） */
.biz-company-items-page .biz-company-card {
  grid-template-columns: 84px 1fr 140px;
  padding: 20px 24px;
}
.biz-company-items-page .biz-company-logo {
  width: 84px;
  height: 84px;
  font-size: 13px;
}
.biz-company-items-page .biz-company-name {
  font-size: 17px;
}
.biz-company-items-page .biz-company-desc {
  -webkit-line-clamp: 2;
}
.biz-company-items-page .biz-company-meta {
  gap: 14px;
}
.biz-company-items-page .biz-contact-btn {
  padding: 9px 14px;
  font-size: 13px;
}

/* 列表页详情布局适配 */
.detail-main .biz-company-items {
  gap: 14px;
}

/* ===== GEO地区筛选栏 ===== */
.geo-filter-bar {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 16px 20px;
  margin-bottom: 20px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.geo-filter-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-primary);
  flex-shrink: 0;
  padding-top: 2px;
}
.geo-filter-items {
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.geo-filter-items a {
  padding: 4px 12px;
  font-size: 12px;
  color: var(--color-text-secondary);
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.2s;
}
.geo-filter-items a:hover {
  color: var(--color-primary);
  background: #EDF2F7;
}
.geo-filter-items a.active {
  background: var(--color-primary);
  color: #fff;
  font-weight: 600;
}

/* 企业卡片工商信息扩展 */
.provider-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  font-size: 11px;
  color: var(--color-text-muted);
  margin: 8px 0;
}

/* 高亮推荐企业卡 */
.provider-card.highlighted {
  border: 2px solid var(--color-accent);
  position: relative;
  background: linear-gradient(135deg, #FFFEF8 0%, #ffffff 100%);
}
.provider-card.highlighted::before {
  content: '⭐ 推荐企业';
  position: absolute;
  top: 0;
  right: 20px;
  background: linear-gradient(135deg, #FFD700, #E6A817);
  color: #6B3410;
  padding: 4px 14px;
  font-size: 11px;
  font-weight: 700;
  border-radius: 0 0 8px 8px;
}

/* 企业名称标签 */
.provider-name .biz-tag {
  font-size: 10px;
  padding: 2px 7px;
  border-radius: 4px;
  font-weight: 600;
  margin-left: 6px;
  vertical-align: middle;
}

@media (max-width: 768px) {
  .geo-filter-bar {
    flex-direction: column;
  }
}

/* ===== 工商信息快速展示条 ===== */
.biz-quick-info {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  padding: 16px 0;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  position: sticky;
  top: 64px;
  z-index: 90;
}
.bqi-grid {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 4px;
}
.bqi-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-right: 1px solid #EDF2F7;
}
.bqi-item:nth-child(6n) {
  border-right: 1px solid #EDF2F7;
}
.bqi-item.wide {
  grid-column: span 2;
}
.bqi-icon {
  font-size: 18px;
  flex-shrink: 0;
}
.bqi-content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.bqi-label {
  font-size: 10px;
  color: var(--color-text-muted);
  margin-bottom: 2px;
}
.bqi-value {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* 主营产品与服务 */
.biz-service-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.biz-service-item {
  display: flex;
  gap: 12px;
  padding: 16px;
  background: #FAFBFD;
  border-radius: 10px;
  border: 1px solid #EDF2F7;
}
.biz-service-icon {
  width: 44px;
  height: 44px;
  background: linear-gradient(135deg, #FFF8E7, #FFEEC2);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}
.biz-service-info h4 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 4px 0;
}
.biz-service-info p {
  font-size: 12px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin: 0;
}

/* 客户群体标签云 */
.customer-tags-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.customer-tag {
  padding: 8px 16px;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border: 1px solid #E2E8F0;
  border-radius: 20px;
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text-secondary);
  transition: all 0.25s;
  cursor: default;
}
.customer-tag:hover {
  background: linear-gradient(135deg, #FFF8E7, #FFEEC2);
  border-color: var(--color-accent);
  color: var(--color-accent-dark);
  }

/* 客户案例 */
.case-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.case-card {
  display: flex;
  gap: 14px;
  padding: 16px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  transition: all 0.25s;
}
.case-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 4px 12px rgba(26,54,93,0.08);
  }
.case-logo {
  width: 56px;
  height: 56px;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  color: var(--color-primary);
  text-align: center;
  padding: 4px;
  flex-shrink: 0;
}
.case-info h4 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 6px 0;
}
.case-info p {
  font-size: 12px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin: 0 0 8px 0;
}
.case-tags .tag {
  font-size: 11px;
  padding: 2px 8px;
  margin-right: 4px;
}

.tag-orange {
  background: #FFFAF0;
  color: #C05621;
  border: 1px solid #FEEBC8;
}
.tag-purple {
  background: #FAF5FF;
  color: #553C9A;
  border: 1px solid #E9D8FD;
}

/* 响应式 */
@media (max-width: 1023px) {
  .bqi-grid {
    grid-template-columns: repeat(4, 1fr);
  }
  .bqi-item.wide {
    grid-column: span 2;
  }
  .bqi-item:nth-child(4n) {
    border-right: none;
  }
}
@media (max-width: 640px) {
  .bqi-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .bqi-item.wide {
    grid-column: span 2;
  }
  .bqi-item {
    border-right: none;
    border-bottom: 1px solid #EDF2F7;
  }
  .biz-service-list,
  .case-grid {
    grid-template-columns: 1fr;
  }
  .biz-quick-info {
    position: static;
  }
}

/* ===== AI 信源样式 ===== */

/* 列表页 AI 信源条 */
.ai-source-strip {
  background: linear-gradient(135deg, #F0FFF4 0%, #E6FFFA 100%);
  border-bottom: 1px solid #C6F6D5;
  padding: 12px 0;
}
.ai-source-strip .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
.ai-strip-left {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
}
.ai-strip-icon {
  font-size: 28px;
  flex-shrink: 0;
}
.ai-strip-left strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #276749;
  margin-bottom: 3px;
}
.ai-strip-left span:last-child {
  font-size: 12px;
  color: #38A169;
  line-height: 1.5;
}
.ai-strip-right {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
}
.ai-badge-item {
  background: #fff;
  border: 1px solid #C6F6D5;
  color: #276749;
  padding: 5px 10px;
  border-radius: 16px;
  font-size: 11px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 4px;
}
.ai-badge-item .ai-dot {
  width: 6px;
  height: 6px;
  background: #38A169;
  border-radius: 50%;
  animation: aiPulse 2.5s infinite;
}

/* 详情页 AI 信源认证横幅 */
.ai-trust-banner {
  background: linear-gradient(135deg, #F0FFF4 0%, #E6FFFA 100%);
  border-bottom: 1px solid #C6F6D5;
  padding: 18px 0;
}
.ai-trust-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
}
.ai-trust-left {
  display: flex;
  align-items: center;
  gap: 16px;
  flex: 1;
}
.ai-trust-icon {
  font-size: 36px;
  flex-shrink: 0;
}
.ai-trust-left h3 {
  font-size: 16px;
  font-weight: 700;
  color: #276749;
  margin: 0 0 4px 0;
}
.ai-trust-left p {
  font-size: 12px;
  color: #38A169;
  line-height: 1.6;
  margin: 0;
}
.ai-trust-badges {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.ai-trust-badge {
  background: #fff;
  border: 1px solid #C6F6D5;
  color: #276749;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 5px;
}
.ai-trust-badge.gold {
  background: linear-gradient(135deg, #FFF8E7, #FFEEC2);
  border-color: #E6A817;
  color: #9C4221;
}
.ai-trust-badge .check {
  font-size: 12px;
}

.member-ai-tag {
  font-size: 11px;
  color: #38A169;
  background: #F0FFF4;
  padding: 2px 8px;
  border-radius: 10px;
  font-weight: 600;
}

@keyframes aiPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(0.7); }
}

@media (max-width: 768px) {
  .ai-source-strip .container,
  .ai-trust-inner {
    flex-direction: column;
    align-items: flex-start;
  }
  .ai-strip-right,
  .ai-trust-badges {
    flex-wrap: wrap;
  }
}

/* ===== 品牌 AI 信源卡片 ===== */
.brand-ai-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
}
.brand-ai-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 16px;
  cursor: pointer;
  transition: all 0.3s;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.brand-ai-card:hover { box-shadow: 0 8px 20px rgba(26,54,93,0.12);
  border-color: var(--color-accent);
}



@media (max-width: 1200px) {
  .brand-ai-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
/* ========== 新房AI信源卡片 ========== */
.property-ai-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin-top: 20px;
}
.property-ai-card {
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  box-shadow: 0 2px 10px rgba(26,54,93,0.06);
  border: 1px solid var(--color-border);
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
}
.property-ai-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.property-ai-card:hover { box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.property-ai-card:hover::before { opacity: 1; }
.pai-rank {
  position: absolute;
  top: 12px; right: 12px;
  font-size: 11px; font-weight: 700;
  padding: 3px 9px;
  border-radius: 12px;
  background: var(--color-text-muted);
  color: #fff;
  letter-spacing: 0.5px;
  z-index: 2;
}
.pai-rank.gold { background: linear-gradient(135deg, #FFD700, #B8860B); color: #fff; }
.pai-rank.silver { background: linear-gradient(135deg, #C0C0C0, #708090); color: #fff; }
.pai-rank.bronze { background: linear-gradient(135deg, #CD7F32, #8B4513); color: #fff; }
.pai-header { margin-bottom: 6px; }
.pai-name {
  font-size: 16px; font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 6px;
  line-height: 1.3;
}
.pai-tags { display: flex; gap: 5px; flex-wrap: wrap; }
.ptag {
  font-size: 10px; padding: 2px 7px;
  border-radius: 4px; font-weight: 500;
}
.ptag.hot { background: #FFF0F0; color: var(--color-danger); }
.ptag.new { background: #F0FFF4; color: var(--color-success); }
.ptag.premium { background: #FFF8E6; color: var(--color-accent-dark); }
.ptag.green { background: #F0FFF4; color: var(--color-success); }
.pai-price {
  font-size: 22px; font-weight: 700;
  color: var(--color-danger);
  margin: 10px 0 12px;
}
.pai-price span { font-size: 13px; font-weight: 400; color: var(--color-text-muted); }
.pai-dev {
  background: #F7FAFC;
  border-left: 3px solid var(--color-accent);
  padding: 8px 10px;
  border-radius: 0 6px 6px 0;
  margin-bottom: 12px;
  font-size: 12px;
}
.pai-dev-label { color: var(--color-text-muted); margin-right: 6px; }
.pai-dev-name { color: var(--color-primary); font-weight: 600; }
.pai-params {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px 10px;
  padding: 10px 0;
  border-top: 1px dashed var(--color-border);
  border-bottom: 1px dashed var(--color-border);
  margin-bottom: 10px;
}
.pai-param {
  display: flex; flex-direction: column;
  font-size: 11px;
}
.pai-param span { color: var(--color-text-muted); }
.pai-param b { color: var(--color-text-primary); font-weight: 600; font-size: 12px; margin-top: 1px; }
.pai-section { margin-bottom: 10px; }
.pai-label {
  display: block;
  font-size: 11px; font-weight: 600;
  color: var(--color-primary);
  margin-bottom: 5px;
}
.pai-amenities, .pai-honors {
  display: flex; flex-wrap: wrap; gap: 4px;
}
.pai-amenities span, .pai-honors span {
  font-size: 10.5px;
  padding: 3px 7px;
  background: #F7FAFC;
  color: var(--color-text-secondary);
  border-radius: 4px;
  border: 1px solid var(--color-border);
}
.pai-honors span {
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  color: var(--color-accent-dark);
  border-color: #F6E5B0;
}
.pai-footer {
  display: flex; justify-content: space-between; align-items: center;
  font-size: 11.5px;
  color: var(--color-text-muted);
  padding-top: 8px;
  border-top: 1px solid var(--color-border);
}
@media (max-width: 1023px) {
  .property-ai-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .property-ai-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .brand-ai-grid {
    grid-template-columns: 1fr;
  }
}

/* ========== 企业服务/生活服务 AI信源卡片布局 ========== */
.biz-service-layout {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 24px;
  margin-top: 20px;
}
@media (max-width: 1023px) {
  .biz-service-layout {
    grid-template-columns: 1fr;
  }
  .order-2-md { order: 2; }
  .order-1-md { order: 1; }
}

/* 分类面板（新版） */
.biz-cat-grid {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.biz-cat-group {
  background: #fff;
  border-radius: 8px;
  padding: 12px 14px;
  border: 1px solid var(--color-border);
}
.biz-cat-group-label {
  font-size: 12px; font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--color-border);
}
.biz-cat-group a {
  display: inline-block;
  font-size: 12px;
  color: var(--color-text-secondary);
  padding: 3px 8px;
  margin: 2px 2px;
  border-radius: 4px;
  transition: all .2s;
}
.biz-cat-group a:hover {
  background: var(--color-accent-light);
  color: #fff;
}

/* AI信源信息条 */
.ai-source-strip {
  background: linear-gradient(135deg, #E6FFFA, #F0FFF4);
  border: 1px solid #B2F5EA;
  border-radius: 10px;
  padding: 14px 18px;
  margin-bottom: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
.ais-left {
  display: flex;
  align-items: center;
  gap: 12px;
}
.ais-icon {
  font-size: 28px;
  flex-shrink: 0;
  animation: pulse-ai 2.5s ease-in-out infinite;
}
@keyframes pulse-ai {
  0%,100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.7; transform: scale(1.08); }
}
.ais-title {
  font-size: 14px; font-weight: 700;
  color: #234E52;
  margin-bottom: 2px;
}
.ais-sub {
  font-size: 11.5px;
  color: #2C7A7B;
  line-height: 1.5;
}
.ais-badges {
  display: flex; gap: 6px; flex-wrap: wrap;
  flex-shrink: 0;
}
.ais-badge {
  font-size: 11px; font-weight: 500;
  padding: 4px 9px;
  background: #fff;
  color: #2C7A7B;
  border-radius: 12px;
  border: 1px solid #B2F5EA;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .ai-source-strip { flex-direction: column; align-items: flex-start; }
  .ais-badges { flex-wrap: wrap; }
}

/* AI企业卡片 */
.biz-ai-items {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.biz-ai-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 20px 22px;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.biz-ai-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.biz-ai-card:hover { box-shadow: 0 10px 28px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.biz-ai-card:hover::before { opacity: 1; }
.biz-ai-card.highlighted {
  border-color: var(--color-accent);
  background: linear-gradient(135deg, #FFFBF0, #fff);
  box-shadow: 0 4px 16px rgba(214,158,46,0.15);
}
.biz-ai-card.highlighted::before { opacity: 1; }

/* 品牌AI卡头部（v3.3 两级结构统一定义） */
.bai-header {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid #F0F4F8;
}
.bai-logo {
  width: 44px; height: 44px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 13px;
  flex-shrink: 0;
  text-align: center;
  line-height: 1.2;
}
.bai-main { flex: 1; min-width: 0; }
.bai-name-row { display: flex; align-items: center; gap: 8px; }
.bai-name-row h3 {
  flex: 1; min-width: 0;
  font-size: 15px; font-weight: 700;
  color: var(--color-text-primary);
  margin: 0;
  line-height: 1.3;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.bai-name-row h3 a { color: inherit; text-decoration: none; }
.bai-tags { display: flex; gap: 5px; flex-wrap: wrap; margin-top: 6px; }
.btag {
  font-size: 10.5px; font-weight: 500;
  padding: 2px 8px;
  border-radius: 4px;
  white-space: nowrap;
}
.btag.gold { background: #FFF8E6; color: var(--color-accent-dark); }
.btag.blue { background: #EBF8FF; color: #2B6CB0; }
.btag.green { background: #F0FFF4; color: #276749; }
.btag.red { background: #FFF5F5; color: #C53030; }
.btag.purple { background: #FAF5FF; color: #6B46C1; }

/* 品牌AI卡内容区（v3.4 统一定义） */
.bai-section { margin-bottom: 12px; }
.bai-section:last-of-type { margin-bottom: 14px; }
.bai-label {
  display: block;
  font-size: 10.5px; font-weight: 700;
  color: var(--color-text-muted);
  letter-spacing: 0.8px;
  margin-bottom: 6px;
}
.bai-section p {
  font-size: 12.5px;
  color: var(--color-text-secondary);
  line-height: 1.65;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.bai-products { display: flex; flex-wrap: wrap; gap: 5px; }
.bai-products span {
  font-size: 10.5px;
  padding: 3px 8px;
  background: #F7FAFC;
  color: #2B6CB0;
  border: 1px solid #E2E8F0;
  border-radius: 4px;
  line-height: 1.4;
}
.bai-footer {
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px dashed var(--color-border);
}
.bai-compliance {
  font-size: 10.5px;
  color: var(--color-text-muted);
  margin-bottom: 8px;
  line-height: 1.5;
}
.bai-footer-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.bai-region { font-size: 11px; color: var(--color-text-muted); }

.biz-more-btn {
  margin-top: 18px;
  text-align: center;
  padding: 12px;
  background: #F7FAFC;
  border: 1px dashed var(--color-border);
  border-radius: 8px;
  font-size: 13px;
  color: var(--color-primary);
  cursor: pointer;
  transition: all .2s;
  font-weight: 500;
}
.biz-more-btn:hover {
  background: var(--color-primary);
  color: #fff;
  border-color: var(--color-primary);
}

/* ========== 列表页 AI信源横幅 + GEO快速筛选 ========== */
.list-ai-banner {
  background: linear-gradient(135deg, #E6FFFA 0%, #F0FFF4 100%);
  border: 1px solid #B2F5EA;
  border-radius: 10px;
  padding: 16px 20px;
  margin-bottom: 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
.lab-left {
  display: flex;
  align-items: center;
  gap: 14px;
}
.lab-icon {
  font-size: 32px;
  flex-shrink: 0;
  animation: pulse-lab 2.5s ease-in-out infinite;
}
@keyframes pulse-lab {
  0%,100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.7; transform: scale(1.1); }
}
.lab-title {
  font-size: 15px; font-weight: 700;
  color: #234E52;
  margin-bottom: 3px;
}
.lab-sub {
  font-size: 12px;
  color: #2C7A7B;
  line-height: 1.5;
}
.lab-badges {
  display: flex; gap: 7px; flex-wrap: wrap;
  flex-shrink: 0;
}
.lab-badge {
  font-size: 11px; font-weight: 500;
  padding: 5px 11px;
  background: #fff;
  color: #2C7A7B;
  border-radius: 14px;
  border: 1px solid #B2F5EA;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .list-ai-banner { flex-direction: column; align-items: flex-start; gap: 10px; }
  .lab-badges { flex-wrap: wrap; }
}

/* GEO城市快速筛选 + 行业快速筛选 */
.geo-quick-bar, .industry-quick-bar {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 12px 16px;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.geo-label {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-primary);
  flex-shrink: 0;
}
.geo-pills {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  flex: 1;
}
.geo-pill {
  display: inline-block;
  padding: 5px 13px;
  font-size: 12px;
  color: var(--color-text-secondary);
  background: #F7FAFC;
  border: 1px solid var(--color-border);
  border-radius: 14px;
  transition: all .2s;
  cursor: pointer;
  white-space: nowrap;
}
.geo-pill:hover {
  background: var(--color-primary-light);
  color: #fff;
  border-color: var(--color-primary-light);
}
.geo-pill.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  border-color: var(--color-accent);
  font-weight: 600;
}

/* ========== 首页整体排版优化 ========== */
.home-section {
  padding: 60px 0;
}
.home-section.alt-bg {
  background: linear-gradient(180deg, #F5F7FA 0%, #F0F4F8 100%);
}

/* section header 更有层次 */
.section-header {
  margin-bottom: 28px;
  padding-bottom: 16px;
  border-bottom: 2px solid var(--color-border);
  position: relative;
}
.section-header::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100px;
  height: 2px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-primary));
}
.section-title {
  font-size: 28px;
  font-weight: 800;
  letter-spacing: -0.3px;
}
.section-title .en {
  font-size: 12px;
  letter-spacing: 2px;
}
.section-subtitle {
  font-size: 14px;
  margin-left: 18px;
  margin-top: 4px;
}

/* section tabs */
.section-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  flex-shrink: 0;
}
.section-tab {
  font-size: 13px;
  padding: 5px 12px;
  border-radius: 16px;
  color: var(--color-text-secondary);
  background: #fff;
  border: 1px solid var(--color-border);
  transition: all .2s;
  cursor: pointer;
  white-space: nowrap;
}
.section-tab:hover {
  color: var(--color-primary);
  border-color: var(--color-primary-light);
}
.section-tab.active {
  background: var(--color-primary);
  color: #fff;
  border-color: var(--color-primary);
}

/* section more 按钮更醒目 */
.section-more {
  font-size: 13px;
  font-weight: 500;
  color: var(--color-accent-dark);
  padding: 6px 14px;
  border-radius: 16px;
  background: #FFF8E6;
  border: 1px solid #F6E5B0;
  transition: all .2s;
}
.section-more:hover {
  background: var(--color-accent);
  color: #fff;
  border-color: var(--color-accent);
}

/* section cats 统一风格 */
.section-cats {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.section-cats a {
  font-size: 13px;
  padding: 6px 16px;
  border-radius: 18px;
  color: var(--color-text-secondary);
  background: #fff;
  border: 1px solid var(--color-border);
  transition: all .2s;
}
.section-cats a:hover {
  color: var(--color-primary);
  border-color: var(--color-primary-light);
}
.section-cats a.active {
  background: var(--color-accent);
  color: #fff;
  border-color: var(--color-accent);
  font-weight: 600;
}

@media (max-width: 768px) {
  .home-section { padding: 36px 0; }
  .section-title { font-size: 20px; }
  .section-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 20px;
  }
  .section-actions { width: 100%; overflow-x: auto; flex-wrap: nowrap; }
  .section-subtitle { margin-left: 0; }
}

/* 首页找客户子Tab */
.home-customer-tabs {
  display: flex;
  gap: 10px;
  margin: 0 0 18px;
}
.hct-tab {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 20px;
  background: #fff;
  border: 1.5px solid #E2E8F0;
  border-radius: 8px;
  font-size: 14.5px;
  font-weight: 600;
  color: #4A5568;
  cursor: pointer;
  transition: all 0.2s;
}
.hct-tab:hover {
  color: #155DFC;
  border-color: #155DFC;
}
.hct-tab.active {
  color: #155DFC;
  border-color: #155DFC;
  background: rgba(21,93,252,0.06);
}
.hct-tab em {
  font-style: normal;
  font-size: 12px;
  background: rgba(21,93,252,0.12);
  color: #155DFC;
  padding: 2px 8px;
  border-radius: 10px;
  font-weight: 600;
}
.hct-tab:not(.active) em { background: #EDF2F7; color: #718096; }
.hct-icon { font-size: 15px; }

/* ========== 找工厂高端布局 ========== */
.factory-premium-layout {
  display: grid;
  grid-template-columns: 230px 1fr;
  gap: 22px;
  margin-top: 8px;
}
@media (max-width: 1023px) {
  .factory-premium-layout { grid-template-columns: 1fr; }
}

/* 左侧分类侧栏 */
.factory-cat-sidebar {
  background: linear-gradient(180deg, #fff 0%, #F7FAFC 100%);
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 18px 0;
  box-shadow: 0 2px 10px rgba(26,54,93,0.06);
}
.fcs-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 18px 14px;
  border-bottom: 1px solid var(--color-border);
  margin-bottom: 8px;
}
.fcs-icon { font-size: 22px; }
.fcs-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
}
.fcs-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.fcs-list li {
  position: relative;
}
.fcs-list li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 18px;
  font-size: 13px;
  color: var(--color-text-secondary);
  transition: all .2s;
  border-left: 3px solid transparent;
}
.fcs-list li a em {
  font-style: normal;
  font-size: 11px;
  color: var(--color-text-muted);
  font-weight: 400;
}
.fcs-list li a:hover {
  background: #F0F7FF;
  color: var(--color-primary);
}
.fcs-list li.active a {
  background: linear-gradient(90deg, rgba(26,54,93,0.08), transparent);
  color: var(--color-primary);
  font-weight: 600;
  border-left-color: var(--color-accent);
}
.fcs-list li.active a em { color: var(--color-accent-dark); font-weight: 500; }

/* 产业带 */
.fcs-geo {
  margin-top: 14px;
  padding: 14px 18px 6px;
  border-top: 1px dashed var(--color-border);
}
.fcs-geo-title {
  font-size: 12px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
}
.fcs-geo-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.fcs-geo-tags a {
  font-size: 11px;
  padding: 3px 8px;
  background: #fff;
  color: var(--color-text-secondary);
  border: 1px solid var(--color-border);
  border-radius: 10px;
  transition: all .2s;
}
.fcs-geo-tags a:hover {
  background: var(--color-accent-light);
  color: #fff;
  border-color: var(--color-accent);
}

/* 右侧内容区 */
.factory-card-area {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* GEO快速筛选栏 */
.factory-geo-bar {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 10px 16px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  box-shadow: 0 2px 6px rgba(26,54,93,0.04);
}
.fgb-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-primary);
  flex-shrink: 0;
}
.fgb-cities {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
}
.fgb-cities a {
  font-size: 12px;
  padding: 4px 12px;
  color: var(--color-text-secondary);
  border-radius: 12px;
  transition: all .2s;
}
.fgb-cities a:hover {
  color: var(--color-primary);
  background: #F0F4F8;
}
.fgb-cities a.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  font-weight: 600;
}

/* 工厂卡片网格 */
.factory-ai-grid.premium {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
@media (max-width: 768px) {
  .factory-ai-grid.premium { grid-template-columns: 1fr; }
}

/* 高端工厂卡片 */
.factory-ai-card.premium {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 14px;
  padding: 22px 24px 18px;
  cursor: pointer;
  transition: all .35s cubic-bezier(.4,0,.2,1);
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 14px rgba(26,54,93,0.06);
}
.factory-ai-card.premium::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-primary), var(--color-accent));
  opacity: 0;
  transition: opacity .35s;
}
.factory-ai-card.premium:hover { box-shadow: 0 16px 36px rgba(26,54,93,0.14);
  border-color: var(--color-accent-light);
}
.factory-ai-card.premium:hover::before { opacity: 1; }
.factory-ai-card.premium.gold-rank {
  border-color: #F6E5B0;
  background: linear-gradient(180deg, #FFFBF0 0%, #fff 60%);
}
.factory-ai-card.premium.silver-rank {
  border-color: #CBD5E0;
  background: linear-gradient(180deg, #F7FAFC 0%, #fff 60%);
}
.factory-ai-card.premium.bronze-rank {
  border-color: #FED7AA;
  background: linear-gradient(180deg, #FFFAF0 0%, #fff 60%);
}

/* 排名徽章 */
.fai-rank-badge {
  position: absolute;
  top: -4px;
  right: 20px;
  width: 40px;
  height: 48px;
  background: linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  color: #fff;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  clip-path: polygon(0 0, 100% 0, 100% 85%, 50% 100%, 0 85%);
  z-index: 2;
}
.fai-rank-badge.gold {
  background: linear-gradient(180deg, #FFD700 0%, #B8860B 100%);
}
.fai-rank-badge.silver {
  background: linear-gradient(180deg, #C0C0C0 0%, #708090 100%);
}
.fai-rank-badge.bronze {
  background: linear-gradient(180deg, #CD7F32 0%, #8B4513 100%);
}
.fai-rank-badge.normal {
  background: linear-gradient(180deg, var(--color-text-muted) 0%, #4A5568 100%);
}
.frb-num {
  font-size: 18px;
  font-weight: 800;
  line-height: 1;
  margin-top: 4px;
}
.frb-text {
  font-size: 9px;
  letter-spacing: 0.5px;
  margin-top: 1px;
  opacity: 0.85;
}

/* 卡片头部 */
.fai-header {
  display: flex;
  gap: 14px;
  margin-bottom: 4px;
  padding-right: 50px;
}
.fai-logo {
  width: 56px; height: 56px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 13px;
  flex-shrink: 0;
  text-align: center;
  line-height: 1.2;
  box-shadow: 0 4px 10px rgba(26,54,93,0.15);
}
.fai-title { flex: 1; min-width: 0; }
.fai-title h3 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 4px;
  line-height: 1.3;
}
.fai-meta {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  font-size: 11px;
  color: var(--color-text-muted);
}
.fai-meta span { white-space: nowrap; }

/* 分隔线 */
.fai-divider {
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--color-border), transparent);
  margin: 12px 0;
}

/* 内容区 */
.fai-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.fai-row {
  display: flex;
  gap: 10px;
  font-size: 12.5px;
  line-height: 1.6;
}
.fai-key {
  flex-shrink: 0;
  width: 68px;
  color: var(--color-text-muted);
  font-weight: 500;
}
.fai-val {
  flex: 1;
  color: var(--color-text-secondary);
  min-width: 0;
}
.fai-val b {
  color: var(--color-accent-dark);
  font-weight: 700;
}
.fai-val.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.fai-val.tags i {
  font-style: normal;
  font-size: 11px;
  padding: 2px 8px;
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  color: var(--color-accent-dark);
  border: 1px solid #F6E5B0;
  border-radius: 4px;
  font-weight: 500;
}
.fai-val.tags.clients i {
  background: #F0F7FF;
  color: #2B6CB0;
  border-color: #BEE3F8;
}

/* 底部栏 */
.fai-footer-bar {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px dashed var(--color-border);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.ffb-left {
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
}
.ffb-loc {
  font-size: 12px;
  color: var(--color-text-secondary);
}
.ffb-factory-type {
  font-size: 11px;
  padding: 2px 8px;
  background: #F0F4F8;
  color: var(--color-text-muted);
  border-radius: 4px;
}

/* 底部数据统计 */
.factory-bottom-row {
  margin-top: 4px;
}
.fbr-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  border-radius: 12px;
  padding: 18px 20px;
  color: #fff;
}
.fbr-stat {
  text-align: center;
  border-right: 1px solid rgba(255,255,255,0.15);
}
.fbr-stat:last-child { border-right: none; }
.fbr-stat b {
  display: block;
  font-size: 22px;
  font-weight: 800;
  color: var(--color-accent-light);
  margin-bottom: 3px;
}
.fbr-stat span {
  font-size: 12px;
  color: rgba(255,255,255,0.75);
}
@media (max-width: 640px) {
  .fbr-stats { grid-template-columns: repeat(2, 1fr); gap: 10px; padding: 14px; }
  .fbr-stat:nth-child(2) { border-right: none; }
  .fbr-stat b { font-size: 18px; }
}

/* ========== 首页找组织板块 ========== */
.org-home-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.org-home-card {
  position: relative;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 20px;
  display: flex;
  gap: 14px;
  cursor: pointer;
  transition: all 0.3s ease;
  overflow: hidden;
}
.org-home-card:hover {
  box-shadow: 0 8px 24px rgba(21, 93, 252, 0.12);
  border-color: rgba(21, 93, 252, 0.35);
  }
.ohc-rank {
  position: absolute;
  top: 0;
  right: 0;
  background: linear-gradient(135deg, #5B8DEF, #3A6FD9);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 10px;
  border-bottom-left-radius: 8px;
  letter-spacing: 0.3px;
}
.ohc-rank.gold {
  background: linear-gradient(135deg, #F5C85A, #D4A23C);
}
.ohc-logo {
  width: 56px;
  height: 56px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #1A365D, #2A4A7D);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.2;
  border-radius: 8px;
  padding: 4px;
}
.ohc-body {
  flex: 1;
  min-width: 0;
}
.ohc-body h3 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 8px;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ohc-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-bottom: 8px;
}
.ohc-tags .tag {
  font-size: 11px;
  padding: 2px 7px;
  border-radius: 4px;
  line-height: 1.4;
}
.ohc-body p {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin: 0 0 10px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ohc-meta {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  font-size: 12px;
  color: var(--color-text-muted);
}
.ohc-meta span {
  white-space: nowrap;
}
.btn-primary-outline {
  display: inline-block;
  padding: 10px 28px;
  border: 1px solid var(--color-primary);
  color: var(--color-primary);
  background: transparent;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  transition: all 0.3s ease;
}
.btn-primary-outline:hover {
  background: var(--color-primary);
  color: #fff;
}
@media (max-width: 1023px) {
  .org-home-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .org-home-grid { grid-template-columns: 1fr; }
  .ohc-logo { width: 48px; height: 48px; font-size: 12px; }
  .ohc-body h3 { font-size: 14px; }
}

/* ========== 招商加盟 GEO 布局 ========== */
.franchise-geo-layout {
  display: grid;
  grid-template-columns: 1fr 260px;
  gap: 22px;
  margin-top: 8px;
}
@media (max-width: 1023px) {
  .franchise-geo-layout { grid-template-columns: 1fr; }
}

/* GEO城市筛选栏 */
.fcl-geo-bar {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 10px 16px;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.fcl-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-primary);
  flex-shrink: 0;
}
.fcl-cities {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
}
.fcl-cities a {
  font-size: 12px;
  padding: 4px 12px;
  color: var(--color-text-secondary);
  border-radius: 12px;
  transition: all .2s;
}
.fcl-cities a:hover {
  color: var(--color-primary);
  background: #F0F4F8;
}
.fcl-cities a.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  font-weight: 600;
}

/* 加盟GEO卡片 */
.franchise-card-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.fran-geo-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 18px 20px 14px;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
  display: flex;
  gap: 16px;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.fran-geo-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.fran-geo-card:hover {
  transform: translateX(3px);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.fran-geo-card:hover::before { opacity: 1; }

.fgc-rank {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--color-text-muted);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  font-weight: 800;
  flex-shrink: 0;
}
.fgc-rank.gold { background: linear-gradient(135deg, #FFD700, #B8860B); box-shadow: 0 2px 8px rgba(255,215,0,0.4); }
.fgc-rank.silver { background: linear-gradient(135deg, #C0C0C0, #708090); }
.fgc-rank.bronze { background: linear-gradient(135deg, #CD7F32, #8B4513); }

.fgc-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.fgc-header {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.fgc-logo {
  width: 52px; height: 52px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 12px;
  flex-shrink: 0;
  text-align: center;
  line-height: 1.2;
}
.fgc-title { flex: 1; min-width: 0; }
.fgc-title h3 {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 3px;
  line-height: 1.3;
}
.fgc-brand-meta {
  font-size: 11px;
  color: var(--color-text-muted);
  margin-bottom: 5px;
  line-height: 1.5;
}
.fgc-tags { display: flex; gap: 4px; flex-wrap: wrap; }
.ftag {
  font-size: 10.5px; font-weight: 500;
  padding: 2px 7px;
  border-radius: 4px;
}
.ftag.gold { background: #FFF8E6; color: var(--color-accent-dark); }
.ftag.blue { background: #EBF8FF; color: #2B6CB0; }
.ftag.green { background: #F0FFF4; color: #276749; }
.ftag.red { background: #FFF5F5; color: #C53030; }
.ftag.purple { background: #FAF5FF; color: #6B46C1; }

.fgc-invest {
  text-align: right;
  flex-shrink: 0;
  border-left: 2px solid var(--color-border);
  padding-left: 16px;
}
.fgc-invest b {
  display: block;
  font-size: 17px;
  font-weight: 800;
  color: var(--color-accent-dark);
  margin-bottom: 2px;
}
.fgc-invest span {
  font-size: 11px;
  color: var(--color-text-muted);
}

/* 信息行 */
.fgc-info {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.fgc-info-row {
  display: flex;
  gap: 8px;
  font-size: 12px;
  line-height: 1.6;
  align-items: flex-start;
}
.fgc-ico { flex-shrink: 0; font-size: 13px; width: 18px; }
.fgc-key {
  width: 68px;
  color: var(--color-text-muted);
  flex-shrink: 0;
  font-weight: 500;
}
.fgc-val {
  flex: 1;
  color: var(--color-text-secondary);
  min-width: 0;
}
.fgc-val.tags { display: flex; flex-wrap: wrap; gap: 4px; }
.fgc-val.tags i {
  font-style: normal;
  font-size: 11px;
  padding: 1px 7px;
  background: #FFF8E6;
  color: var(--color-accent-dark);
  border: 1px solid #F6E5B0;
  border-radius: 3px;
  font-weight: 500;
}

.fgc-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 10px;
  margin-top: 2px;
  border-top: 1px dashed var(--color-border);
}
.fgc-footer-left {
  display: flex;
  gap: 12px;
  font-size: 12px;
  color: var(--color-text-secondary);
  flex-wrap: wrap;
}

/* 右侧面板 */
.franchise-side-panel {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.fsp-block {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 14px;
  box-shadow: 0 2px 6px rgba(26,54,93,0.04);
}
.fsp-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--color-border);
}
.fsp-cats {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.fsp-cats a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 7px 10px;
  font-size: 12.5px;
  color: var(--color-text-secondary);
  border-radius: 6px;
  transition: all .2s;
}
.fsp-cats a em {
  font-style: normal;
  font-size: 11px;
  color: var(--color-text-muted);
  font-weight: 400;
}
.fsp-cats a:hover {
  background: #F0F7FF;
  color: var(--color-primary);
}
.fsp-cats a:hover em { color: var(--color-accent-dark); }

/* GEO城市加盟 */
.fsp-geo-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5px;
}
.fsp-geo-grid a {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 6px;
  font-size: 11.5px;
  color: var(--color-text-secondary);
  background: #F7FAFC;
  border-radius: 6px;
  transition: all .2s;
  text-align: center;
  line-height: 1.4;
}
.fsp-geo-grid a em {
  font-style: normal;
  font-size: 10px;
  color: var(--color-text-muted);
  margin-top: 2px;
}
.fsp-geo-grid a:hover {
  background: var(--color-primary-light);
  color: #fff;
}
.fsp-geo-grid a:hover em { color: rgba(255,255,255,0.75); }

/* AI信源小横幅 */
.fsp-ai-banner {
  background: linear-gradient(135deg, #E6FFFA, #F0FFF4);
  border: 1px solid #B2F5EA;
  border-radius: 10px;
  padding: 14px;
  display: flex;
  gap: 12px;
  align-items: center;
}
.fab-icon {
  font-size: 28px;
  flex-shrink: 0;
  animation: pulse-lab 2.5s ease-in-out infinite;
}
.fab-text { flex: 1; }
.fab-title {
  font-size: 13px;
  font-weight: 700;
  color: #234E52;
  margin-bottom: 3px;
}
.fab-desc {
  font-size: 11.5px;
  color: #2C7A7B;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .fran-geo-card { flex-direction: column; gap: 10px; padding: 14px; }
  .fgc-header { flex-wrap: wrap; }
  .fgc-invest { border-left: none; padding-left: 0; padding-top: 8px; text-align: left; border-top: 1px dashed var(--color-border); width: 100%; }
}

/* ========== 商协会 GEO 布局 ========== */
.assoc-geo-layout {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 22px;
  margin-top: 8px;
}
@media (max-width: 1023px) {
  .assoc-geo-layout { grid-template-columns: 1fr; }
}

/* GEO城市栏 */
.agl-geo-bar {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 10px 16px;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.agl-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-primary);
  flex-shrink: 0;
}
.agl-cities {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
}
.agl-cities a {
  font-size: 12px;
  padding: 4px 12px;
  color: var(--color-text-secondary);
  border-radius: 12px;
  transition: all .2s;
}
.agl-cities a:hover {
  color: var(--color-primary);
  background: #F0F4F8;
}
.agl-cities a.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  font-weight: 600;
}

/* 协会GEO卡片 */
.assoc-geo-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.assoc-geo-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 18px 22px 14px;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.assoc-geo-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.assoc-geo-card:hover {
  transform: translateX(3px);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.assoc-geo-card:hover::before { opacity: 1; }

.agc-badge {
  position: absolute;
  top: 16px;
  right: 20px;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-text-muted), #4A5568);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 800;
  z-index: 2;
}
.agc-badge.gold {
  background: linear-gradient(135deg, #FFD700, #B8860B);
  box-shadow: 0 2px 10px rgba(255,215,0,0.4);
}
.agc-badge.red {
  background: linear-gradient(135deg, #E53E3E, #C53030);
  box-shadow: 0 2px 10px rgba(229,62,62,0.35);
}
.agc-badge.blue {
  background: linear-gradient(135deg, #3182CE, #2C5282);
  box-shadow: 0 2px 10px rgba(49,130,206,0.35);
}

.agc-body { padding-right: 55px; }
.agc-header h3 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 4px;
  line-height: 1.3;
}
.agc-meta {
  font-size: 11.5px;
  color: var(--color-text-muted);
  margin-bottom: 6px;
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.agc-tags {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.atag {
  font-size: 10.5px;
  font-weight: 500;
  padding: 2px 8px;
  border-radius: 4px;
}
.atag.gold { background: #FFF8E6; color: var(--color-accent-dark); }
.atag.blue { background: #EBF8FF; color: #2B6CB0; }
.atag.green { background: #F0FFF4; color: #276749; }
.atag.red { background: #FFF5F5; color: #C53030; }
.atag.purple { background: #FAF5FF; color: #6B46C1; }

.agc-desc {
  font-size: 12.5px;
  color: var(--color-text-secondary);
  line-height: 1.7;
  margin: 8px 0 12px;
}

.agc-info-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-bottom: 12px;
  padding: 12px 0;
  border-top: 1px dashed var(--color-border);
  border-bottom: 1px dashed var(--color-border);
}
.agc-info-item {
  text-align: center;
  padding: 0 4px;
  border-right: 1px solid var(--color-border);
}
.agc-info-item:last-child { border-right: none; }
.agc-info-num {
  display: block;
  font-size: 15px;
  font-weight: 800;
  color: var(--color-accent-dark);
  margin-bottom: 3px;
}
.agc-info-label {
  font-size: 11px;
  color: var(--color-text-muted);
}
@media (max-width: 640px) {
  .agc-info-grid { grid-template-columns: repeat(2, 1fr); }
  .agc-info-item:nth-child(2) { border-right: none; }
}

/* GEO城市标签行 */
.agc-geo-row {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  flex-wrap: wrap;
}
.agc-geo-label {
  font-size: 12px;
  font-weight: 500;
  color: var(--color-primary);
  flex-shrink: 0;
}
.agc-geo-tags {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  flex: 1;
  min-width: 0;
}
.agc-geo-tags span {
  font-size: 11px;
  padding: 3px 9px;
  background: #F0F7FF;
  color: #2B6CB0;
  border: 1px solid #BEE3F8;
  border-radius: 10px;
}

.agc-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
  margin-top: 10px;
  border-top: 1px solid var(--color-border);
}
.agc-footer-left {
  display: flex;
  gap: 14px;
  font-size: 12px;
  color: var(--color-text-secondary);
  flex-wrap: wrap;
}

/* 右侧面板 */
.assoc-side-panel {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.asp-block {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 14px;
  box-shadow: 0 2px 6px rgba(26,54,93,0.04);
}
.asp-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--color-border);
}
.asp-cats {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.asp-cats a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 7px 10px;
  font-size: 12.5px;
  color: var(--color-text-secondary);
  border-radius: 6px;
  transition: all .2s;
}
.asp-cats a em {
  font-style: normal;
  font-size: 11px;
  color: var(--color-text-muted);
}
.asp-cats a:hover {
  background: #F0F7FF;
  color: var(--color-primary);
}

.asp-geo-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5px;
}
.asp-geo-grid a {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 4px;
  font-size: 11.5px;
  color: var(--color-text-secondary);
  background: #F7FAFC;
  border-radius: 6px;
  transition: all .2s;
  text-align: center;
  line-height: 1.4;
}
.asp-geo-grid a em {
  font-style: normal;
  font-size: 10px;
  color: var(--color-text-muted);
  margin-top: 2px;
}
.asp-geo-grid a:hover {
  background: var(--color-primary-light);
  color: #fff;
}
.asp-geo-grid a:hover em { color: rgba(255,255,255,0.75); }

/* 会员名录模块 */
.asp-member-block {
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  border: 1px solid #F6E5B0;
  border-radius: 10px;
  padding: 14px;
}
.amb-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
.amb-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-accent-dark);
}
.amb-stats {
  text-align: center;
  padding: 10px 0;
  border-bottom: 1px dashed #F6E5B0;
  margin-bottom: 10px;
}
.amb-stats b {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-accent-dark);
  display: block;
  margin-bottom: 2px;
}
.amb-stats span {
  font-size: 11px;
  color: var(--color-text-muted);
}
.amb-logos {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
  margin-bottom: 10px;
}
.amb-logo {
  aspect-ratio: 1;
  background: #fff;
  border: 1px solid #F6E5B0;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  color: var(--color-text-secondary);
  text-align: center;
  line-height: 1.2;
  padding: 4px;
  transition: all .2s;
}
.amb-logo:hover {
  background: var(--color-accent-light);
  color: #fff;
  border-color: var(--color-accent);
}
.amb-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  justify-content: center;
}
.amb-tags span {
  font-size: 10.5px;
  padding: 2px 8px;
  background: #fff;
  color: var(--color-accent-dark);
  border: 1px solid #F6E5B0;
  border-radius: 10px;
}

/* AI信源小横幅 */
.asp-ai-banner {
  background: linear-gradient(135deg, #E6FFFA, #F0FFF4);
  border: 1px solid #B2F5EA;
  border-radius: 10px;
  padding: 14px;
  display: flex;
  gap: 12px;
  align-items: center;
}
.aib-icon {
  font-size: 28px;
  flex-shrink: 0;
  animation: pulse-lab 2.5s ease-in-out infinite;
}
.aib-text { flex: 1; }
.aib-title {
  font-size: 13px;
  font-weight: 700;
  color: #234E52;
  margin-bottom: 3px;
}
.aib-desc {
  font-size: 11.5px;
  color: #2C7A7B;
  line-height: 1.5;
}

/* ========== 企业/生活服务 GEO 布局 ========== */
.svc-geo-bar {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 10px 18px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  box-shadow: 0 2px 6px rgba(26,54,93,0.04);
}
.sgb-label {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-primary);
  flex-shrink: 0;
}
.sgb-cities {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
}
.sgb-cities a {
  font-size: 12px;
  padding: 4px 13px;
  color: var(--color-text-secondary);
  border-radius: 12px;
  transition: all .2s;
}
.sgb-cities a:hover {
  color: var(--color-primary);
  background: #F0F4F8;
}
.sgb-cities a.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  font-weight: 600;
}

.svc-geo-layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 20px;
}
.svc-geo-layout.reverse {
  grid-template-columns: 1fr 240px;
}
@media (max-width: 1023px) {
  .svc-geo-layout, .svc-geo-layout.reverse {
    grid-template-columns: 1fr;
  }
}

/* 分类侧栏 */
.svc-cat-sidebar {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.scs-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 14px 16px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  border-radius: 10px 10px 0 0;
  color: #fff;
}
.scs-icon { font-size: 20px; }
.scs-title {
  font-size: 14px;
  font-weight: 700;
}
.scs-list {
  list-style: none;
  padding: 8px 0;
  margin: 0;
  background: #fff;
  border: 1px solid var(--color-border);
  border-top: none;
  border-radius: 0 0 10px 10px;
  box-shadow: 0 2px 6px rgba(26,54,93,0.04);
}
.scs-list li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 9px 16px;
  font-size: 12.5px;
  color: var(--color-text-secondary);
  transition: all .2s;
  border-left: 3px solid transparent;
}
.scs-list li a em {
  font-style: normal;
  font-size: 11px;
  color: var(--color-text-muted);
  font-weight: 400;
}
.scs-list li a:hover {
  background: #F0F7FF;
  color: var(--color-primary);
}
.scs-list li.active a {
  background: linear-gradient(90deg, rgba(26,54,93,0.06), transparent);
  color: var(--color-primary);
  font-weight: 600;
  border-left-color: var(--color-accent);
}
.scs-list li.active a em { color: var(--color-accent-dark); font-weight: 500; }

/* GEO城市块 */
.scs-geo-block {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 12px 14px;
  box-shadow: 0 2px 6px rgba(26,54,93,0.04);
}
.scs-geo-title {
  font-size: 12px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 8px;
}
.scs-geo-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4px;
}
.scs-geo-grid a {
  font-size: 11px;
  padding: 6px 4px;
  text-align: center;
  color: var(--color-text-secondary);
  background: #F7FAFC;
  border-radius: 5px;
  transition: all .2s;
  line-height: 1.4;
}
.scs-geo-grid a:hover {
  background: var(--color-primary-light);
  color: #fff;
}

/* AI信源块 */
.scs-ai-block {
  background: linear-gradient(135deg, #E6FFFA, #F0FFF4);
  border: 1px solid #B2F5EA;
  border-radius: 10px;
  padding: 14px;
  text-align: center;
}
.sab-icon {
  font-size: 28px;
  margin-bottom: 6px;
  animation: pulse-lab 2.5s ease-in-out infinite;
}
.sab-text {
  font-size: 13px;
  font-weight: 700;
  color: #234E52;
  margin-bottom: 5px;
}
.scs-ai-block p {
  font-size: 11.5px;
  color: #2C7A7B;
  line-height: 1.5;
  margin: 0;
}

/* 卡片区 */
.svc-card-area {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.svc-card-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
@media (max-width: 768px) {
  .svc-card-grid { grid-template-columns: 1fr; }
}

/* 企业服务AI卡片 */
.svc-ai-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 18px 20px 14px;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.svc-ai-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.svc-ai-card:hover { box-shadow: 0 12px 30px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.svc-ai-card:hover::before { opacity: 1; }
.svc-ai-card.highlighted {
  border-color: var(--color-accent);
  background: linear-gradient(180deg, #FFFBF0 0%, #fff 60%);
  box-shadow: 0 4px 16px rgba(214,158,46,0.15);
}
.svc-ai-card.highlighted::before { opacity: 1; }

.sac-rank {
  position: absolute;
  top: 14px;
  right: 16px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.5px;
  padding: 3px 9px;
  border-radius: 10px;
  background: var(--color-text-muted);
  color: #fff;
  z-index: 2;
}
.sac-rank.gold { background: linear-gradient(135deg, #FFD700, #B8860B); }
.sac-rank.silver { background: linear-gradient(135deg, #C0C0C0, #708090); }
.sac-rank.bronze { background: linear-gradient(135deg, #CD7F32, #8B4513); }

.sac-header {
  display: flex;
  gap: 12px;
  margin-bottom: 10px;
  padding-right: 60px;
}
.sac-logo {
  width: 48px; height: 48px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 12px;
  flex-shrink: 0;
  text-align: center;
  line-height: 1.2;
  box-shadow: 0 3px 8px rgba(26,54,93,0.15);
}
.sac-title { flex: 1; min-width: 0; }
.sac-title h3 {
  font-size: 14.5px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 3px;
  line-height: 1.3;
}
.sac-alias {
  font-size: 11px;
  color: var(--color-text-muted);
  margin-bottom: 5px;
  line-height: 1.5;
}
.sac-tags { display: flex; gap: 4px; flex-wrap: wrap; }
.stag {
  font-size: 10.5px; font-weight: 500;
  padding: 2px 7px;
  border-radius: 4px;
}
.stag.gold { background: #FFF8E6; color: var(--color-accent-dark); }
.stag.blue { background: #EBF8FF; color: #2B6CB0; }
.stag.green { background: #F0FFF4; color: #276749; }
.stag.red { background: #FFF5F5; color: #C53030; }
.stag.purple { background: #FAF5FF; color: #6B46C1; }

.sac-body {
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding: 10px 0;
  border-top: 1px dashed var(--color-border);
  border-bottom: 1px dashed var(--color-border);
}
.sac-row {
  display: flex;
  gap: 8px;
  font-size: 11.5px;
  line-height: 1.6;
  align-items: flex-start;
}
.sac-key {
  width: 60px;
  flex-shrink: 0;
  color: var(--color-text-muted);
  font-weight: 600;
}
.sac-val {
  flex: 1;
  color: var(--color-text-secondary);
  min-width: 0;
}
.sac-val b {
  color: var(--color-accent-dark);
  font-weight: 700;
}
.sac-val.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
}
.sac-val.tags i {
  font-style: normal;
  font-size: 10.5px;
  padding: 1px 7px;
  background: #F0F7FF;
  color: #2B6CB0;
  border: 1px solid #BEE3F8;
  border-radius: 3px;
  font-weight: 500;
  line-height: 1.6;
}
.sac-val.tags.honors i {
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  color: var(--color-accent-dark);
  border: 1px solid #F6E5B0;
}

.sac-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 10px;
  margin-top: 2px;
}
.sac-left {
  display: flex;
  gap: 12px;
  font-size: 11.5px;
  color: var(--color-text-secondary);
  flex-wrap: wrap;
}

/* 底部数据栏 */
.svc-bottom-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  border-radius: 12px;
  padding: 16px 20px;
  color: #fff;
  box-shadow: 0 4px 14px rgba(26,54,93,0.2);
}
.sbs-item {
  text-align: center;
  border-right: 1px solid rgba(255,255,255,0.15);
}
.sbs-item:last-child { border-right: none; }
.sbs-item b {
  display: block;
  font-size: 22px;
  font-weight: 800;
  color: var(--color-accent-light);
  margin-bottom: 2px;
}
.sbs-item span {
  font-size: 12px;
  color: rgba(255,255,255,0.75);
}
@media (max-width: 640px) {
  .svc-bottom-stats { grid-template-columns: repeat(2, 1fr); gap: 10px; padding: 14px; }
  .sbs-item:nth-child(2) { border-right: none; }
  .sbs-item b { font-size: 18px; }
}

/* ========== 企业服务列表页（AI信源+GEO） ========== */
.page-hero {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  padding: 40px 0 36px;
  margin-bottom: 20px;
  position: relative;
  overflow: hidden;
}
.page-hero::before {
  content: '';
  position: absolute;
  top: -50%; right: -10%;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(214,158,46,0.15), transparent 70%);
  border-radius: 50%;
}
.page-hero-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  position: relative;
  z-index: 1;
  text-align: center;
  color: #fff;
}
.page-hero h1 {
  font-size: 30px;
  font-weight: 800;
  margin: 0 0 10px;
}
.page-hero p {
  font-size: 15px;
  color: rgba(255,255,255,0.85);
  margin: 0 0 16px;
}
.hero-badges {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}
.hero-badges span {
  padding: 6px 14px;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 18px;
  font-size: 13px;
  backdrop-filter: blur(4px);
}

/* 列表布局 */
.service-list-layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 20px;
  margin-top: 16px;
}
@media (max-width: 1023px) {
  .service-list-layout { grid-template-columns: 1fr; }
}

/* 左侧侧栏 */
.service-list-sidebar {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.sls-block {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 14px;
  box-shadow: 0 2px 6px rgba(26,54,93,0.04);
}
.sls-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--color-border);
}
.sls-cats {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.sls-cats li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 7px 10px;
  font-size: 12.5px;
  color: var(--color-text-secondary);
  border-radius: 6px;
  transition: all .2s;
}
.sls-cats li a em {
  font-style: normal;
  font-size: 11px;
  color: var(--color-text-muted);
}
.sls-cats li a:hover {
  background: #FFF8E6;
  color: var(--color-accent-dark);
}
.sls-cats li.active a {
  background: linear-gradient(90deg, rgba(26,54,93,0.08), transparent);
  color: var(--color-primary);
  font-weight: 600;
  border-left: 3px solid var(--color-accent);
  border-radius: 0 6px 6px 0;
  margin-left: -14px;
  padding-left: 21px;
}
.sls-cats li.active a em { color: var(--color-accent-dark); font-weight: 500; }

/* 地区列表 */
.sls-geo-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sls-geo-list a {
  display: flex;
  flex-direction: column;
  padding: 7px 10px;
  border-radius: 6px;
  transition: all .2s;
  line-height: 1.4;
}
.sls-geo-list a:hover {
  background: #FFF8E6;
}
.sls-geo-list a i.province {
  font-style: normal;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--color-primary);
  margin-bottom: 2px;
}
.sls-geo-list a span {
  font-size: 11px;
  color: var(--color-text-muted);
}

/* 城市分站 */
.sls-cities {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4px;
}
.sls-cities a {
  font-size: 11px;
  padding: 7px 4px;
  text-align: center;
  color: var(--color-text-secondary);
  background: #F7FAFC;
  border-radius: 5px;
  transition: all .2s;
  line-height: 1.4;
}
.sls-cities a:hover {
  background: var(--color-primary-light);
  color: #fff;
}

/* 右侧主列表 */
.service-list-main {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

/* 结果摘要 */
.result-summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 10px 16px;
  flex-wrap: wrap;
  gap: 10px;
}
.rs-text {
  font-size: 13px;
  color: var(--color-text-secondary);
}
.rs-text b {
  color: var(--color-accent-dark);
  font-weight: 700;
  font-size: 15px;
}
.rs-sort {
  display: flex;
  gap: 6px;
  align-items: center;
}
.rs-label {
  font-size: 12px;
  color: var(--color-text-muted);
}
.rs-sort a {
  font-size: 12px;
  padding: 3px 10px;
  color: var(--color-text-secondary);
  border-radius: 12px;
  transition: all .2s;
}
.rs-sort a:hover { color: var(--color-primary); }
.rs-sort a.active {
  background: var(--color-primary);
  color: #fff;
}

/* 企业AI卡片（列表页版） */
.company-ai-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.company-ai-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 18px 22px 16px;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.company-ai-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.company-ai-card:hover {
  transform: translateX(3px);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.company-ai-card:hover::before { opacity: 1; }
.company-ai-card.highlighted {
  border-color: var(--color-accent);
  background: linear-gradient(180deg, #FFFBF0 0%, #fff 60%);
  box-shadow: 0 4px 16px rgba(214,158,46,0.15);
}
.company-ai-card.highlighted::before { opacity: 1; }

.cac-badge {
  position: absolute;
  top: 0;
  right: 20px;
  font-size: 10.5px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 0 0 8px 8px;
  background: var(--color-text-muted);
  color: #fff;
  z-index: 2;
}
.cac-badge.gold { background: linear-gradient(180deg, #FFD700, #B8860B); }
.cac-badge.silver { background: linear-gradient(180deg, #C0C0C0, #708090); }
.cac-badge.blue { background: linear-gradient(180deg, #3182CE, #2C5282); }
.cac-badge.red { background: linear-gradient(180deg, #E53E3E, #C53030); }

.cac-header {
  display: flex;
  gap: 14px;
  margin-bottom: 12px;
  align-items: flex-start;
}
.cac-rank {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 13px;
  flex-shrink: 0;
}
.cac-logo {
  width: 52px; height: 52px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 12px;
  flex-shrink: 0;
  text-align: center;
  line-height: 1.2;
  box-shadow: 0 3px 8px rgba(26,54,93,0.15);
}
.cac-title { flex: 1; min-width: 0; }
.cac-title h2 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 3px;
  line-height: 1.3;
}
.cac-aliases {
  font-size: 11.5px;
  color: var(--color-text-muted);
  margin-bottom: 5px;
  line-height: 1.6;
}
.cac-aliases span { color: var(--color-text-secondary); font-weight: 500; }
.cac-tags { display: flex; gap: 4px; flex-wrap: wrap; }
.ctag {
  font-size: 10.5px; font-weight: 500;
  padding: 2px 7px;
  border-radius: 4px;
}
.ctag.gold { background: #FFF8E6; color: var(--color-accent-dark); }
.ctag.blue { background: #EBF8FF; color: #2B6CB0; }
.ctag.green { background: #F0FFF4; color: #276749; }
.ctag.red { background: #FFF5F5; color: #C53030; }
.ctag.purple { background: #FAF5FF; color: #6B46C1; }

/* 卡片主体 */
.cac-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 0;
  border-top: 1px dashed var(--color-border);
  border-bottom: 1px dashed var(--color-border);
}
.cac-row {
  display: flex;
  gap: 10px;
  font-size: 12px;
  line-height: 1.7;
  align-items: flex-start;
}
.cac-key {
  width: 88px;
  flex-shrink: 0;
  color: var(--color-text-muted);
  font-weight: 600;
}
.cac-val {
  flex: 1;
  color: var(--color-text-secondary);
  min-width: 0;
}
.cac-val.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.cac-val.tags span {
  font-size: 11px;
  padding: 2px 8px;
  background: #F0F7FF;
  color: #2B6CB0;
  border: 1px solid #BEE3F8;
  border-radius: 4px;
  font-weight: 500;
  line-height: 1.6;
}
.cac-val.tags.honors span {
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  color: var(--color-accent-dark);
  border: 1px solid #F6E5B0;
}
.cac-val.tags.clients span {
  background: #F0FFF4;
  color: #276749;
  border: 1px solid #C6F6D5;
}
.cac-val.tags.geo-tags span {
  background: #FAF5FF;
  color: #6B46C1;
  border: 1px solid #D6BCFA;
  border-radius: 10px;
  padding: 2px 9px;
}

/* 数据栏 */
.cac-val.stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.cac-stat {
  text-align: center;
  padding: 6px 4px;
  background: #F7FAFC;
  border-radius: 6px;
}
.cac-stat b {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-accent-dark);
  margin-bottom: 2px;
}
.cac-stat span {
  font-size: 10.5px;
  color: var(--color-text-muted);
}
@media (max-width: 640px) {
  .cac-val.stats { grid-template-columns: repeat(2, 1fr); }
}

/* 底部联系栏 */
.cac-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
  margin-top: 4px;
  flex-wrap: wrap;
  gap: 10px;
}
.cac-contact {
  display: flex;
  gap: 14px;
  font-size: 12px;
  color: var(--color-text-secondary);
  flex-wrap: wrap;
}

/* 首页企业服务 GEO 城市名录锚点区 */
.svc-geo-directory {
  margin-top: 18px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 14px 18px 16px;
}
.sgd-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
  flex-wrap: wrap;
  gap: 6px;
}
.sgd-title {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--color-primary);
}
.sgd-sub {
  font-size: 11.5px;
  color: var(--color-text-muted);
}
.sgd-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
}
.sgd-grid a {
  display: block;
  padding: 7px 8px;
  text-align: center;
  font-size: 12px;
  color: var(--color-text-secondary);
  background: #F7FAFC;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  transition: all .25s;
  line-height: 1.4;
}
.sgd-grid a:hover {
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  border-color: var(--color-primary);
  box-shadow: 0 4px 10px rgba(26,54,93,0.15);
}
@media (max-width: 1023px) {
  .sgd-grid { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 640px) {
  .sgd-grid { grid-template-columns: repeat(3, 1fr); }
  .sgd-grid a { font-size: 11px; padding: 6px 4px; }
}

/* ========== 品牌AI卡片（列表页版 brand-ai-card） ========== */
.brand-ai-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.brand-ai-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 18px 22px 16px;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.brand-ai-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.brand-ai-card:hover {
  transform: translateX(3px);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.brand-ai-card:hover::before { opacity: 1; }
.brand-ai-card.highlighted {
  border-color: var(--color-accent);
  background: linear-gradient(180deg, #FFFBF0 0%, #fff 60%);
  box-shadow: 0 4px 16px rgba(214,158,46,0.15);
}
.brand-ai-card.highlighted::before { opacity: 1; }

.bac-badge {
  position: absolute;
  top: 0;
  right: 20px;
  font-size: 10.5px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 0 0 8px 8px;
  background: var(--color-text-muted);
  color: #fff;
  z-index: 2;
}
.bac-badge.gold { background: linear-gradient(180deg, #FFD700, #B8860B); }
.bac-badge.silver { background: linear-gradient(180deg, #C0C0C0, #708090); }
.bac-badge.blue { background: linear-gradient(180deg, #3182CE, #2C5282); }

.bac-header {
  display: flex;
  gap: 14px;
  margin-bottom: 12px;
  align-items: flex-start;
}
.bac-rank {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 14px;
  flex-shrink: 0;
  box-shadow: 0 3px 8px rgba(214,158,46,0.35);
}
.bac-logo {
  width: 52px; height: 52px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 12px;
  flex-shrink: 0;
  text-align: center;
  line-height: 1.2;
  box-shadow: 0 3px 8px rgba(26,54,93,0.15);
}
.bac-title { flex: 1; min-width: 0; }
.bac-title h2 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 3px;
  line-height: 1.3;
}
.bac-aliases {
  font-size: 11.5px;
  color: var(--color-text-muted);
  margin-bottom: 5px;
  line-height: 1.6;
}
.bac-aliases span { color: var(--color-text-secondary); font-weight: 500; }
.bac-tags { display: flex; gap: 4px; flex-wrap: wrap; }

.bac-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 0;
  border-top: 1px dashed var(--color-border);
  border-bottom: 1px dashed var(--color-border);
}
.bac-row {
  display: flex;
  gap: 10px;
  font-size: 12px;
  line-height: 1.7;
  align-items: flex-start;
}
.bac-key {
  width: 88px;
  flex-shrink: 0;
  color: var(--color-text-muted);
  font-weight: 600;
}
.bac-val {
  flex: 1;
  color: var(--color-text-secondary);
  min-width: 0;
}
.bac-val.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.bac-val.tags span {
  font-size: 11px;
  padding: 2px 8px;
  background: #FFF8E6;
  color: var(--color-accent-dark);
  border: 1px solid #F6E5B0;
  border-radius: 4px;
  font-weight: 500;
  line-height: 1.6;
}
.bac-val.tags.green-tags span {
  background: #F0FFF4;
  color: #276749;
  border: 1px solid #C6F6D5;
}
.bac-val.tags.blue-tags span {
  background: #EBF8FF;
  color: #2B6CB0;
  border: 1px solid #BEE3F8;
}
.bac-val.tags.geo-tags span {
  background: #FAF5FF;
  color: #6B46C1;
  border: 1px solid #D6BCFA;
  border-radius: 10px;
  padding: 2px 9px;
}

/* 品牌数据栏 */
.bac-val.stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.bac-stat {
  text-align: center;
  padding: 6px 4px;
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  border-radius: 6px;
}
.bac-stat b {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-accent-dark);
  margin-bottom: 2px;
}
.bac-stat span {
  font-size: 10.5px;
  color: var(--color-text-muted);
}
@media (max-width: 640px) {
  .bac-val.stats { grid-template-columns: repeat(2, 1fr); }
}

/* 品牌底部联系栏 */
.bac-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
  margin-top: 4px;
  flex-wrap: wrap;
  gap: 10px;
}
.bac-contact {
  display: flex;
  gap: 14px;
  font-size: 12px;
  color: var(--color-text-secondary);
  flex-wrap: wrap;
}
.bac-contact b { color: var(--color-primary); font-weight: 600; }

/* ========== 楼盘AI卡片（列表页版 property-ai-card list） ========== */
.prop-ai-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.prop-ai-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 18px 22px 16px;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 20px;
}
.prop-ai-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.prop-ai-card:hover {
  transform: translateX(3px);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.prop-ai-card:hover::before { opacity: 1; }
.prop-ai-card.highlighted {
  border-color: var(--color-accent);
  background: linear-gradient(180deg, #FFFBF0 0%, #fff 60%);
  box-shadow: 0 4px 16px rgba(214,158,46,0.15);
}
.prop-ai-card.highlighted::before { opacity: 1; }
@media (max-width: 768px) {
  .prop-ai-card { grid-template-columns: 1fr; }
}

.pai-thumb {
  border-radius: 10px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-accent));
  position: relative;
  overflow: hidden;
  min-height: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
}
.pai-thumb::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,0.15), transparent 50%);
}

.pai-rank {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 4px 10px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  border-radius: 6px;
  z-index: 2;
}

.pai-content {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}
.pai-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  flex-wrap: wrap;
}
.pai-header h2 {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 4px;
  line-height: 1.3;
}
.pai-aliases {
  font-size: 11.5px;
  color: var(--color-text-muted);
  line-height: 1.6;
}
.pai-aliases span { color: var(--color-text-secondary); font-weight: 500; }

.pai-price {
  text-align: right;
  flex-shrink: 0;
}
.pai-price b {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-danger);
}
.pai-price span {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-left: 2px;
}
.pai-price small {
  display: block;
  font-size: 11px;
  color: var(--color-text-muted);
  margin-top: 2px;
}

.pai-tags { display: flex; gap: 4px; flex-wrap: wrap; }
.ptag {
  font-size: 10.5px; font-weight: 500;
  padding: 2px 7px;
  border-radius: 4px;
}
.ptag.new { background: #FFF5F5; color: #C53030; }
.ptag.green { background: #F0FFF4; color: #276749; }
.ptag.gold { background: #FFF8E6; color: var(--color-accent-dark); }
.ptag.blue { background: #EBF8FF; color: #2B6CB0; }

.pai-body {
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding: 10px 0;
  border-top: 1px dashed var(--color-border);
  border-bottom: 1px dashed var(--color-border);
}
.pai-row {
  display: flex;
  gap: 10px;
  font-size: 12px;
  line-height: 1.7;
  align-items: flex-start;
}
.pai-key {
  width: 80px;
  flex-shrink: 0;
  color: var(--color-text-muted);
  font-weight: 600;
}
.pai-val {
  flex: 1;
  color: var(--color-text-secondary);
  min-width: 0;
}
.pai-val.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.pai-val.tags span {
  font-size: 11px;
  padding: 2px 8px;
  background: #F0F7FF;
  color: #2B6CB0;
  border: 1px solid #BEE3F8;
  border-radius: 4px;
  font-weight: 500;
  line-height: 1.6;
}
.pai-val.tags.honor-tags span {
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  color: var(--color-accent-dark);
  border: 1px solid #F6E5B0;
}

.pai-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 12px;
  color: var(--color-text-secondary);
}

/* ========== 资讯AI卡片（列表页版 news-ai-card） ========== */
.news-ai-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.news-ai-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 16px 20px;
  cursor: pointer;
  transition: all .3s ease;
  box-shadow: 0 2px 6px rgba(26,54,93,0.04);
  display: flex;
  gap: 16px;
  position: relative;
  overflow: hidden;
}
.news-ai-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 3px;
  background: var(--color-primary);
  opacity: 0;
  transition: opacity .3s;
}
.news-ai-card:hover {
  transform: translateX(2px);
  box-shadow: 0 6px 18px rgba(26,54,93,0.1);
  border-color: var(--color-primary-light);
}
.news-ai-card:hover::before { opacity: 1; }
.news-ai-card.featured {
  background: linear-gradient(135deg, #F0F7FF 0%, #fff 60%);
  border-color: var(--color-primary-light);
}

.nac-thumb {
  width: 160px;
  flex-shrink: 0;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  min-height: 100px;
  position: relative;
  overflow: hidden;
}
.nac-thumb::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 40% 40%, rgba(214,158,46,0.3), transparent 60%);
}
@media (max-width: 640px) {
  .nac-thumb { width: 100px; min-height: 70px; }
}

.nac-content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 8px;
}
.nac-top {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 4px;
}
.nac-cat {
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  background: var(--color-primary);
  color: #fff;
  border-radius: 4px;
}
.nac-cat.industry { background: var(--color-accent-dark); }
.nac-cat.policy { background: #38A169; }
.nac-cat.company { background: #3182CE; }
.nac-cat.viewpoint { background: #6B46C1; }
.nac-cat.finance { background: #D69E2E; }

.nac-badge {
  font-size: 10px;
  padding: 2px 6px;
  border-radius: 4px;
  background: #FFF8E6;
  color: var(--color-accent-dark);
  font-weight: 600;
}

.nac-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  line-height: 1.5;
  margin-bottom: 6px;
}
.news-ai-card:hover .nac-title { color: var(--color-primary); }

.nac-summary {
  font-size: 12.5px;
  color: var(--color-text-secondary);
  line-height: 1.7;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.nac-keywords {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  margin-top: 4px;
}
.nac-keywords span {
  font-size: 10.5px;
  padding: 2px 7px;
  background: #F0F7FF;
  color: #2B6CB0;
  border-radius: 4px;
  font-weight: 500;
}

.nac-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 11.5px;
  color: var(--color-text-muted);
  flex-wrap: wrap;
  gap: 6px;
}
.nac-meta { display: flex; gap: 12px; }
.nac-source { font-weight: 500; color: var(--color-accent-dark); }

/* ========== 资讯侧边栏样式 ========== */
.news-sidebar {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.nws-block {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 14px;
  box-shadow: 0 2px 6px rgba(26,54,93,0.04);
}
.nws-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  align-items: center;
  gap: 6px;
}
.nws-title::before {
  content: '';
  width: 3px;
  height: 14px;
  background: var(--color-accent);
  border-radius: 2px;
}

.hot-news-list {
  list-style: none;
  padding: 0;
  margin: 0;
  counter-reset: hotrank;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.hot-news-list li {
  counter-increment: hotrank;
  display: flex;
  gap: 8px;
  align-items: flex-start;
  font-size: 12px;
  line-height: 1.6;
  cursor: pointer;
  padding: 4px 0;
  border-bottom: 1px dashed #F0F0F0;
}
.hot-news-list li:last-child { border-bottom: none; }
.hot-news-list li::before {
  content: counter(hotrank);
  width: 18px;
  height: 18px;
  background: var(--color-text-muted);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.hot-news-list li:nth-child(1)::before { background: #E53E3E; }
.hot-news-list li:nth-child(2)::before { background: var(--color-accent-dark); }
.hot-news-list li:nth-child(3)::before { background: #ED8936; }
.hot-news-list li span {
  flex: 1;
  color: var(--color-text-secondary);
  transition: color .2s;
}
.hot-news-list li:hover span { color: var(--color-primary); }

/* 资讯分类侧栏 */
.news-cats {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.news-cats a {
  padding: 7px 10px;
  font-size: 12.5px;
  color: var(--color-text-secondary);
  border-radius: 6px;
  transition: all .2s;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.news-cats a em {
  font-style: normal;
  font-size: 11px;
  color: var(--color-text-muted);
}
.news-cats a:hover {
  background: #F0F7FF;
  color: var(--color-primary);
}
.news-cats a.active {
  background: linear-gradient(90deg, rgba(26,54,93,0.08), transparent);
  color: var(--color-primary);
  font-weight: 600;
  border-left: 3px solid var(--color-accent);
  border-radius: 0 6px 6px 0;
  margin-left: -14px;
  padding-left: 21px;
}

/* ========== 列表页通用 Hero & 布局 ========== */
/* 通用 list-layout 左右布局（复用 service-list-layout 但去前缀时） */
.list-ai-banner {
  margin: 16px 0 0;
  padding: 14px 20px;
  border-radius: 10px;
  background: linear-gradient(135deg, #F0FFF4 0%, #fff 100%);
  border: 1px solid #C6F6D5;
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.list-ai-banner .laib-title {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 700;
  color: #276749;
  flex-shrink: 0;
}
.list-ai-banner .laib-badges {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  flex: 1;
}
.list-ai-banner .laib-badges span {
  font-size: 11px;
  padding: 4px 10px;
  background: #fff;
  border: 1px solid #C6F6D5;
  border-radius: 12px;
  color: #276749;
}
.list-ai-banner .laib-desc {
  font-size: 12px;
  color: #2F855A;
}


/* ========== 工厂AI卡片（列表页版 factory-ai-card） ========== */
.factory-ai-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.factory-ai-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 18px 22px 16px;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
  display: flex;
  flex-direction: column;
}
.factory-ai-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.factory-ai-card:hover {
  transform: translateX(3px);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.factory-ai-card:hover::before { opacity: 1; }
.factory-ai-card.highlighted {
  border-color: var(--color-accent);
  background: linear-gradient(180deg, #FFFBF0 0%, #fff 60%);
  box-shadow: 0 4px 16px rgba(214,158,46,0.15);
}
.factory-ai-card.highlighted::before { opacity: 1; }

.fac-badge {
  position: absolute;
  top: 0;
  right: 20px;
  font-size: 10.5px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 0 0 8px 8px;
  background: var(--color-text-muted);
  color: #fff;
  z-index: 2;
}
.fac-badge.gold { background: linear-gradient(180deg, #FFD700, #B8860B); }
.fac-badge.silver { background: linear-gradient(180deg, #C0C0C0, #708090); }
.fac-badge.blue { background: linear-gradient(180deg, #3182CE, #2C5282); }

.fac-header {
  display: flex;
  gap: 14px;
  margin-bottom: 12px;
  align-items: flex-start;
}
.fac-rank {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 13px;
  flex-shrink: 0;
  box-shadow: 0 3px 8px rgba(26,54,93,0.18);
}
.fac-logo {
  width: 52px; height: 52px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 12px;
  flex-shrink: 0;
  text-align: center;
  line-height: 1.2;
  box-shadow: 0 3px 8px rgba(26,54,93,0.15);
}
.fac-title { flex: 1; min-width: 0; }
.fac-title h2 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 3px;
  line-height: 1.3;
}
.fac-aliases {
  font-size: 11.5px;
  color: var(--color-text-muted);
  margin-bottom: 5px;
  line-height: 1.6;
}
.fac-aliases span { color: var(--color-text-secondary); font-weight: 500; }
.fac-tags { display: flex; gap: 4px; flex-wrap: wrap; }
.ftag {
  font-size: 10.5px; font-weight: 500;
  padding: 2px 7px;
  border-radius: 4px;
}
.ftag.gold { background: #FFF8E6; color: var(--color-accent-dark); }
.ftag.blue { background: #EBF8FF; color: #2B6CB0; }
.ftag.green { background: #F0FFF4; color: #276749; }
.ftag.red { background: #FFF5F5; color: #C53030; }
.ftag.purple { background: #FAF5FF; color: #6B46C1; }

.fac-price {
  text-align: right;
  flex-shrink: 0;
  line-height: 1.3;
}
.fac-price b {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-danger);
}
.fac-price small {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-left: 2px;
}
.fac-price span {
  display: block;
  font-size: 11px;
  color: var(--color-text-muted);
  margin-top: 2px;
  text-align: right;
}

/* 卡片主体 */
.fac-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 0;
  border-top: 1px dashed var(--color-border);
  border-bottom: 1px dashed var(--color-border);
}
.fac-row {
  display: flex;
  gap: 10px;
  font-size: 12px;
  line-height: 1.7;
  align-items: flex-start;
}
.fac-key {
  width: 88px;
  flex-shrink: 0;
  color: var(--color-text-muted);
  font-weight: 600;
}
.fac-val {
  flex: 1;
  color: var(--color-text-secondary);
  min-width: 0;
}
.fac-val.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.fac-val.tags span {
  font-size: 11px;
  padding: 2px 8px;
  background: #F0F7FF;
  color: #2B6CB0;
  border: 1px solid #BEE3F8;
  border-radius: 4px;
  font-weight: 500;
  line-height: 1.6;
}
.fac-val.tags.honor-tags span {
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  color: var(--color-accent-dark);
  border: 1px solid #F6E5B0;
}
.fac-val.tags.client-tags span {
  background: #F0FFF4;
  color: #276749;
  border: 1px solid #C6F6D5;
}
.fac-val.tags.geo-tags span {
  background: #FAF5FF;
  color: #6B46C1;
  border: 1px solid #D6BCFA;
  border-radius: 10px;
  padding: 2px 9px;
}

/* 数据栏 */
.fac-val.stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.fac-stat {
  text-align: center;
  padding: 6px 4px;
  background: #F7FAFC;
  border-radius: 6px;
}
.fac-stat b {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-accent-dark);
  margin-bottom: 2px;
}
.fac-stat span {
  font-size: 10.5px;
  color: var(--color-text-muted);
}
@media (max-width: 640px) {
  .fac-val.stats { grid-template-columns: repeat(2, 1fr); }
}

/* 底部联系栏 */
.fac-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
  margin-top: 4px;
  flex-wrap: wrap;
  gap: 10px;
}
.fac-contact {
  display: flex;
  gap: 14px;
  font-size: 12px;
  color: var(--color-text-secondary);
  flex-wrap: wrap;
}
.fac-contact b { color: var(--color-primary); font-weight: 600; }

.fac-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.btn-primary {
  padding: 6px 16px;
  background: var(--color-primary);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  border-radius: 6px;
  transition: all .2s;
}
.btn-primary:hover {
  background: var(--color-primary-light);
  }


/* 工厂AI卡片布局优化 - 统一高度对齐 */
.factory-ai-list {
  gap: 14px;
}
.factory-ai-card {
  min-height: 0;
}
.factory-ai-card .fac-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 9px;
  padding: 14px 0;
}
.factory-ai-card .fac-row {
  gap: 12px;
  align-items: flex-start;
}
.factory-ai-card .fac-key {
  width: 72px;
  font-size: 11.5px;
  padding-top: 2px;
  letter-spacing: 0.3px;
  position: relative;
}
.factory-ai-card .fac-key::before {
  content: '';
  display: inline-block;
  width: 3px;
  height: 3px;
  background: var(--color-accent);
  border-radius: 50%;
  vertical-align: middle;
  margin-right: 6px;
  margin-top: -2px;
}
.factory-ai-card .fac-val.tags span {
  font-size: 10.5px;
  padding: 2px 7px;
  line-height: 1.5;
  white-space: nowrap;
}

/* 工厂空状态 */
.factory-empty {
  background: #fff;
  border: 1px dashed var(--color-border);
  border-radius: 12px;
  padding: 48px 20px;
  text-align: center;
  color: var(--color-text-muted);
}
.factory-empty .emp-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text-secondary);
  margin-bottom: 6px;
}
.factory-empty .emp-desc {
  font-size: 13px;
  line-height: 1.6;
}
.factory-empty .emp-desc a {
  color: var(--color-primary);
  font-weight: 600;
}

/* 结果摘要工厂筛选重置 */
.rs-reset {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11.5px;
  padding: 3px 10px;
  margin-left: 8px;
  background: #F7FAFC;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  color: var(--color-text-muted);
  transition: all .2s;
  cursor: pointer;
}
.rs-reset:hover {
  background: #FFF5F5;
  border-color: #FECACA;
  color: var(--color-danger);
}

/* 城市快速筛选栏优化 */
.geo-quick-bar, .industry-quick-bar {
  display: flex;
  align-items: center;
  gap: 16px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  padding: 10px 16px;
  margin-top: 16px;
  overflow: hidden;
}
.gqb-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-primary);
  flex-shrink: 0;
  white-space: nowrap;
}
.gqb-label strong {
  display: inline-block;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  font-size: 10px;
  padding: 2px 6px;
  border-radius: 4px;
  margin-right: 6px;
  letter-spacing: 0.5px;
}
.gqb-pills {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  flex: 1;
  min-width: 0;
}
.geo-pill {
  font-size: 11.5px;
  padding: 4px 12px;
  background: #F7FAFC;
  border: 1px solid transparent;
  border-radius: 16px;
  color: var(--color-text-secondary);
  transition: all .2s;
  white-space: nowrap;
  flex-shrink: 0;
}
.geo-pill:hover {
  background: #FFF8E6;
  color: var(--color-accent-dark);
  border-color: #F6E05E;
}
.geo-pill.active {
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  color: #fff;
  border-color: transparent;
  box-shadow: 0 2px 6px rgba(26,54,93,0.18);
}

/* ========== 加盟AI卡片（列表页版 franchise-ai-card） ========== */
.franchise-ai-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.franchise-ai-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 18px 22px 16px;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.franchise-ai-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.franchise-ai-card:hover {
  transform: translateX(3px);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.franchise-ai-card:hover::before { opacity: 1; }
.franchise-ai-card.highlighted {
  border-color: var(--color-accent);
  background: linear-gradient(180deg, #FFFBF0 0%, #fff 60%);
  box-shadow: 0 4px 16px rgba(214,158,46,0.15);
}
.franchise-ai-card.highlighted::before { opacity: 1; }

.frac-badge {
  position: absolute;
  top: 0;
  right: 20px;
  font-size: 10.5px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 0 0 8px 8px;
  background: var(--color-text-muted);
  color: #fff;
  z-index: 2;
}
.frac-badge.gold { background: linear-gradient(180deg, #FFD700, #B8860B); }
.frac-badge.silver { background: linear-gradient(180deg, #C0C0C0, #708090); }
.frac-badge.blue { background: linear-gradient(180deg, #3182CE, #2C5282); }

.frac-header {
  display: flex;
  gap: 14px;
  margin-bottom: 12px;
  align-items: flex-start;
}
.frac-rank {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 13px;
  flex-shrink: 0;
  box-shadow: 0 3px 8px rgba(214,158,46,0.35);
}
.frac-logo {
  width: 52px; height: 52px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 12px;
  flex-shrink: 0;
  text-align: center;
  line-height: 1.2;
  box-shadow: 0 3px 8px rgba(26,54,93,0.15);
}
.frac-title { flex: 1; min-width: 0; }
.frac-title h2 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 3px;
  line-height: 1.3;
}
.frac-aliases {
  font-size: 11.5px;
  color: var(--color-text-muted);
  margin-bottom: 5px;
  line-height: 1.6;
}
.frac-aliases span { color: var(--color-text-secondary); font-weight: 500; }
.frac-tags { display: flex; gap: 4px; flex-wrap: wrap; }

.frac-price {
  text-align: right;
  flex-shrink: 0;
  line-height: 1.2;
}
.frac-price b {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-danger);
}
.frac-price small {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-left: 2px;
}
.frac-price span {
  display: block;
  text-align: right;
}

/* 卡片主体 */
.frac-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 0;
  border-top: 1px dashed var(--color-border);
  border-bottom: 1px dashed var(--color-border);
}
.frac-row {
  display: flex;
  gap: 10px;
  font-size: 12px;
  line-height: 1.7;
  align-items: flex-start;
}
.frac-key {
  width: 88px;
  flex-shrink: 0;
  color: var(--color-text-muted);
  font-weight: 600;
}
.frac-val {
  flex: 1;
  color: var(--color-text-secondary);
  min-width: 0;
}
.frac-val.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.frac-val.tags span {
  font-size: 11px;
  padding: 2px 8px;
  background: #F0F7FF;
  color: #2B6CB0;
  border: 1px solid #BEE3F8;
  border-radius: 4px;
  font-weight: 500;
  line-height: 1.6;
}
.frac-val.tags.honor-tags span {
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  color: var(--color-accent-dark);
  border: 1px solid #F6E5B0;
}
.frac-val.tags.client-tags span {
  background: #F0FFF4;
  color: #276749;
  border: 1px solid #C6F6D5;
}
.frac-val.tags.geo-tags span {
  background: #FAF5FF;
  color: #6B46C1;
  border: 1px solid #D6BCFA;
  border-radius: 10px;
  padding: 2px 9px;
}

/* 数据栏 */
.frac-val.stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.frac-stat {
  text-align: center;
  padding: 6px 4px;
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  border-radius: 6px;
}
.frac-stat b {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-accent-dark);
  margin-bottom: 2px;
}
.frac-stat span {
  font-size: 10.5px;
  color: var(--color-text-muted);
}
@media (max-width: 640px) {
  .frac-val.stats { grid-template-columns: repeat(2, 1fr); }
}

/* 底部联系栏 */
.frac-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
  margin-top: 4px;
  flex-wrap: wrap;
  gap: 10px;
}
.frac-contact {
  display: flex;
  gap: 14px;
  font-size: 12px;
  color: var(--color-text-secondary);
  flex-wrap: wrap;
}
.frac-contact b { color: var(--color-primary); font-weight: 600; }


/* ========== 生活服务AI卡片（列表页版 life-ai-card） ========== */
.life-ai-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.life-ai-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 18px 22px 16px;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.life-ai-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: opacity .3s;
}
.life-ai-card:hover {
  transform: translateX(3px);
  box-shadow: 0 8px 24px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.life-ai-card:hover::before { opacity: 1; }
.life-ai-card.highlighted {
  border-color: var(--color-accent);
  background: linear-gradient(180deg, #FFFBF0 0%, #fff 60%);
  box-shadow: 0 4px 16px rgba(214,158,46,0.15);
}
.life-ai-card.highlighted::before { opacity: 1; }

.lac-badge {
  position: absolute;
  top: 0;
  right: 20px;
  font-size: 10.5px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 0 0 8px 8px;
  background: var(--color-text-muted);
  color: #fff;
  z-index: 2;
}
.lac-badge.gold { background: linear-gradient(180deg, #FFD700, #B8860B); }
.lac-badge.silver { background: linear-gradient(180deg, #C0C0C0, #708090); }
.lac-badge.blue { background: linear-gradient(180deg, #3182CE, #2C5282); }

.lac-header {
  display: flex;
  gap: 14px;
  margin-bottom: 12px;
  align-items: flex-start;
}
.lac-rank {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 13px;
  flex-shrink: 0;
  box-shadow: 0 3px 8px rgba(214,158,46,0.35);
}
.lac-logo {
  width: 52px; height: 52px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 12px;
  flex-shrink: 0;
  text-align: center;
  line-height: 1.2;
  box-shadow: 0 3px 8px rgba(26,54,93,0.15);
}
.lac-title { flex: 1; min-width: 0; }
.lac-title h2 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 3px;
  line-height: 1.3;
}
.lac-aliases {
  font-size: 11.5px;
  color: var(--color-text-muted);
  margin-bottom: 5px;
  line-height: 1.6;
}
.lac-aliases span { color: var(--color-text-secondary); font-weight: 500; }
.lac-tags { display: flex; gap: 4px; flex-wrap: wrap; }
.ltag {
  font-size: 10.5px; font-weight: 500;
  padding: 2px 7px;
  border-radius: 4px;
}
.ltag.gold { background: #FFF8E6; color: var(--color-accent-dark); }
.ltag.blue { background: #EBF8FF; color: #2B6CB0; }
.ltag.green { background: #F0FFF4; color: #276749; }
.ltag.red { background: #FFF5F5; color: #C53030; }
.ltag.purple { background: #FAF5FF; color: #6B46C1; }

.lac-price {
  text-align: right;
  flex-shrink: 0;
  line-height: 1.2;
}
.lac-price b {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-danger);
}
.lac-price small {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-left: 2px;
}
.lac-price span {
  display: block;
  text-align: right;
  font-size: 11px;
  color: var(--color-text-muted);
  margin-top: 2px;
}

/* 卡片主体 */
.lac-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 0;
  border-top: 1px dashed var(--color-border);
  border-bottom: 1px dashed var(--color-border);
}
.lac-row {
  display: flex;
  gap: 10px;
  font-size: 12px;
  line-height: 1.7;
  align-items: flex-start;
}
.lac-key {
  width: 88px;
  flex-shrink: 0;
  color: var(--color-text-muted);
  font-weight: 600;
}
.lac-val {
  flex: 1;
  color: var(--color-text-secondary);
  min-width: 0;
}
.lac-val.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.lac-val.tags span {
  font-size: 11px;
  padding: 2px 8px;
  background: #F0F7FF;
  color: #2B6CB0;
  border: 1px solid #BEE3F8;
  border-radius: 4px;
  font-weight: 500;
  line-height: 1.6;
}
.lac-val.tags.honor-tags span {
  background: linear-gradient(135deg, #FFFBF0, #FFF8E6);
  color: var(--color-accent-dark);
  border: 1px solid #F6E5B0;
}
.lac-val.tags.client-tags span {
  background: #F0FFF4;
  color: #276749;
  border: 1px solid #C6F6D5;
}
.lac-val.tags.geo-tags span {
  background: #FAF5FF;
  color: #6B46C1;
  border: 1px solid #D6BCFA;
  border-radius: 10px;
  padding: 2px 9px;
}

/* 数据栏 */
.lac-val.stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.lac-stat {
  text-align: center;
  padding: 6px 4px;
  background: #F7FAFC;
  border-radius: 6px;
}
.lac-stat b {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-accent-dark);
  margin-bottom: 2px;
}
.lac-stat span {
  font-size: 10.5px;
  color: var(--color-text-muted);
}
@media (max-width: 640px) {
  .lac-val.stats { grid-template-columns: repeat(2, 1fr); }
}

/* 底部联系栏 */
.lac-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
  margin-top: 4px;
  flex-wrap: wrap;
  gap: 10px;
}
.lac-contact {
  display: flex;
  gap: 14px;
  font-size: 12px;
  color: var(--color-text-secondary);
  flex-wrap: wrap;
}
.lac-contact b { color: var(--color-primary); font-weight: 600; }

.lac-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}


/* ========== 首页新Hero区（精英级） ========== */
.hero-premium {
  background: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 40%, #1e3a6b 100%);
  padding: 48px 0 56px;
  position: relative;
  overflow: hidden;
  color: #fff;
}
.hero-premium::before {
  content: '';
  position: absolute;
  top: -80px; right: -60px;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(214,158,46,0.18), transparent 65%);
  border-radius: 50%;
  animation: heroGlow 8s ease-in-out infinite alternate;
}
.hero-premium::after {
  content: '';
  position: absolute;
  bottom: -120px; left: -80px;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(255,255,255,0.06), transparent 65%);
  border-radius: 50%;
}
@keyframes heroGlow {
  0% { transform: scale(1) translateY(0); }
  100% { transform: scale(1.05) translateY(10px); }
}

.hero-premium-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  position: relative;
  z-index: 2;
}

.hero-subtitle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 16px;
  background: rgba(214,158,46,0.15);
  border: 1px solid rgba(214,158,46,0.4);
  border-radius: 20px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--color-accent-light);
  margin-bottom: 18px;
  letter-spacing: 0.5px;
}
.hero-subtitle::before {
  content: '';
  width: 6px; height: 6px;
  background: var(--color-accent);
  border-radius: 50%;
  box-shadow: 0 0 8px var(--color-accent);
}

.hero-main h1 {
  font-size: 42px;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 14px;
  letter-spacing: -0.5px;
}
.hero-main h1 .gold {
  background: linear-gradient(135deg, #FFD700, var(--color-accent), #B8860B);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.hero-slogan {
  font-size: 16px;
  line-height: 1.8;
  color: rgba(255,255,255,0.85);
  margin: 0 0 24px;
  max-width: 720px;
}

.hero-ctas {
  display: flex;
  gap: 12px;
  margin-bottom: 32px;
  flex-wrap: wrap;
}
.btn-hero-gold {
  padding: 11px 28px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  border-radius: 8px;
  box-shadow: 0 4px 14px rgba(214,158,46,0.35);
  transition: all .3s;
}
.btn-hero-gold:hover { box-shadow: 0 6px 20px rgba(214,158,46,0.5);
}
.btn-hero-outline {
  padding: 11px 28px;
  background: transparent;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  border: 1px solid rgba(255,255,255,0.5);
  border-radius: 8px;
  transition: all .3s;
}
.btn-hero-outline:hover {
  background: rgba(255,255,255,0.1);
  border-color: #fff;
}

.hero-data-row {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 12px;
  backdrop-filter: blur(10px);
  max-width: 820px;
  overflow: hidden;
}
.hero-data-item {
  padding: 16px 12px;
  text-align: center;
  position: relative;
}
.hero-data-item + .hero-data-item::before {
  content: '';
  position: absolute;
  left: 0; top: 20%;
  width: 1px;
  height: 60%;
  background: rgba(255,255,255,0.12);
}
.hero-data-item b {
  display: block;
  font-size: 24px;
  font-weight: 800;
  background: linear-gradient(135deg, #FFD700, var(--color-accent));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 4px;
}
.hero-data-item span {
  font-size: 11.5px;
  color: rgba(255,255,255,0.7);
}

.hero-quick-entry {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.hero-qe-title {
  font-size: 12.5px;
  color: rgba(255,255,255,0.6);
  margin-bottom: 12px;
  font-weight: 500;
}
.hero-qe-grid {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 10px;
}
.hero-qe-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 12px 4px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 10px;
  color: rgba(255,255,255,0.9);
  font-size: 12px;
  transition: all .3s;
}
.hero-qe-item:hover {
  background: rgba(214,158,46,0.15);
  border-color: var(--color-accent);
  color: var(--color-accent-light);
  }
.hero-qe-icon {
  width: 32px; height: 32px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  display: flex; align-items: center; justify-content: center;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
}

@media (max-width: 1023px) {
  .hero-qe-grid { grid-template-columns: repeat(4, 1fr); }
  .hero-data-row { grid-template-columns: repeat(5, 1fr); }
  .hero-main h1 { font-size: 32px; }
}
@media (max-width: 640px) {
  .hero-premium { padding: 32px 0 40px; }
  .hero-main h1 { font-size: 26px; }
  .hero-slogan { font-size: 13.5px; }
  .hero-data-row { grid-template-columns: repeat(3, 1fr); }
  .hero-data-item:nth-child(4)::before { display: none; }
  .hero-qe-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ========== 核心价值板块 value-section ========== */
.value-section {
  padding: 56px 0;
  background: #fff;
}
.value-section .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.value-top {
  text-align: center;
  margin-bottom: 40px;
}
.value-tag {
  display: inline-block;
  padding: 5px 14px;
  background: linear-gradient(135deg, #FFF8E6, #FFFBF0);
  border: 1px solid #F6E5B0;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  color: var(--color-accent-dark);
  margin-bottom: 12px;
}
.value-top h2 {
  font-size: 30px;
  font-weight: 800;
  color: var(--color-primary);
  margin: 0 0 10px;
}
.value-top p {
  font-size: 14.5px;
  color: var(--color-text-secondary);
  margin: 0;
  max-width: 600px;
  margin: 0 auto;
  line-height: 1.8;
}

.value-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.value-card {
  background: linear-gradient(180deg, #fff 0%, #FAFCFF 100%);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  padding: 28px 22px 24px;
  text-align: center;
  transition: all .4s ease;
  position: relative;
  overflow: hidden;
}
.value-card::before {
  content: '';
  position: absolute;
  top: -50%; left: 50%;
  transform: translateX(-50%);
  width: 200px; height: 200px;
  background: radial-gradient(circle, rgba(214,158,46,0.08), transparent 70%);
  border-radius: 50%;
  opacity: 0;
  transition: opacity .4s;
}
.value-card:hover {
  box-shadow: 0 16px 40px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.value-card:hover::before { opacity: 1; }

.value-icon {
  width: 60px; height: 60px;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 16px;
  position: relative;
  z-index: 1;
  box-shadow: 0 6px 16px rgba(26,54,93,0.18);
}
.value-icon span {
  font-size: 28px;
  color: var(--color-accent);
  font-weight: 800;
}
.value-card h3 {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 8px;
  position: relative;
  z-index: 1;
}
.value-card p {
  font-size: 12.5px;
  color: var(--color-text-secondary);
  line-height: 1.7;
  margin: 0;
  position: relative;
  z-index: 1;
}

.value-stats {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px dashed var(--color-border);
  position: relative;
  z-index: 1;
}
.value-stat-item {
  text-align: center;
}
.value-stat-item b {
  display: block;
  font-size: 16px;
  font-weight: 800;
  color: var(--color-accent-dark);
  line-height: 1.2;
}
.value-stat-item span {
  font-size: 10.5px;
  color: var(--color-text-muted);
}

@media (max-width: 1023px) {
  .value-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .value-grid { grid-template-columns: 1fr; }
  .value-top h2 { font-size: 24px; }
}

/* ========== 入驻合作板块 partner-section ========== */
.partner-section {
  padding: 56px 0;
  background: linear-gradient(180deg, var(--color-bg) 0%, #EAF0F7 100%);
}
.partner-section .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.partner-top {
  text-align: center;
  margin-bottom: 40px;
}
.partner-tag {
  display: inline-block;
  padding: 5px 14px;
  background: linear-gradient(135deg, rgba(26,54,93,0.1), rgba(214,158,46,0.1));
  border: 1px solid var(--color-primary-light);
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  color: var(--color-primary);
  margin-bottom: 12px;
}
.partner-top h2 {
  font-size: 30px;
  font-weight: 800;
  color: var(--color-primary);
  margin: 0 0 10px;
}
.partner-top p {
  font-size: 14.5px;
  color: var(--color-text-secondary);
  margin: 0;
  max-width: 600px;
  margin: 0 auto;
  line-height: 1.8;
}

.partner-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.partner-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  padding: 32px 26px 28px;
  transition: all .4s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(26,54,93,0.06);
}
.partner-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-primary));
}
.partner-card:hover {
  box-shadow: 0 20px 48px rgba(26,54,93,0.14);
  border-color: var(--color-accent-light);
}

.partner-header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
}
.partner-icon {
  width: 52px; height: 52px;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  color: var(--color-accent);
  font-size: 24px;
  font-weight: 800;
}
.partner-card:nth-child(2) .partner-icon {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
}
.partner-card:nth-child(3) .partner-icon {
  background: linear-gradient(135deg, #2C5282, #1A365D);
  color: var(--color-accent);
}
.partner-title h3 {
  font-size: 19px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 2px;
}
.partner-title span {
  font-size: 11.5px;
  color: var(--color-text-muted);
}

.partner-desc {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.75;
  margin-bottom: 16px;
}

.partner-benefits {
  list-style: none;
  padding: 0;
  margin: 0 0 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.partner-benefits li {
  font-size: 12.5px;
  color: var(--color-text-secondary);
  padding-left: 20px;
  position: relative;
  line-height: 1.6;
}
.partner-benefits li::before {
  content: '✓';
  position: absolute;
  left: 0; top: 0;
  width: 14px; height: 14px;
  background: linear-gradient(135deg, #48BB78, #38A169);
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.partner-cta {
  display: block;
  width: 100%;
  padding: 12px;
  text-align: center;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  font-size: 13.5px;
  font-weight: 600;
  border-radius: 10px;
  transition: all .3s;
}
.partner-card:nth-child(2) .partner-cta {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
}
.partner-cta:hover { box-shadow: 0 6px 18px rgba(26,54,93,0.2);
}

@media (max-width: 1023px) {
  .partner-grid { grid-template-columns: 1fr; max-width: 480px; margin: 0 auto; }
}

/* ========== 精英伙伴栏 partner-logos ========== */
.partner-logos {
  margin-top: 40px;
  padding: 24px 28px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 14px;
}
.pl-title {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-muted);
  text-align: center;
  margin-bottom: 14px;
  letter-spacing: 1px;
}
.pl-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
}
.pl-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-primary);
  padding: 6px 14px;
  background: #F7FAFC;
  border-radius: 8px;
  transition: all .25s;
}
.pl-item:hover {
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  }
.pl-item::before {
  content: '';
  width: 8px; height: 8px;
  background: var(--color-accent);
  border-radius: 50%;
}

@media (max-width: 640px) {
  .pl-row { justify-content: center; }
}

/* ========== 页脚升级 ========== */
.footer-ai-badge {
  background: linear-gradient(135deg, rgba(214,158,46,0.15), rgba(26,54,93,0.2));
  border: 1px solid rgba(214,158,46,0.3);
  border-radius: 12px;
  padding: 16px 20px;
  margin-bottom: 24px;
}
.footer-ai-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px;
}
.footer-ai-left {
  display: flex;
  align-items: center;
  gap: 12px;
}
.footer-ai-icon {
  width: 42px; height: 42px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  display: flex; align-items: center; justify-content: center;
  color: #fff;
  font-size: 18px;
  font-weight: 800;
  flex-shrink: 0;
}
.footer-ai-text h4 {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-accent-light);
  margin: 0 0 3px;
}
.footer-ai-text p {
  font-size: 11.5px;
  color: rgba(255,255,255,0.7);
  margin: 0;
  line-height: 1.6;
}
.footer-ai-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.footer-ai-tags span {
  padding: 4px 10px;
  font-size: 10.5px;
  font-weight: 600;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 14px;
  color: rgba(255,255,255,0.85);
}

.footer-certs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 12px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.footer-cert {
  font-size: 10.5px;
  padding: 4px 10px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 4px;
  color: rgba(255,255,255,0.65);
}

.footer-bottom-bar {
  padding: 18px 0 14px;
  border-top: 1px solid rgba(255,255,255,0.1);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
.fbb-legal {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}
.fbb-legal a {
  font-size: 11.5px;
  color: rgba(255,255,255,0.5);
  transition: color .2s;
}
.fbb-legal a:hover {
  color: var(--color-accent-light);
}

/* 首页 section 统一间距微调 */
.page-section {
  scroll-margin-top: 80px;
}


/* ========== 核心价值核心板块（匹配实际 HTML 类名） ========== */
.core-values-section {
  padding: 56px 0;
  background: #fff;
}
.core-values-section .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.section-header.center-header {
  text-align: center;
  margin-bottom: 36px;
}
.section-label {
  display: inline-block;
  padding: 5px 14px;
  background: linear-gradient(135deg, #FFF8E6, #FFFBF0);
  border: 1px solid #F6E5B0;
  border-radius: 20px;
  font-size: 11.5px;
  font-weight: 700;
  color: var(--color-accent-dark);
  letter-spacing: 2px;
  margin-bottom: 14px;
}
.section-title-lg {
  font-size: 30px;
  font-weight: 800;
  color: var(--color-primary);
  margin: 0 0 10px;
  line-height: 1.3;
}
.section-subtitle {
  font-size: 14.5px;
  color: var(--color-text-secondary);
  margin: 0 auto;
  max-width: 600px;
  line-height: 1.8;
}

.core-values-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.core-values-grid .value-card {
  background: linear-gradient(180deg, #fff 0%, #FAFCFF 100%);
  border: 1px solid var(--color-border);
  border-radius: 16px;
  padding: 28px 22px 24px;
  transition: all .4s ease;
  position: relative;
  overflow: hidden;
}
.core-values-grid .value-card::before {
  content: '';
  position: absolute;
  top: -50%; left: 50%;
  transform: translateX(-50%);
  width: 200px; height: 200px;
  background: radial-gradient(circle, rgba(214,158,46,0.08), transparent 70%);
  border-radius: 50%;
  opacity: 0;
  transition: opacity .4s;
}
.core-values-grid .value-card:hover {
  box-shadow: 0 16px 40px rgba(26,54,93,0.12);
  border-color: var(--color-accent-light);
}
.core-values-grid .value-card:hover::before { opacity: 1; }
.core-values-grid .value-card.highlight {
  border-color: var(--color-accent-light);
  background: linear-gradient(180deg, #FFFBF0 0%, #fff 100%);
  box-shadow: 0 4px 16px rgba(214,158,46,0.12);
}

.core-values-grid .value-icon {
  width: 60px; height: 60px;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 16px;
  position: relative;
  z-index: 1;
  font-size: 28px;
  box-shadow: 0 6px 16px rgba(26,54,93,0.18);
}
.core-values-grid .value-card.highlight .value-icon {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  box-shadow: 0 6px 16px rgba(214,158,46,0.35);
}
.core-values-grid .value-card h3 {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 8px;
  text-align: center;
  position: relative;
  z-index: 1;
}
.core-values-grid .value-card > p {
  font-size: 12.5px;
  color: var(--color-text-secondary);
  line-height: 1.7;
  margin: 0 0 14px;
  text-align: center;
  position: relative;
  z-index: 1;
}
.core-values-grid .value-card ul {
  list-style: none;
  padding: 12px 0 0;
  margin: 0;
  border-top: 1px dashed var(--color-border);
  display: flex;
  flex-direction: column;
  gap: 6px;
  position: relative;
  z-index: 1;
}
.core-values-grid .value-card ul li {
  font-size: 11.5px;
  color: var(--color-text-secondary);
  padding-left: 16px;
  position: relative;
  line-height: 1.6;
}
.core-values-grid .value-card ul li::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: #48BB78;
  font-size: 10px;
  font-weight: 700;
}

@media (max-width: 1023px) {
  .core-values-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .core-values-grid { grid-template-columns: 1fr; }
  .section-title-lg { font-size: 24px; }
}

/* ========== 入驻合作板块（匹配实际 HTML 类名） ========== */
.join-section {
  padding: 56px 0;
  background: linear-gradient(180deg, var(--color-bg) 0%, #EAF0F7 100%);
}
.join-section .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.join-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 12px;
}
.join-card {
  display: block;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  padding: 30px 26px 24px;
  transition: all .4s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(26,54,93,0.06);
}
.join-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-primary));
}
.join-card:hover {
  box-shadow: 0 20px 48px rgba(26,54,93,0.14);
  border-color: var(--color-accent-light);
}

.join-badge {
  position: absolute;
  top: 16px;
  right: 16px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  padding: 4px 10px;
  background: var(--color-primary);
  color: #fff;
  border-radius: 12px;
}
.join-badge.gold {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
}

.join-icon {
  width: 56px; height: 56px;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 16px;
  font-size: 26px;
  box-shadow: 0 6px 16px rgba(26,54,93,0.18);
}
.join-enterprise .join-icon { background: linear-gradient(135deg, var(--color-primary), #2C5282); }
.join-org .join-icon { background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark)); }
.join-brand .join-icon { background: linear-gradient(135deg, #6B46C1, #553C9A); }

.join-card h3 {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 8px;
}
.join-desc {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.75;
  margin: 0 0 16px;
}

.join-features {
  list-style: none;
  padding: 0;
  margin: 0 0 20px;
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.join-features li {
  font-size: 12.5px;
  color: var(--color-text-secondary);
  line-height: 1.6;
}

.join-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 16px;
  border-top: 1px solid var(--color-border);
  font-size: 13.5px;
  font-weight: 600;
  color: var(--color-primary);
}
.join-arrow {
  width: 28px; height: 28px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  transition: all .3s;
}
.join-card:hover .join-arrow {
  transform: translateX(4px);
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
}

@media (max-width: 1023px) {
  .join-cards { grid-template-columns: 1fr; max-width: 460px; margin: 12px auto 0; }
}

/* ========== Hero区 AI伙伴标签 ========== */
.hero-ai-partners {
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,0.1);
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.partner-label {
  font-size: 12px;
  color: rgba(255,255,255,0.6);
  flex-shrink: 0;
}
.hero-ai-partners .partner-logos {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
}
.partner-chip {
  padding: 6px 14px;
  font-size: 11.5px;
  font-weight: 600;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 20px;
  color: rgba(255,255,255,0.85);
  transition: all .25s;
}
.partner-chip:hover {
  background: rgba(214,158,46,0.2);
  border-color: var(--color-accent);
  color: var(--color-accent-light);
}

/* 页脚AI徽章已在footer-ai-badge下 */


/* ========== 首页Hero实际类名样式 ========== */
.hero-premium .hero-search-premium {
  max-width: 640px;
  margin: 0 0 20px;
  background: rgba(255,255,255,0.12);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0,0,0,0.15);
}
.hero-premium .hero-search-tabs {
  display: flex;
  gap: 0;
  padding: 8px 8px 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.hero-premium .hero-search-tabs a {
  padding: 6px 16px;
  font-size: 12.5px;
  color: rgba(255,255,255,0.7);
  border-radius: 6px 6px 0 0;
  transition: all .2s;
  font-weight: 500;
}
.hero-premium .hero-search-tabs a.active {
  background: rgba(255,255,255,0.15);
  color: var(--color-accent-light);
  font-weight: 600;
}
.hero-premium .hero-search-input {
  display: flex;
  padding: 10px;
  gap: 8px;
}
.hero-premium .hero-search-input input {
  flex: 1;
  padding: 10px 16px;
  background: rgba(255,255,255,0.95);
  border: none;
  border-radius: 8px;
  font-size: 14px;
  color: var(--color-text-primary);
  outline: none;
}
.hero-premium .hero-search-input input::placeholder {
  color: var(--color-text-muted);
}
.hero-premium .hero-search-input button {
  padding: 10px 28px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all .2s;
}
.hero-premium .hero-search-input button:hover {
  box-shadow: 0 4px 14px rgba(214,158,46,0.45);
}

.hero-premium .hero-hot-tags {
  margin-bottom: 22px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 12px;
}
.hero-premium .hero-hot-tags .label {
  color: rgba(255,255,255,0.5);
  flex-shrink: 0;
}
.hero-premium .hero-hot-tags a {
  color: rgba(255,255,255,0.75);
  padding: 4px 12px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;
  transition: all .2s;
}
.hero-premium .hero-hot-tags a:hover {
  color: var(--color-accent-light);
  border-color: var(--color-accent);
  background: rgba(214,158,46,0.1);
}

.hero-premium .hero-stats-premium {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 12px;
  backdrop-filter: blur(10px);
  max-width: 780px;
  overflow: hidden;
}
.hero-premium .hero-stat-item {
  padding: 14px 8px;
  text-align: center;
  position: relative;
}
.hero-premium .hero-stat-item + .hero-stat-item::before {
  content: '';
  position: absolute;
  left: 0; top: 20%;
  width: 1px;
  height: 60%;
  background: rgba(255,255,255,0.1);
}
.hero-premium .hero-stat-num {
  font-size: 22px;
  font-weight: 800;
  background: linear-gradient(135deg, #FFD700, var(--color-accent));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 4px;
  line-height: 1;
}
.hero-premium .hero-stat-num .unit {
  font-size: 13px;
  font-weight: 600;
}
.hero-premium .hero-stat-label {
  font-size: 11px;
  color: rgba(255,255,255,0.65);
}

@media (max-width: 1023px) {
  .hero-premium .hero-stats-premium { grid-template-columns: repeat(3, 1fr); }
  .hero-premium .hero-stat-item:nth-child(4)::before { display: none; }
}
@media (max-width: 640px) {
  .hero-premium .hero-stats-premium { grid-template-columns: repeat(2, 1fr); }
  .hero-premium .hero-stat-item:nth-child(3)::before { display: none; }
  .hero-premium .hero-stat-item:nth-child(5)::before { display: none; }
}

/* Hero AI 伙伴标签 */
.hero-premium .hero-ai-partners {
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,0.08);
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.hero-premium .partner-label {
  font-size: 11.5px;
  color: rgba(255,255,255,0.5);
  flex-shrink: 0;
}
.hero-premium .partner-logos {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.hero-premium .partner-chip {
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 600;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 16px;
  color: rgba(255,255,255,0.8);
  transition: all .25s;
}
.hero-premium .partner-chip:hover {
  background: rgba(214,158,46,0.15);
  border-color: var(--color-accent);
  color: var(--color-accent-light);
}

/* ========== 页脚实际类名样式 ========== */
.site-footer .footer-ai-statement {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px 18px;
}
.site-footer .footer-ai-badge {
  background: linear-gradient(135deg, rgba(214,158,46,0.15), rgba(26,54,93,0.2));
  border: 1px solid rgba(214,158,46,0.3);
  border-radius: 12px;
  padding: 14px 18px;
}
.site-footer .footer-ai-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}
.site-footer .footer-ai-left {
  display: flex;
  align-items: center;
  gap: 12px;
}
.site-footer .footer-ai-icon {
  width: 40px; height: 40px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  display: flex; align-items: center; justify-content: center;
  color: #fff;
  font-size: 16px;
  font-weight: 800;
  flex-shrink: 0;
}
.site-footer .footer-ai-text h4 {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-accent-light);
  margin: 0 0 3px;
}
.site-footer .footer-ai-text p {
  font-size: 11px;
  color: rgba(255,255,255,0.6);
  margin: 0;
  line-height: 1.5;
}
.site-footer .footer-ai-tags {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}
.site-footer .footer-ai-tags span {
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 600;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 12px;
  color: rgba(255,255,255,0.8);
}

.site-footer .footer-certs {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.site-footer .fc-badge {
  font-size: 10px;
  padding: 4px 10px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 4px;
  color: rgba(255,255,255,0.55);
}

.site-footer .footer-bottom-bar {
  max-width: 1200px;
  margin: 0 auto;
  padding: 14px 20px;
  border-top: 1px solid rgba(255,255,255,0.08);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.site-footer .fbb-legal {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.site-footer .fbb-legal a {
  font-size: 11px;
  color: rgba(255,255,255,0.45);
  transition: color .2s;
}
.site-footer .fbb-legal a:hover {
  color: var(--color-accent-light);
}


/* ========== 页脚AI声明（实际类名） ========== */
.site-footer .footer-ai-statement {
  max-width: 1200px;
  margin: 0 auto 20px;
  padding: 0 20px;
}
.site-footer .fas-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 18px;
  background: linear-gradient(135deg, rgba(214,158,46,0.12), rgba(26,54,93,0.2));
  border: 1px solid rgba(214,158,46,0.3);
  border-radius: 10px;
}
.site-footer .fas-icon {
  width: 38px; height: 38px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  display: flex; align-items: center; justify-content: center;
  color: #fff;
  font-size: 16px;
  flex-shrink: 0;
}
.site-footer .fas-content {
  flex: 1;
}
.site-footer .fas-content strong {
  display: block;
  font-size: 13px;
  color: var(--color-accent-light);
  margin-bottom: 3px;
  font-weight: 700;
}
.site-footer .fas-content p {
  font-size: 11.5px;
  color: rgba(255,255,255,0.6);
  margin: 0;
  line-height: 1.6;
}
.site-footer .fas-certs {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 10px;
  padding: 0 4px;
  font-size: 10.5px;
  color: rgba(255,255,255,0.5);
}
.site-footer .fas-certs span:not(:nth-child(even)) {
  padding: 4px 10px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 4px;
  color: rgba(255,255,255,0.65);
}

.site-footer .footer-bottom {
  max-width: 1200px;
  margin: 0 auto;
  padding: 14px 20px;
  border-top: 1px solid rgba(255,255,255,0.08);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  font-size: 11px;
  color: rgba(255,255,255,0.4);
}
.site-footer .footer-links {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}
.site-footer .footer-links a {
  color: rgba(255,255,255,0.45);
  transition: color .2s;
}
.site-footer .footer-links a:hover {
  color: var(--color-accent-light);
}

.site-footer .footer-statement {
  background: rgba(0,0,0,0.2);
  padding: 14px 0;
  border-top: 1px solid rgba(255,255,255,0.05);
}
.site-footer .footer-statement .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.site-footer .statement-links {
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.site-footer .statement-links a {
  font-size: 11px;
  color: rgba(255,255,255,0.4);
  transition: color .2s;
}
.site-footer .statement-links a:hover {
  color: var(--color-accent-light);
}
.site-footer .footer-statement .copyright {
  text-align: center;
  font-size: 10.5px;
  color: rgba(255,255,255,0.35);
  line-height: 1.6;
}


/* ========== 头部高端化升级 ========== */
.site-header {
  box-shadow: 0 2px 12px rgba(0,0,0,0.12);
  backdrop-filter: blur(8px);
}
.site-header::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(214,158,46,0.6) 50%, transparent 100%);
  opacity: .7;
}
.nav-container {
  position: relative;
  z-index: 2;
}
.site-header .logo {
  font-size: 21px;
  letter-spacing: 1.5px;
  font-weight: 800;
}
.site-header .logo-mark {
  width: 38px; height: 38px;
  border-radius: 10px;
  background: linear-gradient(135deg, #FFD700 0%, var(--color-accent) 50%, var(--color-accent-dark) 100%);
  box-shadow: 0 2px 10px rgba(214,158,46,0.4);
  color: var(--color-primary-dark);
  font-size: 19px;
  position: relative;
  overflow: hidden;
}
.site-header .logo-mark::after {
  content: '';
  position: absolute;
  top: -30%; left: -30%;
  width: 60%; height: 60%;
  background: linear-gradient(135deg, rgba(255,255,255,0.5), transparent);
  border-radius: 50%;
}
.site-header .logo-text {
  font-weight: 800;
  font-size: 19px;
  letter-spacing: 0.5px;
}
.site-header .logo-text span {
  background: linear-gradient(135deg, #FFD700, var(--color-accent));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 800;
}

.main-nav {
  gap: 2px;
}
.main-nav a {
  position: relative;
  padding: 8px 14px;
  font-size: 14.5px;
  font-weight: 500;
  color: rgba(255,255,255,0.8);
  transition: all .25s ease;
}
.main-nav a::after {
  content: '';
  position: absolute;
  left: 50%; bottom: 4px;
  width: 0; height: 2px;
  background: linear-gradient(90deg, #155DFC, #08A9F4);
  transition: all .3s ease;
  transform: translateX(-50%);
}
.main-nav a:hover, .main-nav a.active {
  color: #08A9F4;
  background: rgba(8, 169, 244, 0.08);
}
.main-nav a:hover::after, .main-nav a.active::after {
  width: 50%;
}
.main-nav a.active {
  font-weight: 600;
  color: #08A9F4;
}

.nav-actions {
  gap: 10px;
}
.nav-actions .btn-primary {
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(21, 93, 252, 0.2);
  border-radius: 8px;
  padding: 0 18px;
  height: 34px;
  font-size: 13px;
  border: 1px solid rgba(255,255,255,0.2);
}
.nav-actions .btn-primary:hover {
  box-shadow: 0 4px 14px rgba(21, 93, 252, 0.35);
}

/* ========== Hero高端化补充 ========== */
.hero-premium .hero-subtitle {
  padding: 6px 14px;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 2px;
  margin-bottom: 14px;
  box-shadow: 0 2px 8px rgba(214,158,46,0.2);
}

.hero-premium .hero-main h1 {
  font-size: 40px;
  font-weight: 800;
  letter-spacing: -0.3px;
  margin-bottom: 16px;
  line-height: 1.25;
}
.hero-premium .hero-main h1 .gold {
  font-weight: 800;
}

.hero-premium .hero-slogan {
  font-size: 15px;
  line-height: 1.9;
  margin-bottom: 22px;
}

.hero-premium .hero-ctas {
  margin-bottom: 28px;
}
.hero-premium .btn-hero-gold {
  padding: 12px 30px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 10px;
  box-shadow: 0 6px 20px rgba(214,158,46,0.3);
  letter-spacing: 1px;
}
.hero-premium .btn-hero-outline {
  padding: 12px 30px;
  font-size: 14px;
  font-weight: 600;
  border-radius: 10px;
  letter-spacing: 1px;
}

/* 搜索框高端化 */
.hero-premium .hero-search-premium {
  margin-bottom: 18px;
  border-radius: 16px;
  border: 1px solid rgba(214,158,46,0.3);
  box-shadow: 0 10px 40px rgba(0,0,0,0.2);
}
.hero-premium .hero-search-input {
  padding: 12px;
  gap: 10px;
}
.hero-premium .hero-search-input input {
  padding: 12px 18px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-primary);
}
.hero-premium .hero-search-input button {
  padding: 0 30px;
  height: 42px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.5px;
  box-shadow: 0 4px 14px rgba(214,158,46,0.35);
}

/* 热门标签高端化 */
.hero-premium .hero-hot-tags {
  margin-bottom: 24px;
  font-size: 12px;
  gap: 8px;
}
.hero-premium .hero-hot-tags .label {
  font-weight: 600;
  letter-spacing: 0.5px;
}
.hero-premium .hero-hot-tags a {
  padding: 5px 13px;
  border-radius: 16px;
  font-size: 11.5px;
}

/* 数据栏高端化 */
.hero-premium .hero-stats-premium {
  border-radius: 14px;
  border: 1px solid rgba(214,158,46,0.2);
  box-shadow: 0 4px 20px rgba(0,0,0,0.1);
  backdrop-filter: blur(12px);
}
.hero-premium .hero-stat-item {
  padding: 16px 6px;
}
.hero-premium .hero-stat-num {
  font-size: 24px;
  font-weight: 800;
  margin-bottom: 5px;
  letter-spacing: -0.5px;
}
.hero-premium .hero-stat-num .unit {
  font-size: 13px;
  font-weight: 700;
  margin-left: 1px;
}
.hero-premium .hero-stat-label {
  font-size: 11.5px;
  letter-spacing: 0.3px;
  font-weight: 500;
  color: rgba(255,255,255,0.7);
}

/* AI合作伙伴高端化 */
.hero-premium .hero-ai-partners {
  margin-top: 28px;
  padding-top: 22px;
  gap: 16px;
}
.hero-premium .partner-label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
}
.hero-premium .partner-chip {
  padding: 6px 14px;
  font-size: 11.5px;
  font-weight: 600;
  border-radius: 18px;
  letter-spacing: 0.3px;
}

/* 快捷入口高端化 */
.hero-premium .hero-quick-entry {
  margin-top: 26px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.hero-premium .hero-qe-title {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 12px;
}
.hero-premium .hero-qe-grid {
  gap: 10px;
}
.hero-premium .hero-qe-item {
  border-radius: 12px;
  padding: 14px 4px;
  border: 1px solid rgba(255,255,255,0.08);
  transition: all .3s;
}
.hero-premium .hero-qe-icon {
  width: 34px; height: 34px;
  border-radius: 9px;
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(214,158,46,0.3);
}
.hero-premium .hero-qe-item span {
  font-size: 12px;
  font-weight: 500;
  margin-top: 3px;
}

/* ========== 页脚高端化升级 ========== */
.site-footer {
  position: relative;
}
.site-footer::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent 0%, var(--color-accent) 20%, var(--color-accent-light) 50%, var(--color-accent) 80%, transparent 100%);
  opacity: .8;
}
.site-footer .footer-top {
  position: relative;
  z-index: 1;
}

/* 页脚品牌列强化 */
.site-footer .footer-brand-col {
  flex: 1.2;
  min-width: 240px;
}
.site-footer .footer-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}
.site-footer .footer-logo-mark {
  width: 40px; height: 40px;
  background: linear-gradient(135deg, #FFD700 0%, var(--color-accent) 50%, var(--color-accent-dark) 100%);
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  color: var(--color-primary-dark);
  font-size: 18px;
  font-weight: 800;
  box-shadow: 0 2px 10px rgba(214,158,46,0.35);
}
.site-footer .footer-logo-text {
  font-size: 20px;
  font-weight: 800;
  color: #fff;
  letter-spacing: 1px;
}
.site-footer .footer-logo-text span {
  background: linear-gradient(135deg, #FFD700, var(--color-accent));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.site-footer .footer-slogan {
  font-size: 12.5px;
  color: rgba(255,255,255,0.55);
  line-height: 1.8;
  margin-bottom: 14px;
}
.site-footer .footer-contact-info {
  display: flex;
  flex-direction: column;
  gap: 5px;
  font-size: 12px;
  color: rgba(255,255,255,0.55);
}

/* 页脚列高端化 */
.site-footer .footer-col {
  min-width: 160px;
}
.site-footer .footer-col h4 {
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 16px;
  position: relative;
  padding-bottom: 8px;
}
.site-footer .footer-col h4::after {
  content: '';
  position: absolute;
  left: 0; bottom: 0;
  width: 28px; height: 2px;
  background: linear-gradient(90deg, var(--color-accent), transparent);
  border-radius: 1px;
}
.site-footer .footer-col ul li a {
  font-size: 12.5px;
  padding: 4px 0;
  position: relative;
  transition: all .25s;
}
.site-footer .footer-col ul li a:hover {
  color: var(--color-accent-light);
  padding-left: 6px;
}
.site-footer .footer-col ul li a::before {
  content: '';
  position: absolute;
  left: -8px;
  top: 50%;
  width: 4px; height: 4px;
  background: var(--color-accent);
  border-radius: 50%;
  opacity: 0;
  transition: all .25s;
  transform: translateY(-50%);
}
.site-footer .footer-col ul li a:hover::before {
  opacity: 1;
  left: -6px;
}

/* AI声明栏高端化 */
.site-footer .footer-ai-statement {
  margin: 0 auto 22px;
}
.site-footer .fas-row {
  border-radius: 12px;
  border: 1px solid rgba(214,158,46,0.35);
  box-shadow: 0 4px 16px rgba(0,0,0,0.2);
}
.site-footer .fas-icon {
  box-shadow: 0 2px 8px rgba(214,158,46,0.3);
}
.site-footer .fas-content strong {
  font-size: 13.5px;
  letter-spacing: 0.5px;
}
.site-footer .fas-certs {
  gap: 8px;
}
.site-footer .fas-certs span:not(:nth-child(even)) {
  padding: 5px 12px;
  border-radius: 5px;
  font-weight: 500;
  letter-spacing: 0.3px;
  border: 1px solid rgba(255,255,255,0.12);
}

/* 版权区高端化 */
.site-footer .footer-bottom-bar,
.site-footer .footer-bottom {
  background: rgba(0,0,0,0.2);
  backdrop-filter: blur(4px);
  padding: 16px 20px;
  font-size: 11.5px;
  font-weight: 500;
  letter-spacing: 0.3px;
}
.site-footer .footer-bottom-bar .copyright,
.site-footer .footer-bottom .copyright {
  color: rgba(255,255,255,0.5);
}
.site-footer .footer-statement {
  padding: 16px 0 18px;
}
.site-footer .statement-links {
  margin-bottom: 10px;
  gap: 20px;
}
.site-footer .statement-links a {
  font-size: 11.5px;
  font-weight: 500;
}
.site-footer .footer-statement .copyright {
  font-size: 11px;
  line-height: 1.8;
  letter-spacing: 0.2px;
}


/* ========== 首页新Hero区（premium-hero / ph-*）完整样式 ========== */
.premium-hero {
  background: linear-gradient(135deg, #0F2440 0%, var(--color-primary) 50%, #1e3a6b 100%);
  padding: 48px 0 52px;
  position: relative;
  overflow: hidden;
  color: #fff;
}
.premium-hero::before {
  content: '';
  position: absolute;
  top: -100px; right: -60px;
  width: 520px; height: 520px;
  background: radial-gradient(circle, rgba(214,158,46,0.18), transparent 65%);
  border-radius: 50%;
  animation: phGlow 8s ease-in-out infinite alternate;
}
.premium-hero::after {
  content: '';
  position: absolute;
  bottom: -140px; left: -80px;
  width: 420px; height: 420px;
  background: radial-gradient(circle, rgba(255,255,255,0.06), transparent 65%);
  border-radius: 50%;
}
@keyframes phGlow {
  0% { transform: scale(1) translateY(0); }
  100% { transform: scale(1.08) translateY(12px); }
}
.ph-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  position: relative;
  z-index: 2;
  text-align: left;
}

.ph-badge-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}
.ph-badge {
  padding: 5px 12px;
  font-size: 11.5px;
  font-weight: 600;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.8);
  border-radius: 14px;
  letter-spacing: 0.3px;
}
.ph-badge.gold {
  background: linear-gradient(135deg, rgba(214,158,46,0.2), rgba(214,158,46,0.1));
  border-color: rgba(214,158,46,0.5);
  color: var(--color-accent-light);
  box-shadow: 0 2px 8px rgba(214,158,46,0.2);
}

.ph-title {
  font-size: 40px;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 14px;
  letter-spacing: -0.5px;
  color: #fff;
}
.ph-title-gold {
  background: linear-gradient(135deg, #FFD700, var(--color-accent), #B8860B);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 800;
}

.ph-desc {
  font-size: 14.5px;
  line-height: 1.9;
  color: rgba(255,255,255,0.8);
  margin: 0 0 24px;
  max-width: 760px;
}

/* 搜索框（天眼查风格） */
.ph-search {
  max-width: 720px;
  margin: 0 0 20px;
  position: relative;
}
.ph-search-tabs {
  display: flex;
  gap: 0;
  margin-bottom: 12px;
}
.ph-search-tabs a {
  padding: 8px 18px;
  font-size: 14px;
  color: rgba(255,255,255,0.75);
  border-radius: 999px 999px 0 0;
  transition: all .2s;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  position: relative;
}
.ph-search-tabs a:hover {
  color: #fff;
}
.ph-search-tabs a.active {
  color: #fff;
  font-weight: 700;
  background: rgba(255,255,255,0.12);
}
.ph-search-tabs a.active::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 24px;
  height: 3px;
  border-radius: 2px;
  background: linear-gradient(90deg, #155DFC, #08A9F4);
}

/* 搜索条（白色大圆角） */
.ph-search-bar {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  background: #fff;
  border-radius: 999px;
  padding: 6px 6px 6px 0;
  box-shadow: 0 12px 40px rgba(0,0,0,0.25), 0 2px 8px rgba(0,0,0,0.1);
  height: 56px;
  border: 2px solid transparent;
  transition: all .3s ease;
  overflow: hidden;
}
.ph-search-bar:hover {
  box-shadow: 0 16px 48px rgba(0,0,0,0.3), 0 2px 12px rgba(21, 93, 252, 0.15);
}
.ph-search-bar:focus-within {
  border-color: rgba(21, 93, 252, 0.4);
  box-shadow: 0 0 0 4px rgba(21, 93, 252, 0.12), 0 16px 48px rgba(0,0,0,0.25);
}

/* 类型选择 */
.ph-search-type {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 0 16px 0 20px;
  height: 100%;
  color: #4A5568;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  flex-shrink: 0;
  white-space: nowrap;
  overflow: hidden;
  box-sizing: border-box;
  border-right: 1px solid #E2E8F0;
  margin-right: 0;
  transition: color .2s;
}
.ph-search-type:hover {
  color: #155DFC;
}
.ph-type-text { white-space: nowrap; }
.ph-type-arrow {
  width: 12px;
  height: 12px;
  display: inline-block;
  color: #718096;
  margin-left: 2px;
  transition: transform .2s;
  flex-shrink: 0;
}
.ph-search-type:hover .ph-type-arrow { color: #155DFC; }

/* 输入框 */
.ph-search-input-field {
  flex: 1;
  height: 100%;
  border: none;
  outline: none;
  background: transparent;
  padding: 0 16px;
  font-size: 15px;
  color: #1A202C;
  font-weight: 500;
  min-width: 0;
}
.ph-search-input-field::placeholder {
  color: #A0AEC0;
  font-weight: 400;
}

/* 搜索按钮 */
.ph-search-btn {
  flex-shrink: 0;
  height: 46px;
  min-width: 110px;
  padding: 0 24px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-accent));
  color: #fff;
  border: none;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: all .25s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  box-shadow: 0 4px 14px rgba(26, 54, 93, 0.3);
  letter-spacing: 2px;
}
.ph-search-btn:hover {
  box-shadow: 0 6px 20px rgba(214, 158, 46, 0.4);
  background: linear-gradient(135deg, var(--color-primary-dark), var(--color-accent-light));
}
.ph-search-btn:active {
  transform: translateY(0);
}
.ph-search-icon {
  width: 18px;
  height: 18px;
  display: inline-block;
  flex-shrink: 0;
}


/* 热门标签 */
.ph-hot-tags {
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 12px;
  max-width: 640px;
}
.ph-tags-label {
  color: rgba(255,255,255,0.5);
  font-weight: 500;
  flex-shrink: 0;
}
.ph-hot-tags a {
  color: rgba(255,255,255,0.75);
  padding: 4px 12px;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 14px;
  transition: all .2s;
  font-size: 11.5px;
  text-decoration: none;
  white-space: nowrap;
}
.ph-hot-tags a:hover {
  color: var(--color-accent-light);
  border-color: var(--color-accent);
  background: rgba(214,158,46,0.1);
}

/* 数据统计栏 - 5项整齐排列 */
.ph-stats {
  display: flex;
  align-items: stretch;
  gap: 0;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(214,158,46,0.2);
  border-radius: 14px;
  backdrop-filter: blur(10px);
  box-shadow: 0 4px 20px rgba(0,0,0,0.1);
  max-width: 780px;
  margin: 0 0 22px;
  overflow: hidden;
}
.ph-stat-item {
  flex: 1;
  padding: 16px 10px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-width: 0;
}
.ph-stat-divider {
  width: 1px;
  background: rgba(255,255,255,0.1);
  margin: 14px 0;
  flex-shrink: 0;
}
.ph-stat-num {
  font-size: 24px;
  font-weight: 800;
  line-height: 1.1;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 5px;
  letter-spacing: -0.3px;
  white-space: nowrap;
}
.ph-stat-num .unit {
  font-size: 13px;
  font-weight: 700;
  margin-left: 1px;
  -webkit-text-fill-color: #08A9F4;
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
}
.ph-stat-label {
  font-size: 11.5px;
  color: rgba(255,255,255,0.7);
  font-weight: 500;
  letter-spacing: 0.2px;
  line-height: 1.4;
}

/* AI合作伙伴 */
.ph-ai-partners {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,0.08);
  max-width: 780px;
}
.ph-partner-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-accent-light);
  flex-shrink: 0;
  letter-spacing: 0.3px;
}
.ph-partner-chips {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.ph-partner-chips span {
  padding: 5px 13px;
  font-size: 11.5px;
  font-weight: 600;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 16px;
  color: rgba(255,255,255,0.8);
  letter-spacing: 0.3px;
  transition: all .25s;
}
.ph-partner-chips span:hover {
  background: rgba(214,158,46,0.15);
  border-color: var(--color-accent);
  color: var(--color-accent-light);
}

/* 响应式 - Hero双栏 + 搜索框 */
@media (max-width: 1023px) {
  .ph-hero-layout {
    grid-template-columns: 1fr;
    gap: 32px;
    padding: 60px 0 72px;
  }
  .ph-hero-side {
    flex-direction: row;
  }
  .ph-stats-card, .ph-ai-card { flex: 1; }
  .ph-title { font-size: 32px; }
}
@media (max-width: 768px) {
  .ph-hero-layout {
    padding: 48px 0 56px;
    gap: 24px;
  }
  .ph-hero-side {
    flex-direction: column;
  }
  .ph-title { font-size: 26px; }
  .ph-desc { font-size: 13.5px; line-height: 1.7; }
  .ph-search-bar {
    height: 50px;
    padding: 5px 5px 5px 0;
  }
  .ph-search-btn {
    height: 40px;
    min-width: 88px;
    padding: 0 18px;
    font-size: 14px;
  }
  .ph-search-type {
    padding: 0 12px 0 16px;
    font-size: 13px;
  }
  .ph-search-input-field {
    font-size: 14px;
    padding: 0 12px;
  }
  .ph-search-tabs {
    overflow-x: auto;
    scrollbar-width: none;
    margin-bottom: 10px;
  }
  .ph-search-tabs::-webkit-scrollbar { display: none; }
  .ph-search-tabs a {
    padding: 6px 14px;
    font-size: 13px;
  }
  .ph-stats-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .ph-stats-num { font-size: 18px; }
  .ph-stats-label { font-size: 10.5px; }
  .ph-ai-logos span { font-size: 11px; padding: 3px 8px; }
}
@media (max-width: 480px) {
  .ph-hero-layout {
    padding: 36px 0 44px;
    gap: 20px;
  }
  .ph-title { font-size: 22px; }
  .ph-desc { font-size: 13px; }
  .ph-search-bar {
    height: 46px;
  }
  .ph-search-btn {
    min-width: 76px;
    padding: 0 14px;
    font-size: 13px;
    letter-spacing: 1px;
  }
  .ph-search-type {
    padding: 0 10px 0 14px;
    font-size: 12.5px;
  }
  .ph-search-icon { display: none; }
  .ph-stats-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .ph-stats-num { font-size: 16px; }
  .ph-badge { font-size: 10.5px; padding: 4px 10px; }
  .ph-hot-tags { font-size: 11px; }
}


/* ========== 玻璃拟态风格图标容器（统一规范） ========== */
/* 基础玻璃拟态图标容器 */
.glass-icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 8px;
  /* 白色→浅灰渐变底色 */
  background: linear-gradient(145deg, #ffffff 0%, #f0f2f5 100%);
  /* 1px 浅灰边框 */
  border: 1px solid #e4e8ed;
  /* 柔和内阴影 */
  box-shadow:
    inset 0 1px 2px rgba(255,255,255,0.8),
    inset 0 -1px 2px rgba(0,0,0,0.04),
    0 1px 3px rgba(0,0,0,0.04);
  overflow: hidden;
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* 内部叠加 5% 品牌渐变底色（微色带） */
.glass-icon::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(21, 93, 252, 0.05), rgba(8, 169, 244, 0.05));
  border-radius: inherit;
  pointer-events: none;
  transition: opacity .3s ease;
  opacity: 1;
}

/* 图标渐变文字 */
.glass-icon svg,
.glass-icon span,
.glass-icon i {
  position: relative;
  z-index: 1;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 700;
}

/* hover 效果 */
.glass-icon:hover {
  /* 边框变主色 */
  border-color: #155DFC;
  /* 阴影加深 */
  box-shadow:
    inset 0 1px 2px rgba(255,255,255,0.8),
    inset 0 -1px 2px rgba(0,0,0,0.04),
    0 4px 12px rgba(21, 93, 252, 0.15);
  /* 轻微放大 */
  transform: scale(1.08);
}

/* hover 内部渐变色叠加加强到 10% */
.glass-icon:hover::before {
  background: linear-gradient(135deg, rgba(21, 93, 252, 0.10), rgba(8, 169, 244, 0.10));
}

/* 尺寸变体（常用） */
.glass-icon.size-sm { width: 20px; height: 20px; border-radius: 6px; }
.glass-icon.size-md { width: 28px; height: 28px; border-radius: 9px; }
.glass-icon.size-lg { width: 36px; height: 36px; border-radius: 10px; }
.glass-icon.size-xl { width: 48px; height: 48px; border-radius: 14px; }
.glass-icon.size-2xl { width: 56px; height: 56px; border-radius: 16px; }

/* 暗色背景上的玻璃拟态（用于Hero/页脚等深色区域） */
.glass-icon.glass-dark {
  background: linear-gradient(145deg, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0.06) 100%);
  border: 1px solid rgba(255,255,255,0.15);
  box-shadow:
    inset 0 1px 2px rgba(255,255,255,0.1),
    inset 0 -1px 2px rgba(0,0,0,0.1),
    0 1px 3px rgba(0,0,0,0.1);
  backdrop-filter: blur(8px);
}
.glass-icon.glass-dark::before {
  background: linear-gradient(135deg, rgba(21, 93, 252, 0.15), rgba(8, 169, 244, 0.10));
}
.glass-icon.glass-dark svg,
.glass-icon.glass-dark span,
.glass-icon.glass-dark i {
  background: linear-gradient(135deg, #ffffff, rgba(255,255,255,0.8));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.glass-icon.glass-dark:hover {
  border-color: rgba(8, 169, 244, 0.6);
  box-shadow:
    inset 0 1px 2px rgba(255,255,255,0.1),
    inset 0 -1px 2px rgba(0,0,0,0.1),
    0 4px 16px rgba(21, 93, 252, 0.25);
}
.glass-icon.glass-dark:hover::before {
  background: linear-gradient(135deg, rgba(21, 93, 252, 0.25), rgba(8, 169, 244, 0.18));
}

/* 金色渐变版本（用于重要节点/排名徽章） */
.glass-icon.glass-gold::before {
  background: linear-gradient(135deg, rgba(255, 215, 0, 0.08), rgba(214, 158, 46, 0.05));
}
.glass-icon.glass-gold svg,
.glass-icon.glass-gold span,
.glass-icon.glass-gold i {
  background: linear-gradient(135deg, #FFD700, #D69E2E);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.glass-icon.glass-gold:hover {
  border-color: #D69E2E;
  box-shadow:
    inset 0 1px 2px rgba(255,255,255,0.8),
    inset 0 -1px 2px rgba(0,0,0,0.04),
    0 4px 12px rgba(214, 158, 46, 0.2);
}
.glass-icon.glass-gold:hover::before {
  background: linear-gradient(135deg, rgba(255, 215, 0, 0.14), rgba(214, 158, 46, 0.08));
}


/* ========== 入驻合作 - 数据信任墙 ========== */
.join-section .trust-wall {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0;
  margin-top: 36px;
  padding: 24px 32px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  box-shadow: 0 4px 16px rgba(26,54,93,0.06);
}
.join-section .trust-item {
  flex: 1;
  text-align: center;
  padding: 8px 12px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.join-section .trust-divider {
  width: 1px;
  background: var(--color-border);
  margin: 10px 0;
  flex-shrink: 0;
}
.join-section .trust-label {
  font-size: 12px;
  color: var(--color-text-secondary);
  font-weight: 500;
  white-space: nowrap;
}
.join-section .trust-count {
  font-size: 26px;
  font-weight: 800;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: -0.5px;
  line-height: 1.1;
}
.join-section .trust-count span {
  font-size: 14px;
  font-weight: 700;
  -webkit-text-fill-color: #155DFC;
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
  margin-left: 1px;
}

@media (max-width: 768px) {
  .join-section .trust-wall {
    flex-wrap: wrap;
    padding: 16px 12px;
    gap: 12px 0;
  }
  .join-section .trust-item {
    flex: 0 0 33.33%;
    padding: 8px 4px;
  }
  .join-section .trust-divider { display: none; }
  .join-section .trust-count { font-size: 20px; }
}
@media (max-width: 480px) {
  .join-section .trust-item {
    flex: 0 0 50%;
  }
}


/* ========== 详情页底部 AI 信源声明与 CTA ========== */
.detail-ai-source-box {
  margin-top: 36px;
  padding: 24px 28px;
  background: linear-gradient(135deg, #f8fafc 0%, #eef5ff 100%);
  border: 1px solid #e2e8f0;
  border-left: 4px solid #155DFC;
  border-radius: 12px;
}
.detail-ai-source-box .ai-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  color: #155DFC;
  background: rgba(21, 93, 252, 0.08);
  padding: 4px 10px;
  border-radius: 999px;
  margin-bottom: 10px;
  letter-spacing: 0.5px;
}
.detail-ai-source-box h4 {
  margin: 0 0 8px 0;
  font-size: 16px;
  font-weight: 700;
  color: #1A202C;
}
.detail-ai-source-box p {
  margin: 0 0 8px 0;
  font-size: 13px;
  color: #4A5568;
  line-height: 1.7;
}
.detail-ai-source-box .ai-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px dashed #cbd5e0;
  font-size: 12px;
  color: #718096;
}
.detail-ai-source-box .ai-meta span strong {
  color: #1A202C;
  font-weight: 600;
}

/* 数据纠错 CTA */
.detail-cta-row {
  display: flex;
  gap: 16px;
  margin-top: 24px;
  padding: 20px 24px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  align-items: center;
}
.detail-cta-row .cta-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #fff 0%, #f0f4f8 100%);
  border: 1px solid var(--color-border);
  box-shadow: inset 0 1px 2px rgba(255,255,255,0.9);
}
.detail-cta-row .cta-content { flex: 1; }
.detail-cta-row .cta-content h4 {
  margin: 0 0 4px 0;
  font-size: 15px;
  color: var(--color-text-primary);
  font-weight: 700;
}
.detail-cta-row .cta-content p {
  margin: 0;
  font-size: 13px;
  color: var(--color-text-muted);
}
.detail-cta-row .cta-btn {
  flex-shrink: 0;
  padding: 10px 20px;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  text-decoration: none;
  display: inline-block;
  box-shadow: 0 4px 12px rgba(21, 93, 252, 0.25);
}
.detail-cta-row .cta-btn:hover {
  box-shadow: 0 6px 20px rgba(21, 93, 252, 0.35);
}
.detail-cta-row.secondary .cta-btn {
  background: #fff;
  color: #155DFC;
  border: 1px solid #155DFC;
  box-shadow: none;
}
.detail-cta-row.secondary .cta-btn:hover {
  background: rgba(21, 93, 252, 0.05);
}

@media (max-width: 640px) {
  .detail-ai-source-box { padding: 18px 16px; }
  .detail-cta-row {
    flex-wrap: wrap;
    gap: 12px;
  }
  .detail-cta-row .cta-btn {
    width: 100%;
    text-align: center;
  }
}


/* ========== 关于我们/联系我们页通用样式 ========== */
.about-hero { padding-bottom: 48px; }

.about-mission-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 40px;
}
.about-mission-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  padding: 32px 28px;
  text-align: center;
  transition: all 0.3s ease;
}
.about-mission-card:hover { box-shadow: 0 12px 32px rgba(21, 93, 252, 0.12);
  border-color: rgba(21, 93, 252, 0.3);
}
.about-mission-card h3 {
  margin: 16px 0 8px 0;
  font-size: 20px;
  color: var(--color-text-primary);
  font-weight: 700;
}
.about-mission-card p {
  margin: 0;
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.8;
}

/* 九大业务面板 */
.about-panels-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 40px;
}
.about-panel-card {
  display: block;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 24px;
  text-decoration: none;
  color: inherit;
  transition: all 0.3s ease;
  display: flex;
  gap: 16px;
  align-items: flex-start;
}
.about-panel-card:hover {
  border-color: #155DFC;
  box-shadow: 0 8px 24px rgba(21, 93, 252, 0.15);
}
.about-panel-card .panel-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(21,93,252,0.1), rgba(8,169,244,0.1));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
}
.about-panel-card h4 {
  margin: 0 0 6px 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
}
.about-panel-card p {
  margin: 0;
  font-size: 13px;
  color: var(--color-text-muted);
  line-height: 1.6;
}

/* 核心优势 */
.about-advantages {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 40px;
}
.advantage-item {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 28px 24px;
  position: relative;
  transition: all 0.3s ease;
}
.advantage-item:hover {
  border-color: #155DFC;
  box-shadow: 0 8px 24px rgba(21, 93, 252, 0.12);
}
.advantage-num {
  font-size: 40px;
  font-weight: 900;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1;
  margin-bottom: 12px;
}
.advantage-item h3 {
  margin: 0 0 8px 0;
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
}
.advantage-item p {
  margin: 0;
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.8;
}

/* 数据处理原则 */
.about-principles {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 40px;
}
.principle-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 28px 20px;
  text-align: center;
  transition: all 0.3s ease;
}
.principle-card:hover {
  box-shadow: 0 8px 20px rgba(0,0,0,0.08);
}
.principle-icon {
  width: 56px;
  height: 56px;
  margin: 0 auto 16px;
  border-radius: 50%;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  font-weight: 700;
}
.principle-card h4 {
  margin: 0 0 8px 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
}
.principle-card p {
  margin: 0;
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.7;
}

/* AI合作伙伴 */
.about-ai-partners {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 40px;
}
.ai-partner-logo {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 24px 16px;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  transition: all 0.3s ease;
}
.ai-partner-logo small {
  display: block;
  font-size: 11px;
  font-weight: 500;
  color: var(--color-text-muted);
  margin-top: 4px;
}
.ai-partner-logo:hover {
  border-color: #155DFC;
  box-shadow: 0 6px 16px rgba(21, 93, 252, 0.15);
  }

/* CTA 横幅 */
.about-cta-banner {
  background: linear-gradient(135deg, #155DFC 0%, #08A9F4 100%);
  border-radius: 20px;
  padding: 48px 40px;
  text-align: center;
  color: #fff;
}
.about-cta-banner h2 {
  margin: 0 0 12px 0;
  font-size: 30px;
  font-weight: 700;
  color: #fff;
}
.about-cta-banner p {
  margin: 0 0 28px 0;
  font-size: 16px;
  opacity: 0.9;
}
.cta-banner-btns {
  display: flex;
  gap: 16px;
  justify-content: center;
}
.cta-banner-btns .btn {
  padding: 12px 32px;
  font-size: 15px;
}
.cta-banner-btns .btn-primary {
  background: #fff !important;
  color: #155DFC !important;
  border: none !important;
}
.cta-banner-btns .btn-secondary {
  background: transparent !important;
  color: #fff !important;
  border-color: #fff !important;
}

/* ========== 联系我们页 ========== */
.contact-channels {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 40px;
}
.contact-channel-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  padding: 28px 24px;
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
}
.contact-channel-card:hover { box-shadow: 0 12px 32px rgba(21, 93, 252, 0.12);
  border-color: rgba(21, 93, 252, 0.3);
}
.contact-channel-card.highlight {
  border: 2px solid #155DFC;
  position: relative;
}
.contact-channel-card.highlight::before {
  content: '推荐';
  position: absolute;
  top: -1px;
  right: 20px;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 0 0 8px 8px;
}
.channel-icon {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(21,93,252,0.1), rgba(8,169,244,0.15));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  margin-bottom: 16px;
}
.contact-channel-card h3 {
  margin: 0 0 8px 0;
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
}
.contact-channel-card > p {
  margin: 0 0 16px 0;
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.7;
  flex: 1;
}
.channel-info {
  padding: 16px 0;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
  margin-bottom: 16px;
}
.info-row {
  display: flex;
  font-size: 13px;
  margin-bottom: 6px;
}
.info-row:last-child { margin-bottom: 0; }
.info-label {
  color: var(--color-text-muted);
  min-width: 50px;
}
.info-value {
  color: var(--color-text-primary);
  font-weight: 600;
}
.btn-block { width: 100%; text-align: center; }

/* 公司信息 */
.contact-company {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  margin-top: 40px;
}
.company-info {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  padding: 32px;
}
.info-block { margin-bottom: 24px; }
.info-block:last-child { margin-bottom: 0; }
.info-block h3 {
  margin: 0 0 8px 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
}
.info-block p {
  margin: 0;
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.8;
}
.company-map-placeholder {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 300px;
  background: linear-gradient(135deg, #f0f4f8 0%, #e2e8f0 100%);
  position: relative;
}
.map-pin {
  font-size: 18px;
  font-weight: 700;
  color: #155DFC;
  margin-bottom: 8px;
}
.company-map-placeholder p {
  margin: 0 0 8px 0;
  color: var(--color-text-secondary);
  font-size: 14px;
}
.map-hint {
  font-size: 12px;
  color: var(--color-text-muted);
  position: absolute;
  bottom: 16px;
}

/* FAQ 列表 */
.faq-list {
  max-width: 860px;
  margin: 40px auto 0;
}
.faq-item {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 20px 24px;
  margin-bottom: 12px;
  transition: all 0.3s ease;
}
.faq-item:hover {
  border-color: #155DFC;
  box-shadow: 0 4px 12px rgba(21, 93, 252, 0.08);
}
.faq-item h4 {
  margin: 0 0 8px 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
}
.faq-item p {
  margin: 0;
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.8;
}

@media (max-width: 1024px) {
  .about-mission-grid,
  .about-panels-grid,
  .about-advantages,
  .contact-channels { grid-template-columns: repeat(2, 1fr); }
  .about-principles { grid-template-columns: repeat(2, 1fr); }
  .about-ai-partners { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
  .about-mission-grid,
  .about-panels-grid,
  .about-advantages,
  .contact-channels,
  .about-principles,
  .about-ai-partners { grid-template-columns: 1fr; }
  .contact-company { grid-template-columns: 1fr; gap: 20px; }
  .about-cta-banner { padding: 32px 20px; }
  .about-cta-banner h2 { font-size: 22px; }
  .cta-banner-btns { flex-direction: column; }
  .cta-banner-btns .btn { width: 100%; }
}


/* ========== Hero 双栏布局（天眼查风格） ========== */
.ph-hero-layout {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 48px;
  align-items: center;
  padding: 80px 0 96px;
}
.ph-hero-main {
  min-width: 0;
}
.ph-hero-side {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* 数据统计卡 */
.ph-stats-card {
  background: rgba(255,255,255,0.06);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.12);
}
.ph-stats-card-title {
  font-size: 13px;
  font-weight: 700;
  color: rgba(255,255,255,0.6);
  margin-bottom: 18px;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.ph-stats-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px 8px;
}
.ph-stats-cell {
  text-align: center;
  padding: 8px 4px;
}
.ph-stats-num {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.1;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 4px;
  letter-spacing: -0.3px;
  white-space: nowrap;
}
.ph-stats-num .unit {
  font-size: 12px;
  font-weight: 700;
  -webkit-text-fill-color: #08A9F4;
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
  margin-left: 1px;
}
.ph-stats-label {
  font-size: 11px;
  color: rgba(255,255,255,0.65);
  font-weight: 500;
  line-height: 1.35;
}

/* AI 合作卡 */
.ph-ai-card {
  background: rgba(255,255,255,0.06);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 16px;
  padding: 20px 24px;
}
.ph-ai-card-title {
  font-size: 12.5px;
  font-weight: 700;
  color: #D69E2E;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 6px;
  letter-spacing: 0.3px;
}
.ph-ai-check {
  font-size: 14px;
  flex-shrink: 0;
}
.ph-ai-logos {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.ph-ai-logos span {
  padding: 4px 10px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 6px;
  font-size: 11.5px;
  color: rgba(255,255,255,0.7);
  font-weight: 500;
  white-space: nowrap;
  transition: all .2s;
}
.ph-ai-logos span:hover {
  background: rgba(21, 93, 252, 0.15);
  border-color: rgba(21, 93, 252, 0.4);
  color: #fff;
}

/* ===== 搜索框 max-width 适配双栏 ===== */
.ph-search { max-width: none; }
.ph-hot-tags { max-width: none; }


/* ========== 天眼查搜索框 - 高优先级覆盖（防旧样式冲突） ========== */
.premium-hero .ph-hero-layout {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 48px;
  align-items: center;
}
.premium-hero .ph-hero-main { min-width: 0; }
.premium-hero .ph-hero-side {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.premium-hero .ph-search {
  max-width: none;
  margin: 0 0 20px;
  background: none;
  border: none;
  box-shadow: none;
}
.premium-hero .ph-search-bar {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  background: #fff;
  border-radius: 999px;
  padding: 6px 6px 6px 0;
  box-shadow: 0 12px 40px rgba(0,0,0,0.25), 0 2px 8px rgba(0,0,0,0.1);
  height: 56px;
  border: 2px solid transparent;
  overflow: hidden;
}
.premium-hero .ph-search-bar:hover {
  box-shadow: 0 16px 48px rgba(0,0,0,0.3), 0 2px 12px rgba(21, 93, 252, 0.15);
}
.premium-hero .ph-search-bar:focus-within {
  border-color: rgba(21, 93, 252, 0.4);
  box-shadow: 0 0 0 4px rgba(21, 93, 252, 0.12), 0 16px 48px rgba(0,0,0,0.25);
}
.premium-hero .ph-search-type {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 0 16px 0 20px;
  height: 100%;
  color: #4A5568;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  flex-shrink: 0;
  white-space: nowrap;
  box-sizing: border-box;
  overflow: hidden;
}
.premium-hero .ph-type-text { white-space: nowrap; line-height: 1; }
.premium-hero .ph-type-arrow {
  width: 12px;
  height: 12px;
  display: inline-block;
  color: #718096;
  margin-left: 2px;
  flex-shrink: 0;
}
.premium-hero .ph-search-input-field {
  flex: 1;
  height: 100%;
  border: none;
  outline: none;
  background: transparent;
  padding: 0 16px;
  font-size: 15px;
  color: #1A202C;
  font-weight: 500;
  min-width: 0;
}
.premium-hero .ph-search-input-field::placeholder {
  color: #A0AEC0;
  font-weight: 400;
}
.premium-hero .ph-search-btn {
  flex-shrink: 0;
  height: 46px;
  min-width: 110px;
  padding: 0 24px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-accent));
  color: #fff;
  border: none;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  box-shadow: 0 4px 14px rgba(26, 54, 93, 0.3);
  letter-spacing: 2px;
  box-sizing: border-box;
}
.premium-hero .ph-search-btn:hover {
  background: linear-gradient(135deg, var(--color-primary-dark), var(--color-accent-light));
  box-shadow: 0 6px 20px rgba(214, 158, 46, 0.4);
}
.premium-hero .ph-search-icon {
  width: 18px;
  height: 18px;
  display: inline-block;
  flex-shrink: 0;
}

/* 数据卡 - 高优先级 */
.premium-hero .ph-stats-card {
  background: rgba(255,255,255,0.06);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.12);
}
.premium-hero .ph-stats-card-title {
  font-size: 13px;
  font-weight: 700;
  color: rgba(255,255,255,0.6);
  margin-bottom: 18px;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.premium-hero .ph-stats-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px 8px;
}
.premium-hero .ph-stats-cell {
  text-align: center;
  padding: 8px 4px;
}
.premium-hero .ph-stats-num {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.1;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 4px;
  white-space: nowrap;
}
.premium-hero .ph-stats-num .unit {
  font-size: 12px;
  font-weight: 700;
  -webkit-text-fill-color: #08A9F4;
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
  margin-left: 1px;
}
.premium-hero .ph-stats-label {
  font-size: 11px;
  color: rgba(255,255,255,0.65);
  font-weight: 500;
  line-height: 1.35;
}

/* AI合作卡 - 高优先级 */
.premium-hero .ph-ai-card {
  background: rgba(255,255,255,0.06);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 16px;
  padding: 20px 24px;
}
.premium-hero .ph-ai-card-title {
  font-size: 12.5px;
  font-weight: 700;
  color: #D69E2E;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.premium-hero .ph-ai-logos {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.premium-hero .ph-ai-logos span {
  padding: 4px 10px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 6px;
  font-size: 11.5px;
  color: rgba(255,255,255,0.7);
  font-weight: 500;
  white-space: nowrap;
}


/* ========== 分类信息页面（列表网风格） ========== */
.classified-page {
  background: #f7f9fc;
  padding-bottom: 60px;
}

/* Hero 搜索区 */
.classified-hero {
  background: linear-gradient(135deg, #0F2440 0%, #1A365D 50%, #2A4A7D 100%);
  padding: 48px 0 56px;
  position: relative;
  overflow: hidden;
}
.classified-hero::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(214,158,46,0.12) 0%, transparent 70%);
  border-radius: 50%;
}
.classified-hero::after {
  content: '';
  position: absolute;
  bottom: -30%;
  left: -5%;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(42,74,125,0.5) 0%, transparent 70%);
  border-radius: 50%;
}
.classified-hero-inner {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 48px;
  align-items: center;
  position: relative;
  z-index: 1;
}
.classified-hero-title {
  font-size: 38px;
  font-weight: 700;
  color: #fff;
  margin: 0 0 12px 0;
  letter-spacing: 0;
}
.classified-hero-title .accent-text {
  color: #D69E2E;
  font-weight: 800;
}
.classified-hero-desc {
  font-size: 15px;
  color: rgba(255,255,255,0.75);
  margin: 0 0 24px 0;
  line-height: 1.7;
}

/* 搜索条 */
.classified-search-bar {
  display: flex;
  align-items: center;
  background: #fff;
  border-radius: 10px;
  height: 52px;
  padding: 0 0 0 0;
  box-shadow: 0 8px 24px rgba(0,0,0,0.15);
  overflow: hidden;
}
.classified-city {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 0 16px;
  height: 100%;
  color: #333;
  font-size: 14px;
  font-weight: 500;
  border-right: 1px solid #eee;
  cursor: pointer;
  flex-shrink: 0;
  white-space: nowrap;
}
.city-arrow { color: #999; font-size: 10px; }
.classified-search-divider {
  width: 1px;
  height: 24px;
  background: #eee;
  flex-shrink: 0;
  margin: 0 4px;
  display: none;
}
.classified-search-input {
  flex: 1;
  height: 100%;
  border: none;
  outline: none;
  padding: 0 16px;
  font-size: 14px;
  min-width: 0;
}
.classified-search-btn {
  height: 100%;
  min-width: 100px;
  padding: 0 24px;
  background: linear-gradient(135deg, #FF6B35, #FF8C42);
  color: #fff;
  border: none;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  flex-shrink: 0;
  transition: all .2s;
}
.classified-search-btn:hover {
  background: linear-gradient(135deg, #F05D25, #FF7A2E);
}

.classified-hot-searches {
  margin-top: 14px;
  font-size: 13px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 0;
  align-items: center;
}
.hot-label {
  color: rgba(255,255,255,0.7);
  margin-right: 6px;
  flex-shrink: 0;
}
.classified-hot-searches a {
  color: rgba(255,255,255,0.9);
  text-decoration: none;
  padding: 2px 10px;
  border-radius: 4px;
  background: rgba(255,255,255,0.1);
  font-size: 12.5px;
  transition: all .2s;
}
.classified-hot-searches a:hover {
  background: rgba(255,255,255,0.2);
  color: #fff;
}

/* 右侧数据统计 */
.classified-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.classified-stat-item {
  background: rgba(255,255,255,0.12);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 12px;
  padding: 20px 16px;
  text-align: center;
}
.stat-num {
  font-size: 30px;
  font-weight: 800;
  color: #fff;
  line-height: 1.1;
  margin-bottom: 4px;
}
.stat-num .unit {
  font-size: 14px;
  font-weight: 700;
  margin-left: 2px;
  color: #FFD700;
}
.stat-label {
  font-size: 12.5px;
  color: rgba(255,255,255,0.75);
  font-weight: 500;
}

/* 分类信息主体布局 */
.classified-page-layout {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 24px;
  margin-top: -32px;
  position: relative;
  z-index: 2;
}
.classified-main { min-width: 0; }
.classified-sidebar { min-width: 0; }

/* 大类导航网格 */
.category-nav-section {
  background: #fff;
  border-radius: 12px;
  padding: 20px 24px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  margin-bottom: 24px;
}
.category-nav-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
}
.cat-nav-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 12px;
  border-radius: 8px;
  text-decoration: none;
  color: inherit;
  transition: all .2s;
}
.cat-nav-item:hover {
  background: #f0f6ff;
  }
.cat-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: linear-gradient(135deg, rgba(21,93,252,0.08), rgba(8,169,244,0.08));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}
.cat-info h3 {
  margin: 0 0 2px 0;
  font-size: 14px;
  font-weight: 700;
  color: #1A202C;
}
.cat-info p {
  margin: 0;
  font-size: 11.5px;
  color: #718096;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100px;
}

/* section header */
.section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}
.section-header h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  color: #1A202C;
}
.section-tabs {
  display: flex;
  gap: 4px;
}
.tab-item {
  padding: 6px 14px;
  font-size: 13px;
  color: #4A5568;
  text-decoration: none;
  border-radius: 999px;
  transition: all .2s;
}
.tab-item:hover { color: #155DFC; }
.tab-item.active {
  background: #155DFC;
  color: #fff;
  font-weight: 600;
}

/* 分类信息列表 */
.classified-list {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
.classified-item {
  display: flex;
  gap: 16px;
  padding: 20px 24px;
  border-bottom: 1px solid #f0f2f5;
  transition: background .2s;
}
.classified-item:last-child { border-bottom: none; }
.classified-item:hover { background: #fafbfc; }

.item-image {
  width: 160px;
  height: 120px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #f0f4f8, #e2e8f0);
  border-radius: 8px;
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  padding: 8px;
  box-sizing: border-box;
}
.item-price {
  background: #FF6B35;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 4px;
  position: absolute;
  left: 8px;
  bottom: 8px;
}
.item-price.price-sale { background: #E53E3E; }
.item-price.price-salary { background: #38A169; }
.item-price.price-service { background: #805AD5; }
.item-price.price-free { background: #155DFC; }

.item-content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.item-title-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
  flex-wrap: wrap;
}
.item-title {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: #1A202C;
  cursor: pointer;
  transition: color .2s;
}
.item-title:hover { color: #155DFC; }
/* 标题链接化：链接继承标题样式，悬停变主色 */
.item-title a,
.cf-item-title a {
  color: inherit;
  text-decoration: none;
}
.item-title a:hover,
.cf-item-title a:hover { color: #155DFC; }
.item-tag {
  display: inline-block;
  padding: 1px 6px;
  font-size: 11px;
  border-radius: 3px;
  font-weight: 600;
  flex-shrink: 0;
}
.tag-blue { background: #EBF4FF; color: #155DFC; }
.tag-green { background: #F0FFF4; color: #38A169; }
.tag-gold { background: #FFFAF0; color: #D69E2E; }
.tag-red { background: #FFF5F5; color: #E53E3E; }

.item-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 16px;
  font-size: 12.5px;
  color: #718096;
  margin-bottom: 8px;
}
.item-desc {
  font-size: 13px;
  color: #4A5568;
  line-height: 1.6;
  flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.item-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px dashed #f0f2f5;
}
.item-category {
  font-size: 12px;
  color: #718096;
}
.item-time {
  font-size: 12px;
  color: #A0AEC0;
}

/* 关于分类信息 */
.classified-about { margin-top: 32px; }

/* 南京商务服务板块 */
.nj-business-section {
  padding: 40px 0 20px;
  background: var(--color-bg);
}
.nj-business-section .section-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 20px;
  flex-wrap: wrap;
  gap: 12px;
}
.nj-business-section .section-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 10px;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));
  color: #fff;
  border-radius: 4px;
  letter-spacing: 1px;
  margin-bottom: 6px;
}
.nj-business-section .section-title {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0;
}
.nj-business-section .section-subtitle {
  font-size: 13px;
  color: var(--color-text-muted);
  margin-top: 6px;
}
.nj-business-section .section-more {
  font-size: 13px;
  color: var(--color-text-secondary);
  font-weight: 500;
  white-space: nowrap;
}
.nj-business-section .section-more:hover { color: var(--color-accent); }

/* 商务分类Tab */
.biz-cat-tabs {
  display: flex;
  gap: 6px;
  margin-bottom: 16px;
  flex-wrap: wrap;
  background: #fff;
  padding: 10px 14px;
  border-radius: 10px;
  border: 1px solid var(--color-border);
}
.biz-tab {
  font-size: 12.5px;
  padding: 5px 14px;
  color: var(--color-text-secondary);
  border-radius: 6px;
  transition: all .2s;
  white-space: nowrap;
  cursor: pointer;
}
.biz-tab:hover {
  background: #F0F7FF;
  color: var(--color-primary);
}
.biz-tab.active {
  background: var(--color-primary);
  color: #fff;
  font-weight: 600;
}

/* 查看更多按钮 */
.view-more-wrap {
  text-align: center;
  margin-top: 20px;
}
.view-more-btn {
  display: inline-block;
  padding: 10px 36px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 24px;
  color: var(--color-primary);
  font-size: 13px;
  font-weight: 500;
  transition: all .2s;
}
.view-more-btn:hover {
  background: var(--color-primary);
  color: #fff;
  border-color: var(--color-primary);
  box-shadow: 0 4px 12px rgba(26,54,93,0.15);
}

/* tag-purple 补充 */
.tag-purple { background: #FAF5FF; color: #6B46C1; }
.about-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.about-card {
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 24px 20px;
  text-align: center;
  transition: all .3s;
}
.about-card:hover {
  border-color: #155DFC;
  box-shadow: 0 8px 20px rgba(21,93,252,0.12);
}
.about-icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(21,93,252,0.1), rgba(8,169,244,0.1));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  margin: 0 auto 12px;
}
.about-card h3 {
  margin: 0 0 6px 0;
  font-size: 16px;
  font-weight: 700;
  color: #1A202C;
}
.about-card p {
  margin: 0;
  font-size: 13px;
  color: #718096;
  line-height: 1.6;
}

/* 侧边栏 */
.sidebar-publish-card {
  background: #fff;
  border-radius: 12px;
  padding: 24px;
  text-align: center;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  margin-bottom: 20px;
  border-top: 4px solid #FF6B35;
}
.sidebar-publish-card h3 {
  margin: 0 0 6px 0;
  font-size: 18px;
  font-weight: 700;
  color: #1A202C;
}
.sidebar-publish-card p {
  margin: 0 0 16px 0;
  font-size: 13px;
  color: #718096;
}
.publish-btn {
  width: 100%;
  padding: 12px;
  background: linear-gradient(135deg, #FF6B35, #FF8C42);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: all .2s;
  box-shadow: 0 4px 12px rgba(255,107,53,0.3);
}
.publish-btn:hover {
  box-shadow: 0 6px 16px rgba(255,107,53,0.4);
}
.publish-stats {
  margin-top: 12px;
  font-size: 12px;
  color: #A0AEC0;
}

.sidebar-card {
  background: #fff;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  margin-bottom: 20px;
}
.sidebar-title {
  margin: 0 0 14px 0;
  font-size: 15px;
  font-weight: 700;
  color: #1A202C;
  padding-bottom: 10px;
  border-bottom: 1px solid #f0f2f5;
}
.hot-cat-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.hot-cat-list li { margin-bottom: 10px; }
.hot-cat-list li:last-child { margin-bottom: 0; }
.hot-cat-list li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 13px;
  color: #4A5568;
  text-decoration: none;
  padding: 4px 6px;
  border-radius: 4px;
  transition: all .2s;
}
.hot-cat-list li a:hover {
  background: #f0f6ff;
  color: #155DFC;
}
.hot-cat-list .count {
  font-size: 11px;
  color: #A0AEC0;
  background: #F7FAFC;
  padding: 1px 6px;
  border-radius: 10px;
}

.gold-merchant-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.gold-merchant-item {
  display: flex;
  gap: 10px;
  align-items: center;
}
.merchant-badge {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  background: linear-gradient(135deg, #FFD700, #FFA500);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 14px;
  flex-shrink: 0;
}
.merchant-info h5 {
  margin: 0 0 2px 0;
  font-size: 13px;
  font-weight: 600;
  color: #1A202C;
}
.merchant-info p {
  margin: 0;
  font-size: 11.5px;
  color: #718096;
}

.city-switch { font-size: 13px; }
.city-current {
  text-align: center;
  padding: 10px;
  background: #F7FAFC;
  border-radius: 6px;
  margin-bottom: 12px;
}
.city-current strong { color: #155DFC; font-size: 14px; }
.city-hot {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 10px;
  align-items: center;
}
.city-hot-label {
  font-size: 12px;
  color: #718096;
  width: 100%;
  margin-bottom: 4px;
}
.city-hot a {
  padding: 4px 10px;
  font-size: 12px;
  color: #4A5568;
  background: #F7FAFC;
  border-radius: 4px;
  text-decoration: none;
  transition: all .2s;
}
.city-hot a:hover {
  background: #155DFC;
  color: #fff;
}
.more-cities {
  display: block;
  text-align: center;
  font-size: 12.5px;
  color: #155DFC;
  text-decoration: none;
  padding-top: 8px;
  border-top: 1px solid #f0f2f5;
}
.more-cities:hover { text-decoration: underline; }

/* ========== 响应式：分类信息页 ========== */
@media (max-width: 1024px) {
  .classified-page-layout {
    grid-template-columns: 1fr;
  }
  .classified-sidebar { display: none; }
  .category-nav-grid { grid-template-columns: repeat(4, 1fr); }
  .classified-hero-inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .classified-stats { max-width: 400px; }
}
@media (max-width: 768px) {
  .classified-hero { padding: 32px 0 44px; }
  .classified-hero-title { font-size: 26px; }
  .classified-hero-desc { font-size: 14px; }
  .classified-search-bar { height: 46px; }
  .classified-search-btn { min-width: 72px; padding: 0 16px; font-size: 14px; }
  .classified-city { padding: 0 10px; font-size: 13px; }
  .category-nav-grid { grid-template-columns: repeat(3, 1fr); }
  .classified-item { flex-direction: column; }
  .item-image { width: 100%; height: 160px; }
  .about-grid { grid-template-columns: repeat(2, 1fr); }
  .classified-stats { grid-template-columns: 1fr 1fr; }
  .stat-num { font-size: 24px; }
}
@media (max-width: 480px) {
  .category-nav-grid { grid-template-columns: repeat(2, 1fr); }
  .about-grid { grid-template-columns: 1fr; }
  .classified-search-bar .classified-city span:not(.city-label) { display: none; }
}


/* ========== 首页分类信息板块（列表网风格） ========== */
.classified-home-section { background: #f7f9fc; }
.classified-home-section .section-head { margin-bottom: 28px; }

/* 12类别网格 */
.home-cat-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 12px;
  margin-bottom: 32px;
}
.home-cat-card {
  display: block;
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 18px 12px 16px;
  text-align: center;
  text-decoration: none;
  transition: all .25s;
  color: inherit;
}
.home-cat-card:hover {
  border-color: #155DFC;
  box-shadow: 0 8px 20px rgba(21,93,252,0.15);
}
.home-cat-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(21,93,252,0.08), rgba(8,169,244,0.08));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  margin: 0 auto 10px;
  transition: all .25s;
}
.home-cat-card:hover .home-cat-icon {
  background: linear-gradient(135deg, rgba(21,93,252,0.15), rgba(8,169,244,0.15));
  transform: scale(1.1);
}
.home-cat-name {
  font-size: 13.5px;
  font-weight: 600;
  color: #1A202C;
  margin-bottom: 3px;
}
.home-cat-count {
  font-size: 11px;
  color: #718096;
}
.home-cat-more { border-style: dashed; }
.home-cat-more:hover { border-color: #08A9F4; }

/* 主体双栏 */
.home-classified-layout {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 24px;
  margin-bottom: 32px;
}
.home-classified-main { min-width: 0; }
.home-classified-side { min-width: 0; }

.sub-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}
.sub-section-title {
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  color: #1A202C;
}
.sub-section-tabs {
  display: flex;
  gap: 2px;
}
.sub-section-tabs a {
  padding: 4px 12px;
  font-size: 12.5px;
  color: #718096;
  text-decoration: none;
  border-radius: 999px;
  transition: all .2s;
}
.sub-section-tabs a:hover { color: #155DFC; }
.sub-section-tabs a.active {
  background: #155DFC;
  color: #fff;
  font-weight: 600;
}

/* 分类信息列表 */
.home-classified-list {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0,0,0,0.05);
}
.hcl-item {
  display: flex;
  gap: 16px;
  padding: 18px 22px;
  border-bottom: 1px solid #f0f2f5;
  text-decoration: none;
  color: inherit;
  transition: background .2s;
  align-items: center;
}
.hcl-item:last-child { border-bottom: none; }
.hcl-item:hover { background: #fafbfc; }

.hcl-price {
  min-width: 96px;
  text-align: center;
  padding: 8px 10px;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 800;
  color: #fff;
  flex-shrink: 0;
  letter-spacing: -0.3px;
}
.price-rent { background: linear-gradient(135deg, #155DFC, #08A9F4); }
.price-job { background: linear-gradient(135deg, #38A169, #48BB78); }
.price-sale { background: linear-gradient(135deg, #E53E3E, #FC8181); }
.price-service { background: linear-gradient(135deg, #805AD5, #9F7AEA); }
.price-used { background: linear-gradient(135deg, #D69E2E, #ECC94B); }
.price-free { background: linear-gradient(135deg, #319795, #4FD1C5); }

.hcl-content {
  flex: 1;
  min-width: 0;
}
.hcl-title {
  margin: 0 0 5px 0;
  font-size: 15px;
  font-weight: 600;
  color: #1A202C;
  display: flex;
  align-items: center;
  gap: 6px;
}
.hcl-item:hover .hcl-title { color: #155DFC; }
.hcl-tag {
  display: inline-block;
  padding: 1px 7px;
  font-size: 11px;
  border-radius: 3px;
  font-weight: 700;
  flex-shrink: 0;
}
.hcl-meta {
  display: flex;
  gap: 16px;
  font-size: 12.5px;
  color: #718096;
  margin-bottom: 6px;
  flex-wrap: wrap;
}
.hcl-footer {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: #A0AEC0;
}
.hcl-footer span:last-child {
  color: #718096;
}

/* 侧边栏发布框 */
.side-publish-box {
  background: linear-gradient(135deg, #FF6B35 0%, #FF8C42 100%);
  border-radius: 12px;
  padding: 24px 20px;
  text-align: center;
  color: #fff;
  margin-bottom: 20px;
  position: relative;
  overflow: hidden;
}
.side-publish-box::before {
  content: '';
  position: absolute;
  top: -30px;
  right: -30px;
  width: 120px;
  height: 120px;
  background: rgba(255,255,255,0.1);
  border-radius: 50%;
}
.spb-title {
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 4px;
  position: relative;
}
.spb-desc {
  font-size: 12.5px;
  opacity: .9;
  margin-bottom: 16px;
  position: relative;
}
.spb-btn {
  display: block;
  width: 100%;
  padding: 11px 0;
  background: #fff;
  color: #FF6B35 !important;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
  transition: all .2s;
  position: relative;
  letter-spacing: 1px;
}
.spb-btn:hover {
  box-shadow: 0 6px 16px rgba(0,0,0,0.15);
}
.spb-stats {
  margin-top: 12px;
  font-size: 11.5px;
  opacity: .85;
  position: relative;
}

/* 热门排行 */
.side-rank-box {
  background: #fff;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.05);
}
.srb-title {
  font-size: 15px;
  font-weight: 700;
  color: #1A202C;
  margin: 0 0 14px 0;
  padding-bottom: 10px;
  border-bottom: 1px solid #f0f2f5;
}
.rank-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.rank-list li {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 0;
  font-size: 13px;
  border-bottom: 1px dashed #f0f2f5;
}
.rank-list li:last-child { border-bottom: none; }
.rank-no {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  background: #F7FAFC;
  color: #718096;
  font-size: 11px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.rank-no.rank-top {
  background: linear-gradient(135deg, #FF6B35, #FF8C42);
  color: #fff;
}
.rank-list li:nth-child(2) .rank-no.rank-top {
  background: linear-gradient(135deg, #FFB020, #FFD166);
}
.rank-list li:nth-child(3) .rank-no.rank-top {
  background: linear-gradient(135deg, #D69E2E, #ECC94B);
}
.rank-name {
  flex: 1;
  color: #4A5568;
  cursor: pointer;
}
.rank-list li:hover .rank-name { color: #155DFC; }
.rank-count {
  font-size: 11px;
  color: #A0AEC0;
  flex-shrink: 0;
}

/* 四大特色 */
.home-classified-features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.hcf-item {
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 24px 20px;
  text-align: center;
  transition: all .3s;
}
.hcf-item:hover {
  border-color: #155DFC;
  box-shadow: 0 12px 28px rgba(21,93,252,0.12);
}
.hcf-icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(21,93,252,0.08), rgba(8,169,244,0.08));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  margin: 0 auto 12px;
}
.hcf-item h4 {
  margin: 0 0 6px 0;
  font-size: 16px;
  font-weight: 700;
  color: #1A202C;
}
.hcf-item p {
  margin: 0;
  font-size: 13px;
  color: #718096;
  line-height: 1.6;
}

/* 响应式 */
@media (max-width: 1024px) {
  .home-cat-grid { grid-template-columns: repeat(6, 1fr); }
  .home-classified-layout { grid-template-columns: 1fr; }
  .home-classified-side {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
  .home-classified-features { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .home-cat-grid { grid-template-columns: repeat(4, 1fr); }
  .home-classified-side { grid-template-columns: 1fr; }
  .hcl-price {
    min-width: 80px;
    font-size: 13px;
    padding: 6px 8px;
  }
  .hcl-meta { font-size: 11.5px; gap: 10px; }
  .sub-section-head { flex-wrap: wrap; gap: 8px; }
  .sub-section-tabs { order: 2; width: 100%; }
}
@media (max-width: 480px) {
  .home-cat-grid { grid-template-columns: repeat(3, 1fr); }
  .home-classified-features { grid-template-columns: 1fr; }
  .hcl-item { flex-direction: column; align-items: flex-start; gap: 10px; }
  .hcl-price { width: 100%; }
}


/* ========== 品牌板块 三合一 Tab 样式 ========== */
.brand-tabbed-section .section-actions {
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
}
.main-tabs {
  display: flex;
  gap: 4px;
  background: #F7FAFC;
  padding: 4px;
  border-radius: 10px;
}
.main-tab {
  padding: 8px 20px;
  font-size: 14px;
  font-weight: 600;
  color: #718096;
  text-decoration: none;
  border-radius: 8px;
  transition: all .25s;
  white-space: nowrap;
  cursor: pointer;
}
.main-tab:hover {
  color: #155DFC;
  background: rgba(255,255,255,0.6);
}
.main-tab.active {
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  box-shadow: 0 4px 12px rgba(21, 93, 252, 0.3);
}

.sub-tabs-row {
  display: flex;
  gap: 6px;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid #f0f2f5;
}
.sub-tab {
  padding: 6px 14px;
  font-size: 13px;
  color: #4A5568;
  text-decoration: none;
  border-radius: 6px;
  background: #F7FAFC;
  transition: all .2s;
}
.sub-tab:hover {
  background: #EBF4FF;
  color: #155DFC;
}
.sub-tab.active {
  background: #155DFC;
  color: #fff;
  font-weight: 600;
}

/* 三合一内容面板容器 */
.brand-tabbed-section .brand-ai-grid { margin-top: 0; }

@media (max-width: 768px) {
  .brand-tabbed-section .section-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .brand-tabbed-section .section-actions {
    align-items: flex-start;
    width: 100%;
  }
  .main-tabs { width: 100%; }
  .main-tab {
    flex: 1;
    text-align: center;
    padding: 8px 10px;
    font-size: 13px;
  }
  .sub-tabs-row {
    flex-wrap: wrap;
  }
}


/* ========== 品牌栏目子分类导航（品牌/加盟/门店三合一） ========== */
.brand-sub-nav {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin: 24px 0 28px;
}
.bsn-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  text-decoration: none;
  color: inherit;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}
.bsn-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: linear-gradient(180deg, #155DFC, #08A9F4);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.bsn-item:hover {
  border-color: #155DFC;
  box-shadow: 0 8px 20px rgba(21, 93, 252, 0.12);
}
.bsn-item:hover::before { opacity: 1; }
.bsn-item.active {
  border-color: #155DFC;
  background: linear-gradient(135deg, rgba(21,93,252,0.04), rgba(8,169,244,0.04));
  box-shadow: 0 4px 12px rgba(21, 93, 252, 0.1);
}
.bsn-item.active::before { opacity: 1; }
.bsn-icon {
  font-size: 28px;
  flex-shrink: 0;
}
.bsn-text {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  flex: 1;
}
.bsn-count {
  font-size: 12px;
  color: var(--color-text-muted);
  background: rgba(113, 128, 150, 0.1);
  padding: 4px 10px;
  border-radius: 999px;
  white-space: nowrap;
  font-weight: 500;
}
.bsn-item.active .bsn-count {
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
}

@media (max-width: 768px) {
  .brand-sub-nav {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .bsn-item,
  .bsn-item:nth-child(4),
  .bsn-item:nth-child(5) { grid-column: auto; }
  .bsn-item {
    padding: 12px 16px;
  }
  .bsn-icon { font-size: 22px; }
  .bsn-text { font-size: 14px; }
}


/* ========== 分类信息子导航（本地分类/新房/二手房 三合一） ========== */
.classified-sub-nav {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin: -28px 0 24px;
  position: relative;
  z-index: 2;
  max-width: 640px;
}
.csn-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 18px 20px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  text-decoration: none;
  color: inherit;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}
.csn-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: linear-gradient(180deg, #155DFC, #08A9F4);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.csn-item:hover {
  border-color: #155DFC;
  box-shadow: 0 8px 20px rgba(21, 93, 252, 0.15);
}
.csn-item:hover::before { opacity: 1; }
.csn-item.active {
  border-color: #155DFC;
  background: linear-gradient(135deg, rgba(21,93,252,0.04), rgba(8,169,244,0.04));
  box-shadow: 0 4px 12px rgba(21, 93, 252, 0.1);
}
.csn-item.active::before { opacity: 1; }
.csn-icon { font-size: 28px; flex-shrink: 0; }
.csn-text {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  flex: 1;
}
.csn-count {
  font-size: 12px;
  color: var(--color-text-muted);
  background: rgba(113, 128, 150, 0.1);
  padding: 4px 10px;
  border-radius: 999px;
  white-space: nowrap;
  font-weight: 500;
}
.csn-item.active .csn-count {
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
}

@media (max-width: 768px) {
  .classified-sub-nav {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: -20px;
  }
  .csn-item { padding: 14px 16px; }
  .csn-icon { font-size: 22px; }
  .csn-text { font-size: 14px; }
}


/* ========== 分类信息全品类导航（16列 企业主导向） ========== */
.category-nav-16 {
  grid-template-columns: repeat(8, 1fr);
  gap: 16px;
}
.category-nav-16 .cat-nav-item {
  padding: 18px 12px;
  border-radius: 10px;
  text-align: center;
  background: #fff;
  border: 1px solid var(--color-border);
  transition: all 0.3s ease;
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.category-nav-16 .cat-icon {
  font-size: 28px;
  width: 52px;
  height: 52px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(21,93,252,0.06), rgba(8,169,244,0.08));
  flex-shrink: 0;
  transition: all 0.3s ease;
}
.category-nav-16 .cat-nav-item h3 {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-primary);
}
.category-nav-16 .cat-nav-item p {
  margin: 0;
  font-size: 11px;
  color: var(--color-text-muted);
  line-height: 1.4;
}
.category-nav-16 .cat-nav-item:hover {
  border-color: #155DFC;
  box-shadow: 0 8px 20px rgba(21, 93, 252, 0.12);
}
.category-nav-16 .cat-nav-item:hover .cat-icon {
  background: linear-gradient(135deg, rgba(21,93,252,0.15), rgba(8,169,244,0.2));
  transform: scale(1.08);
}

@media (max-width: 1024px) {
  .category-nav-16 {
    grid-template-columns: repeat(6, 1fr);
  }
}
@media (max-width: 768px) {
  .category-nav-16 {
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
  }
  .category-nav-16 .cat-nav-item {
    padding: 12px 6px;
  }
  .category-nav-16 .cat-icon {
    font-size: 22px;
    width: 42px;
    height: 42px;
  }
  .category-nav-16 .cat-nav-item h3 {
    font-size: 12px;
  }
  .category-nav-16 .cat-nav-item p {
    display: none;
  }
}

/* 企业主专区横幅 */
.business-banner {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: center;
  padding: 24px 28px;
  background: linear-gradient(135deg, rgba(21,93,252,0.06) 0%, rgba(8,169,244,0.08) 100%);
  border: 1px solid rgba(21, 93, 252, 0.15);
  border-radius: 14px;
  margin: 24px 0;
}
.business-banner-content h3 {
  margin: 0 0 6px 0;
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  display: flex;
  align-items: center;
  gap: 8px;
}
.business-banner-content h3 .badge-premium {
  font-size: 11px;
  font-weight: 700;
  padding: 2px 8px;
  background: linear-gradient(135deg, #D69E2E, #E6B03A);
  color: #fff;
  border-radius: 4px;
  letter-spacing: 0.5px;
}
.business-banner-content p {
  margin: 0;
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
}
.business-banner-services {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.business-banner-services a {
  font-size: 13px;
  color: var(--color-text-secondary);
  text-decoration: none;
  transition: color 0.2s;
  white-space: nowrap;
}
.business-banner-services a:hover {
  color: #155DFC;
}
.business-banner-btn {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
}
.biz-btn {
  padding: 10px 20px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: all 0.2s ease;
  white-space: nowrap;
}
.biz-btn-primary {
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  border: none;
  box-shadow: 0 4px 12px rgba(21, 93, 252, 0.25);
}
.biz-btn-primary:hover {
  box-shadow: 0 6px 18px rgba(21, 93, 252, 0.35);
}
.biz-btn-outline {
  background: #fff;
  color: #155DFC;
  border: 1px solid #155DFC;
}
.biz-btn-outline:hover {
  background: rgba(21, 93, 252, 0.05);
}

@media (max-width: 768px) {
  .business-banner {
    grid-template-columns: 1fr;
    padding: 18px 16px;
    gap: 14px;
  }
  .business-banner-btn {
    width: 100%;
  }
  .business-banner-btn .biz-btn {
    flex: 1;
    justify-content: center;
  }
}


/* ========== 分类信息页 - 列表网风格 ========== */
.leju-header {
  background: #f5f7fa;
  border-bottom: 1px solid #e4e7ed;
  font-size: 12px;
  color: #666;
}
.leju-topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 36px;
}
.leju-city-switch {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #333;
}
.leju-city-switch .city-icon { font-size: 14px; }
.leju-city-switch .city-name {
  font-weight: 600;
  color: #333;
}
.leju-city-switch .city-arrow {
  font-size: 10px;
  color: #999;
}
.city-switch-link {
  color: #155DFC;
  text-decoration: none;
  margin-left: 4px;
}
.city-switch-link:hover { text-decoration: underline; }

.leju-user-actions {
  display: flex;
  align-items: center;
  gap: 0;
}
.leju-user-actions a {
  color: #666;
  text-decoration: none;
  padding: 0 8px;
}
.leju-user-actions a:hover { color: #155DFC; }
.leju-user-actions .sep {
  color: #ddd;
  padding: 0 2px;
}

/* 主导航栏 */
.leju-main-nav {
  background: #fff;
  border-bottom: 2px solid #FF6B35;
  position: sticky;
  top: 0;
  z-index: 100;
  box-shadow: 0 2px 4px rgba(0,0,0,0.04);
}
.leju-main-nav .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 50px;
}
.leju-nav-tabs {
  display: flex;
  align-items: center;
  gap: 0;
  flex: 1;
}
.leju-nav-tab {
  padding: 0 18px;
  height: 50px;
  line-height: 50px;
  font-size: 15px;
  font-weight: 600;
  color: #333;
  text-decoration: none;
  transition: color .2s;
  white-space: nowrap;
  position: relative;
}
.leju-nav-tab:hover { color: #FF6B35; }
.leju-nav-tab.active {
  color: #fff;
  background: #FF6B35;
}
.leju-nav-tab.active::after { display: none; }

.leju-promo {
  display: flex;
  gap: 16px;
}
.promo-item {
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  padding: 4px 12px;
  border-radius: 4px;
  position: relative;
}
.promo-new { color: #FF6B35; }
.promo-gold {
  color: #B8860B;
}
.promo-new::before {
  content: 'NEW';
  position: absolute;
  top: -8px;
  right: -8px;
  background: #FF3B30;
  color: #fff;
  font-size: 10px;
  padding: 1px 5px;
  border-radius: 3px;
  font-weight: 800;
}

/* 6大品类图标 */
.leju-banner {
  background: #fff;
  padding: 28px 0 8px;
  border-bottom: 1px solid #eee;
}
.leju-cat-icons {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0;
}
.leju-cat-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 12px 8px;
  text-decoration: none;
  color: inherit;
  border-radius: 8px;
  transition: all .2s;
}
.leju-cat-icon:hover {
  background: #fff5f0;
  }
.lci-icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, #fff5f0, #ffe8dc);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  margin-bottom: 10px;
  transition: all .2s;
}
.leju-cat-icon:hover .lci-icon {
  background: linear-gradient(135deg, #FFE8DC, #FFD0B8);
  transform: scale(1.1);
}
.lci-name {
  font-size: 14px;
  font-weight: 700;
  color: #333;
  margin-bottom: 4px;
}
.lci-sub {
  font-size: 11.5px;
  color: #999;
  text-align: center;
}

/* 主体 */
.leju-content {
  background: #f5f7fa;
  padding: 20px 0 40px;
}
.leju-grid-4 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 12px;
}

/* 列 */
.leju-col {
  background: #fff;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  padding: 0;
  min-height: 600px;
}
.leju-col-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-bottom: 1px solid #e4e7ed;
  background: #fafafa;
}
.leju-col-header .col-icon { font-size: 20px; }
.leju-col-header h3 {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  color: #333;
}

/* 子分类块 */
.leju-subcat-block {
  padding: 10px 14px;
  border-bottom: 1px dashed #eee;
}
.leju-subcat-block:last-child { border-bottom: none; }
.leju-subcat-block h4 {
  margin: 0 0 8px 0;
  font-size: 13px;
  font-weight: 700;
  color: #FF6B35;
  padding-bottom: 4px;
  border-bottom: 1px solid #f0f0f0;
}
.leju-subcat-list dl {
  margin: 0 0 6px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  font-size: 12px;
  line-height: 1.8;
}
.leju-subcat-list dt {
  flex-shrink: 0;
  margin-right: 8px;
}
.leju-subcat-list dt a {
  color: #333;
  font-weight: 600;
  text-decoration: none;
}
.leju-subcat-list dt a:hover { color: #FF6B35; }
.leju-subcat-list dd {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0 6px;
  flex: 1;
  min-width: 0;
}
.leju-subcat-list dd a {
  color: #666;
  text-decoration: none;
  white-space: nowrap;
}
.leju-subcat-list dd a {
  display: inline-block;
  padding: 2px 6px;
  border-radius: 4px;
  transition: background 0.2s ease, color 0.2s ease;
}
.leju-subcat-list dd a:hover {
  color: #FF6B35;
  background: rgba(255,107,53,0.08);
  text-decoration: none;
}

/* 底部承诺 */
.leju-commitments {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  background: #fff;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  margin-top: 24px;
  padding: 20px 0;
}
.lc-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 24px;
  border-right: 1px solid #f0f0f0;
}
.lc-item:last-child { border-right: none; }
.lc-icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: linear-gradient(135deg, #fff5f0, #ffe8dc);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}
.lc-item h4 {
  margin: 0 0 3px 0;
  font-size: 14px;
  font-weight: 700;
  color: #333;
}
.lc-item p {
  margin: 0;
  font-size: 12px;
  color: #999;
}

/* 响应式 */
@media (max-width: 1024px) {
  .leju-grid-4 {
    grid-template-columns: repeat(2, 1fr);
  }
  .leju-commitments {
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
  }
  .lc-item { border-right: none; border-bottom: 1px solid #f0f0f0; padding: 16px; }
  .leju-nav-tab { padding: 0 12px; font-size: 14px; }
  .leju-cat-icons { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
  .leju-grid-4 {
    grid-template-columns: 1fr;
  }
  .leju-commitments {
    grid-template-columns: 1fr;
  }
  .leju-nav-tabs {
    overflow-x: auto;
    flex-wrap: nowrap;
    scrollbar-width: none;
  }
  .leju-nav-tabs::-webkit-scrollbar { display: none; }
  .leju-nav-tab {
    padding: 0 14px;
    font-size: 13px;
    flex-shrink: 0;
  }
  .leju-cat-icons { grid-template-columns: repeat(3, 1fr); }
  .lci-icon { width: 48px; height: 48px; font-size: 26px; }
  .lci-name { font-size: 13px; }
  .lci-sub { display: none; }
  .leju-promo { display: none; }
  .leju-user-actions { display: none; }
}


/* ========== 分类频道统一蓝色风格（与全站协调） ========== */
.classified-channel-nav {
  background: #fff;
  border-bottom: 1px solid #E2E8F0;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  position: sticky;
  top: 0;
  z-index: 90;
}
.classified-channel-nav .container {
  display: flex;
  align-items: center;
  height: 56px;
  gap: 24px;
}
.ccn-left {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}
.ccn-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 18px;
  font-weight: 800;
  color: #155DFC;
  text-decoration: none;
  letter-spacing: 0.5px;
}
.ccn-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}
.ccn-city {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  background: #F7FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  font-size: 13px;
  color: #4A5568;
  cursor: pointer;
  transition: all .2s;
}
.ccn-city:hover {
  border-color: #155DFC;
  color: #155DFC;
}
.ccn-city-name { font-weight: 600; }
.ccn-city-arrow {
  font-size: 10px;
  color: #718096;
  margin-left: 2px;
}

.ccn-tabs {
  display: flex;
  gap: 4px;
  flex: 1;
  justify-content: center;
  min-width: 0;
}
.ccn-tab {
  padding: 6px 14px;
  font-size: 14px;
  font-weight: 500;
  color: #4A5568;
  text-decoration: none;
  border-radius: 6px;
  transition: all .2s;
  white-space: nowrap;
}
.ccn-tab:hover {
  background: #EBF4FF;
  color: #155DFC;
}
.ccn-tab.active {
  color: #155DFC;
  font-weight: 700;
  background: rgba(21, 93, 252, 0.08);
}

.ccn-right {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
}
.ccn-btn {
  padding: 7px 18px;
  font-size: 13px;
  font-weight: 600;
  border-radius: 6px;
  text-decoration: none;
  transition: all .2s;
  white-space: nowrap;
}
.ccn-btn-outline {
  border: 1px solid #CBD5E0;
  color: #4A5568;
  background: #fff;
}
.ccn-btn-outline:hover {
  border-color: #155DFC;
  color: #155DFC;
}
.ccn-btn-primary {
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  box-shadow: 0 2px 8px rgba(21, 93, 252, 0.2);
}
.ccn-btn-primary:hover {
  box-shadow: 0 4px 12px rgba(21, 93, 252, 0.3);
}

/* 分类图标区（蓝色系） */
.classified-page .leju-banner {
  background: linear-gradient(135deg, #f8fafc 0%, #eef5ff 100%);
  padding: 32px 0 28px;
  border-bottom: 1px solid #E2E8F0;
}
.classified-page .leju-cat-icons {
  grid-template-columns: repeat(9, 1fr);
  gap: 12px;
}
.classified-page .leju-cat-icon {
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 16px 8px 14px;
}
.classified-page .leju-cat-icon:hover {
  border-color: #155DFC;
  background: #fff;
  box-shadow: 0 6px 16px rgba(21, 93, 252, 0.12);
}
.classified-page .lci-icon {
  width: 52px;
  height: 52px;
  background: linear-gradient(135deg, rgba(21,93,252,0.08), rgba(8,169,244,0.08));
  border-radius: 12px;
  margin-bottom: 10px;
}
.classified-page .leju-cat-icon:hover .lci-icon {
  background: linear-gradient(135deg, rgba(21,93,252,0.15), rgba(8,169,244,0.15));
}
.classified-page .lci-name {
  font-size: 13.5px;
  color: #1A202C;
  font-weight: 600;
}
.classified-page .lci-sub {
  font-size: 11px;
  color: #718096;
  margin-top: 2px;
}

/* 主体区域（蓝色风格） */
.classified-page .leju-content {
  background: #F7FAFC;
  padding: 24px 0 40px;
}
.classified-page .leju-grid-4 {
  gap: 16px;
}
.classified-page .leju-col {
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0,0,0,0.03);
  transition: box-shadow .25s;
}
.classified-page .leju-col:hover {
  box-shadow: 0 4px 16px rgba(21, 93, 252, 0.08);
}
.classified-page .leju-col-header {
  background: linear-gradient(135deg, rgba(21,93,252,0.06), rgba(8,169,244,0.06));
  border-bottom: 2px solid #155DFC;
  padding: 12px 16px;
}
.classified-page .leju-col-header h3 {
  color: #155DFC;
  font-size: 15px;
  font-weight: 700;
}
.classified-page .leju-subcat-block {
  padding: 12px 16px;
  border-bottom: 1px solid #F0F4F8;
}
.classified-page .leju-subcat-block:last-child { border-bottom: none; }
.classified-page .leju-subcat-block h4 {
  color: #155DFC;
  font-size: 13px;
  font-weight: 700;
  border-bottom: 1px solid #EBF4FF;
  padding-bottom: 6px;
  margin-bottom: 8px;
}
.classified-page .leju-subcat-list dt a {
  color: #2D3748;
  font-weight: 600;
}
.classified-page .leju-subcat-list dt a:hover {
  color: #155DFC;
}
.classified-page .leju-subcat-list dd a {
  color: #4A5568;
}
.classified-page .leju-subcat-list dd a {
  display: inline-block;
  padding: 2px 6px;
  border-radius: 4px;
  transition: background 0.2s ease, color 0.2s ease;
}
.classified-page .leju-subcat-list dd a:hover {
  color: #155DFC;
  background: rgba(21,93,252,0.08);
}

/* 服务承诺（蓝色） */
.classified-page .leju-commitments {
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 24px 0;
  margin-top: 32px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.03);
}
.classified-page .lc-icon {
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, rgba(21,93,252,0.1), rgba(8,169,244,0.1));
  border-radius: 12px;
}
.classified-page .lc-item {
  border-right: 1px solid #EDF2F7;
}
.classified-page .lc-item h4 { color: #1A202C; }
.classified-page .lc-item p { color: #718096; }

/* ===== 响应式：分类频道 ===== */
@media (max-width: 1024px) {
  .classified-channel-nav .container { gap: 12px; }
  .ccn-tabs { justify-content: flex-start; overflow-x: auto; scrollbar-width: none; }
  .ccn-tabs::-webkit-scrollbar { display: none; }
  .ccn-tab { flex-shrink: 0; }
  .ccn-city { display: none; }
  .classified-page .leju-cat-icons { grid-template-columns: repeat(5, 1fr); }
  .classified-page .leju-grid-4 { grid-template-columns: repeat(2, 1fr); }
  .classified-page .leju-commitments { grid-template-columns: repeat(3, 1fr); }
  .classified-page .lc-item {
    border-right: none;
    border-bottom: 1px solid #EDF2F7;
  }
}
@media (max-width: 768px) {
  .classified-channel-nav .container { height: 50px; gap: 8px; }
  .ccn-title span:not(.ccn-icon) { display: none; }
  .ccn-btn-outline { display: none; }
}

/* ========== 分类信息页V2 完整优化 ========== */

/* 顶部Hero区 */
/* ========== 分类信息页Hero区V2 精致优化 ========== */
.classified-hero {
  background: linear-gradient(135deg, #0F2440 0%, #1A365D 50%, #2A4A7D 100%);
  padding: 56px 0 72px;
  position: relative;
  overflow: hidden;
}
.classified-hero::before {
  content: '';
  position: absolute;
  top: -80px; right: -80px;
  width: 480px; height: 480px;
  background: radial-gradient(circle, rgba(214,158,46,0.15) 0%, transparent 65%);
  border-radius: 50%;
  pointer-events: none;
  animation: heroFloat 8s ease-in-out infinite;
}
.classified-hero::after {
  content: '';
  position: absolute;
  bottom: -120px; left: -60px;
  width: 420px; height: 420px;
  background: radial-gradient(circle, rgba(26,54,93,0.6) 0%, transparent 65%);
  border-radius: 50%;
  pointer-events: none;
  animation: heroFloat 10s ease-in-out infinite reverse;
}
@keyframes heroFloat {
  0%, 100% { transform: translate(0,0); }
  50% { transform: translate(20px, -20px); }
}
.classified-hero-inner {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 36px;
  align-items: center;
  position: relative;
  z-index: 1;
}
.classified-hero-left { flex: 1; }

/* 城市定位 - 精致胶囊 */
.classified-city {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,0.12);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  padding: 7px 16px 7px 12px;
  border-radius: 999px;
  color: #fff;
  font-size: 13px;
  margin-bottom: 20px;
  border: 1px solid rgba(255,255,255,0.22);
  box-shadow: 0 2px 12px rgba(0,0,0,0.08);
  transition: all 0.3s;
  cursor: pointer;
}
.classified-city:hover {
  background: rgba(255,255,255,0.18);
  }
.city-icon {
  font-size: 15px;
  width: 22px; height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(214,158,46,0.25);
  border-radius: 50%;
}
.city-name { font-weight: 600; letter-spacing: 0.3px; }
.city-arrow { opacity: 0.75; font-size: 10px; margin-left: 2px; }
.city-badge {
  background: linear-gradient(135deg, rgba(214,158,46,0.3), rgba(230,176,58,0.2));
  color: #FFD76E;
  padding: 2px 10px;
  border-radius: 999px;
  font-size: 11px;
  margin-left: 6px;
  font-weight: 500;
  border: 1px solid rgba(255,215,110,0.35);
}

/* Hero标题 */
.classified-hero-title {
  color: #fff;
  font-size: 38px;
  font-weight: 700;
  margin: 0 0 14px;
  letter-spacing: -0.5px;
  line-height: 1.25;
  text-shadow: 0 2px 20px rgba(0,0,0,0.1);
}
.classified-hero-title .accent-text {
  background: linear-gradient(135deg, #FFD76E 0%, #E6B03A 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.classified-hero-sub {
  color: rgba(255,255,255,0.82);
  font-size: 15px;
  margin: 0 0 28px;
  line-height: 1.7;
}

/* 搜索框 - 天眼查胶囊风 精致版 */
.classified-search-box {
  background: #fff;
  border-radius: 16px;
  padding: 18px 22px 16px;
  box-shadow: 0 20px 50px rgba(26,54,93,0.28), 0 2px 6px rgba(0,0,0,0.06);
  border: 1px solid rgba(255,255,255,0.6);
  transition: box-shadow 0.3s;
}
.classified-search-box:hover {
  box-shadow: 0 24px 56px rgba(26,54,93,0.32), 0 2px 6px rgba(0,0,0,0.06);
}
.csb-tabs {
  display: flex;
  gap: 2px;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid #EDF2F7;
}
.csb-tab {
  padding: 5px 14px;
  font-size: 14px;
  color: #718096;
  cursor: pointer;
  border-radius: 6px;
  font-weight: 500;
  transition: all 0.2s;
  position: relative;
}
.csb-tab:hover { color: #155DFC; background: #F0F5FF; }
.csb-tab.active {
  color: #155DFC;
  background: linear-gradient(135deg, rgba(21,93,252,0.08), rgba(8,169,244,0.08));
  font-weight: 600;
}
.csb-tab.active::after {
  content: '';
  position: absolute;
  bottom: -13px; left: 50%;
  transform: translateX(-50%);
  width: 24px; height: 3px;
  background: linear-gradient(90deg, #155DFC, #08A9F4);
  border-radius: 2px;
}
.csb-input-wrap {
  display: flex;
  gap: 12px;
  align-items: center;
}
.csb-input {
  flex: 1;
  border: 1.5px solid #E2E8F0;
  outline: none;
  font-size: 15px;
  padding: 11px 16px;
  background: #F7FAFC;
  border-radius: 10px;
  color: #1A202C;
  font-family: inherit;
  transition: all 0.2s;
}
.csb-input:focus {
  background: #fff;
  border-color: #155DFC;
  box-shadow: 0 0 0 3px rgba(21,93,252,0.1);
}
.csb-input::placeholder { color: #A0AEC0; }
.csb-btn {
  background: linear-gradient(135deg, #155DFC 0%, #08A9F4 100%);
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 11px 28px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
  transition: all 0.2s;
  font-family: inherit;
  white-space: nowrap;
  box-shadow: 0 4px 12px rgba(21,93,252,0.3);
}
.csb-btn:hover {
  box-shadow: 0 6px 20px rgba(21,93,252,0.4);
}
.csb-btn:active { transform: translateY(0); }
.csb-btn-icon { font-size: 14px; }
.csb-hot {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
  font-size: 12.5px;
}
.hot-label {
  color: #A0AEC0;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.hot-label::before {
  content: '🔥';
  font-size: 11px;
}
.csb-hot a {
  color: #4A5568;
  text-decoration: none;
  transition: all 0.2s;
  padding: 2px 8px;
  border-radius: 4px;
  background: #F7FAFC;
}
.csb-hot a:hover {
  color: #155DFC;
  background: #F0F5FF;
}

/* 右侧发布卡 - 精致玻璃卡 */
.classified-hero-right {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.post-card {
  background: #fff;
  border-radius: 16px;
  padding: 24px;
  text-align: center;
  box-shadow: 0 20px 50px rgba(26,54,93,0.25), 0 2px 6px rgba(0,0,0,0.06);
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,0.7);
}
.post-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, #D69E2E, #E6B03A, #D69E2E);
}
.post-card-tag {
  position: absolute;
  top: 12px; right: -28px;
  background: linear-gradient(135deg, #E53E3E, #C53030);
  color: #fff;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 32px;
  transform: rotate(35deg);
  letter-spacing: 1px;
}
.post-card-title {
  font-size: 22px;
  font-weight: 700;
  color: #1A202C;
  margin: 4px 0 6px;
  letter-spacing: -0.3px;
}
.post-card-desc {
  font-size: 13px;
  color: #718096;
  margin: 0 0 18px;
  line-height: 1.6;
}
.post-card-btn {
  width: 100%;
  background: linear-gradient(135deg, #D69E2E 0%, #E6B03A 100%);
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 13px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.25s;
  font-family: inherit;
  box-shadow: 0 4px 12px rgba(214,158,46,0.35);
  letter-spacing: 0.5px;
}
.post-card-btn:hover { box-shadow: 0 8px 20px rgba(214,158,46,0.4);
}
.post-card-btn:active { transform: translateY(0); }
.post-card-stats {
  display: flex;
  justify-content: space-around;
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px dashed #E2E8F0;
}
.pcs-item {
  flex: 1;
  text-align: center;
  position: relative;
}
.pcs-item + .pcs-item::before {
  content: '';
  position: absolute;
  left: 0; top: 50%;
  transform: translateY(-50%);
  height: 28px;
  width: 1px;
  background: #E2E8F0;
}
.pcs-num {
  font-size: 22px;
  font-weight: 700;
  background: linear-gradient(135deg, #155DFC 0%, #08A9F4 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1.2;
}
.pcs-label {
  font-size: 12px;
  color: #718096;
  margin-top: 4px;
  font-weight: 500;
}

/* AI信源徽章 - 精致玻璃风 */
.ai-classified-badge {
  display: flex;
  align-items: center;
  gap: 14px;
  background: rgba(255,255,255,0.1);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,0.22);
  border-radius: 14px;
  padding: 14px 18px;
  color: #fff;
  transition: all 0.3s;
  position: relative;
  overflow: hidden;
}
.ai-classified-badge::before {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent);
  transition: left 0.6s;
}
.ai-classified-badge:hover::before { left: 100%; }
.ai-classified-badge:hover { border-color: rgba(255,255,255,0.35);
  background: rgba(255,255,255,0.14);
}
.ai-icon {
  font-size: 32px;
  width: 44px; height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(214,158,46,0.3), rgba(230,176,58,0.2));
  border-radius: 12px;
  flex-shrink: 0;
  border: 1px solid rgba(255,215,110,0.3);
}
.ai-badge-text strong {
  display: block;
  font-size: 14px;
  margin-bottom: 3px;
  letter-spacing: 0.3px;
}
.ai-badge-text p {
  font-size: 12px;
  color: rgba(255,255,255,0.82);
  margin: 0;
  line-height: 1.4;
}

/* 响应式 Hero */
@media (max-width: 1023px) {
  .classified-hero-inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .classified-hero-right {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .post-card { flex: 1 1 300px; }
  .ai-classified-badge { flex: 1 1 300px; }
  .classified-hero-title { font-size: 32px; }
}
@media (max-width: 767px) {
  .classified-hero { padding: 36px 0 48px; }
  .classified-hero-title { font-size: 26px; }
  .classified-hero-sub { font-size: 14px; margin-bottom: 20px; }
  .classified-search-box { padding: 14px 16px 12px; }
  .csb-input-wrap { flex-direction: column; gap: 10px; }
  .csb-input, .csb-btn { width: 100%; justify-content: center; }
  .classified-hero-right { flex-direction: column; }
  .post-card, .ai-classified-badge { flex: 1 1 100%; }
  .csb-tab { padding: 4px 10px; font-size: 13px; }
}

/* 9大分类总览 */
.classified-overview {
  padding: 32px 0 8px;
  background: #F5F7FA;
}
.overview-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 12px;
}
.overview-card {
  background: #fff;
  border-radius: 10px;
  padding: 16px 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: inherit;
  transition: all 0.3s;
  border: 1px solid #E2E8F0;
  position: relative;
  text-align: center;
}
.overview-card:hover { box-shadow: 0 8px 24px rgba(21,93,252,0.12);
  border-color: #155DFC;
}
.ov-icon-img { background: #EDF2F7; padding: 0; }
.ov-icon-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
  display: block;
}
.ov-icon-blue { background: linear-gradient(135deg, #3182CE, #155DFC); }
.ov-icon-orange { background: linear-gradient(135deg, #F6AD55, #E53E3E); }
.ov-icon-green { background: linear-gradient(135deg, #48BB78, #38A169); }
.ov-icon-purple { background: linear-gradient(135deg, #9F7AEA, #6B46C1); }
.ov-icon-red { background: linear-gradient(135deg, #FC8181, #C53030); }
.ov-icon-teal { background: linear-gradient(135deg, #38B2AC, #2C7A7B); }
.ov-icon-yellow { background: linear-gradient(135deg, #F6E05E, #D69E2E); }
.ov-icon-pink { background: linear-gradient(135deg, #F687B3, #B83280); }
.ov-icon-indigo { background: linear-gradient(135deg, #667EEA, #4C51BF); }
.ov-icon-gold { background: linear-gradient(135deg, #F6E05E, #D69E2E); }
.ov-icon-rose { background: linear-gradient(135deg, #F687B3, #C53F85); }
.ov-icon-mint { background: linear-gradient(135deg, #68D391, #2F855A); }
.ov-icon-navy { background: linear-gradient(135deg, #4C51BF, #1A365D); }
.ov-icon-amber { background: linear-gradient(135deg, #F6AD55, #C05621); }
.ov-info h3 {
  font-size: 14px;
  font-weight: 600;
  color: #1A202C;
  margin: 0 0 3px;
}
.ov-info p {
  font-size: 12px;
  color: #A0AEC0;
  margin: 0;
}
.ov-arrow {
  position: absolute;
  top: 8px;
  right: 8px;
  color: #CBD5E0;
  font-size: 16px;
  transition: color 0.2s;
}
.overview-card:hover .ov-arrow { color: #155DFC; }

/* 分类目录区 section head */
.leju-content { padding: 36px 0 48px; background: #F5F7FA; }
.section-head {
  text-align: center;
  margin-bottom: 28px;
}
.section-title {
  font-size: 26px;
  font-weight: 700;
  color: #1A202C;
  margin: 0 0 8px;
}
.section-subtitle {
  font-size: 14px;
  color: #718096;
  margin: 0;
}

/* 分类列增强 */
.classified-page .leju-col {
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 20px;
  transition: all 0.3s;
}
.classified-page .leju-col:hover {
  box-shadow: 0 8px 28px rgba(26,54,93,0.1);
  border-color: #CBD5E0;
  }
.classified-page .leju-col-header {
  padding-bottom: 14px;
  margin-bottom: 16px;
  border-bottom: 2px solid #155DFC;
}
.classified-page .leju-col-header h3 {
  color: #1A365D;
  font-size: 17px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 8px;
}
.classified-page .leju-col-header .col-icon {
  width: 32px;
  height: 32px;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}
.classified-page .leju-subcat-block {
  border-bottom: 1px dashed #EDF2F7;
  padding-bottom: 14px;
  margin-bottom: 14px;
}
.classified-page .leju-subcat-block:last-child { border-bottom: none; }
.classified-page .leju-subcat-block h4 {
  font-size: 14px;
  font-weight: 600;
  color: #155DFC;
  margin-bottom: 10px;
  padding-left: 8px;
  border-left: 3px solid #155DFC;
}
.classified-page .leju-subcat-list dl {
  margin-bottom: 8px;
  line-height: 1.8;
}
.classified-page .leju-subcat-list dt a {
  font-size: 13px;
  font-weight: 600;
  color: #2D3748;
}
.classified-page .leju-subcat-list dt a:hover {
  color: #155DFC;
}
.classified-page .leju-subcat-list dd a {
  font-size: 12.5px;
  color: #718096;
}
.classified-page .leju-subcat-list dd a:hover {
  color: #155DFC;
  background: rgba(21,93,252,0.06);
  border-radius: 4px;
}

/* 分类页服务承诺优化 */
.classified-page .leju-commitments {
  margin-top: 40px;
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 24px 28px;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
}
.classified-page .lc-item {
  display: flex;
  align-items: center;
  gap: 10px;
  text-align: left;
  padding: 0;
  border-right: 1px solid #EDF2F7;
}
.classified-page .lc-item:last-child { border-right: none; }
.classified-page .lc-icon {
  width: 44px; height: 44px;
  background: linear-gradient(135deg, rgba(21,93,252,0.1), rgba(8,169,244,0.1));
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  flex-shrink: 0;
}
.classified-page .lc-item h4 {
  font-size: 14px;
  color: #1A202C;
  margin: 0 0 2px;
}
.classified-page .lc-item p {
  font-size: 12px;
  color: #718096;
  margin: 0;
  line-height: 1.4;
}

/* ========== 响应式 ========== */
@media (max-width: 1023px) {
  .classified-hero-inner {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .classified-hero-right { flex-direction: row; }
  .post-card, .ai-classified-badge { flex: 1; }
  .overview-grid { grid-template-columns: repeat(6, 1fr); }
  .classified-page .leju-commitments { grid-template-columns: repeat(3, 1fr); }
  .classified-page .lc-item { border-right: none; }
  .classified-page .leju-grid-4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
  .classified-hero { padding: 32px 0 36px; }
  .classified-hero-title { font-size: 24px; }
  .classified-hero-sub { font-size: 13px; }
  .classified-hero-right { flex-direction: column; }
  .csb-tabs { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 8px; }
  .csb-tab { white-space: nowrap; flex-shrink: 0; }
  .csb-input-wrap { flex-direction: column; }
  .csb-btn { width: 100%; justify-content: center; }
  .overview-grid { grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .overview-card { padding: 12px 8px; }
  .ov-icon { width: 36px; height: 36px; font-size: 18px; margin-bottom: 6px; }
  .ov-info h3 { font-size: 13px; }
  .ov-info p { display: none; }
  .classified-page .leju-grid-4 { grid-template-columns: 1fr; }
  .classified-page .leju-commitments { grid-template-columns: repeat(2, 1fr); }
  .section-title { font-size: 22px; }
}

@media (max-width: 480px) {
  .classified-page .leju-cat-icons { grid-template-columns: repeat(3, 1fr); }
  .classified-page .leju-grid-4 { grid-template-columns: 1fr; }
  .classified-page .leju-commitments { grid-template-columns: repeat(2, 1fr); }
  .overview-grid { grid-template-columns: repeat(3, 1fr); }
  .lci-sub { display: none; }
}


/* ========== 栏目二级导航（与整站头部协调） ========== */
.section-subnav {
  background: #fff;
  border-bottom: 1px solid #E2E8F0;
  box-shadow: 0 1px 4px rgba(0,0,0,0.03);
  position: sticky;
  top: 64px;
  z-index: 80;
}
.section-subnav .container {
  display: flex;
  align-items: center;
  height: 48px;
  gap: 16px;
}
.sn-left {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}
.sn-title {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 15px;
  font-weight: 700;
  color: #155DFC;
  text-decoration: none;
}
.sn-icon {
  width: 26px;
  height: 26px;
  border-radius: 6px;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
}
.sn-city {
  display: flex;
  align-items: center;
  gap: 3px;
  padding: 3px 8px;
  background: #F7FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 4px;
  font-size: 12.5px;
  color: #4A5568;
  cursor: pointer;
  transition: all .2s;
}
.sn-city:hover {
  border-color: #155DFC;
  color: #155DFC;
}
.sn-city-name { font-weight: 600; }
.sn-city-arrow {
  font-size: 9px;
  color: #718096;
}

.sn-tabs {
  display: flex;
  gap: 2px;
  flex: 1;
  overflow-x: auto;
  scrollbar-width: none;
}
.sn-tabs::-webkit-scrollbar { display: none; }
.sn-tab {
  padding: 4px 12px;
  font-size: 13.5px;
  font-weight: 500;
  color: #4A5568;
  text-decoration: none;
  border-radius: 4px;
  transition: all .2s;
  white-space: nowrap;
  flex-shrink: 0;
}
.sn-tab:hover {
  background: #EBF4FF;
  color: #155DFC;
}
.sn-tab.active {
  color: #155DFC;
  font-weight: 700;
  background: rgba(21, 93, 252, 0.08);
}

.sn-right {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
}
.sn-btn {
  padding: 5px 14px;
  font-size: 12.5px;
  font-weight: 600;
  border-radius: 4px;
  text-decoration: none;
  transition: all .2s;
  white-space: nowrap;
}
.sn-btn-outline {
  border: 1px solid #CBD5E0;
  color: #4A5568;
  background: #fff;
}
.sn-btn-outline:hover {
  border-color: #155DFC;
  color: #155DFC;
}
.sn-btn-primary {
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  box-shadow: 0 2px 6px rgba(21, 93, 252, 0.2);
}
.sn-btn-primary:hover {
  box-shadow: 0 3px 10px rgba(21, 93, 252, 0.3);
}

@media (max-width: 1024px) {
  .section-subnav { top: 64px; }
  .sn-city { display: none; }
}
@media (max-width: 768px) {
  .section-subnav { top: 56px; }
  .section-subnav .container { height: 44px; gap: 8px; }
  .sn-title span:not(.sn-icon) { display: none; }
  .sn-btn-outline { display: none; }
  .sn-tab { padding: 4px 10px; font-size: 12.5px; }
}

/* ========== 找客户整合页 ========== */
.customer-hero {
  background: linear-gradient(135deg, #1A365D 0%, #155DFC 50%, #08A9F4 100%);
  padding: 40px 0 32px;
  position: relative;
  overflow: hidden;
}
.customer-hero::before {
  content: '';
  position: absolute;
  top: -40%; right: -5%;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(214,158,46,0.15) 0%, transparent 70%);
  border-radius: 50%;
}
.customer-hero::after {
  content: '';
  position: absolute;
  bottom: -20%; left: 0;
  width: 300px; height: 300px;
  background: radial-gradient(circle, rgba(8,169,244,0.2) 0%, transparent 70%);
  border-radius: 50%;
}
.customer-hero-inner {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 32px;
  align-items: stretch;
  position: relative;
  z-index: 1;
}
.ch-breadcrumb {
  font-size: 13px;
  color: rgba(255,255,255,0.7);
  margin-bottom: 12px;
}
.ch-breadcrumb a { color: rgba(255,255,255,0.7); text-decoration: none; }
.ch-breadcrumb a:hover { color: #FFD76E; }
.ch-breadcrumb .current { color: #FFD76E; }
.ch-title {
  color: #fff;
  font-size: 32px;
  font-weight: 700;
  margin: 0 0 10px;
  letter-spacing: -0.5px;
}
.ch-subtitle {
  color: rgba(255,255,255,0.85);
  font-size: 15px;
  margin: 0 0 24px;
  max-width: 640px;
}

/* 搜索框（v2版） */
.ch-search-box {
  background: #fff;
  border-radius: 12px;
  padding: 12px 14px 12px 14px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.15);
  margin-bottom: 18px;
  max-width: 620px;
}
.ch-search-tabs {
  display: flex;
  gap: 8px;
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid #EDF2F7;
}
.ch-stab {
  font-size: 13px;
  color: #718096;
  padding: 4px 10px;
  border-radius: 6px;
  cursor: pointer;
  font-weight: 500;
  transition: all 0.2s;
}
.ch-stab:hover { color: #155DFC; }
.ch-stab.active {
  color: #155DFC;
  background: rgba(21,93,252,0.08);
  font-weight: 600;
}
.ch-search-input {
  display: flex;
  align-items: center;
  gap: 10px;
}
.ch-search-icon { font-size: 16px; color: #A0AEC0; }
.ch-search-input input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 14px;
  color: #1A202C;
  font-family: inherit;
  background: transparent;
}
.ch-search-btn {
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 8px 20px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.2s;
}
.ch-search-btn:hover { box-shadow: 0 4px 12px rgba(21,93,252,0.3); }
.ch-hot-words {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 10px;
  font-size: 12.5px;
}
.ch-hot-words .hw-label { color: #A0AEC0; }
.ch-hot-words a {
  color: #718096;
  text-decoration: none;
  transition: color 0.2s;
}
.ch-hot-words a:hover { color: #155DFC; }

/* 数据行 */
.ch-data-row {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-top: 20px;
}
.ch-data-item {
  text-align: left;
}
.ch-data-item strong {
  display: block;
  font-size: 22px;
  font-weight: 700;
  color: #FFD76E;
  line-height: 1.2;
}
.ch-data-item span {
  font-size: 12.5px;
  color: rgba(255,255,255,0.75);
  margin-top: 4px;
  display: inline-block;
}
.ch-divider {
  width: 1px;
  height: 28px;
  background: rgba(255,255,255,0.2);
}

.ch-badges {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 28px;
}
.ch-badges span {
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  color: #fff;
  padding: 5px 12px;
  border-radius: 20px;
  font-size: 12.5px;
}

/* 右侧入驻卡 */
.ch-right { display: flex; align-items: center; }
.ch-post-card {
  background: #fff;
  border-radius: 14px;
  padding: 22px;
  text-align: center;
  width: 100%;
  position: relative;
  box-shadow: 0 12px 40px rgba(26,54,93,0.2);
}
.chpc-badge {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(135deg, #D69E2E, #E6B03A);
  color: #fff;
  padding: 5px 16px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}
.ch-post-card h3 {
  font-size: 17px;
  color: #1A202C;
  margin: 8px 0 8px;
  font-weight: 700;
}
.ch-post-card p {
  font-size: 13px;
  color: #718096;
  margin: 0 0 14px;
  line-height: 1.5;
}
.chpc-btn {
  width: 100%;
  background: linear-gradient(135deg, #155DFC, #08A9F4);
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 10px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
  font-family: inherit;
}
.chpc-btn:hover {
  box-shadow: 0 4px 12px rgba(21,93,252,0.3);
}
.chpc-stats {
  display: flex;
  justify-content: space-around;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #EDF2F7;
}
.chpc-stats b {
  display: block;
  font-size: 18px;
  color: #155DFC;
  font-weight: 700;
}
.chpc-stats span {
  font-size: 12px;
  color: #718096;
}

/* 子Tab栏 */
.customer-subtabs {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fff;
  border-radius: 12px;
  padding: 12px 20px;
  margin: 24px 0 18px;
  border: 1px solid #E2E8F0;
  box-shadow: 0 2px 8px rgba(26,54,93,0.04);
}
.cst-tab {
  padding: 8px 20px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  color: #4A5568;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
  transition: all 0.2s;
}
.cst-tab:hover { color: #155DFC; background: rgba(21,93,252,0.05); }
.cst-tab.active {
  color: #155DFC;
  background: rgba(21,93,252,0.1);
}
.cst-tab em {
  font-style: normal;
  font-size: 12px;
  background: rgba(21,93,252,0.15);
  color: #155DFC;
  padding: 2px 8px;
  border-radius: 10px;
  font-weight: 600;
}
.cst-tab:not(.active) em { background: #EDF2F7; color: #718096; }
.cst-icon { font-size: 16px; }
.cst-actions {
  margin-left: auto;
}
.cst-hint {
  font-size: 12.5px;
  color: #A0AEC0;
}

/* 响应式 */
@media (max-width: 1023px) {
  .customer-hero-inner {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .ch-post-card { max-width: 360px; margin: 0 auto; }
}
@media (max-width: 767px) {
  .customer-hero { padding: 28px 0 24px; }
  .ch-title { font-size: 24px; }
  .ch-subtitle { font-size: 13px; }
  .ch-tabs { flex-direction: column; }
  .ch-tab { max-width: 100%; }
  .customer-subtabs { flex-wrap: wrap; }
  .cst-hint { display: none; }
}

/* ========== 高净值分类信息 - 承诺区 ========== */
.classified-promises {
  margin-top: 48px;
  padding: 48px 0;
  background: linear-gradient(180deg, #0F1C3F 0%, #1A365D 100%);
}
.classified-promises .promise-intro {
  text-align: center;
  margin-bottom: 36px;
}
.classified-promises .promise-badge {
  display: inline-block;
  padding: 6px 18px;
  background: linear-gradient(135deg, #D69E2E, #E6B03A);
  color: #1A202C;
  font-size: 13px;
  font-weight: 700;
  border-radius: 20px;
  letter-spacing: 2px;
  margin-bottom: 16px;
}
.classified-promises .promise-intro h3 {
  color: #fff;
  font-size: 28px;
  font-weight: 700;
  margin: 0 0 10px;
}
.classified-promises .promise-intro p {
  color: rgba(255,255,255,0.7);
  font-size: 14px;
  margin: 0;
}
.classified-promises .promise-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
}
.classified-promises .promise-item {
  display: flex;
  align-items: center;
  gap: 14px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 12px;
  padding: 20px;
  transition: all 0.3s ease;
}
.classified-promises .promise-item:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(214,158,46,0.5);
  }
.classified-promises .promise-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}
.classified-promises .pi-gold { background: linear-gradient(135deg, #D69E2E, #E6B03A); }
.classified-promises .pi-blue { background: linear-gradient(135deg, #155DFC, #08A9F4); }
.classified-promises .pi-purple { background: linear-gradient(135deg, #6B46C1, #9F7AEA); }
.classified-promises .pi-green { background: linear-gradient(135deg, #38A169, #68D391); }
.classified-promises .pi-orange { background: linear-gradient(135deg, #DD6B20, #ED8936); }
.classified-promises .promise-content h4 {
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  margin: 0 0 4px;
}
.classified-promises .promise-content p {
  color: rgba(255,255,255,0.6);
  font-size: 12px;
  margin: 0;
  line-height: 1.4;
}

/* ========== 分类信息 - 12宫格总览（精致整齐版） ========== */
.classified-page .overview-card {
  background: #fff;
  border: 1px solid #E8ECF1;
  border-radius: 16px;
  padding: 24px 20px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  cursor: pointer;
  transition: all 0.35s cubic-bezier(.2,.8,.2,1);
  text-decoration: none;
  color: inherit;
  position: relative;
  overflow: hidden;
  height: 100%;
  box-sizing: border-box;
}
.classified-page .overview-card::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, #155DFC, #08A9F4);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.4s cubic-bezier(.2,.8,.2,1);
}
.classified-page .overview-card:hover {
  border-color: #155DFC;
  box-shadow: 0 10px 30px rgba(21, 93, 252, 0.12);
  }
.classified-page .overview-card:hover::after {
  transform: scaleX(1);
}
/* 图标容器：统一尺寸+居中 */
.classified-page .ov-icon {
  position: relative;
  width: 64px;
  height: 64px;
  border-radius: 18px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  font-style: normal;
  transition: transform 0.4s cubic-bezier(.2,.8,.2,1), box-shadow 0.3s ease;
  flex-shrink: 0;
  line-height: 1;
}
.classified-page .overview-card:hover .ov-icon {
  transform: translateY(-2px) scale(1.06);
}
/* 渐变图标底色：低饱和柔和系，风格统一 */
.classified-page .ov-icon-blue   { background: linear-gradient(135deg, #EEF4FF, #DCE9FF); }
.classified-page .ov-icon-gold   { background: linear-gradient(135deg, #FFF8E7, #FFECB8); }
.classified-page .ov-icon-green  { background: linear-gradient(135deg, #E8FAF0, #CFF3DD); }
.classified-page .ov-icon-purple { background: linear-gradient(135deg, #F0E6FF, #DDC8FF); }
.classified-page .ov-icon-orange { background: linear-gradient(135deg, #FFF0E0, #FFDAB0); }
.classified-page .ov-icon-pink   { background: linear-gradient(135deg, #FFE8EE, #FFD1DC); }
.classified-page .ov-icon-teal   { background: linear-gradient(135deg, #DFF7F9, #BFEBEE); }
.classified-page .ov-icon-indigo { background: linear-gradient(135deg, #E5EEFF, #CCDCFF); }
.classified-page .ov-icon-red    { background: linear-gradient(135deg, #FFE8E8, #FFD0D0); }
.classified-page .ov-icon-rose   { background: linear-gradient(135deg, #FFE8EE, #FFD1DC); }
.classified-page .ov-icon-mint   { background: linear-gradient(135deg, #E3FCEA, #C2F0D2); }
.classified-page .ov-icon-navy   { background: linear-gradient(135deg, #E5EBFF, #CBD6FF); }
.classified-page .ov-icon-amber  { background: linear-gradient(135deg, #FFF4DB, #FFE3A3); }
/* 标题：统一行高、强制不换行 */
.classified-page .ov-title {
  font-size: 17px;
  font-weight: 700;
  color: #1A202C;
  margin: 0;
  line-height: 1.3;
  white-space: nowrap;
}
/* 描述：统一高度3行，每行1个关键词，保证卡片视觉整齐 */
.classified-page .ov-info {
  font-size: 13px;
  color: #718096;
  margin: 0;
  line-height: 2;
  width: 100%;
  text-align: center;
  min-height: 60px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 0;
}
.classified-page .ov-info p {
  margin: 0;
  line-height: 2;
  font-size: 13px;
  color: #718096;
  width: 100%;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.classified-page .overview-card .ov-arrow {
  margin-top: 4px;
  font-size: 12px;
  color: #155DFC;
  font-weight: 600;
  opacity: 0;
  transform: translateY(4px);
  transition: all 0.3s ease;
}
.classified-page .overview-card:hover .ov-arrow {
  opacity: 1;
  transform: translateY(0);
}

/* ========== 高净值分类信息 - 分类目录 ========== */
.classified-page .leju-grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.classified-page .leju-col {
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 20px;
  transition: all 0.3s ease;
}
.classified-page .leju-col:hover {
  box-shadow: 0 8px 24px rgba(26, 54, 93, 0.08);
  border-color: #155DFC;
  }
.classified-page .leju-col-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 14px;
  border-bottom: 2px solid #155DFC;
  margin-bottom: 14px;
}
.classified-page .col-icon {
  font-size: 20px;
  width: 36px;
  height: 36px;
  background: linear-gradient(135deg, #E6F0FF, #D6E8FF);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.classified-page .leju-col-header h3 {
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  color: #1A202C;
}
.classified-page .leju-subcat-block {
  margin-bottom: 14px;
}
.classified-page .leju-subcat-block:last-child { margin-bottom: 0; }
.classified-page .leju-subcat-block h4 {
  font-size: 13px;
  color: #155DFC;
  font-weight: 700;
  margin: 0 0 8px;
  padding-left: 8px;
  border-left: 3px solid #155DFC;
  line-height: 1;
}
.classified-page .leju-subcat-list dl {
  margin: 0;
  padding: 6px 0;
  border-bottom: 1px dashed #EDF2F7;
}
.classified-page .leju-subcat-list dl:last-child { border-bottom: none; }
.classified-page .leju-subcat-list dt {
  margin-bottom: 4px;
}
.classified-page .leju-subcat-list dt a {
  font-size: 13px;
  font-weight: 600;
  color: #2D3748;
  text-decoration: none;
}
.classified-page .leju-subcat-list dt a:hover {
  color: #155DFC;
}
.classified-page .leju-subcat-list dd {
  margin: 0;
  line-height: 1.8;
}
.classified-page .leju-subcat-list dd a {
  font-size: 12px;
  color: #718096;
  text-decoration: none;
  margin-right: 8px;
  display: inline-block;
  transition: all 0.2s ease;
}
.classified-page .leju-subcat-list dd a:hover {
  color: #155DFC;
  background: #F0F7FF;
  padding: 1px 6px;
  border-radius: 4px;
}

/* section-head */
.classified-page .section-head {
  text-align: center;
  margin-bottom: 28px;
}
.classified-page .section-head .section-title {
  font-size: 28px;
  font-weight: 700;
  color: #1A202C;
  margin: 0 0 8px;
}
.classified-page .section-head .section-subtitle {
  font-size: 14px;
  color: #718096;
  margin: 0;
}

/* 高净值分类信息 - 响应式 */
@media (max-width: 1023px) {
  .classified-promises .promise-grid { grid-template-columns: repeat(3, 1fr); gap: 12px; }
  .classified-promises .promise-item { padding: 16px; }
  .classified-page .overview-grid { grid-template-columns: repeat(3, 1fr); }
  .classified-page .leju-grid-4 { grid-template-columns: repeat(2, 1fr); }
  .classified-page .section-head .section-title { font-size: 22px; }
  .classified-promises .promise-intro h3 { font-size: 22px; }
}
@media (max-width: 767px) {
  .classified-promises { padding: 32px 0; margin-top: 32px; }
  .classified-promises .promise-grid { grid-template-columns: repeat(2, 1fr); }
  .classified-promises .promise-intro h3 { font-size: 20px; }
  .classified-page .overview-grid { grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .classified-page .overview-card { padding: 14px 10px; }
  .classified-page .ov-icon { width: 40px; height: 40px; font-size: 18px; }
  .classified-page .ov-title { font-size: 13px; }
  .classified-page .ov-info { font-size: 11px; }
  .classified-page .leju-grid-4 { grid-template-columns: 1fr; }
  .classified-page .section-head .section-title { font-size: 20px; }
}

/* ========== 商协会详情 - 分支机构 / 公益基金 ========== */
.branch-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.branch-item {
  background: var(--color-bg);
  border-radius: 8px;
  padding: 18px;
  transition: all 0.3s ease;
  border: 1px solid var(--color-border);
}
.branch-item:hover {
  box-shadow: 0 4px 12px rgba(21, 93, 252, 0.12);
  border-color: var(--color-primary);
  }
.branch-icon { font-size: 28px; margin-bottom: 8px; }
.branch-item h3 {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 6px;
}
.branch-item p {
  font-size: 12px;
  color: var(--color-text-secondary);
  line-height: 1.5;
  margin: 0;
}
@media (max-width: 768px) {
  .branch-grid { grid-template-columns: 1fr; }
}

.fund-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.fund-card {
  background: linear-gradient(135deg, #FFF5F5 0%, #FFFFFF 100%);
  border: 1px solid #FEB2B2;
  border-radius: 10px;
  padding: 18px;
  transition: all 0.3s ease;
}
.fund-card:hover {
  box-shadow: 0 6px 16px rgba(229, 62, 62, 0.12);
  }
.fund-name {
  font-size: 15px;
  font-weight: 700;
  color: #C53030;
  margin-bottom: 6px;
}
.fund-type {
  display: inline-block;
  font-size: 11px;
  background: #FFF5F5;
  color: #C53030;
  border: 1px solid #FEB2B2;
  padding: 2px 8px;
  border-radius: 12px;
  margin-bottom: 10px;
}
.fund-card p {
  font-size: 12px;
  color: var(--color-text-secondary);
  line-height: 1.5;
  margin-bottom: 10px;
}
.fund-meta {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: var(--color-text-muted);
  padding-top: 8px;
  border-top: 1px dashed #FEB2B2;
}
@media (max-width: 1024px) {
  .fund-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .fund-grid { grid-template-columns: 1fr; }
}

/* ========== 数据合规声明 ========== */
.data-compliance-notice {
  background: #FFF8E6;
  border-top: 1px solid #F5E6B8;
  border-bottom: 1px solid #F5E6B8;
  padding: 16px 0;
  margin: 24px 0;
}
.data-compliance-notice .dcn-content {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  font-size: 12px;
  line-height: 1.8;
  color: #7A6520;
}
.data-compliance-notice .dcn-icon {
  font-size: 18px;
  line-height: 1.6;
  flex-shrink: 0;
}
.data-compliance-notice .dcn-content p {
  margin: 0;
}
.data-compliance-notice .dcn-content strong {
  color: #B08020;
  font-weight: 600;
}
.data-compliance-notice .dcn-link {
  color: #155DFC;
  font-weight: 500;
  margin-left: 4px;
  white-space: nowrap;
}
.data-compliance-notice .dcn-link:hover {
  text-decoration: underline;
}

/* ============== 找客户 Hero v3 整洁版 ============== */
.cust-hero-v3 {
  background: linear-gradient(135deg, #0F2440 0%, #155DFC 50%, #08A9F4 100%);
  padding: 24px 0 56px;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.cust-hero-v3::before {
  content: '';
  position: absolute;
  top: -100px;
  right: -50px;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(13, 169, 244, 0.3) 0%, transparent 70%);
  border-radius: 50%;
}
.cust-hero-v3::after {
  content: '';
  position: absolute;
  bottom: -150px;
  left: -80px;
  width: 350px;
  height: 350px;
  background: radial-gradient(circle, rgba(214, 158, 46, 0.15) 0%, transparent 70%);
  border-radius: 50%;
}
.cust-hero-v3 .container { position: relative; z-index: 2; }

.chv3-breadcrumb {
  font-size: 13px;
  color: rgba(255,255,255,0.7);
  margin-bottom: 20px;
}
.chv3-breadcrumb a { color: rgba(255,255,255,0.7); }
.chv3-breadcrumb a:hover { color: #fff; }
.chv3-breadcrumb .sep { margin: 0 6px; }
.chv3-breadcrumb .current { color: #fff; font-weight: 500; }

.chv3-main {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 60px;
}

.chv3-left { flex: 1; min-width: 0; }
.chv3-title {
  font-size: 40px;
  font-weight: 700;
  margin: 0 0 12px;
  color: #fff;
  line-height: 1.2;
  letter-spacing: -0.5px;
}
.chv3-sub {
  font-size: 15px;
  color: rgba(255,255,255,0.85);
  margin: 0 0 28px;
  line-height: 1.6;
}

/* 搜索框 */
.chv3-search {
  background: #fff;
  border-radius: 16px;
  padding: 18px 20px 14px;
  box-shadow: 0 8px 30px rgba(26, 54, 93, 0.2);
  margin-bottom: 20px;
}
.chv3-stabs {
  display: flex;
  gap: 24px;
  border-bottom: 1px solid #E2E8F0;
  margin-bottom: 14px;
  padding-bottom: 0;
}
.chv3-stab {
  font-size: 15px;
  color: #718096;
  cursor: pointer;
  padding-bottom: 10px;
  position: relative;
  font-weight: 500;
  transition: color 0.2s;
}
.chv3-stab:hover { color: #155DFC; }
.chv3-stab.active {
  color: #155DFC;
  font-weight: 600;
}
.chv3-stab.active::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 2px;
  background: #155DFC;
  border-radius: 2px;
}

.chv3-input-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.chv3-ic {
  color: #A0AEC0;
  font-size: 16px;
  flex-shrink: 0;
}
.chv3-input-row input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 15px;
  padding: 0;
  background: transparent;
  color: #1A202C;
}
.chv3-input-row input::placeholder { color: #A0AEC0; }
.chv3-input-row button {
  background: linear-gradient(90deg, #155DFC 0%, #08A9F4 100%);
  color: #fff;
  border: none;
  padding: 10px 28px;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s;
  white-space: nowrap;
}
.chv3-input-row button:hover {
  box-shadow: 0 4px 12px rgba(21, 93, 252, 0.4);
}

.chv3-hot {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
  font-size: 13px;
}
.chv3-hot em {
  font-style: normal;
  color: #718096;
  margin-right: 2px;
}
.chv3-hot a {
  color: #4A5568;
  background: #F7FAFC;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 12px;
  transition: all 0.2s;
}
.chv3-hot a:hover {
  color: #155DFC;
  background: #EBF4FF;
}

/* 数据行 */
.chv3-stats {
  display: flex;
  align-items: center;
  gap: 0;
  background: rgba(255,255,255,0.1);
  backdrop-filter: blur(10px);
  border-radius: 12px;
  padding: 16px 0;
  border: 1px solid rgba(255,255,255,0.15);
}
.cs-item {
  flex: 1;
  text-align: center;
  padding: 0 8px;
}
.cs-item b {
  display: block;
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 4px;
  font-family: 'DIN Alternate', 'PingFang SC', sans-serif;
}
.cs-item span {
  font-size: 12px;
  color: rgba(255,255,255,0.75);
}
.cs-divider {
  width: 1px;
  height: 28px;
  background: rgba(255,255,255,0.2);
  flex-shrink: 0;
}

/* 右侧入驻卡 */
.chv3-right {
  width: 320px;
  flex-shrink: 0;
}
.chv3-join {
  background: rgba(255,255,255,0.1);
  backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 18px;
  padding: 28px 24px;
  position: relative;
  margin-top: 52px;
}
.chv3-jbadge {
  position: absolute;
  top: -12px;
  left: 24px;
  background: linear-gradient(90deg, #D69E2E, #E6B03A);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  padding: 4px 12px;
  border-radius: 20px;
  box-shadow: 0 2px 8px rgba(214, 158, 46, 0.4);
}
.chv3-join h3 {
  font-size: 20px;
  font-weight: 700;
  margin: 8px 0 8px;
  color: #fff;
}
.chv3-join p {
  font-size: 13px;
  color: rgba(255,255,255,0.8);
  margin: 0 0 18px;
  line-height: 1.5;
}
.chv3-jbtn {
  width: 100%;
  background: linear-gradient(90deg, #155DFC 0%, #08A9F4 100%);
  color: #fff;
  border: none;
  padding: 12px;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
  margin-bottom: 16px;
}
.chv3-jbtn:hover {
  box-shadow: 0 4px 14px rgba(21, 93, 252, 0.5);
}
.chv3-jstats {
  display: flex;
  border-top: 1px solid rgba(255,255,255,0.15);
  padding-top: 14px;
}
.chv3-jstats > div {
  flex: 1;
  text-align: center;
}
.chv3-jstats strong {
  display: block;
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 2px;
}
.chv3-jstats label {
  font-size: 12px;
  color: rgba(255,255,255,0.7);
  font-weight: normal;
}

@media (max-width: 1023px) {
  .chv3-main { flex-direction: column; gap: 32px; }
  .chv3-right { width: 100%; margin-top: 0; }
  .chv3-join { margin-top: 0; }
  .chv3-title { font-size: 32px; }
}
@media (max-width: 767px) {
  .chv3-title { font-size: 26px; }
  .chv3-stats { flex-wrap: wrap; gap: 12px; }
  .cs-divider { display: none; }
  .cs-item { flex: 0 0 50%; padding: 8px 0; }
  .chv3-stabs { gap: 16px; }
  .chv3-input-row { flex-direction: column; align-items: stretch; }
  .chv3-input-row button { width: 100%; }
}

/* ========== 找组织筛选结果统计 ========== */
.assoc-result-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 18px;
  background: linear-gradient(90deg, #f0f5ff 0%, #f8fafc 100%);
  border-radius: 8px;
  margin-bottom: 18px;
  font-size: 14px;
  color: var(--color-text-secondary);
  border-left: 3px solid #3b82f6;
}
.assoc-result-bar strong {
  color: var(--color-primary);
  font-size: 18px;
  margin: 0 3px;
  font-weight: 700;
}
.filter-reset-btn {
  font-size: 13px;
  color: var(--color-primary);
  text-decoration: none;
  padding: 4px 12px;
  border: 1px solid var(--color-primary);
  border-radius: 4px;
  transition: all 0.2s;
}
.filter-reset-btn:hover {
  background: var(--color-primary);
  color: #fff;
}

/* 筛选选项 hover/active 增强 */
.filter-option {
  cursor: pointer;
  transition: all 0.2s;
}
.filter-option.active {
  background: var(--color-primary);
  color: #fff !important;
  border-radius: 4px;
}

/* ========== 分支机构 / 公益基金 ========== */
.branch-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.branch-item {
  background: #f8fafc;
  border-radius: 8px;
  padding: 20px;
  transition: all 0.3s;
  border: 1px solid var(--color-border);
}
.branch-item:hover {
  background: #fff;
  box-shadow: 0 4px 12px rgba(26, 54, 93, 0.1);
  }
.branch-icon {
  font-size: 32px;
  margin-bottom: 10px;
}
.branch-item h3 {
  font-size: 15px;
  color: var(--color-text-primary);
  margin: 0 0 8px;
  font-weight: 600;
}
.branch-item p {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin: 0;
}

.fund-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
.fund-card {
  background: linear-gradient(135deg, #f0f9ff 0%, #f8fafc 100%);
  border-radius: 10px;
  padding: 20px;
  border: 1px solid #dbeafe;
  transition: all 0.3s;
}
.fund-card:hover {
  box-shadow: 0 6px 20px rgba(59, 130, 246, 0.15);
  }
.fund-name {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 6px;
}
.fund-type {
  display: inline-block;
  font-size: 12px;
  color: #3b82f6;
  background: #dbeafe;
  padding: 2px 10px;
  border-radius: 10px;
  margin-bottom: 10px;
}
.fund-card p {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin: 0 0 12px;
}
.fund-meta {
  display: flex;
  gap: 16px;
  font-size: 12px;
  color: var(--color-text-muted);
  border-top: 1px dashed #cbd5e1;
  padding-top: 10px;
}

/* 响应式 */
@media (max-width: 1023px) {
  .branch-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
  .branch-grid { grid-template-columns: 1fr; }
  .fund-grid { grid-template-columns: 1fr; }
}


/* ===== 合规免责声明 ===== */
.compliance-disclaimer {
  background: linear-gradient(90deg, #FFF8E6 0%, #FEF3C7 100%);
  border-bottom: 1px solid #E2E8F0;
  padding: 10px 0;
  position: relative;
  z-index: 99;
}
.compliance-disclaimer .container {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.cd-icon {
  color: #D69E2E;
  font-size: 18px;
  line-height: 1.5;
  flex-shrink: 0;
}
.cd-text {
  font-size: 12px;
  color: #744210;
  line-height: 1.6;
  flex: 1;
}
.cd-text strong {
  color: #92400E;
  font-weight: 600;
}
@media (max-width: 767px) {
  .compliance-disclaimer { padding: 8px 0; }
  .cd-text { font-size: 11px; }
}

/* ========================================
   FAQ Section - 整改P2-1
   ======================================== */
.faq-section {
  background-color: var(--color-surface);
  padding: 48px 0;
}
.faq-list {
  max-width: 900px;
  margin: 0 auto;
}
.faq-item {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  margin-bottom: 12px;
  background: var(--color-surface);
  overflow: hidden;
  transition: border-color 0.3s;
}
.faq-item:hover {
  border-color: var(--color-accent);
}
.faq-q {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--color-primary);
  cursor: pointer;
  user-select: none;
  line-height: 1.5;
}
.faq-num {
  display: inline-block;
  min-width: 36px;
  padding: 2px 8px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-accent));
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  border-radius: 4px;
  text-align: center;
  flex-shrink: 0;
}
.faq-icon {
  margin-left: auto;
  font-size: 20px;
  color: var(--color-accent);
  font-weight: bold;
  flex-shrink: 0;
  transition: transform 0.3s;
}
.faq-item.open .faq-icon {
  transform: rotate(45deg);
}
.faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
  padding: 0 20px;
}
.faq-item.open .faq-a {
  max-height: 500px;
  padding-bottom: 16px;
}
.faq-a p {
  margin: 0;
  color: var(--color-text-secondary);
  font-size: 14px;
  line-height: 1.8;
}

/* 响应式 */
@media (max-width: 768px) {
  .faq-section { padding: 32px 0; }
  .faq-q { font-size: 15px; padding: 14px 16px; }
  .faq-a p { font-size: 13px; }
}

/* ========================================
   Part 11: Join / Pricing / Info Pages
   入驻页 / 定价页 / 信息页样式
   ======================================== */

/* ---- 入驻首页 ---- */
.join-hero {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  padding: 60px 0;
  color: #fff;
  text-align: center;
}
.join-title {
  font-size: 40px;
  margin-bottom: 16px;
  font-weight: 700;
}
.join-subtitle {
  font-size: 18px;
  margin-bottom: 40px;
  opacity: 0.9;
}
.join-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  max-width: 900px;
  margin: 0 auto;
}
.join-stat {
  text-align: center;
}
.join-stat strong {
  display: block;
  font-size: 32px;
  color: var(--color-accent);
  font-weight: 700;
  margin-bottom: 4px;
}
.join-stat span {
  font-size: 14px;
  opacity: 0.85;
}
.join-types {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  margin-top: 24px;
}
.join-type-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 32px 24px;
  box-shadow: var(--shadow-md);
  transition: var(--transition-base);
  text-decoration: none;
  color: inherit;
  border: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
}
.join-type-card:hover { box-shadow: var(--shadow-gold);
  border-color: var(--color-accent);
}
.join-type-icon {
  font-size: 48px;
  margin-bottom: 16px;
}
.join-type-name {
  font-size: 22px;
  margin-bottom: 8px;
  color: var(--color-primary);
  font-weight: 700;
}
.join-type-desc {
  font-size: 14px;
  color: var(--color-text-secondary);
  margin-bottom: 20px;
  line-height: 1.6;
}
.join-type-feat {
  list-style: none;
  padding: 0;
  margin-bottom: 24px;
  flex: 1;
}
.join-type-feat li {
  font-size: 13px;
  color: var(--color-text-secondary);
  padding: 6px 0;
}
.join-type-btn {
  color: var(--color-accent);
  font-weight: 600;
  font-size: 14px;
}

/* 为什么选择入驻 */
.join-why {
  background: var(--color-bg);
}
.why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 32px;
}
.why-item {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 28px 24px;
  box-shadow: var(--shadow-sm);
}
.why-icon {
  font-size: 36px;
  margin-bottom: 12px;
}
.why-item h3 {
  font-size: 18px;
  color: var(--color-primary);
  margin-bottom: 8px;
}
.why-item p {
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.6;
}

/* 入驻流程 */
.process-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  margin-top: 32px;
  position: relative;
}
.process-step {
  text-align: center;
  position: relative;
  padding: 24px;
}
.step-num {
  width: 56px;
  height: 56px;
  line-height: 56px;
  border-radius: 50%;
  background: var(--color-primary);
  color: var(--color-accent);
  font-size: 20px;
  font-weight: 700;
  margin: 0 auto 16px;
}
.process-step h3 {
  font-size: 18px;
  color: var(--color-primary);
  margin-bottom: 8px;
}
.process-step p {
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.6;
}

/* ---- 入驻表单 ---- */
.join-form-wrap {
  max-width: 720px;
  margin: 0 auto;
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 40px;
  box-shadow: var(--shadow-md);
}
.join-form-header {
  text-align: center;
  margin-bottom: 32px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--color-border);
}
.join-form-icon {
  font-size: 56px;
  margin-bottom: 12px;
}
.join-form-header h1 {
  font-size: 28px;
  color: var(--color-primary);
  margin-bottom: 8px;
}
.join-form-header p {
  color: var(--color-text-secondary);
}
.form-group {
  margin-bottom: 20px;
}
.form-group label {
  display: block;
  margin-bottom: 8px;
  font-weight: 500;
  color: var(--color-text-primary);
  font-size: 14px;
}
.form-group label .req {
  color: var(--color-danger);
  margin-left: 4px;
}
.form-control {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  font-size: 14px;
  transition: var(--transition-base);
  font-family: inherit;
  box-sizing: border-box;
}
.form-control:focus {
  outline: none;
  border-color: var(--color-accent);
  box-shadow: 0 0 0 3px rgba(214, 158, 46, 0.1);
}
textarea.form-control {
  resize: vertical;
  min-height: 100px;
}
.form-agree {
  margin-bottom: 24px;
}
.checkbox-label {
  font-size: 13px;
  color: var(--color-text-secondary);
  font-weight: 400 !important;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
}
.checkbox-label a {
  color: var(--color-accent);
}
.form-actions {
  display: flex;
  gap: 12px;
  justify-content: center;
}
.btn {
  padding: 10px 24px;
  border-radius: var(--radius-md);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition-base);
  border: 1px solid transparent;
  text-decoration: none;
  display: inline-block;
  text-align: center;
}
.btn-primary {
  background: var(--color-primary);
  color: var(--color-accent);
  border-color: var(--color-primary);
}
.btn-primary:hover {
  background: var(--color-primary-light);
}
.btn-outline {
  background: transparent;
  color: var(--color-primary);
  border-color: var(--color-primary);
}
.btn-outline:hover {
  background: var(--color-primary);
  color: var(--color-accent);
}
.btn-block {
  display: block;
  width: 100%;
}
.btn-lg {
  padding: 14px 36px;
  font-size: 16px;
}
.join-form-tips {
  margin-top: 32px;
  padding: 20px;
  background: #fef9e7;
  border-radius: var(--radius-md);
  border-left: 4px solid var(--color-accent);
}
.join-form-tips p {
  font-weight: 600;
  color: var(--color-primary-dark);
  margin-bottom: 8px;
}
.join-form-tips ul {
  margin: 0;
  padding-left: 20px;
}
.join-form-tips li {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.8;
}

/* ---- 定价页 ---- */
.pricing-hero {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  padding: 60px 0;
  color: #fff;
  text-align: center;
}
.pricing-hero h1 {
  font-size: 40px;
  margin-bottom: 12px;
}
.pricing-hero p {
  font-size: 18px;
  opacity: 0.9;
  margin-bottom: 24px;
}
.pricing-billing {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  background: rgba(255, 255, 255, 0.1);
  padding: 8px 16px;
  border-radius: 24px;
}
.billing-option {
  padding: 4px 16px;
  border-radius: 20px;
  font-size: 14px;
}
.billing-option.active {
  background: var(--color-accent);
  color: var(--color-primary-dark);
  font-weight: 600;
}
.billing-desc {
  font-size: 13px;
  opacity: 0.8;
}

.pricing-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  align-items: stretch;
}
.pricing-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 32px 24px;
  box-shadow: var(--shadow-md);
  border: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
  position: relative;
}
.pricing-card.pricing-featured {
  border-color: var(--color-accent);
  box-shadow: var(--shadow-gold);
  transform: scale(1.02);
}
.pricing-badge {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--color-accent);
  color: var(--color-primary-dark);
  font-size: 12px;
  font-weight: 700;
  padding: 4px 16px;
  border-radius: 12px;
}
.pricing-card-header {
  text-align: center;
  margin-bottom: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--color-border);
}
.pricing-card-header h3 {
  font-size: 22px;
  color: var(--color-primary);
  margin-bottom: 4px;
}
.pricing-card-header p {
  font-size: 13px;
  color: var(--color-text-muted);
}
.pricing-card-price {
  text-align: center;
  margin-bottom: 24px;
}
.price-symbol {
  font-size: 20px;
  color: var(--color-text-secondary);
  vertical-align: top;
}
.price-num {
  font-size: 42px;
  font-weight: 700;
  color: var(--color-primary);
}
.price-unit {
  font-size: 14px;
  color: var(--color-text-muted);
}
.pricing-features {
  list-style: none;
  padding: 0;
  margin: 0 0 24px 0;
  flex: 1;
}
.pricing-features li {
  padding: 8px 0;
  font-size: 14px;
  color: var(--color-text-secondary);
  border-bottom: 1px dashed var(--color-border);
}
.pricing-features li:last-child {
  border-bottom: none;
}
.pricing-features li.no {
  color: #cbd5e0;
  text-decoration: line-through;
}

/* 对比表 */
.compare-table-wrap {
  overflow-x: auto;
}
.compare-table {
  width: 100%;
  border-collapse: collapse;
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
}
.compare-table th,
.compare-table td {
  padding: 14px 20px;
  text-align: center;
  border-bottom: 1px solid var(--color-border);
  font-size: 14px;
}
.compare-table th {
  background: var(--color-primary);
  color: #fff;
  font-weight: 600;
}
.compare-table th:first-child {
  text-align: left;
}
.compare-table td:first-child {
  text-align: left;
  font-weight: 500;
  color: var(--color-text-primary);
}
.compare-table tbody tr:hover {
  background: #f9fafb;
}
.compare-table tbody tr:last-child td {
  border-bottom: none;
}

/* ---- 信息页 ---- */
.info-page {
  max-width: 900px;
  margin: 0 auto;
}
.info-content {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 40px;
  box-shadow: var(--shadow-sm);
}
.info-content h1 {
  font-size: 32px;
  color: var(--color-primary);
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 2px solid var(--color-accent);
}
.info-content h2 {
  font-size: 22px;
  color: var(--color-primary);
  margin-top: 32px;
  margin-bottom: 16px;
}
.info-content h3 {
  font-size: 18px;
  color: var(--color-primary);
  margin-top: 20px;
  margin-bottom: 12px;
}
.info-lead {
  font-size: 16px;
  color: var(--color-text-secondary);
  line-height: 1.8;
  margin-bottom: 24px;
  padding: 16px 20px;
  background: var(--color-bg);
  border-left: 4px solid var(--color-accent);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
}
.info-content p {
  font-size: 15px;
  line-height: 1.8;
  color: var(--color-text-secondary);
  margin-bottom: 14px;
}
.info-content ul,
.info-content ol {
  margin-bottom: 16px;
  padding-left: 24px;
}
.info-content li {
  font-size: 15px;
  line-height: 1.8;
  color: var(--color-text-secondary);
  margin-bottom: 8px;
}
.info-content li strong {
  color: var(--color-text-primary);
}
.info-content a {
  color: var(--color-accent-dark);
}
.info-updated {
  margin-top: 32px;
  padding-top: 16px;
  border-top: 1px solid var(--color-border);
  font-size: 13px;
  color: var(--color-text-muted);
  text-align: right;
}

/* 联系我们特殊 */
.contact-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin: 24px 0;
}
.contact-grid .contact-item {
  padding: 20px;
  background: var(--color-bg);
  border-radius: var(--radius-md);
  text-align: center;
}
.contact-icon {
  font-size: 32px;
  margin-bottom: 8px;
}
.contact-grid .contact-item h3 {
  font-size: 16px;
  color: var(--color-primary);
  margin-bottom: 4px;
  margin-top: 0;
}
.contact-grid .contact-item p {
  font-size: 15px;
  color: var(--color-accent-dark);
  font-weight: 600;
  margin-bottom: 4px;
}
.contact-grid .contact-item span {
  font-size: 13px;
  color: var(--color-text-muted);
}

/* 合规免责条 */
.compliance-disclaimer {
  background: #fffbeb;
  border-bottom: 1px solid #fef3c7;
  padding: 8px 0;
  font-size: 12px;
  color: #92400e;
}
.compliance-disclaimer strong {
  color: #b45309;
}

/* ---- 响应式 ---- */
@media (max-width: 1023px) {
  .join-types { grid-template-columns: repeat(2, 1fr); }
  .why-grid { grid-template-columns: repeat(2, 1fr); }
  .process-steps { grid-template-columns: repeat(2, 1fr); }
  .pricing-grid { grid-template-columns: repeat(2, 1fr); }
  .pricing-card.pricing-featured { transform: none; }
  .join-stats { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767px) {
  .join-title { font-size: 28px; }
  .join-subtitle { font-size: 15px; }
  .join-types { grid-template-columns: 1fr; }
  .why-grid { grid-template-columns: 1fr; }
  .process-steps { grid-template-columns: 1fr; }
  .pricing-grid { grid-template-columns: 1fr; }
  .pricing-hero h1 { font-size: 28px; }
  .join-stats { grid-template-columns: repeat(2, 1fr); }
  .join-stat strong { font-size: 24px; }
  .join-form-wrap { padding: 24px; }
  .info-content { padding: 24px; }
  .info-content h1 { font-size: 24px; }
  .info-content h2 { font-size: 18px; }
  .contact-grid { grid-template-columns: 1fr; }
}

/* ========================================
   Part 12: Detail Pages / Article Pages
   详情页 / 文章页通用样式
   ======================================== */

/* 详情布局 */
.detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 32px;
  align-items: start;
}
.detail-main {
  min-width: 0;
}

/* 详情 Hero */
.detail-hero {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 32px;
  box-shadow: var(--shadow-sm);
  margin-bottom: 24px;
}
.detail-hero-header {
  display: flex;
  gap: 24px;
  margin-bottom: 24px;
  align-items: flex-start;
}
.detail-logo-placeholder {
  width: 120px;
  height: 120px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  border-radius: var(--radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent);
  font-weight: 700;
  font-size: 16px;
  text-align: center;
  flex-shrink: 0;
  padding: 10px;
}
.detail-logo-placeholder.factory-logo {
  font-size: 14px;
}
.detail-title-wrap {
  flex: 1;
}
.detail-title-wrap h1 {
  font-size: 28px;
  color: var(--color-primary);
  margin: 0 0 8px 0;
  line-height: 1.3;
}
.detail-en {
  color: var(--color-text-muted);
  font-size: 14px;
  margin-bottom: 12px;
}
.detail-badges {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.detail-info-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  padding-top: 20px;
  border-top: 1px solid var(--color-border);
}
.info-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.info-label {
  font-size: 13px;
  color: var(--color-text-muted);
}
.info-value {
  font-size: 15px;
  color: var(--color-text-primary);
  font-weight: 500;
}

/* 详情区块 */
.detail-section {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 28px 32px;
  box-shadow: var(--shadow-sm);
  margin-bottom: 24px;
}
.detail-section h2 {
  font-size: 20px;
  color: var(--color-primary);
  margin: 0 0 16px 0;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--color-accent);
  display: inline-block;
}
.detail-section p {
  font-size: 15px;
  line-height: 1.8;
  color: var(--color-text-secondary);
  margin-bottom: 14px;
}
.detail-section ul {
  margin: 0 0 16px 0;
  padding-left: 20px;
}
.detail-section li {
  font-size: 15px;
  line-height: 2;
  color: var(--color-text-secondary);
}
.detail-tags {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.detail-contact p {
  font-size: 15px;
  line-height: 2;
  margin-bottom: 8px;
}
.detail-warning {
  background: #fef9e7;
  border-left: 4px solid var(--color-accent);
  padding: 16px 20px;
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  margin-top: 16px;
}
.detail-warning p {
  margin: 0;
  font-size: 14px;
  color: #92400e;
}

/* 侧边栏 */
.detail-side {
  position: sticky;
  top: 80px;
}
.side-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 24px;
  box-shadow: var(--shadow-sm);
  margin-bottom: 20px;
}
.side-card h3 {
  font-size: 17px;
  color: var(--color-primary);
  margin: 0 0 16px 0;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--color-border);
}
.side-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.side-list li {
  padding: 10px 0;
  border-bottom: 1px dashed var(--color-border);
}
.side-list li:last-child {
  border-bottom: none;
}
.side-list a {
  color: var(--color-text-secondary);
  text-decoration: none;
  font-size: 14px;
  transition: var(--transition-base);
}
.side-list a:hover {
  color: var(--color-accent-dark);
}
.cert-box {
  text-align: center;
  padding: 16px 0;
  margin-bottom: 16px;
  background: linear-gradient(135deg, #fef9e7, #fff);
  border-radius: var(--radius-md);
}
.cert-icon {
  font-size: 40px;
  margin-bottom: 8px;
}
.cert-box p {
  margin: 4px 0;
  font-size: 14px;
}
.cert-desc {
  font-size: 12px !important;
  color: var(--color-text-muted) !important;
}
.contact-box {
  text-align: center;
  padding: 16px 0;
  margin-bottom: 16px;
  background: var(--color-bg);
  border-radius: var(--radius-md);
}
.contact-name {
  font-size: 15px;
  color: var(--color-text-primary);
  margin: 0 0 8px 0;
}
.contact-phone {
  font-size: 18px;
  color: var(--color-accent-dark);
  font-weight: 600;
  margin: 0;
}
.value-add-box {
  background: var(--color-bg);
  border-radius: var(--radius-md);
  padding: 16px;
  margin: 20px 0;
}
.value-add-box h4 {
  font-size: 15px;
  color: var(--color-primary);
  margin: 0 0 12px 0;
}
.value-add-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.value-add-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  background: var(--color-surface);
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: var(--transition-base);
}
.value-add-item:hover {
  box-shadow: var(--shadow-sm);
}
.value-add-item input {
  flex-shrink: 0;
}
.value-add-item > div {
  flex: 1;
}
.value-add-item strong {
  display: block;
  font-size: 14px;
  color: var(--color-text-primary);
  margin-bottom: 2px;
}
.value-add-item span {
  font-size: 12px;
  color: var(--color-text-muted);
}
.value-add-item em {
  font-style: normal;
  color: var(--color-accent-dark);
  font-weight: 600;
  font-size: 14px;
}

/* 文章详情页 */
.article-header {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 32px;
  box-shadow: var(--shadow-sm);
  margin-bottom: 24px;
}
.article-cats {
  margin-bottom: 16px;
  display: flex;
  gap: 8px;
}
.article-title {
  font-size: 30px;
  color: var(--color-primary);
  line-height: 1.4;
  margin: 0 0 16px 0;
}
.article-meta {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  font-size: 13px;
  color: var(--color-text-muted);
  padding-top: 16px;
  border-top: 1px solid var(--color-border);
}
.article-summary {
  background: var(--color-bg);
  padding: 16px 20px;
  border-left: 4px solid var(--color-accent);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  margin-bottom: 24px;
  font-size: 15px;
  color: var(--color-text-secondary);
  line-height: 1.8;
}
.article-content {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 32px;
  box-shadow: var(--shadow-sm);
  margin-bottom: 24px;
}
.article-content p {
  font-size: 16px;
  line-height: 2;
  color: var(--color-text-secondary);
  margin-bottom: 18px;
  text-indent: 2em;
}
.article-keywords {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 20px 32px;
  box-shadow: var(--shadow-sm);
  margin-bottom: 24px;
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
}
.article-keywords span:first-child {
  font-weight: 600;
  color: var(--color-text-primary);
  font-size: 14px;
}
.article-footer-note {
  background: #f7fafc;
  border-radius: var(--radius-md);
  padding: 16px 20px;
  font-size: 13px;
  color: var(--color-text-muted);
  line-height: 1.8;
}
.article-footer-note p {
  margin: 4px 0;
}

/* 资讯列表 */
.news-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.news-item {
  display: block;
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: 20px 24px;
  box-shadow: var(--shadow-sm);
  transition: var(--transition-base);
  text-decoration: none;
  color: inherit;
  border: 1px solid transparent;
}
.news-item:hover {
  box-shadow: var(--shadow-gold);
  border-color: var(--color-accent);
  transform: translateX(4px);
}
.news-item-content h3 {
  font-size: 18px;
  color: var(--color-text-primary);
  margin: 8px 0 10px 0;
  line-height: 1.5;
  transition: var(--transition-base);
}
.news-item:hover h3 {
  color: var(--color-accent-dark);
}
.news-item-tags {
  display: flex;
  gap: 8px;
  margin-bottom: 8px;
}
.news-item p {
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin: 0 0 12px 0;
}
.news-item-meta {
  display: flex;
  gap: 16px;
  font-size: 12px;
  color: var(--color-text-muted);
}

/* 生活服务详情 */
.life-detail .life-detail-title {
  font-size: 26px;
  margin: 12px 0 20px 0;
}
.life-detail-price {
  background: #fff8e1;
  padding: 16px 20px;
  border-radius: var(--radius-md);
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 16px;
}
.life-detail-price .price-label {
  font-size: 14px;
  color: var(--color-text-secondary);
}
.life-detail-price .price-num {
  font-size: 36px;
  font-weight: 700;
  color: var(--color-danger);
}
.life-detail-price .price-unit {
  font-size: 14px;
  color: var(--color-text-secondary);
}
.life-detail-meta {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  font-size: 14px;
  color: var(--color-text-secondary);
}
.life-detail-tags {
  display: flex;
  gap: 8px;
  margin-bottom: 8px;
}
.list-more {
  text-align: center;
  margin-top: 24px;
}

/* 响应式 */
@media (max-width: 1023px) {
  .detail-layout {
    grid-template-columns: 1fr;
  }
  .detail-side {
    position: static;
  }
}
@media (max-width: 767px) {
  .detail-hero { padding: 20px; }
  .detail-hero-header { flex-direction: column; gap: 16px; }
  .detail-logo-placeholder { width: 80px; height: 80px; font-size: 12px; }
  .detail-title-wrap h1 { font-size: 22px; }
  .detail-info-grid { grid-template-columns: repeat(2, 1fr); }
  .detail-section { padding: 20px; }
  .detail-section h2 { font-size: 18px; }
  .article-header { padding: 20px; }
  .article-title { font-size: 22px; }
  .article-content { padding: 20px; }
  .article-content p { font-size: 15px; text-indent: 1.5em; }
}

/* ========================================
   Part 13: Visual Design System / 全站视觉统一层
   - 统一 Design Tokens
   - 统一原子组件（按钮/卡片/标签/徽章/表单）
   - 统一页面骨架（hero/section/breadcrumb/页脚）
   - 统一导航栏视觉
   - 统一详情页视觉
   ======================================== */

/* ---- Design Tokens 二次校准 ---- */
:root {
  /* 间距标尺 (8px基准) */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;

  /* 圆角规范 */
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 10px;
  --radius-xl: 16px;
  --radius-full: 9999px;

  /* 阴影规范（三级）*/
  --shadow-xs: 0 1px 2px rgba(26, 54, 93, 0.05);
  --shadow-sm: 0 2px 8px rgba(26, 54, 93, 0.06);
  --shadow-md: 0 4px 16px rgba(26, 54, 93, 0.08);
  --shadow-lg: 0 8px 28px rgba(26, 54, 93, 0.12);
  --shadow-gold: 0 4px 16px rgba(214, 158, 46, 0.15);
  --shadow-gold-lg: 0 8px 28px rgba(214, 158, 46, 0.2);

  /* 过渡规范 */
  --transition-fast: 0.15s ease;
  --transition-base: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 0.4s cubic-bezier(0.4, 0, 0.2, 1);

  /* 字体层级 */
  --text-xs: 12px;
  --text-sm: 13px;
  --text-base: 15px;
  --text-lg: 17px;
  --text-xl: 20px;
  --text-2xl: 24px;
  --text-3xl: 30px;
  --text-4xl: 38px;
  --text-5xl: 48px;

  /* 行高 */
  --leading-tight: 1.25;
  --leading-normal: 1.6;
  --leading-relaxed: 1.8;
}

/* ---- 全局字体与基础 ---- */
body {
  font-size: var(--text-base);
  line-height: var(--leading-normal);
  color: var(--color-text-primary);
  background: var(--color-bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* 所有页面统一 body 样式 */
.page-main {
  padding-top: 0;
  min-height: calc(100vh - 200px);
}

/* ---- 统一 Section 区块 ---- */
.page-section {
  padding: var(--space-12) 0;
}
.page-section:nth-child(even) {
  /* 偶数section保持底色一致，不做交替避免不统一 */
}

.section-header {
  text-align: center;
  margin-bottom: var(--space-10);
}
.section-title {
  font-size: var(--text-3xl);
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: var(--space-3);
  letter-spacing: -0.01em;
  line-height: var(--leading-tight);
}
.section-desc {
  font-size: var(--text-base);
  color: var(--color-text-secondary);
  margin: 0;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
  line-height: var(--leading-relaxed);
}

/* ---- 统一按钮 ---- */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: 10px 22px;
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition-base);
  border: 1.5px solid transparent;
  text-decoration: none;
  font-family: inherit;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
.btn:hover {
  }
.btn:active {
  transform: translateY(0);
}
.btn-primary {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  color: var(--color-accent);
  border-color: var(--color-primary);
  box-shadow: 0 2px 6px rgba(26, 54, 93, 0.2);
}
.btn-primary:hover {
  background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-primary) 100%);
  box-shadow: var(--shadow-md);
  color: var(--color-accent-light);
}
.btn-outline {
  background: transparent;
  color: var(--color-primary);
  border-color: var(--color-primary);
}
.btn-outline:hover {
  background: var(--color-primary);
  color: var(--color-accent);
}
.btn-gold {
  background: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-light) 100%);
  color: var(--color-primary-dark);
  border-color: var(--color-accent);
  font-weight: 700;
}
.btn-gold:hover {
  box-shadow: var(--shadow-gold);
}
.btn-lg {
  padding: 13px 30px;
  font-size: var(--text-base);
}
.btn-block {
  display: flex;
  width: 100%;
}
.btn-sm {
  padding: 6px 14px;
  font-size: var(--text-xs);
}

/* ---- 统一标签 Tag ---- */
.tag {
  display: inline-flex;
  align-items: center;
  padding: 3px 10px;
  border-radius: var(--radius-full);
  font-size: var(--text-xs);
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.02em;
}
.tag-gold {
  background: linear-gradient(135deg, rgba(214, 158, 46, 0.12), rgba(214, 158, 46, 0.06));
  color: var(--color-accent-dark);
  border: 1px solid rgba(214, 158, 46, 0.25);
}
.tag-blue {
  background: linear-gradient(135deg, rgba(26, 54, 93, 0.08), rgba(26, 54, 93, 0.04));
  color: var(--color-primary);
  border: 1px solid rgba(26, 54, 93, 0.15);
}
.tag-green {
  background: linear-gradient(135deg, rgba(56, 161, 105, 0.1), rgba(56, 161, 105, 0.05));
  color: var(--color-success);
  border: 1px solid rgba(56, 161, 105, 0.2);
}
.tag-red {
  background: linear-gradient(135deg, rgba(229, 62, 62, 0.1), rgba(229, 62, 62, 0.05));
  color: var(--color-danger);
  border: 1px solid rgba(229, 62, 62, 0.2);
}
.tag-gray {
  background: var(--color-bg);
  color: var(--color-text-muted);
  border: 1px solid var(--color-border);
}

/* ---- 统一卡片悬停 ---- */
.brand-card, .factory-card, .store-card, .news-item, .life-post-card, .join-type-card {
  transition: var(--transition-base);
}

/* ---- 统一面包屑 ---- */
.breadcrumb {
  background: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  padding: var(--space-3) 0;
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}
.breadcrumb a {
  color: var(--color-text-secondary);
  text-decoration: none;
  transition: var(--transition-fast);
}
.breadcrumb a:hover {
  color: var(--color-accent-dark);
}
.breadcrumb .sep {
  margin: 0 var(--space-2);
  color: var(--color-border);
}
.breadcrumb span:last-child {
  color: var(--color-primary);
  font-weight: 500;
}

/* ---- 统一导航栏 ---- */
.site-header {
  background: var(--color-primary);
  border-bottom: 1px solid rgba(214, 158, 46, 0.2);
  position: sticky;
  top: 0;
  z-index: 100;
  backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 rgba(214, 158, 46, 0.1);
}
.site-header.scrolled {
  background: rgba(15, 36, 64, 0.95);
  box-shadow: var(--shadow-sm);
}
.nav-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 64px;
}
.site-logo {
  display: flex;
  flex-direction: column;
  line-height: 1;
  text-decoration: none;
  gap: 2px;
}
.logo-text {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-accent);
  letter-spacing: 0.05em;
  font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
}
.logo-sub {
  font-size: 10px;
  color: rgba(255, 255, 255, 0.6);
  letter-spacing: 0.1em;
}
.main-nav ul {
  display: flex;
  gap: var(--space-2);
  list-style: none;
  padding: 0;
  margin: 0;
  align-items: center;
}
.main-nav a {
  display: block;
  padding: var(--space-2) var(--space-4);
  color: rgba(255, 255, 255, 0.85);
  text-decoration: none;
  font-size: var(--text-sm);
  font-weight: 500;
  border-radius: var(--radius-md);
  transition: var(--transition-fast);
  position: relative;
}
.main-nav a:hover,
.main-nav a.active {
  color: var(--color-accent);
  background: rgba(214, 158, 46, 0.1);
}
.main-nav a.nav-join {
  background: var(--color-accent);
  color: var(--color-primary-dark);
  font-weight: 700;
  padding: 8px 18px;
  border-radius: var(--radius-md);
}
.main-nav a.nav-join:hover {
  background: var(--color-accent-light);
  color: var(--color-primary-dark);
  }

/* ---- 统一页脚 ---- */
.site-footer {
  background: linear-gradient(180deg, var(--color-primary-dark) 0%, #0a1a2e 100%);
  color: rgba(255, 255, 255, 0.7);
  padding: var(--space-12) 0 0;
  margin-top: var(--space-12);
  border-top: 1px solid rgba(214, 158, 46, 0.15);
}
.footer-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--space-8);
  padding-bottom: var(--space-10);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.footer-title {
  color: var(--color-accent);
  font-size: var(--text-base);
  font-weight: 700;
  margin: 0 0 var(--space-4) 0;
  letter-spacing: 0.02em;
}
.footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-links li {
  margin-bottom: var(--space-2);
}
.footer-links a {
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  font-size: var(--text-sm);
  transition: var(--transition-fast);
}
.footer-links a:hover {
  color: var(--color-accent);
  padding-left: 4px;
}
.footer-bottom {
  padding: var(--space-6) 0;
  text-align: center;
  font-size: var(--text-sm);
  color: rgba(255, 255, 255, 0.4);
}

/* ---- 统一容器宽度 ---- */
.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--space-4);
}

/* ---- 统一 Hero 区 ---- */
/* 深底Hero通用模式 */
.join-hero,
.pricing-hero {
  position: relative;
  overflow: hidden;
}
.join-hero::before,
.pricing-hero::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(214, 158, 46, 0.1) 0%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
}

/* ---- 统一表单 ---- */
.form-control {
  width: 100%;
  padding: 10px 14px;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  transition: var(--transition-fast);
  font-family: inherit;
  background: var(--color-surface);
  color: var(--color-text-primary);
  box-sizing: border-box;
}
.form-control:focus {
  outline: none;
  border-color: var(--color-accent);
  box-shadow: 0 0 0 4px rgba(214, 158, 46, 0.1);
}
.form-group label {
  font-size: var(--text-sm);
  font-weight: 500;
  color: var(--color-text-primary);
  margin-bottom: var(--space-2);
}
.form-group label .req {
  color: var(--color-danger);
  margin-left: 2px;
}

/* ---- 统一 FAQ ---- */
.faq-section {
  background: var(--color-surface);
}
.faq-list {
  max-width: 800px;
  margin: 0 auto;
}
.faq-item {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  margin-bottom: var(--space-3);
  overflow: hidden;
  transition: var(--transition-fast);
}
.faq-item:hover {
  border-color: rgba(214, 158, 46, 0.3);
}
.faq-q {
  padding: var(--space-5) var(--space-6);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-weight: 600;
  color: var(--color-text-primary);
  font-size: var(--text-base);
  background: var(--color-surface);
  transition: var(--transition-fast);
}
.faq-q:hover {
  background: var(--color-bg);
}
.faq-num {
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: var(--color-accent);
  padding: 2px 10px;
  border-radius: var(--radius-full);
  font-size: var(--text-xs);
  font-weight: 700;
  flex-shrink: 0;
}
.faq-icon {
  margin-left: auto;
  color: var(--color-accent);
  font-weight: 700;
  font-size: 18px;
  transition: var(--transition-fast);
  flex-shrink: 0;
}
.faq-item.open .faq-icon {
  transform: rotate(45deg);
}
.faq-a {
  padding: 0 var(--space-6);
  max-height: 0;
  overflow: hidden;
  transition: max-height var(--transition-slow), padding var(--transition-base);
  color: var(--color-text-secondary);
  font-size: var(--text-sm);
  line-height: var(--leading-relaxed);
}
.faq-item.open .faq-a {
  padding: 0 var(--space-6) var(--space-5);
  max-height: 500px;
}

/* ---- 统一详情页 ---- */
.detail-hero {
  border-left: 4px solid var(--color-accent);
  border-radius: 0 var(--radius-lg) var(--radius-lg) 0;
}
.detail-section h2 {
  position: relative;
  display: inline-block;
}
.detail-section h2::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, var(--color-accent) 0%, transparent 100%);
  border-radius: 2px;
}

/* ---- 统一合规条 ---- */
.compliance-disclaimer {
  background: linear-gradient(90deg, #fffbeb 0%, #fef9e7 100%);
  border-bottom: 1px solid rgba(214, 158, 46, 0.15);
  padding: 8px 0;
  font-size: var(--text-xs);
  color: #92400e;
}
.compliance-disclaimer strong {
  color: var(--color-accent-dark);
}

/* ---- 数字与强调 ---- */
.number-highlight {
  font-weight: 800;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-light));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ---- 响应式全局 ---- */
@media (max-width: 1023px) {
  .section-title { font-size: var(--text-2xl); }
  .page-section { padding: var(--space-10) 0; }
  .footer-grid { grid-template-columns: repeat(3, 1fr); }
  .nav-container { height: 60px; }
}

@media (max-width: 767px) {
  .section-title { font-size: var(--text-xl); }
  .section-desc { font-size: var(--text-sm); }
  .page-section { padding: var(--space-8) 0; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-6); }
  .section-header { margin-bottom: var(--space-6); }
  .logo-text { font-size: 18px; }
  .logo-sub { font-size: 9px; }
  .nav-container { height: 56px; }
  .main-nav ul { gap: var(--space-1); }
  .main-nav a { padding: var(--space-1) var(--space-2); font-size: 12px; }
}

/* ========================================
   Part 14: GEO + UX 体验增强
   - 城市分站网格
   - 周边城市内链条
   - 数据来源框
   - 返回顶部按钮
   - 进度条
   - 滚动动效
   ======================================== */

/* ---- 城市分站网格 ---- */
.city-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
}
.city-grid-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  text-decoration: none;
  transition: var(--transition-base);
  position: relative;
  overflow: hidden;
}
.city-grid-item::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-primary));
  opacity: 0;
  transition: var(--transition-base);
}
.city-grid-item:hover {
  border-color: var(--color-accent);
  box-shadow: var(--shadow-gold);
  }
.city-grid-item:hover::before {
  opacity: 1;
}
.city-grid-item .city-name {
  font-size: var(--text-lg);
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 4px;
}
.city-grid-item .city-meta {
  font-size: 12px;
  color: var(--color-text-muted);
}

@media (max-width: 1023px) {
  .city-grid { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 767px) {
  .city-grid { grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .city-grid-item { padding: 14px 8px; }
  .city-grid-item .city-name { font-size: var(--text-base); }
}

/* ---- 数据来源框 ---- */
.data-source-box {
  margin-top: 32px;
  padding: 20px;
  background: linear-gradient(135deg, rgba(26, 54, 93, 0.03), rgba(214, 158, 46, 0.04));
  border: 1px solid rgba(214, 158, 46, 0.15);
  border-radius: var(--radius-lg);
  font-size: var(--text-sm);
  line-height: 1.8;
}
.data-source-box > div:first-child {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  font-weight: 600;
  color: var(--color-primary);
}
.data-source-box ul {
  margin: 0;
  padding-left: 20px;
  color: var(--color-text-secondary);
}

/* ---- 返回顶部按钮 ---- */
.back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 44px;
  height: 44px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: var(--color-accent);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  font-size: 18px;
  box-shadow: var(--shadow-md);
  transition: var(--transition-base);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  z-index: 99;
  display: flex;
  align-items: center;
  justify-content: center;
}
.back-to-top.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.back-to-top:hover {
  box-shadow: var(--shadow-gold);
  }

/* ---- 阅读进度条 ---- */
.reading-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--color-accent), var(--color-accent-light));
  z-index: 101;
  width: 0%;
  transition: width 0.1s linear;
}

/* ---- 周边城市内链条 ---- */
.city-related-bar {
  background: var(--color-surface);
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
  padding: 16px 0;
}
.city-related-bar .container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  font-size: var(--text-sm);
}
.city-related-bar > span:first-child {
  font-weight: 600;
  color: var(--color-primary);
  flex-shrink: 0;
}
.city-related-bar a {
  color: var(--color-text-secondary);
  text-decoration: none;
  transition: var(--transition-fast);
  margin: 0 4px;
}
.city-related-bar a:hover {
  color: var(--color-accent-dark);
}

/* ---- 卡片 hover 统一强化 ---- */
.brand-card:hover,
.factory-card:hover,
.news-item:hover,
.association-card:hover,
.store-card:hover,
.property-card:hover,
.franchise-card:hover,
.join-type-card:hover { box-shadow: var(--shadow-md);
  border-color: rgba(214, 158, 46, 0.3);
}

/* ---- 聚焦态无障碍增强 ---- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 2px;
  border-radius: 3px;
}

/* ---- 滚动出现动画 ---- */
.reveal {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* ---- 文章目录 & 小标题 ---- */
.article-toc {
  background: linear-gradient(135deg, rgba(26, 54, 93, 0.03), rgba(214, 158, 46, 0.03));
  border: 1px solid rgba(26, 54, 93, 0.1);
  border-radius: 10px;
  padding: 20px 24px;
  margin-bottom: 32px;
}
.article-toc > div:first-child {
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.article-toc ol {
  margin: 0;
  padding-left: 22px;
  color: var(--color-text-secondary);
  font-size: var(--text-sm);
  line-height: 2.2;
}
.article-toc a {
  color: var(--color-text-secondary);
  text-decoration: none;
  transition: var(--transition-fast);
  border-bottom: 1px dashed transparent;
}
.article-toc a:hover {
  color: var(--color-accent-dark);
  border-bottom-color: var(--color-accent);
}

/* 文章正文小标题 */
.article-content h2 {
  font-size: var(--text-xl);
  font-weight: 700;
  color: var(--color-primary);
  margin: 36px 0 16px 0;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--color-border);
  position: relative;
  scroll-margin-top: 80px;
}
.article-content h2::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 60px;
  height: 2px;
  background: var(--color-accent);
}
.article-content p {
  margin-bottom: 16px;
  line-height: var(--leading-relaxed);
}

/* ========================================
   Part 15: 全站头部视觉统一
   - 标准导航栏（Logo + 菜单项 + 登录/入驻）
   - 标准免责声明条
   - 移动端汉堡菜单
   ======================================== */

/* ---- 标准导航 ---- */
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: linear-gradient(180deg, rgba(26, 54, 93, 0.98), rgba(26, 54, 93, 0.95));
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(214, 158, 46, 0.2);
  transition: background 0.3s ease, box-shadow 0.3s ease;
}
.site-header.scrolled {
  background: rgba(15, 36, 64, 0.97);
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.15);
}
.nav-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 64px;
  gap: 24px;
}

/* Logo */
.site-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.site-logo:hover {
  }
.logo-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: linear-gradient(135deg, #E6B03A 0%, #D69E2E 50%, #B08020 100%);
  color: #1A365D;
  font-size: 20px;
  font-weight: 900;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(214, 158, 46, 0.3);
  font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
}
.logo-text {
  font-size: 22px;
  font-weight: 800;
  color: #D69E2E;
  letter-spacing: 0.03em;
  font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
  line-height: 1;
}

/* 主导航 */
.main-nav {
  flex: 1;
  display: flex;
  justify-content: center;
}
.main-nav ul {
  display: flex;
  align-items: center;
  gap: 4px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.main-nav li {
  margin: 0;
}
.nav-link {
  display: block;
  padding: 8px 16px;
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  border-radius: 6px;
  transition: all 0.2s ease;
  position: relative;
}
.nav-link:hover {
  color: #D69E2E;
  background: rgba(214, 158, 46, 0.1);
}
.nav-link.active {
  color: #D69E2E;
  font-weight: 600;
  background: rgba(214, 158, 46, 0.12);
}
.nav-link.active::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 24px;
  height: 2px;
  background: linear-gradient(90deg, #D69E2E, #E6B03A);
  border-radius: 2px;
}

/* 右侧操作区 */
.nav-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.nav-login {
  color: rgba(255, 255, 255, 0.7) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
}
.nav-login:hover {
  color: #D69E2E !important;
  border-color: #D69E2E !important;
  background: transparent !important;
}
.nav-join-btn {
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(214, 158, 46, 0.25);
}
.nav-join-btn:hover {
  box-shadow: 0 4px 12px rgba(214, 158, 46, 0.4);
  }

/* 汉堡菜单 */
.menu-toggle {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  width: 36px;
  height: 36px;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 6px;
  cursor: pointer;
  padding: 0;
}
.menu-toggle span {
  display: block;
  width: 18px;
  height: 2px;
  background: #D69E2E;
  margin: 0 auto;
  border-radius: 1px;
  transition: all 0.3s ease;
}

/* ---- 免责声明条 ---- */
.compliance-disclaimer {
  background: linear-gradient(90deg, #FFFBEB 0%, #FEF5D7 50%, #FFFBEB 100%);
  border-bottom: 1px solid rgba(214, 158, 46, 0.15);
  padding: 10px 0;
}
.compliance-disclaimer .container {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.cd-icon {
  color: #D69E2E;
  font-size: 16px;
  flex-shrink: 0;
  margin-top: 1px;
}
.cd-text {
  font-size: 12px;
  line-height: 1.7;
  color: #92400e;
  flex: 1;
}
.cd-text strong {
  color: #B08020;
  font-weight: 600;
}

/* ---- 响应式 ---- */
@media (max-width: 1023px) {
  .nav-container {
    height: 56px;
    gap: 12px;
  }
  .logo-icon {
    width: 32px;
    height: 32px;
    font-size: 18px;
    border-radius: 7px;
  }
  .logo-text {
    font-size: 18px;
  }
  .main-nav {
    display: none;
  }
  .menu-toggle {
    display: flex;
  }
  .nav-actions {
    gap: 6px;
  }
  /* 登录入口保持可点（原 display:none 导致平板无法进登录页） */
  .nav-actions .nav-login {
    display: inline-flex;
    padding: 5px 12px;
    font-size: 12px;
  }
}

@media (max-width: 767px) {
  .nav-container {
    height: 52px;
  }
  .logo-text {
    display: none;
  }
  .nav-join-btn {
    padding: 6px 12px !important;
    font-size: 12px !important;
  }
  .compliance-disclaimer {
    padding: 8px 0;
  }
  .cd-text {
    font-size: 11px;
    line-height: 1.6;
  }
}

/* ========================================
   Part 16: 统一 Hero 区（各栏目通用）
   ======================================== */

.unified-hero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #0F2440 0%, #1A365D 50%, #2A4A7D 100%);
  padding: 64px 0 72px;
  color: #fff;
}
.unified-hero::before {
  content: '';
  position: absolute;
  top: -100px;
  right: -100px;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(214, 158, 46, 0.12) 0%, transparent 65%);
  border-radius: 50%;
  pointer-events: none;
}
.unified-hero::after {
  content: '';
  position: absolute;
  bottom: -80px;
  left: -60px;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(42, 74, 125, 0.5) 0%, transparent 60%);
  border-radius: 50%;
  pointer-events: none;
}
.uh-inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 48px;
  align-items: center;
}

/* 左侧 */
.uh-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
}
.uh-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 14px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 20px;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.75);
  font-weight: 500;
}
.uh-badge.gold {
  background: linear-gradient(135deg, rgba(214, 158, 46, 0.2), rgba(214, 158, 46, 0.08));
  border-color: rgba(214, 158, 46, 0.35);
  color: #E6B03A;
}
.uh-title {
  font-size: 42px;
  font-weight: 800;
  line-height: 1.2;
  margin: 0 0 16px 0;
  color: #fff;
  letter-spacing: -0.02em;
}
.uh-title-gold {
  background: linear-gradient(135deg, #E6B03A 0%, #D69E2E 50%, #B08020 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.uh-desc {
  font-size: 15px;
  line-height: 1.8;
  color: rgba(255, 255, 255, 0.7);
  margin: 0 0 28px 0;
  max-width: 560px;
}

/* 搜索框 */
.uh-search {
  display: flex;
  max-width: 560px;
  margin-bottom: 20px;
}
.uh-search-input-wrap {
  flex: 1;
  position: relative;
  background: #fff;
  border-radius: 10px 0 0 10px;
  display: flex;
  align-items: center;
}
.uh-search-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  opacity: 0.5;
}
.uh-search-input {
  width: 100%;
  padding: 14px 16px 14px 42px;
  border: none;
  background: transparent;
  font-size: 14px;
  color: #1A202C;
  font-family: inherit;
  outline: none;
}
.uh-search-input::placeholder {
  color: #A0AEC0;
}
.uh-search-btn {
  border-radius: 0 10px 10px 0 !important;
  padding: 0 28px !important;
  height: 52px;
  font-size: 15px;
  font-weight: 700;
  white-space: nowrap;
}

/* 热门搜索 */
.uh-hot {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.5);
}
.uh-hot-label {
  flex-shrink: 0;
}
.uh-hot-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.uh-hot-tags a {
  color: rgba(255, 255, 255, 0.65);
  text-decoration: none;
  padding: 4px 12px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 20px;
  font-size: 12px;
  transition: all 0.2s ease;
}
.uh-hot-tags a:hover {
  color: #D69E2E;
  border-color: rgba(214, 158, 46, 0.4);
  background: rgba(214, 158, 46, 0.1);
}

/* 右侧数据卡 */
.uh-right {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.uh-stats-card {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  padding: 24px;
  backdrop-filter: blur(10px);
}
.uh-stats-title {
  font-size: 14px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 18px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.uh-stats-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.uh-stat-item {
  text-align: left;
}
.uh-stat-num {
  font-size: 26px;
  font-weight: 800;
  color: #E6B03A;
  line-height: 1.2;
  margin-bottom: 4px;
}
.uh-stat-num span {
  font-size: 14px;
  font-weight: 600;
  margin-left: 2px;
  opacity: 0.7;
}
.uh-stat-label {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.55);
}

.uh-ai-badge {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  background: rgba(214, 158, 46, 0.08);
  border: 1px solid rgba(214, 158, 46, 0.2);
  border-radius: 12px;
}
.uh-ai-icon {
  font-size: 24px;
  flex-shrink: 0;
}
.uh-ai-title {
  font-size: 14px;
  font-weight: 700;
  color: #E6B03A;
  margin-bottom: 2px;
}
.uh-ai-sub {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.6);
}

/* 装饰元素 */
.uh-decoration {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 40px;
  background: linear-gradient(180deg, transparent, rgba(245, 247, 250, 0.08));
  pointer-events: none;
}

/* ---- Hero 响应式 ---- */
@media (max-width: 1023px) {
  .unified-hero {
    padding: 48px 0 56px;
  }
  .uh-inner {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .uh-title {
    font-size: 32px;
  }
  .uh-right {
    max-width: 500px;
  }
}

@media (max-width: 767px) {
  .unified-hero {
    padding: 32px 0 40px;
  }
  .uh-title {
    font-size: 24px;
  }
  .uh-desc {
    font-size: 13px;
    line-height: 1.7;
  }
  .uh-search {
    flex-direction: column;
    gap: 8px;
  }
  .uh-search-input-wrap {
    border-radius: 10px;
  }
  .uh-search-btn {
    border-radius: 10px !important;
    width: 100%;
    height: 46px;
  }
  .uh-stats-grid {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .uh-stat-num {
    font-size: 22px;
  }
}

/* ========================================
   Part 17: 最终统一导航（#siteHeader 高权重）
   覆盖所有历史版本的导航样式
   ======================================== */

#siteHeader {
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000 !important;
  width: 100%;
  height: 64px;
  background: #1A365D !important;
  background-color: #1A365D !important;
  border-bottom: 1px solid rgba(214, 158, 46, 0.2) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
#siteHeader.scrolled {
  background: #0F2440 !important;
  background-color: #0F2440 !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.15) !important;
}
#siteHeader .nav-container {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  height: 64px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  gap: 20px !important;
  flex-wrap: nowrap !important;
}

/* Logo */
#siteHeader .site-logo {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  padding: 0 !important;
  margin: 0 !important;
  text-decoration: none !important;
  flex-shrink: 0 !important;
  width: auto !important;
  height: auto !important;
}
#siteHeader .site-logo::before,
#siteHeader .site-logo::after {
  display: none !important;
}
#siteHeader .logo-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  background: linear-gradient(135deg, #E6B03A 0%, #D69E2E 50%, #B08020 100%) !important;
  color: #1A365D !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  border-radius: 8px !important;
  box-shadow: 0 2px 8px rgba(214, 158, 46, 0.3) !important;
  font-family: "PingFang SC", "Microsoft YaHei", sans-serif !important;
  text-align: center !important;
  position: static !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
}
#siteHeader .logo-text {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #D69E2E !important;
  letter-spacing: 0.03em !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  display: inline !important;
  width: auto !important;
  height: auto !important;
  background: none !important;
  -webkit-text-fill-color: #D69E2E !important;
}
#siteHeader .logo-text span {
  color: #D69E2E !important;
  font-size: inherit !important;
  font-weight: inherit !important;
}
#siteHeader .logo-sub {
  display: none !important;
}

/* 主导航 */
#siteHeader .main-nav {
  flex: 1 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  height: auto !important;
  float: none !important;
  position: static !important;
  top: auto !important;
  transform: none !important;
  right: auto !important;
}
#siteHeader .main-nav ul {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
  flex-wrap: nowrap !important;
  width: auto !important;
  height: auto !important;
}
#siteHeader .main-nav li {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  display: list-item !important;
  width: auto !important;
  height: auto !important;
}
#siteHeader .main-nav .nav-link,
#siteHeader .main-nav a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 18px !important;
  color: rgba(255, 255, 255, 0.8) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  border-radius: 6px !important;
  transition: all 0.2s ease !important;
  position: relative !important;
  height: auto !important;
  background: transparent !important;
  border: none !important;
  float: none !important;
  margin: 0 !important;
  text-align: center !important;
}
#siteHeader .main-nav .nav-link:hover,
#siteHeader .main-nav a:hover {
  color: #D69E2E !important;
  background: rgba(214, 158, 46, 0.1) !important;
}
#siteHeader .main-nav .nav-link.active,
#siteHeader .main-nav a.active {
  color: #D69E2E !important;
  font-weight: 600 !important;
  background: rgba(214, 158, 46, 0.12) !important;
}
#siteHeader .main-nav .nav-link.active::after,
#siteHeader .main-nav a.active::after {
  content: '' !important;
  position: absolute !important;
  bottom: 2px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 24px !important;
  height: 2px !important;
  background: linear-gradient(90deg, #D69E2E, #E6B03A) !important;
  border-radius: 2px !important;
  display: block !important;
}

/* 右侧操作区 */
#siteHeader .nav-actions {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  height: auto !important;
  float: none !important;
}
#siteHeader .nav-actions .btn {
  height: auto !important;
  line-height: 1.4 !important;
}
#siteHeader .nav-login {
  color: rgba(255, 255, 255, 0.75) !important;
  border-color: rgba(255, 255, 255, 0.25) !important;
  background: transparent !important;
  padding: 6px 16px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  border-radius: 6px !important;
}
#siteHeader .nav-login:hover {
  color: #D69E2E !important;
  border-color: #D69E2E !important;
  background: transparent !important;
}
#siteHeader .nav-join-btn {
  background: linear-gradient(135deg, #E6B03A, #D69E2E) !important;
  color: #1A365D !important;
  border-color: #D69E2E !important;
  padding: 6px 18px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  border-radius: 6px !important;
  box-shadow: 0 2px 6px rgba(214, 158, 46, 0.3) !important;
}
#siteHeader .nav-join-btn:hover {
  box-shadow: 0 4px 12px rgba(214, 158, 46, 0.4) !important;
  color: #1A365D !important;
  background: linear-gradient(135deg, #F0C24A, #E6B03A) !important;
}

/* 汉堡菜单（移动端才显示） */
#siteHeader .menu-toggle {
  display: none !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 4px !important;
  width: 38px !important;
  height: 38px !important;
  background: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
  position: static !important;
  top: auto !important;
  right: auto !important;
}
#siteHeader .menu-toggle span {
  display: block !important;
  width: 18px !important;
  height: 2px !important;
  background: #D69E2E !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 1px !important;
  transition: all 0.3s ease !important;
  position: static !important;
}

/* ---- 响应式（平板1024以下） ---- */
@media (max-width: 1023px) {
  #siteHeader {
    height: 56px !important;
  }
  #siteHeader .nav-container {
    height: 56px !important;
    padding: 0 16px !important;
    gap: 12px !important;
  }
  #siteHeader .logo-icon {
    width: 32px !important;
    height: 32px !important;
    font-size: 17px !important;
    border-radius: 7px !important;
  }
  #siteHeader .logo-text {
    font-size: 18px !important;
  }
  #siteHeader .main-nav {
    display: none !important;
  }
  #siteHeader .menu-toggle {
    display: flex !important;
  }
  #siteHeader .nav-actions .nav-login {
    display: inline-flex !important;
    padding: 5px 12px !important;
    font-size: 12px !important;
  }
}

/* ---- 响应式（手机768以下） ---- */
@media (max-width: 767px) {
  #siteHeader {
    height: 52px !important;
  }
  #siteHeader .nav-container {
    height: 52px !important;
    padding: 0 12px !important;
    gap: 8px !important;
  }
  #siteHeader .logo-text {
    display: none !important;
  }
  #siteHeader .nav-join-btn {
    padding: 5px 12px !important;
    font-size: 12px !important;
  }
}

/* ========================================
   Part 18: Hero 区修复与保险
   ======================================== */

/* 首页 premium-hero 顶部间距保险（避免导航高度变化挤压） */
.premium-hero {
  padding-top: 60px !important;
  padding-bottom: 80px !important;
  position: relative !important;
  z-index: 1 !important;
  overflow: hidden !important;
}
.premium-hero .ph-inner {
  position: relative !important;
  z-index: 2 !important;
}

/* 统一 hero 顶部间距保险 */
.unified-hero {
  padding-top: 56px !important;
  padding-bottom: 72px !important;
  position: relative !important;
  z-index: 1 !important;
  overflow: hidden !important;
}
.unified-hero .uh-inner {
  position: relative !important;
  z-index: 2 !important;
}

/* 清除可能的 float 塌陷 */
.unified-hero::before,
.unified-hero::after,
.premium-hero::before,
.premium-hero::after {
  content: '';
  display: block;
}

/* 防止统一 hero 内元素被导航通用样式影响 */
.unified-hero .uh-left,
.unified-hero .uh-right {
  width: 100% !important;
  float: none !important;
  display: block !important;
}
.unified-hero .uh-left {
  text-align: left !important;
}
.unified-hero .uh-right {
  text-align: left !important;
}

/* 修复统一 hero 内按钮大小 */
.unified-hero .uh-search-btn {
  height: 52px !important;
  line-height: 52px !important;
  padding: 0 28px !important;
  font-size: 15px !important;
  border-radius: 0 10px 10px 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  margin: 0 !important;
}

/* ========================================
   Part 19: 修复 Hero 上方空白 / page-wrapper 偏移
   ======================================== */

/* 根因：导航是 sticky 流内元素，但 page-wrapper 又加了 padding-top: 64px，造成双倍空间 */
.page-wrapper {
  padding-top: 0 !important;
  padding-top: 0px !important;
}

/* 同步修复所有用了 --nav-height 做 top 定位的元素（移动端抽屉等） */
@media (max-width: 1023px) {
  .page-wrapper {
    padding-top: 0 !important;
  }
}
@media (max-width: 767px) {
  .page-wrapper {
    padding-top: 0 !important;
  }
}

/* 同时确保 main 没有额外的 margin-top */
main[role="main"] {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 修复免责声明条的位置（确保它紧贴导航，没有多余间距） */
.compliance-disclaimer {
  margin-top: 0 !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* 修复 premium-hero 顶部间距 */
.premium-hero {
  margin-top: 0 !important;
}

/* 修复 unified-hero 顶部间距 */
.unified-hero {
  margin-top: 0 !important;
}

/* ========================================
   Part 20: 免责声明条移到底部 + 顶部空隙修复
   ======================================== */

/* 底部免责声明容器 */
.footer-disclaimer {
  background: #FFFBEB;
  border-top: 1px solid rgba(214, 158, 46, 0.15);
  padding: 14px 0;
  margin-top: 0;
}
.footer-disclaimer .compliance-disclaimer {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.footer-disclaimer .cd-text {
  font-size: 12px !important;
  line-height: 1.7 !important;
  color: #92400e !important;
}
.footer-disclaimer .cd-text strong {
  color: #B08020 !important;
}

/* 彻底修复导航与Hero之间的空隙 */
/* 如果有 main 的 padding-top/margin-top 全部清零 */
main,
main[role="main"],
#main-content,
.page-main,
.main-wrap {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* 所有第一个 section 的 margin-top 清零 */
main > section:first-child,
.page-wrapper > section:first-child,
body > section:first-of-type {
  margin-top: 0 !important;
}

/* premium-hero / unified-hero 顶部不留白 */
.premium-hero,
.unified-hero {
  margin-top: 0 !important;
  padding-top: 60px !important;
  padding-bottom: 72px !important;
}

/* 确保导航后直接是Hero，没有中间空白 */
#siteHeader + * {
  margin-top: 0 !important;
}
#siteHeader + .compliance-disclaimer,
#siteHeader + div + .compliance-disclaimer {
  display: none !important;
}

/* ========================================
   Part 21: 导航与Hero无缝衔接修复
   ======================================== */

/* 去掉导航底部边框，与Hero无缝衔接 */
#siteHeader {
  border-bottom: none !important;
  box-shadow: none !important;
}

/* Hero 顶部与导航同色，实现无缝过渡 */
.premium-hero {
  background: linear-gradient(180deg, #1A365D 0%, #1A365D 8%, #0F2440 100%) !important;
  padding-top: 48px !important;
  padding-bottom: 72px !important;
}

.unified-hero {
  background: linear-gradient(180deg, #1A365D 0%, #1A365D 8%, #0F2440 50%, #2A4A7D 100%) !important;
  padding-top: 48px !important;
  padding-bottom: 72px !important;
}

/* 确保导航和hero之间零缝隙 */
#siteHeader + section,
#siteHeader + * + section,
#siteHeader + main,
#siteHeader + div + main,
main > section:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 清除可能的 body margin */
body {
  margin: 0 !important;
}

/* ========================================
   Part 22: 修复 page-wrapper 结构
   ======================================== */

/* 重置 page-wrapper：只做内容包裹，不加顶部间距 */
.page-wrapper {
  position: relative !important;
  width: 100% !important;
  min-height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}

/* 确保 main 里面内容直接顶到导航底部 */
main[role="main"] {
  width: 100% !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* hero 直接贴导航底部 */
main[role="main"] > section:first-child {
  margin-top: 0 !important;
  padding-top: 40px !important;
}

/* 修复可能的 body 空隙 */
/* overflow-x 用 clip 而非 hidden：hidden 使 html/body 成为滚动容器，杀掉全站 position:sticky
   （header/二级吸顶条滚动即失效）；clip 不创建滚动容器。老内核不支持 clip 时降级回 hidden */
html, body {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  overflow-x: hidden !important;
  overflow-x: clip !important;
}

/* ========================================
   Part 23: 资讯跨栏目内容区
   ======================================== */

.cross-content-section {
  background: var(--color-bg);
}
.cross-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.cross-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  transition: var(--transition-base);
}
.cross-card:hover {
  box-shadow: var(--shadow-md);
}
.cross-card-head {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 20px;
  border-bottom: 1px solid var(--color-border);
  background: linear-gradient(135deg, rgba(26, 54, 93, 0.03), rgba(245, 247, 250, 0.5));
}
.cross-card-head.brand { border-left: 3px solid #D69E2E; }
.cross-card-head.factory { border-left: 3px solid #38A169; }
.cross-card-head.assoc { border-left: 3px solid #1A365D; }
.cross-card-head.life { border-left: 3px solid #E53E3E; }

.cross-icon { font-size: 18px; }
.cross-card-head h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  flex: 1;
}
.cross-more {
  font-size: 12px;
  color: var(--color-accent-dark);
  text-decoration: none;
  transition: var(--transition-fast);
}
.cross-more:hover {
  color: var(--color-primary);
}

.cross-list {
  list-style: none;
  padding: 12px 20px 20px;
  margin: 0;
}
.cross-list li {
  padding: 8px 0;
  border-bottom: 1px dashed var(--color-border);
}
.cross-list li:last-child {
  border-bottom: none;
}
.cross-list a {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: var(--color-text-primary);
  text-decoration: none;
  font-size: 13px;
  line-height: 1.5;
  transition: var(--transition-fast);
}
.cross-list a:hover {
  color: var(--color-accent-dark);
}
.cross-tag {
  flex-shrink: 0;
  display: inline-block;
  padding: 1px 8px;
  font-size: 11px;
  border-radius: 4px;
  font-weight: 500;
  margin-top: 1px;
}
.cross-tag.gold { background: #FFFBEB; color: #B08020; }
.cross-tag.blue { background: #EBF4FF; color: #2B6CB0; }
.cross-tag.green { background: #F0FFF4; color: #276749; }
.cross-tag.red { background: #FFF5F5; color: #C53030; }

@media (max-width: 1023px) {
  .cross-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
  .cross-grid { grid-template-columns: 1fr; gap: 16px; }
}

/* ============================================================
   Part 24 — 新闻系统排版布局整体优化
   ============================================================ */

/* ---------- 1. 首页/列表页：新闻瀑布流双栏布局 ---------- */
.news-twin-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 28px;
  align-items: start;
}
@media (max-width: 1023px) {
  .news-twin-layout { grid-template-columns: 1fr; }
}

/* ---------- 2. 头条大图卡 ---------- */
.news-feature-card {
  position: relative;
  display: block;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 4px 16px rgba(26, 54, 93, 0.08);
  transition: all var(--transition-base);
  margin-bottom: 20px;
}
.news-feature-card:hover {
  box-shadow: 0 8px 28px rgba(26, 54, 93, 0.15);
  }
.nfc-cover {
  position: relative;
  height: 320px;
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 50%, #D69E2E 120%);
  overflow: hidden;
}
.nfc-cover::after {
  content: '';
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 60%;
  background: linear-gradient(to top, rgba(0,0,0,0.7), transparent);
}
.nfc-cover-badge {
  position: absolute;
  top: 16px; left: 16px;
  z-index: 2;
  background: var(--color-accent);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 20px;
  letter-spacing: 1px;
}
.nfc-cover-title {
  position: absolute;
  left: 24px; right: 24px; bottom: 24px;
  z-index: 2;
  color: #fff;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.nfc-body {
  padding: 20px 24px;
}
.nfc-summary {
  color: var(--color-text-secondary);
  font-size: 14px;
  line-height: 1.7;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 14px;
}
.nfc-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  color: var(--color-text-muted);
}
.nfc-meta-left {
  display: flex;
  align-items: center;
  gap: 12px;
}
.nfc-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

/* ---------- 3. 新闻列表（标准卡片式，非旧版company-ai-card） ---------- */
.news-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.news-card {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 18px;
  padding: 18px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(26, 54, 93, 0.06);
  transition: all var(--transition-base);
  border: 1px solid var(--color-border);
}
.news-card:hover {
  box-shadow: 0 6px 20px rgba(26, 54, 93, 0.12);
  border-color: rgba(214, 158, 46, 0.3);
  }
.news-card-cover {
  width: 180px;
  height: 120px;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  color: #fff;
  flex-shrink: 0;
  background: linear-gradient(135deg, #1A365D, #2A4A7D);
}
.news-card-body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-width: 0;
}
.news-card-title {
  font-size: 17px;
  font-weight: 600;
  color: var(--color-text-primary);
  line-height: 1.5;
  margin: 0 0 8px 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color var(--transition-base);
}
.news-card:hover .news-card-title {
  color: var(--color-accent);
}
.news-card-summary {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 10px;
}
.news-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  color: var(--color-text-muted);
}
.news-card-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.news-card-meta {
  display: flex;
  align-items: center;
  gap: 12px;
}
.news-card-meta span {
  display: inline-flex;
  align-items: center;
  gap: 3px;
}
@media (max-width: 767px) {
  .news-card {
    grid-template-columns: 120px 1fr;
    gap: 12px;
    padding: 12px;
  }
  .news-card-cover {
    width: 120px;
    height: 90px;
    font-size: 22px;
  }
  .news-card-title { font-size: 15px; }
  .news-card-summary { font-size: 12px; -webkit-line-clamp: 1; }
}

/* ---------- 4. 侧边栏：热榜 / 分类云 / 订阅卡 ---------- */
.news-side {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.news-side-card {
  background: #fff;
  border-radius: 10px;
  padding: 18px;
  border: 1px solid var(--color-border);
  box-shadow: 0 2px 6px rgba(26, 54, 93, 0.04);
}
.news-side-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 14px 0;
  padding-left: 10px;
  border-left: 3px solid var(--color-accent);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.news-side-title a.more {
  font-size: 12px;
  font-weight: 400;
  color: var(--color-text-muted);
}
.news-rank-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.news-rank-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13px;
  line-height: 1.5;
}
.news-rank-num {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #E2E8F0;
  color: var(--color-text-secondary);
}
.news-rank-item:nth-child(1) .news-rank-num { background: #E53E3E; color: #fff; }
.news-rank-item:nth-child(2) .news-rank-num { background: #DD6B20; color: #fff; }
.news-rank-item:nth-child(3) .news-rank-num { background: #D69E2E; color: #fff; }
.news-rank-item a {
  color: var(--color-text-primary);
  transition: color var(--transition-base);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.news-rank-item a:hover { color: var(--color-accent); }

/* ---------- 5. 资讯详情页排版升级 ---------- */
.article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 32px;
  align-items: start;
}
@media (max-width: 1023px) {
  .article-layout { grid-template-columns: 1fr; }
}

/* 文章头部 */
.article-hero {
  background: linear-gradient(180deg, #fff 0%, #F8FAFC 100%);
  border-bottom: 1px solid var(--color-border);
  padding: 36px 0 28px;
  margin-bottom: 28px;
}
.article-hero-inner {
  max-width: 800px;
  margin: 0 auto;
  text-align: left;
}
.article-hero-cats {
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}
.article-hero-title {
  font-size: 30px;
  font-weight: 700;
  color: var(--color-text-primary);
  line-height: 1.35;
  margin: 0 0 16px 0;
  letter-spacing: -0.3px;
}
.article-hero-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  font-size: 13px;
  color: var(--color-text-muted);
  padding-bottom: 16px;
  border-bottom: 1px solid var(--color-border);
}
.article-hero-meta span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.article-hero-summary {
  margin-top: 16px;
  padding: 16px 20px;
  background: linear-gradient(135deg, rgba(26,54,93,0.04), rgba(214,158,46,0.06));
  border-left: 3px solid var(--color-accent);
  border-radius: 0 8px 8px 0;
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.8;
}
.article-hero-summary strong {
  color: var(--color-primary);
}

/* 文章正文排版 */
.article-body {
  max-width: 800px;
  margin: 0 auto;
  font-size: 16px;
  line-height: 1.9;
  color: var(--color-text-primary);
}
.article-body > p {
  margin: 0 0 1.4em 0;
  text-indent: 2em;
}
.article-body > h2 {
  font-size: 22px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 2em 0 0.8em 0;
  padding-left: 12px;
  border-left: 4px solid var(--color-accent);
  line-height: 1.4;
}
.article-body > h3 {
  font-size: 18px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin: 1.6em 0 0.6em 0;
}
.article-body > blockquote {
  margin: 1.4em 0;
  padding: 14px 20px;
  background: #F8FAFC;
  border-left: 4px solid var(--color-primary-light);
  border-radius: 0 6px 6px 0;
  color: var(--color-text-secondary);
  font-size: 15px;
  line-height: 1.8;
}
.article-body ul, .article-body ol {
  margin: 1em 0;
  padding-left: 2em;
}
.article-body li {
  margin-bottom: 0.5em;
  line-height: 1.8;
}
.article-body strong {
  color: var(--color-primary);
  font-weight: 600;
}
.article-body data-point {
  display: inline-block;
  background: linear-gradient(135deg, rgba(214,158,46,0.15), rgba(26,54,93,0.08));
  color: var(--color-primary-dark);
  padding: 2px 8px;
  border-radius: 4px;
  font-weight: 600;
  font-size: 0.95em;
}

/* 数据亮点框 */
.article-highlight-box {
  margin: 24px 0;
  padding: 24px;
  background: linear-gradient(135deg, #1A365D, #2A4A7D);
  border-radius: 10px;
  color: #fff;
}
.article-highlight-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-accent-light);
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.article-highlight-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  text-align: center;
}
.article-highlight-item .num {
  font-size: 28px;
  font-weight: 700;
  color: var(--color-accent);
  line-height: 1.2;
}
.article-highlight-item .label {
  font-size: 12px;
  color: rgba(255,255,255,0.7);
  margin-top: 4px;
}
@media (max-width: 767px) {
  .article-highlight-grid { grid-template-columns: repeat(2, 1fr); }
}

/* 关键词 */
.article-keywords-row {
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px solid var(--color-border);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  font-size: 13px;
}
.article-keywords-row .label {
  color: var(--color-text-muted);
  font-weight: 600;
}

/* 数据来源框统一样式 */
.article-data-source {
  margin-top: 28px;
  padding: 20px 24px;
  background: linear-gradient(135deg, rgba(26,54,93,0.03), rgba(214,158,46,0.04));
  border: 1px solid rgba(214,158,46,0.2);
  border-radius: 10px;
  font-size: 13px;
  line-height: 1.9;
}
.article-data-source-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  color: var(--color-primary);
  margin-bottom: 10px;
  font-size: 14px;
}
.article-data-source ul {
  margin: 0;
  padding-left: 20px;
  color: var(--color-text-secondary);
}
.article-data-source li { margin-bottom: 4px; }

/* 免责声明条（详情页内） */
.article-disclaimer {
  margin-top: 24px;
  padding: 14px 18px;
  background: #FFF5F5;
  border: 1px solid #FED7D7;
  border-radius: 8px;
  font-size: 12px;
  color: #C53030;
  line-height: 1.7;
}

/* ---------- 6. 文章目录 TOC ---------- */
.article-toc {
  position: sticky;
  top: 80px;
}
.article-toc-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.article-toc-list {
  list-style: none;
  padding: 0;
  margin: 0;
  border-left: 2px solid var(--color-border);
}
.article-toc-list li {
  padding-left: 12px;
  margin-left: -2px;
  border-left: 2px solid transparent;
  margin-bottom: 8px;
  transition: all 0.2s;
}
.article-toc-list li.active {
  border-left-color: var(--color-accent);
}
.article-toc-list li a {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.5;
  transition: color 0.2s;
  display: block;
}
.article-toc-list li.active a,
.article-toc-list li a:hover {
  color: var(--color-accent);
  font-weight: 600;
}
.article-toc-list li.h2 { padding-left: 12px; }
.article-toc-list li.h3 { padding-left: 24px; font-size: 12px; }

/* ---------- 7. 订阅/投稿侧边卡 ---------- */
.news-subscribe-card {
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 100%);
  border-radius: 10px;
  padding: 20px;
  color: #fff;
  text-align: center;
}
.news-subscribe-card h4 {
  margin: 0 0 6px 0;
  font-size: 16px;
  color: var(--color-accent-light);
}
.news-subscribe-card p {
  margin: 0 0 14px 0;
  font-size: 12px;
  color: rgba(255,255,255,0.7);
  line-height: 1.6;
}
.news-subscribe-card .btn {
  width: 100%;
  background: var(--color-accent);
  color: var(--color-primary-dark);
  border: none;
  font-weight: 600;
}

/* ---------- 8. 筛选栏优化（统一为胶囊式 tab） ---------- */
.news-filter-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--color-border);
}
.news-filter-tab {
  padding: 6px 16px;
  font-size: 13px;
  color: var(--color-text-secondary);
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 20px;
  cursor: pointer;
  transition: all 0.2s;
}
.news-filter-tab:hover {
  border-color: var(--color-accent);
  color: var(--color-accent);
}
.news-filter-tab.active {
  background: var(--color-primary);
  color: #fff;
  border-color: var(--color-primary);
  font-weight: 600;
}

/* ---------- 9. 分页 ---------- */
.news-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid var(--color-border);
}
.news-pagination a, .news-pagination span {
  min-width: 36px;
  height: 36px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  border-radius: 6px;
  border: 1px solid var(--color-border);
  background: #fff;
  color: var(--color-text-secondary);
  transition: all 0.2s;
}
.news-pagination a:hover {
  border-color: var(--color-accent);
  color: var(--color-accent);
}
.news-pagination .current {
  background: var(--color-primary);
  color: var(--color-accent);
  border-color: var(--color-primary);
  font-weight: 600;
}


/* ============================================================
   Part 25 — 跨栏目资讯联动（资讯↔品牌/工厂/协会/生活）
   ============================================================ */

/* ---------- 1. 资讯首页：4大栏目综合资讯大卡 ---------- */
.cross-full-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
@media (max-width: 1023px) {
  .cross-full-grid { grid-template-columns: 1fr; }
}

.cross-full-card {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(26, 54, 93, 0.06);
  border: 1px solid var(--color-border);
  transition: all var(--transition-base);
}
.cross-full-card:hover {
  box-shadow: 0 8px 28px rgba(26, 54, 93, 0.12);
  }

.cfc-top {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 20px 24px;
  color: #fff;
}
.cfc-icon {
  width: 48px;
  height: 48px;
  background: rgba(255,255,255,0.2);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  flex-shrink: 0;
  backdrop-filter: blur(8px);
}
.cfc-title-block { flex: 1; min-width: 0; }
.cfc-title-block h3 {
  margin: 0 0 4px 0;
  font-size: 18px;
  font-weight: 700;
}
.cfc-title-block p {
  margin: 0;
  font-size: 12px;
  opacity: 0.85;
}
.cfc-enter-btn {
  background: rgba(255,255,255,0.2);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  padding: 7px 14px;
  border-radius: 20px;
  white-space: nowrap;
  transition: all var(--transition-base);
  border: 1px solid rgba(255,255,255,0.3);
}
.cfc-enter-btn:hover {
  background: #fff;
  color: var(--color-primary);
}

/* 4种渐变配色 */
.brand-gradient { background: linear-gradient(135deg, #D69E2E, #B7791F); }
.factory-gradient { background: linear-gradient(135deg, #38A169, #276749); }
.assoc-gradient { background: linear-gradient(135deg, #1A365D, #2A4A7D); }
.life-gradient { background: linear-gradient(135deg, #E53E3E, #C53030); }

.cfc-news-list {
  padding: 8px 0;
}
.cfc-news-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 24px;
  transition: all 0.2s;
  border-bottom: 1px solid #F5F7FA;
}
.cfc-news-item:last-child { border-bottom: none; }
.cfc-news-item:hover {
  background: #FAFBFC;
  padding-left: 28px;
}
.cfc-news-tag {
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 4px;
  background: #F0F4F8;
  color: var(--color-primary);
}
.cfc-news-title {
  flex: 1;
  font-size: 14px;
  color: var(--color-text-primary);
  line-height: 1.5;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.2s;
}
.cfc-news-item:hover .cfc-news-title { color: var(--color-accent); }
.cfc-news-date {
  flex-shrink: 0;
  font-size: 12px;
  color: var(--color-text-muted);
}

/* ---------- 2. 4大栏目页：底部相关资讯模块 ---------- */
.news-related-section {
  background: linear-gradient(180deg, #F5F7FA 0%, #fff 100%);
  padding: 40px 0;
}

.nr-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  gap: 16px;
  flex-wrap: wrap;
}
.nr-title-block {
  display: flex;
  align-items: center;
  gap: 14px;
}
.nr-icon {
  width: 44px;
  height: 44px;
  background: var(--color-primary);
  color: #fff;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
}
.nr-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 4px 0;
}
.nr-desc {
  font-size: 13px;
  color: var(--color-text-muted);
  margin: 0;
}
.nr-more-btn {
  background: var(--color-primary);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  padding: 9px 20px;
  border-radius: 6px;
  transition: all 0.2s;
  white-space: nowrap;
}
.nr-more-btn:hover {
  background: var(--color-accent);
}

.nr-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
@media (max-width: 767px) {
  .nr-list { grid-template-columns: minmax(0, 1fr); }
}

.nr-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 18px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  transition: all 0.2s;
}
.nr-item:hover {
  border-color: var(--color-accent);
  box-shadow: 0 4px 14px rgba(26, 54, 93, 0.08);
  }
.nr-tag {
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 4px;
  background: linear-gradient(135deg, rgba(214,158,46,0.12), rgba(26,54,93,0.08));
  color: var(--color-primary);
}
.nr-title {
  flex: 1;
  min-width: 0;
  font-size: 14px;
  color: var(--color-text-primary);
  line-height: 1.5;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 400;
  transition: color 0.2s;
}
.nr-item:hover .nr-title { color: var(--color-accent); }
.nr-arrow {
  flex-shrink: 0;
  font-size: 14px;
  color: var(--color-text-muted);
  transition: transform 0.2s;
}
.nr-item:hover .nr-arrow {
  transform: translateX(3px);
  color: var(--color-accent);
}


/* ============================================================
   Part 26 — 全站标准页脚 5 列统一（品牌商业/分类信息/资源服务/关于平台+AI信源）
   ============================================================ */

.site-footer {
  background: #0F2440;
  color: rgba(255,255,255,0.75);
  padding: 48px 0 0;
  margin-top: 0;
  border-top: 3px solid #D69E2E;
}
.site-footer .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }

.footer-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr;
  gap: 36px;
  padding-bottom: 36px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
@media (max-width: 1023px) {
  .footer-grid { grid-template-columns: repeat(3, 1fr); gap: 24px; }
  .footer-col:first-child { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
  .footer-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}

/* 第一列：品牌 */
.footer-brand-col {}
.footer-logo-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
}
.footer-logo-icon {
  width: 40px;
  height: 40px;
  background: #D69E2E;
  color: #0F2440;
  font-weight: 800;
  font-size: 20px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer-logo-text {
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.5px;
}
.footer-brand-desc {
  font-size: 13px;
  line-height: 1.7;
  color: rgba(255,255,255,0.6);
  margin-bottom: 16px;
}
.footer-brand-stats {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.footer-stat-item .num {
  font-size: 18px;
  font-weight: 700;
  color: #D69E2E;
}
.footer-stat-item .label {
  font-size: 12px;
  color: rgba(255,255,255,0.55);
  margin-top: 2px;
}

/* 导航列 */
.footer-col h4 {
  font-size: 15px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 16px 0;
  padding-bottom: 8px;
  position: relative;
}
.footer-col h4::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 28px;
  height: 2px;
  background: #D69E2E;
  border-radius: 2px;
}
.footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.footer-links li { margin: 0; }
.footer-links a {
  font-size: 13px;
  color: rgba(255,255,255,0.65);
  transition: color 0.2s;
  display: inline-block;
}
.footer-links a:hover {
  color: #D69E2E;
}

/* AI信源声明条 */
.footer-ai-source {
  padding: 24px 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  font-size: 13px;
  color: rgba(255,255,255,0.6);
  line-height: 1.8;
}
.footer-ai-source strong {
  color: #D69E2E;
  font-weight: 600;
}
.footer-ai-source a {
  color: #D69E2E;
  text-decoration: underline;
}

/* 版权区 */
.footer-bottom {
  padding: 20px 0 28px;
  font-size: 12px;
  color: rgba(255,255,255,0.5);
  line-height: 1.8;
}
.footer-bottom .copyright { margin-bottom: 4px; }
.footer-bottom .disclaimer { color: rgba(255,255,255,0.4); }


/* ============================================================
   Part 27 — 页脚高端大气升级版
   ============================================================ */

.site-footer {
  position: relative;
  background: linear-gradient(180deg, #122A4A 0%, #0A1A30 50%, #081424 100%);
  color: rgba(255,255,255,0.75);
  padding: 60px 0 0;
  margin-top: 0;
  overflow: hidden;
}

/* 顶部装饰：金色渐变光带 */
.site-footer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, 
    transparent 0%, 
    rgba(214, 158, 46, 0.3) 20%, 
    #D69E2E 50%, 
    rgba(214, 158, 46, 0.3) 80%, 
    transparent 100%);
}

/* 背景装饰光斑 */
.site-footer::after {
  content: '';
  position: absolute;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
  width: 800px;
  height: 200px;
  background: radial-gradient(ellipse at center top, 
    rgba(214, 158, 46, 0.08) 0%, 
    rgba(26, 54, 93, 0.1) 40%,
    transparent 70%);
  pointer-events: none;
}

/* 网格间距加大 */
.footer-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1fr 1fr;
  gap: 48px;
  padding-bottom: 44px;
  border-bottom: 1px solid rgba(214, 158, 46, 0.15);
}

/* ---- 品牌列升级 ---- */
.footer-brand-col {
  position: relative;
}
.footer-logo-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
}
.footer-logo-icon {
  width: 44px;
  height: 44px;
  background: linear-gradient(135deg, #D69E2E 0%, #B8860B 100%);
  color: #0F2440;
  font-weight: 800;
  font-size: 22px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 10px rgba(214, 158, 46, 0.3);
  position: relative;
}
.footer-logo-icon::after {
  content: '';
  position: absolute;
  top: 2px; left: 2px; right: 2px; bottom: 2px;
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 8px;
  pointer-events: none;
}
.footer-logo-text {
  font-size: 24px;
  font-weight: 800;
  background: linear-gradient(135deg, #ffffff 0%, #D69E2E 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  letter-spacing: 1px;
}
.footer-brand-desc {
  font-size: 13.5px;
  line-height: 1.85;
  color: rgba(255,255,255,0.55);
  margin-bottom: 20px;
}

/* 数据面板升级 */
.footer-brand-stats {
  display: flex;
  gap: 28px;
  flex-wrap: wrap;
  padding: 16px 20px;
  background: linear-gradient(135deg, rgba(214,158,46,0.08), rgba(26,54,93,0.15));
  border: 1px solid rgba(214,158,46,0.2);
  border-radius: 10px;
  position: relative;
}
.footer-brand-stats::before {
  content: '';
  position: absolute;
  top: -1px; left: -1px;
  width: 12px; height: 12px;
  border-top: 2px solid #D69E2E;
  border-left: 2px solid #D69E2E;
  border-radius: 2px 0 0 0;
}
.footer-brand-stats::after {
  content: '';
  position: absolute;
  bottom: -1px; right: -1px;
  width: 12px; height: 12px;
  border-bottom: 2px solid #D69E2E;
  border-right: 2px solid #D69E2E;
  border-radius: 0 0 2px 0;
}
.footer-stat-item .num {
  font-size: 20px;
  font-weight: 700;
  background: linear-gradient(135deg, #F6E05E, #D69E2E);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.footer-stat-item .label {
  font-size: 12px;
  color: rgba(255,255,255,0.5);
  margin-top: 3px;
  letter-spacing: 0.3px;
}

/* ---- 导航列升级 ---- */
.footer-col h4 {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  margin: 0 0 20px 0;
  padding-bottom: 10px;
  position: relative;
  letter-spacing: 0.5px;
}
.footer-col h4::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 36px;
  height: 2px;
  background: linear-gradient(90deg, #D69E2E, transparent);
  border-radius: 2px;
}
.footer-col h4::after {
  display: none; /* 移除旧的金色条 */
}

.footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.footer-links li { margin: 0; position: relative; padding-left: 0; }
.footer-links a {
  font-size: 13px;
  color: rgba(255,255,255,0.6);
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  display: inline-flex;
  align-items: center;
  position: relative;
  padding-left: 0;
}
.footer-links a::before {
  content: '';
  width: 0;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
  background: #D69E2E;
  transition: width 0.25s;
}
.footer-links a:hover {
  color: #D69E2E;
  padding-left: 4px;
  transform: translateX(2px);
}
.footer-links a:hover::before {
  width: 100%;
}

/* ---- AI信源声明升级 ---- */
.footer-ai-source {
  position: relative;
  z-index: 1;
  padding: 28px 32px;
  margin: 36px 0 32px;
  background: linear-gradient(135deg, rgba(26,54,93,0.6), rgba(15,36,64,0.8));
  border: 1px solid rgba(214,158,46,0.25);
  border-radius: 12px;
  font-size: 13.5px;
  color: rgba(255,255,255,0.65);
  line-height: 1.9;
  box-shadow: 
    inset 0 1px 0 rgba(255,255,255,0.05),
    0 4px 20px rgba(0,0,0,0.2);
}
.footer-ai-source::before {
  content: '';
  position: absolute;
  top: -1px; left: 30px;
  width: 60px; height: 2px;
  background: linear-gradient(90deg, #D69E2E, #F6E05E);
  border-radius: 0 0 2px 2px;
}
.footer-ai-source strong {
  color: #F6E05E;
  font-weight: 600;
  font-size: 14px;
  margin-right: 4px;
}
.footer-ai-source a {
  color: #D69E2E;
  font-weight: 500;
  border-bottom: 1px solid rgba(214,158,46,0.3);
  transition: all 0.2s;
}
.footer-ai-source a:hover {
  color: #F6E05E;
  border-bottom-color: #F6E05E;
}

/* ---- 底部版权区升级 ---- */
.footer-bottom {
  position: relative;
  z-index: 1;
  padding: 22px 0 30px;
  border-top: 1px solid rgba(214,158,46,0.1);
  font-size: 12.5px;
  color: rgba(255,255,255,0.4);
  line-height: 1.9;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.footer-bottom .copyright { margin-bottom: 0; }
.footer-bottom .disclaimer { color: rgba(255,255,255,0.35); text-align: right; }

/* 响应式 */
@media (max-width: 1023px) {
  .footer-grid { grid-template-columns: repeat(3, 1fr); gap: 32px; }
  .footer-col:first-child { grid-column: 1 / -1; }
  .footer-brand-stats { max-width: 400px; }
}
@media (max-width: 767px) {
  .site-footer { padding-top: 40px; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); gap: 24px; padding-bottom: 32px; }
  .footer-ai-source { padding: 20px; font-size: 12.5px; margin: 24px 0 20px; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .footer-bottom .disclaimer { text-align: center; }
}


/* ============================================================
   Part 28 — 页脚最终版（ID选择器，权重100，覆盖所有历史样式）
   结构：顶部光带 → 5列导航 → AI信源条 → 版权底栏
   ============================================================ */

#siteFooter {
  position: relative;
  display: block !important;
  width: 100% !important;
  background: linear-gradient(180deg, #102A4E 0%, #0A1B35 60%, #081424 100%) !important;
  color: rgba(255,255,255,0.75);
  padding: 56px 0 0 !important;
  margin: 0 !important;
  border: none !important;
  border-top: 2px solid rgba(214, 158, 46, 0.5) !important;
  overflow: hidden;
  box-sizing: border-box;
}
#siteFooter * { box-sizing: border-box; }

/* 顶部金色渐变光带 */
#siteFooter::before {
  content: '' !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, 
    transparent 0%, 
    rgba(214, 158, 46, 0.4) 15%, 
    #F6E05E 50%, 
    rgba(214, 158, 46, 0.4) 85%, 
    transparent 100%) !important;
  z-index: 2;
}

/* 容器 */
#siteFooter > .container {
  max-width: 1200px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  position: relative;
  z-index: 1;
  display: block !important;
}

/* ============ 5列导航区 ============ */
#siteFooter .footer-grid {
  display: grid !important;
  grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr !important;
  gap: 40px !important;
  padding: 0 0 40px 0 !important;
  margin: 0 0 36px 0 !important;
  border-bottom: 1px solid rgba(214, 158, 46, 0.15) !important;
  width: 100% !important;
  box-sizing: border-box;
}

/* 品牌列（第1列） */
#siteFooter .footer-brand-col {
  display: block !important;
}
#siteFooter .footer-logo-row {
  display: flex !important;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}
#siteFooter .footer-logo-icon {
  width: 46px !important;
  height: 46px !important;
  background: linear-gradient(135deg, #E6B03A 0%, #D69E2E 50%, #B8860B 100%) !important;
  color: #0F2440 !important;
  font-weight: 800 !important;
  font-size: 22px !important;
  line-height: 46px !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 3px 12px rgba(214, 158, 46, 0.35) !important;
  position: relative;
  flex-shrink: 0;
}
#siteFooter .footer-logo-icon::after {
  content: '' !important;
  position: absolute;
  top: 2px; left: 2px; right: 2px; bottom: 2px;
  border: 1px solid rgba(255,255,255,0.25) !important;
  border-radius: 8px !important;
  pointer-events: none;
}
#siteFooter .footer-logo-text {
  font-size: 26px !important;
  font-weight: 800 !important;
  background: linear-gradient(135deg, #ffffff 0%, #F6E05E 60%, #D69E2E 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  letter-spacing: 1px;
  line-height: 1.2;
}
#siteFooter .footer-brand-slogan {
  font-size: 11px !important;
  letter-spacing: 3px;
  color: #D69E2E !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  margin-bottom: 12px !important;
  opacity: 0.9;
}
#siteFooter .footer-brand-desc {
  font-size: 13.5px !important;
  line-height: 1.85 !important;
  color: rgba(255,255,255,0.55) !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
}

/* 数据面板 */
#siteFooter .footer-brand-stats {
  display: flex !important;
  gap: 20px;
  flex-wrap: wrap;
  padding: 16px 20px !important;
  background: linear-gradient(135deg, rgba(214,158,46,0.1), rgba(26,54,93,0.2)) !important;
  border: 1px solid rgba(214,158,46,0.25) !important;
  border-radius: 10px !important;
  position: relative;
  margin: 0 !important;
  width: fit-content;
  max-width: 100%;
}
#siteFooter .footer-brand-stats::before,
#siteFooter .footer-brand-stats::after {
  display: none !important; /* 去掉Part27的四角装饰（可能引起错位） */
}
#siteFooter .footer-stat-item {
  text-align: left !important;
  display: block !important;
  float: none !important;
}
#siteFooter .footer-stat-item .num {
  font-size: 20px !important;
  font-weight: 700 !important;
  background: linear-gradient(135deg, #F6E05E, #D69E2E) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  line-height: 1.2;
  display: block !important;
}
#siteFooter .footer-stat-item .label {
  font-size: 12px !important;
  color: rgba(255,255,255,0.5) !important;
  margin-top: 4px !important;
  letter-spacing: 0.3px;
  display: block !important;
  font-weight: 400 !important;
}

/* 导航列 */
#siteFooter .footer-col {
  display: block !important;
  min-width: 0;
}
#siteFooter .footer-col h4 {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 0 20px 0 !important;
  padding: 0 0 10px 0 !important;
  position: relative !important;
  letter-spacing: 0.5px;
  line-height: 1.3;
  background: none !important;
  border: none !important;
}
#siteFooter .footer-col h4::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 32px !important;
  height: 2px !important;
  background: linear-gradient(90deg, #D69E2E, transparent) !important;
  border-radius: 2px !important;
}
#siteFooter .footer-col h4::after {
  display: none !important;
}

#siteFooter .footer-links {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
#siteFooter .footer-links li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  line-height: 1.4;
}
#siteFooter .footer-links a {
  font-size: 13px !important;
  color: rgba(255,255,255,0.6) !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: inline-block !important;
  line-height: 1.4 !important;
  position: relative;
}
#siteFooter .footer-links a:hover {
  color: #D69E2E !important;
  transform: translateX(3px) !important;
  padding-left: 0 !important;
}

/* ============ AI信源声明条 ============ */
#siteFooter .footer-ai-source {
  width: 100% !important;
  padding: 24px 28px !important;
  margin: 0 0 32px 0 !important;
  background: linear-gradient(135deg, rgba(26,54,93,0.6), rgba(15,36,64,0.85)) !important;
  border: 1px solid rgba(214,158,46,0.25) !important;
  border-radius: 12px !important;
  font-size: 13.5px !important;
  color: rgba(255,255,255,0.65) !important;
  line-height: 1.9 !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.15) !important;
  box-sizing: border-box;
  position: relative;
  display: block !important;
  float: none !important;
  clear: both !important;
  text-align: left !important;
}
#siteFooter .footer-ai-source::before {
  content: '' !important;
  position: absolute !important;
  top: -1px !important;
  left: 28px !important;
  width: 60px !important;
  height: 2px !important;
  background: linear-gradient(90deg, #D69E2E, #F6E05E) !important;
  border-radius: 0 0 2px 2px !important;
}
#siteFooter .footer-ai-source strong {
  color: #F6E05E !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  margin-right: 4px;
}
#siteFooter .footer-ai-source a {
  color: #D69E2E !important;
  font-weight: 500;
  text-decoration: underline !important;
  text-underline-offset: 2px;
  text-decoration-color: rgba(214,158,46,0.4) !important;
}
#siteFooter .footer-ai-source a:hover {
  color: #F6E05E !important;
  text-decoration-color: #F6E05E !important;
}

/* ============ 版权底栏 ============ */
#siteFooter .footer-bottom {
  width: 100% !important;
  padding: 20px 0 28px 0 !important;
  border-top: 1px solid rgba(214,158,46,0.1) !important;
  font-size: 12.5px !important;
  color: rgba(255,255,255,0.4) !important;
  line-height: 1.8 !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px;
  margin: 0 !important;
  box-sizing: border-box;
  clear: both !important;
}
#siteFooter .footer-bottom .copyright {
  margin: 0 !important;
  padding: 0 !important;
}
#siteFooter .footer-bottom .disclaimer {
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(255,255,255,0.35) !important;
  text-align: right !important;
}

/* ============ 响应式 ============ */
@media (max-width: 1023px) {
  #siteFooter .footer-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 32px !important;
  }
  #siteFooter .footer-brand-col {
    grid-column: 1 / -1 !important; /* 品牌列独占一行 */
  }
}
@media (max-width: 767px) {
  #siteFooter { padding-top: 40px !important; }
  #siteFooter > .container { padding: 0 16px !important; }
  #siteFooter .footer-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
    padding-bottom: 28px !important;
    margin-bottom: 24px !important;
  }
  #siteFooter .footer-ai-source {
    padding: 18px 20px !important;
    font-size: 12.5px !important;
    margin-bottom: 20px !important;
  }
  #siteFooter .footer-bottom {
    flex-direction: column !important;
    text-align: center !important;
    gap: 8px;
  }
  #siteFooter .footer-bottom .disclaimer {
    text-align: center !important;
  }
}


/* ============================================================
   Part 29 — 页脚终极修复（flex 实现，更稳定，彻底防御历史样式）
   ============================================================ */

/* 重置 footer 内所有容器为标准块级 */
#siteFooter,
#siteFooter *,
#siteFooter *::before,
#siteFooter *::after {
  box-sizing: border-box !important;
  float: none !important;
  position: static !important;
}
#siteFooter { position: relative !important; }
#siteFooter::before { position: absolute !important; }
#siteFooter .footer-logo-icon::after { position: absolute !important; }
#siteFooter .footer-col h4::before { position: absolute !important; }
#siteFooter .footer-ai-source::before { position: absolute !important; }
#siteFooter .footer-grid,
#siteFooter .footer-ai-source,
#siteFooter .footer-bottom {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  clear: both !important;
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 外层 container 必须是标准块级（最关键：防止历史样式把它变成flex/grid） */
#siteFooter > .container,
#siteFooter .container {
  display: block !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  float: none !important;
  flex: none !important;
  flex-basis: auto !important;
  grid-column: auto !important;
}

/* ===== 5列导航：flex 实现（比 grid 更稳定） ===== */
#siteFooter .footer-grid {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 40px !important;
  padding: 0 0 40px 0 !important;
  margin: 0 0 36px 0 !important;
  border-bottom: 1px solid rgba(214, 158, 46, 0.15) !important;
  border-left: none !important;
  border-right: none !important;
  border-top: none !important;
  width: 100% !important;
  flex: none !important;
  float: none !important;
  clear: both !important;
}

/* 品牌列：占更多空间 */
#siteFooter .footer-brand-col {
  flex: 0 0 28% !important;
  max-width: 28% !important;
  display: block !important;
  float: none !important;
}
/* 其他4列：平均分配 */
#siteFooter .footer-col:not(.footer-brand-col) {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  max-width: 18% !important;
  display: block !important;
  float: none !important;
}

/* AI信源条：通栏 */
#siteFooter .footer-ai-source {
  display: block !important;
  width: 100% !important;
  flex: none !important;
  float: none !important;
  clear: both !important;
  margin: 0 0 32px 0 !important;
  padding: 24px 28px !important;
  position: relative !important;
}

/* 版权底栏：通栏 */
#siteFooter .footer-bottom {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  flex: none !important;
  float: none !important;
  clear: both !important;
  margin: 0 !important;
  padding: 20px 0 28px 0 !important;
  border-top: 1px solid rgba(214,158,46,0.1) !important;
  gap: 12px;
}

/* 响应式：平板 3 列 */
@media (max-width: 1023px) {
  #siteFooter .footer-grid {
    flex-wrap: wrap !important;
    gap: 32px !important;
  }
  #siteFooter .footer-brand-col {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  #siteFooter .footer-col:not(.footer-brand-col) {
    flex: 1 1 25% !important;
    max-width: 33% !important;
  }
}
/* 响应式：手机 2 列 */
@media (max-width: 767px) {
  #siteFooter > .container,
  #siteFooter .container {
    padding: 0 16px !important;
  }
  #siteFooter .footer-grid {
    gap: 24px !important;
    padding-bottom: 28px !important;
    margin-bottom: 24px !important;
  }
  #siteFooter .footer-col:not(.footer-brand-col) {
    flex: 1 1 45% !important;
    max-width: 50% !important;
  }
  #siteFooter .footer-ai-source {
    padding: 18px 20px !important;
    font-size: 12.5px !important;
    margin-bottom: 20px !important;
  }
  #siteFooter .footer-bottom {
    flex-direction: column !important;
    text-align: center !important;
    gap: 8px;
  }
  #siteFooter .footer-bottom .disclaimer {
    text-align: center !important;
  }
}


/* ============================================================
   Part 30 — 页脚宽度被压缩终极修复（外层父容器为 flex/grid 场景）
   ============================================================ */

/* 确保 footer 永远占满一整行，不管外层是什么布局 */
footer#siteFooter {
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  flex-basis: 100% !important;
  grid-column: 1 / -1 !important;
  display: block !important;
  margin: 0 !important;
  padding: 56px 0 0 !important;
  box-sizing: border-box !important;
  clear: both !important;
  float: none !important;
}

/* 同时也给 body/page-wrapper 加保险，防止 footer 前的元素浮动影响 */
body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
body > * {
  flex: 0 0 auto;
  width: 100%;
}


/* ============================================================
   Part 31 — 星级酒店栏目专题样式
   ============================================================ */

/* ---------- 酒店Hero ---------- */
.hotel-hero {
  position: relative;
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 40%, #0F2440 100%);
  padding: 60px 0 80px;
  overflow: hidden;
}
.hotel-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 400'%3E%3Cpath d='M0,320 Q300,280 600,300 T1200,290 L1200,400 L0,400 Z' fill='rgba(214,158,46,0.08)'/%3E%3C/svg%3E") bottom/cover no-repeat;
  pointer-events: none;
}
.hotel-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 40px;
  flex-wrap: wrap;
}
.hotel-hero-text { color: #fff; flex: 1; min-width: 320px; }
.hotel-hero-cat {
  display: inline-block;
  background: rgba(214,158,46,0.2);
  border: 1px solid rgba(214,158,46,0.4);
  color: #F6E05E;
  font-size: 12px;
  padding: 4px 12px;
  border-radius: 20px;
  margin-bottom: 16px;
  letter-spacing: 1px;
}
.hotel-hero-title {
  font-size: 38px;
  font-weight: 800;
  line-height: 1.2;
  margin: 0 0 16px 0;
  background: linear-gradient(135deg, #fff 0%, #F6E05E 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.hotel-hero-desc {
  font-size: 15px;
  line-height: 1.8;
  color: rgba(255,255,255,0.75);
  margin: 0 0 20px 0;
  max-width: 600px;
}
.hotel-hero-stats {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
}
.hotel-stat-item .num {
  font-size: 24px;
  font-weight: 700;
  color: #F6E05E;
}
.hotel-stat-item .label {
  font-size: 12px;
  color: rgba(255,255,255,0.6);
  margin-top: 4px;
}
.hotel-hero-badge {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(214,158,46,0.3);
  border-radius: 12px;
  padding: 20px 24px;
  min-width: 200px;
  backdrop-filter: blur(10px);
}
.hotel-hero-badge h4 {
  color: #D69E2E;
  font-size: 14px;
  margin: 0 0 12px 0;
}
.hotel-hero-badge p {
  font-size: 12px;
  color: rgba(255,255,255,0.65);
  line-height: 1.7;
  margin: 0;
}

/* ---------- 筛选栏 ---------- */
.hotel-filter-bar {
  background: #fff;
  border-radius: 12px;
  padding: 20px 24px;
  margin: -30px 0 30px 0;
  position: relative;
  z-index: 10;
  box-shadow: 0 8px 30px rgba(26,54,93,0.12);
}
.hotel-filter-row {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
}
.hotel-filter-label {
  font-size: 13px;
  font-weight: 600;
  color: #1A202C;
  min-width: 60px;
}
.hotel-filter-chip {
  padding: 6px 18px;
  font-size: 13px;
  border: 1px solid #E2E8F0;
  border-radius: 20px;
  color: #4A5568;
  cursor: pointer;
  transition: all 0.2s;
  background: #fff;
}
.hotel-filter-chip:hover { border-color: #D69E2E; color: #D69E2E; }
.hotel-filter-chip.active {
  background: #1A365D;
  color: #fff;
  border-color: #1A365D;
  font-weight: 600;
}

/* ---------- 酒店列表 ---------- */
.hotel-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media (max-width: 1023px) {
  .hotel-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
  .hotel-grid { grid-template-columns: 1fr; }
}

.hotel-card {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(26,54,93,0.06);
  border: 1px solid #E2E8F0;
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
}
.hotel-card:hover { box-shadow: 0 12px 36px rgba(26,54,93,0.15);
  border-color: rgba(214,158,46,0.4);
}

.hotel-card-cover {
  position: relative;
  height: 200px;
  background: linear-gradient(135deg, #1A365D, #2A4A7D);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 52px;
  color: #fff;
}
.hotel-card-cover::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(0,0,0,0.5));
}
.hotel-card-stars {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 2;
  background: rgba(0,0,0,0.55);
  backdrop-filter: blur(6px);
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 14px;
  color: #F6E05E;
  letter-spacing: 2px;
}
.hotel-card-price {
  position: absolute;
  bottom: 14px;
  right: 14px;
  z-index: 2;
  text-align: right;
  color: #fff;
}
.hotel-card-price .price-num {
  font-size: 22px;
  font-weight: 700;
  color: #F6E05E;
}
.hotel-card-price .price-unit {
  font-size: 12px;
  opacity: 0.85;
}

.hotel-card-body {
  padding: 18px 20px 20px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.hotel-card-name {
  font-size: 17px;
  font-weight: 700;
  color: #1A202C;
  margin: 0 0 8px 0;
  line-height: 1.4;
  transition: color 0.2s;
}
.hotel-card:hover .hotel-card-name { color: #D69E2E; }
.hotel-card-location {
  font-size: 12.5px;
  color: #718096;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.hotel-card-desc {
  font-size: 13px;
  color: #4A5568;
  line-height: 1.65;
  margin-bottom: 14px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
}
.hotel-card-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}
.hotel-card-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
  border-top: 1px solid #F0F0F0;
}
.hotel-card-rating {
  font-size: 13px;
  color: #D69E2E;
  font-weight: 600;
}
.hotel-card-rating span {
  color: #718096;
  font-weight: 400;
  margin-left: 4px;
}
.hotel-card-btn {
  background: linear-gradient(135deg, #1A365D, #2A4A7D);
  color: #fff;
  padding: 6px 16px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  transition: all 0.2s;
}
.hotel-card-btn:hover {
  background: linear-gradient(135deg, #D69E2E, #B8860B);
  }

/* ---------- 酒店详情页 ---------- */
.hotel-detail-banner {
  position: relative;
  height: 380px;
  background: linear-gradient(135deg, #1A365D 0%, #2A4A7D 50%, #0F2440 100%);
  overflow: hidden;
}
.hotel-detail-banner::before {
  content: '🏨';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 120px;
  opacity: 0.15;
}
.hotel-detail-banner::after {
  content: '';
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 160px;
  background: linear-gradient(to top, rgba(15,36,64,0.95), transparent);
}
.hotel-detail-info {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 1200px;
  padding: 0 24px;
  z-index: 2;
  color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 20px;
}
.hotel-detail-title-block h1 {
  font-size: 32px;
  font-weight: 800;
  margin: 0 0 10px 0;
  line-height: 1.2;
}
.hotel-detail-meta {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  font-size: 13px;
  color: rgba(255,255,255,0.75);
}
.hotel-detail-stars {
  color: #F6E05E;
  letter-spacing: 3px;
}
.hotel-detail-price-block {
  text-align: right;
}
.hotel-detail-price-block .price-from {
  font-size: 13px;
  color: rgba(255,255,255,0.65);
  margin-bottom: 4px;
}
.hotel-detail-price-block .price-num {
  font-size: 30px;
  font-weight: 700;
  color: #F6E05E;
}
.hotel-detail-price-block .price-unit {
  font-size: 14px;
  color: rgba(255,255,255,0.7);
}

/* 详情内容区 */
.hotel-detail-layout {
  max-width: 1200px;
  margin: -40px auto 0;
  padding: 0 24px 40px;
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 28px;
  align-items: start;
}
@media (max-width: 1023px) {
  .hotel-detail-layout { grid-template-columns: 1fr; }
}

.hotel-detail-main {
  background: #fff;
  border-radius: 12px;
  padding: 32px;
  box-shadow: 0 4px 20px rgba(26,54,93,0.08);
}
.hotel-detail-section {
  margin-bottom: 36px;
  padding-bottom: 32px;
  border-bottom: 1px solid #F0F0F0;
}
.hotel-detail-section:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.hotel-detail-section h2 {
  font-size: 20px;
  font-weight: 700;
  color: #1A365D;
  margin: 0 0 18px 0;
  padding-left: 12px;
  border-left: 3px solid #D69E2E;
  line-height: 1.3;
}
.hotel-detail-section p {
  font-size: 14.5px;
  line-height: 1.9;
  color: #4A5568;
  margin: 0 0 14px 0;
}
.hotel-detail-section ul {
  margin: 0;
  padding-left: 20px;
  color: #4A5568;
  font-size: 14px;
  line-height: 1.9;
}
.hotel-detail-section li { margin-bottom: 6px; }

/* 信息卡 */
.hotel-info-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.hotel-info-item {
  display: flex;
  gap: 12px;
  padding: 14px 16px;
  background: #F8FAFC;
  border-radius: 8px;
  border-left: 3px solid #D69E2E;
}
.hotel-info-item .icon { font-size: 22px; flex-shrink: 0; }
.hotel-info-item .info-label {
  font-size: 12px;
  color: #718096;
  margin-bottom: 4px;
}
.hotel-info-item .info-value {
  font-size: 14px;
  color: #1A202C;
  font-weight: 500;
}

/* 房型展示 */
.room-card {
  display: grid;
  grid-template-columns: 120px 1fr auto;
  gap: 18px;
  align-items: center;
  padding: 16px 18px;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  margin-bottom: 12px;
  transition: all 0.2s;
}
.room-card:hover {
  border-color: rgba(214,158,46,0.5);
  box-shadow: 0 4px 14px rgba(26,54,93,0.08);
}
.room-icon {
  width: 120px;
  height: 80px;
  background: linear-gradient(135deg, #D69E2E22, #1A365D22);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
}
.room-info h4 {
  font-size: 16px;
  font-weight: 600;
  color: #1A202C;
  margin: 0 0 6px 0;
}
.room-info .room-desc {
  font-size: 13px;
  color: #718096;
  margin: 0 0 6px 0;
}
.room-info .room-facilities {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.room-price {
  text-align: right;
}
.room-price .num {
  font-size: 22px;
  font-weight: 700;
  color: #E53E3E;
}
.room-price .unit {
  font-size: 12px;
  color: #718096;
}
.room-price .book-btn {
  display: inline-block;
  margin-top: 6px;
  background: #E53E3E;
  color: #fff;
  padding: 6px 14px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
}

/* 侧边栏 */
.hotel-side {
  position: sticky;
  top: 80px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.hotel-side-card {
  background: #fff;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 2px 10px rgba(26,54,93,0.06);
  border: 1px solid #E2E8F0;
}
.hotel-side-title {
  font-size: 15px;
  font-weight: 700;
  color: #1A202C;
  margin: 0 0 14px 0;
  padding-left: 10px;
  border-left: 3px solid #D69E2E;
}

/* 设施标签云 */
.facility-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.facility-tag {
  padding: 4px 10px;
  background: #F0F4F8;
  color: #1A365D;
  font-size: 12px;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  gap: 3px;
}


/* ============================================================
   Part 32 — 酒店会员网站详情页升级版
   ============================================================ */

/* 会员站顶部品牌条 */
.hotel-mbrand-bar {
  background: #fff;
  border-bottom: 1px solid #E2E8F0;
  position: sticky;
  top: 64px;
  z-index: 40;
  box-shadow: 0 2px 8px rgba(26,54,93,0.04);
}
@media (max-width: 767px) {
  .hotel-mbrand-bar { top: 56px; }
}
.hotel-mbrand-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 12px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.hotel-mbrand-left {
  display: flex;
  align-items: center;
  gap: 14px;
}
.hotel-mbrand-logo {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: linear-gradient(135deg, #1A365D, #D69E2E);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  color: #fff;
  flex-shrink: 0;
}
.hotel-mbrand-info h2 {
  font-size: 18px;
  font-weight: 700;
  color: #1A202C;
  margin: 0 0 3px 0;
  line-height: 1.2;
}
.hotel-mbrand-info .stars {
  color: #D69E2E;
  font-size: 13px;
  letter-spacing: 2px;
}
.hotel-mbrand-right {
  display: flex;
  gap: 10px;
  align-items: center;
}
.hotel-mbrand-phone {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #1A365D;
  font-weight: 600;
  font-size: 15px;
}
.hotel-mbrand-btn {
  background: linear-gradient(135deg, #D69E2E, #B8860B);
  color: #fff;
  padding: 8px 20px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  transition: all 0.2s;
}
.hotel-mbrand-btn:hover {
  box-shadow: 0 4px 12px rgba(214,158,46,0.4);
}

/* 导航Tab */
.hotel-mnav {
  background: #fff;
  border-bottom: 1px solid #E2E8F0;
  position: sticky;
  top: 124px;
  z-index: 39;
}
.hotel-mnav-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  gap: 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.hotel-mnav-item {
  padding: 14px 20px;
  font-size: 14px;
  color: #4A5568;
  white-space: nowrap;
  border-bottom: 2px solid transparent;
  transition: all 0.2s;
  cursor: pointer;
  font-weight: 500;
}
.hotel-mnav-item:hover {
  color: #D69E2E;
}
.hotel-mnav-item.active {
  color: #1A365D;
  border-bottom-color: #D69E2E;
  font-weight: 700;
}

/* 宽幅详情布局 */
.hotel-mdetail-layout {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 24px 48px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 28px;
  align-items: start;
}
@media (max-width: 1023px) {
  .hotel-mdetail-layout { grid-template-columns: 1fr; }
}

.hotel-msection {
  background: #fff;
  border-radius: 12px;
  padding: 28px 30px;
  margin-bottom: 24px;
  box-shadow: 0 2px 12px rgba(26,54,93,0.06);
  border: 1px solid #E2E8F0;
}
.hotel-msection-title {
  font-size: 20px;
  font-weight: 700;
  color: #1A365D;
  margin: 0 0 20px 0;
  padding-bottom: 14px;
  border-bottom: 2px solid #f0f4f8;
  display: flex;
  align-items: center;
  gap: 10px;
  position: relative;
}
.hotel-msection-title::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 60px;
  height: 2px;
  background: #D69E2E;
  border-radius: 2px;
}
.hotel-msection-title .icon {
  font-size: 22px;
}

/* 酒店介绍图文 */
.hotel-mintro {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 24px;
  align-items: start;
}
@media (max-width: 767px) {
  .hotel-mintro { grid-template-columns: 1fr; }
}
.hotel-mintro-img {
  height: 200px;
  border-radius: 10px;
  background: linear-gradient(135deg, #1A365D, #D69E2E);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 72px;
  position: relative;
  overflow: hidden;
}
.hotel-mintro-img::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,0.1), transparent);
}
.hotel-mintro-text p {
  font-size: 14.5px;
  line-height: 1.9;
  color: #4A5568;
  margin: 0 0 14px 0;
}
.hotel-mintro-text p:last-child { margin-bottom: 0; }

/* 荣誉资质 */
.honor-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 14px;
}
.honor-card {
  text-align: center;
  padding: 18px 12px;
  background: linear-gradient(135deg, #FFFDF5, #FFF9E6);
  border: 1px solid #F0E0B0;
  border-radius: 10px;
  transition: all 0.25s;
}
.honor-card:hover {
  box-shadow: 0 6px 16px rgba(214,158,46,0.2);
}
.honor-card .h-icon {
  font-size: 32px;
  margin-bottom: 8px;
}
.honor-card .h-title {
  font-size: 13px;
  font-weight: 600;
  color: #1A365D;
  margin-bottom: 4px;
}
.honor-card .h-desc {
  font-size: 11.5px;
  color: #718096;
}

/* 房型升级版 */
.room-card-pro {
  display: grid;
  grid-template-columns: 180px 1fr auto;
  gap: 20px;
  padding: 20px;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  margin-bottom: 14px;
  transition: all 0.3s;
  position: relative;
  overflow: hidden;
}
.room-card-pro:hover {
  border-color: rgba(214,158,46,0.5);
  box-shadow: 0 6px 20px rgba(26,54,93,0.1);
}
.room-card-pro::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: linear-gradient(to bottom, #D69E2E, #1A365D);
}
.room-pro-img {
  height: 120px;
  border-radius: 8px;
  background: linear-gradient(135deg, #D69E2E33, #1A365D22);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 44px;
}
.room-pro-info h4 {
  font-size: 17px;
  font-weight: 700;
  color: #1A202C;
  margin: 0 0 6px 0;
}
.room-pro-info .room-size {
  font-size: 12.5px;
  color: #718096;
  margin-bottom: 10px;
}
.room-pro-info .room-fac-pro {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.room-pro-info .room-desc-pro {
  font-size: 13px;
  color: #4A5568;
  line-height: 1.6;
}
.room-pro-price {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-width: 120px;
  padding-left: 16px;
  border-left: 1px dashed #E2E8F0;
}
.room-pro-price .price-label {
  font-size: 12px;
  color: #718096;
  margin-bottom: 4px;
}
.room-pro-price .price-big {
  font-size: 26px;
  font-weight: 700;
  color: #E53E3E;
  line-height: 1;
}
.room-pro-price .price-unit {
  font-size: 12px;
  color: #718096;
  margin-bottom: 10px;
}
.room-pro-book {
  background: linear-gradient(135deg, #E53E3E, #C53030);
  color: #fff;
  padding: 8px 22px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  transition: all 0.2s;
}
.room-pro-book:hover {
  box-shadow: 0 4px 12px rgba(229,62,62,0.3);
}

/* 餐饮美食 */
.dining-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px;
}
.dining-card {
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #E2E8F0;
  transition: all 0.25s;
}
.dining-card:hover {
  box-shadow: 0 8px 20px rgba(26,54,93,0.12);
}
.dining-card-img {
  height: 120px;
  background: linear-gradient(135deg, #C53030, #D69E2E);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 40px;
}
.dining-card-body {
  padding: 14px 16px;
}
.dining-card-body h5 {
  font-size: 15px;
  font-weight: 600;
  color: #1A202C;
  margin: 0 0 6px 0;
}
.dining-card-body p {
  font-size: 12.5px;
  color: #718096;
  margin: 0;
  line-height: 1.6;
}

/* 会议婚宴 */
.meeting-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 16px;
}
.meeting-card {
  padding: 18px;
  background: #F8FAFC;
  border-radius: 10px;
  border-left: 4px solid #D69E2E;
  transition: all 0.25s;
}
.meeting-card:hover {
  background: #FFFDF5;
  box-shadow: 0 4px 14px rgba(214,158,46,0.15);
}
.meeting-card h5 {
  font-size: 15px;
  font-weight: 600;
  color: #1A365D;
  margin: 0 0 10px 0;
}
.meeting-card ul {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 12.5px;
  color: #4A5568;
  line-height: 1.9;
}
.meeting-card li {
  display: flex;
  justify-content: space-between;
  padding: 2px 0;
  border-bottom: 1px dashed #E2E8F0;
}
.meeting-card li:last-child { border-bottom: none; }
.meeting-card li span { color: #718096; }

/* 康体娱乐 */
.rec-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 14px;
}
.rec-card {
  text-align: center;
  padding: 20px 12px;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  transition: all 0.25s;
  background: #fff;
}
.rec-card:hover {
  border-color: #D69E2E;
  background: #FFFDF5;
  }
.rec-card .r-icon {
  font-size: 34px;
  margin-bottom: 8px;
}
.rec-card .r-name {
  font-size: 13px;
  font-weight: 600;
  color: #1A202C;
  margin-bottom: 4px;
}
.rec-card .r-desc {
  font-size: 11.5px;
  color: #718096;
}

/* 侧边栏升级 */
.hotel-mside {
  position: sticky;
  top: 140px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.hotel-mside-card {
  background: #fff;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 2px 12px rgba(26,54,93,0.06);
  border: 1px solid #E2E8F0;
}
.hotel-mside-title {
  font-size: 15px;
  font-weight: 700;
  color: #1A202C;
  margin: 0 0 16px 0;
  padding-left: 10px;
  border-left: 3px solid #D69E2E;
}
.hotel-quick-info p {
  font-size: 13px;
  color: #4A5568;
  margin: 0 0 10px 0;
  display: flex;
  justify-content: space-between;
  padding-bottom: 8px;
  border-bottom: 1px dashed #F0F0F0;
}
.hotel-quick-info p:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.hotel-quick-info p span:first-child {
  color: #718096;
  flex-shrink: 0;
}
.hotel-quick-info p span:last-child {
  color: #1A202C;
  font-weight: 500;
  text-align: right;
}

/* 交通地图区 */
.hotel-traffic {
  background: #F8FAFC;
  border-radius: 10px;
  padding: 16px;
  margin-top: 10px;
}
.hotel-traffic-item {
  display: flex;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px dashed #E2E8F0;
}
.hotel-traffic-item:last-child { border-bottom: none; }
.hotel-traffic-item .t-icon {
  font-size: 20px;
  flex-shrink: 0;
}
.hotel-traffic-item .t-info p {
  font-size: 13px;
  color: #1A202C;
  margin: 0 0 3px 0;
  font-weight: 500;
}
.hotel-traffic-item .t-info span {
  font-size: 12px;
  color: #718096;
}

/* 评价汇总条 */
.hotel-rating-bar {
  background: linear-gradient(135deg, #1A365D, #2A4A7D);
  color: #fff;
  border-radius: 12px;
  padding: 20px;
  text-align: center;
  margin-bottom: 24px;
  position: relative;
  overflow: hidden;
}
.hotel-rating-bar::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -20%;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(214,158,46,0.3), transparent);
  border-radius: 50%;
}
.hotel-rating-score {
  font-size: 44px;
  font-weight: 800;
  line-height: 1;
  color: #F6E05E;
  position: relative;
  z-index: 1;
}
.hotel-rating-label {
  font-size: 13px;
  color: rgba(255,255,255,0.7);
  margin-top: 6px;
  position: relative;
  z-index: 1;
}
.hotel-rating-stars {
  font-size: 16px;
  color: #F6E05E;
  letter-spacing: 3px;
  margin: 8px 0 4px;
  position: relative;
  z-index: 1;
}


/* ============================================================
   Part 33 — 页脚终极修复（干净重排版·高端大气）
   用最高权重重写，彻底解决变形/堆叠问题
   ============================================================ */

/* 外层容器：确保占满宽度 */
#siteFooter.site-footer {
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #0F2440 !important;
  color: rgba(255,255,255,0.7) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  position: relative !important;
  left: 0 !important;
  right: 0 !important;
  float: none !important;
  display: block !important;
  box-sizing: border-box !important;
  border-top: 1px solid rgba(214,158,46,0.2) !important;
}

/* 顶部金色装饰线 */
#siteFooter.site-footer::before {
  content: '' !important;
  display: block !important;
  width: 100% !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent 0%, #D69E2E 30%, #F6E05E 50%, #D69E2E 70%, transparent 100%) !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
}

/* 内容容器：居中、宽度固定 */
#siteFooter.site-footer > .container {
  max-width: 1200px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 48px 24px 0 !important;
  box-sizing: border-box !important;
  float: none !important;
  display: block !important;
}

/* 主网格：5列均匀分布 */
#siteFooter .footer-grid {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 36px 0 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}

/* 每一列 */
#siteFooter .footer-col {
  flex: 0 0 auto !important;
  width: 18% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  display: block !important;
  box-sizing: border-box !important;
  text-align: left !important;
}

/* 品牌列：稍宽一点 */
#siteFooter .footer-col.footer-brand-col {
  width: 26% !important;
  padding-right: 24px !important;
}

/* 品牌Logo行 */
#siteFooter .footer-logo-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 10px !important;
}
#siteFooter .footer-logo-icon {
  width: 36px !important;
  height: 36px !important;
  background: linear-gradient(135deg, #D69E2E, #B8860B) !important;
  color: #0F2440 !important;
  font-weight: 800 !important;
  font-size: 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 8px !important;
  flex-shrink: 0 !important;
}
#siteFooter .footer-logo-text {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #fff !important;
  letter-spacing: 2px !important;
  line-height: 1 !important;
}

#siteFooter .footer-brand-desc {
  font-size: 12.5px !important;
  color: rgba(255,255,255,0.55) !important;
  line-height: 1.8 !important;
  margin: 8px 0 18px 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

/* 数据统计卡 */
#siteFooter .footer-brand-stats {
  display: flex !important;
  gap: 16px !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
}
#siteFooter .footer-stat-item {
  flex: 1 !important;
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(214,158,46,0.15) !important;
  border-radius: 8px !important;
  padding: 12px 10px !important;
  text-align: center !important;
  float: none !important;
  box-sizing: border-box !important;
}
#siteFooter .footer-stat-item .num {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #D69E2E !important;
  line-height: 1.2 !important;
  margin-bottom: 4px !important;
  display: block !important;
}
#siteFooter .footer-stat-item .label {
  font-size: 11px !important;
  color: rgba(255,255,255,0.5) !important;
  display: block !important;
  line-height: 1.2 !important;
}

/* 列标题 */
#siteFooter .footer-col h4 {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 0 18px 0 !important;
  padding: 0 0 10px 0 !important;
  border-bottom: 1px solid rgba(214,158,46,0.25) !important;
  position: relative !important;
  line-height: 1.3 !important;
  float: none !important;
  text-align: left !important;
}
#siteFooter .footer-col h4::after {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -1px !important;
  width: 32px !important;
  height: 2px !important;
  background: #D69E2E !important;
}

/* 链接列表 */
#siteFooter .footer-links {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  display: block !important;
  text-align: left !important;
}
#siteFooter .footer-links li {
  margin: 0 !important;
  padding: 6px 0 !important;
  line-height: 1.4 !important;
  float: none !important;
  display: list-item !important;
  list-style: none !important;
  text-align: left !important;
}
#siteFooter .footer-links a {
  color: rgba(255,255,255,0.6) !important;
  text-decoration: none !important;
  font-size: 13px !important;
  transition: all 0.2s ease !important;
  display: inline-block !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: left !important;
}
#siteFooter .footer-links a:hover {
  color: #D69E2E !important;
  transform: translateX(3px) !important;
}

/* AI信源声明条 */
#siteFooter .footer-ai-source {
  width: 100% !important;
  margin: 0 !important;
  padding: 18px 0 !important;
  background: rgba(0,0,0,0.2) !important;
  border-top: 1px solid rgba(255,255,255,0.05) !important;
  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
  box-sizing: border-box !important;
  float: none !important;
  display: block !important;
}
#siteFooter .footer-ai-source > strong {
  color: #D69E2E !important;
  font-size: 13px !important;
}
#siteFooter .footer-ai-source > a {
  color: rgba(255,255,255,0.7) !important;
  text-decoration: underline !important;
  font-size: 12.5px !important;
}

/* 版权区 */
#siteFooter .footer-copyright {
  width: 100% !important;
  margin: 0 !important;
  padding: 16px 0 20px !important;
  text-align: center !important;
  font-size: 12px !important;
  color: rgba(255,255,255,0.4) !important;
  line-height: 1.8 !important;
  float: none !important;
  display: block !important;
  box-sizing: border-box !important;
}
#siteFooter .footer-copyright p {
  margin: 2px 0 !important;
  padding: 0 !important;
  float: none !important;
  display: block !important;
  text-align: center !important;
  line-height: 1.8 !important;
}
#siteFooter .footer-copyright a {
  color: rgba(255,255,255,0.4) !important;
  text-decoration: none !important;
}
#siteFooter .footer-copyright a:hover {
  color: #D69E2E !important;
}

/* 响应式：平板 */
@media (max-width: 1023px) {
  #siteFooter .footer-grid {
    flex-wrap: wrap !important;
  }
  #siteFooter .footer-col.footer-brand-col {
    width: 100% !important;
    padding-right: 0 !important;
    margin-bottom: 24px !important;
  }
  #siteFooter .footer-col {
    width: 25% !important;
  }
}

/* 响应式：手机 */
@media (max-width: 767px) {
  #siteFooter.site-footer > .container {
    padding: 32px 20px 0 !important;
  }
  #siteFooter .footer-col {
    width: 50% !important;
    margin-bottom: 24px !important;
  }
  #siteFooter .footer-col.footer-brand-col {
    width: 100% !important;
  }
  #siteFooter .footer-brand-stats {
    max-width: 280px !important;
  }
}


/* ============================================================
   Part 34 — 页脚变形终极修复（防御式·零依赖）
   彻底隔离所有外部样式干扰，确保5列横排整齐
   ============================================================ */

/* === 外层：占满整个视口宽度，防止被flex父容器压缩 === */
footer#siteFooter {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 100% !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 100% !important;
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
  overflow: hidden !important;
}

footer#siteFooter * {
  box-sizing: border-box !important;
}

/* === 内部容器：强制居中 + 固定宽度 === */
footer#siteFooter > .container {
  width: 100% !important;
  max-width: 1200px !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  padding-top: 50px !important;
  padding-bottom: 0 !important;
  display: block !important;
  float: none !important;
  box-sizing: border-box !important;
  flex: none !important;
}

/* === 主5列网格：用flex row nowrap + 每列明确占比 === */
footer#siteFooter .footer-grid {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 32px 0 !important;
  padding: 0 0 32px 0 !important;
  display: flex !important;
  display: -webkit-flex !important;
  flex-direction: row !important;
  -webkit-flex-direction: row !important;
  flex-wrap: nowrap !important;
  -webkit-flex-wrap: nowrap !important;
  justify-content: space-between !important;
  -webkit-justify-content: space-between !important;
  align-items: flex-start !important;
  -webkit-align-items: flex-start !important;
  gap: 2% !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  float: none !important;
  box-sizing: border-box !important;
}

/* === 5列各自宽度 === */
footer#siteFooter .footer-col {
  flex: 0 0 16% !important;
  -webkit-flex: 0 0 16% !important;
  width: 16% !important;
  max-width: 16% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  float: none !important;
  box-sizing: border-box !important;
  text-align: left !important;
  vertical-align: top !important;
}

/* 品牌列更宽 */
footer#siteFooter .footer-col.footer-brand-col {
  flex: 0 0 28% !important;
  -webkit-flex: 0 0 28% !important;
  width: 28% !important;
  max-width: 28% !important;
  padding-right: 10px !important;
}

/* === 品牌区内部：全部左对齐 === */
footer#siteFooter .footer-logo-row {
  display: flex !important;
  display: -webkit-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  -webkit-align-items: center !important;
  justify-content: flex-start !important;
  -webkit-justify-content: flex-start !important;
  gap: 10px !important;
  margin-bottom: 12px !important;
  width: 100% !important;
  float: none !important;
}
footer#siteFooter .footer-logo-icon {
  flex-shrink: 0 !important;
  -webkit-flex-shrink: 0 !important;
  width: 40px !important;
  height: 40px !important;
  line-height: 40px !important;
  text-align: center !important;
  background: linear-gradient(135deg, #D69E2E, #B8860B) !important;
  color: #0F2440 !important;
  font-weight: 800 !important;
  font-size: 22px !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  float: none !important;
}
footer#siteFooter .footer-logo-text {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #fff !important;
  letter-spacing: 2px !important;
  line-height: 1 !important;
  margin: 0 !important;
  float: none !important;
  flex-shrink: 0 !important;
}

footer#siteFooter .footer-brand-desc {
  font-size: 12.5px !important;
  color: rgba(255,255,255,0.55) !important;
  line-height: 1.8 !important;
  margin: 10px 0 18px 0 !important;
  padding: 0 !important;
  text-align: left !important;
  display: block !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* 数据统计卡 */
footer#siteFooter .footer-brand-stats {
  display: flex !important;
  display: -webkit-flex !important;
  flex-direction: row !important;
  -webkit-flex-direction: row !important;
  flex-wrap: nowrap !important;
  -webkit-flex-wrap: nowrap !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  float: none !important;
}
footer#siteFooter .footer-stat-item {
  flex: 1 1 0 !important;
  -webkit-flex: 1 1 0 !important;
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(214,158,46,0.15) !important;
  border-radius: 8px !important;
  padding: 14px 8px !important;
  text-align: center !important;
  display: block !important;
  float: none !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}
footer#siteFooter .footer-stat-item .num {
  display: block !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #D69E2E !important;
  line-height: 1.2 !important;
  margin-bottom: 4px !important;
  float: none !important;
}
footer#siteFooter .footer-stat-item .label {
  display: block !important;
  font-size: 11px !important;
  color: rgba(255,255,255,0.5) !important;
  line-height: 1.2 !important;
  float: none !important;
}

/* === 列标题 === */
footer#siteFooter .footer-col h4 {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 0 18px 0 !important;
  padding: 0 0 10px 0 !important;
  border-bottom: 1px solid rgba(214,158,46,0.3) !important;
  line-height: 1.3 !important;
  display: block !important;
  float: none !important;
  text-align: left !important;
  position: relative !important;
}

/* === 链接列表：全部左对齐 === */
footer#siteFooter .footer-links {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  float: none !important;
  text-align: left !important;
  width: 100% !important;
}
footer#siteFooter .footer-links li {
  list-style: none !important;
  margin: 0 !important;
  padding: 5px 0 !important;
  line-height: 1.4 !important;
  display: list-item !important;
  display: block !important;
  float: none !important;
  text-align: left !important;
  width: 100% !important;
  text-indent: 0 !important;
}
footer#siteFooter .footer-links a {
  color: rgba(255,255,255,0.6) !important;
  text-decoration: none !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  display: inline-block !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: left !important;
  transition: color 0.2s ease !important;
  word-break: normal !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}
footer#siteFooter .footer-links a:hover {
  color: #D69E2E !important;
  padding-left: 4px !important;
}

/* === AI信源声明条：占满整行 === */
footer#siteFooter .footer-ai-source {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 18px 24px !important;
  background: rgba(0,0,0,0.2) !important;
  border-top: 1px solid rgba(255,255,255,0.05) !important;
  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
  display: block !important;
  float: none !important;
  box-sizing: border-box !important;
  clear: both !important;
  text-align: center !important;
  font-size: 12.5px !important;
  color: rgba(255,255,255,0.5) !important;
  line-height: 1.7 !important;
}

/* === 版权区：占满整行居中 === */
footer#siteFooter .footer-copyright {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 18px 24px 22px !important;
  text-align: center !important;
  font-size: 12px !important;
  color: rgba(255,255,255,0.4) !important;
  line-height: 1.8 !important;
  display: block !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}
footer#siteFooter .footer-copyright p {
  margin: 3px 0 !important;
  padding: 0 !important;
  display: block !important;
  float: none !important;
  text-align: center !important;
  line-height: 1.8 !important;
  width: 100% !important;
}

/* === 顶部金色装饰线 === */
footer#siteFooter::before {
  content: '' !important;
  display: block !important;
  width: 100% !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent 0%, #D69E2E 20%, #F6E05E 50%, #D69E2E 80%, transparent 100%) !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 1 !important;
}


/* ============================================================
   Part 35 — 页脚底部版权区修复（匹配实际HTML类名）
   HTML: .footer-bottom > .copyright + .disclaimer
   ============================================================ */

footer#siteFooter .footer-bottom {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 18px 24px 22px !important;
  text-align: center !important;
  display: block !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
  background: rgba(0,0,0,0.15) !important;
  border-top: 1px solid rgba(255,255,255,0.05) !important;
}

footer#siteFooter .footer-bottom .copyright {
  font-size: 12.5px !important;
  color: rgba(255,255,255,0.5) !important;
  line-height: 1.8 !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
  display: block !important;
  float: none !important;
  text-align: center !important;
  width: 100% !important;
}
footer#siteFooter .footer-bottom .copyright a {
  color: rgba(255,255,255,0.5) !important;
  text-decoration: none !important;
}
footer#siteFooter .footer-bottom .copyright a:hover {
  color: #D69E2E !important;
}

footer#siteFooter .footer-bottom .disclaimer {
  font-size: 11.5px !important;
  color: rgba(255,255,255,0.35) !important;
  line-height: 1.6 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  float: none !important;
  text-align: center !important;
  width: 100% !important;
}

/* AI信源条也补全（在container外的直接子元素） */
footer#siteFooter > .footer-ai-source {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
footer#siteFooter > .footer-ai-source strong {
  color: #D69E2E !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}
footer#siteFooter > .footer-ai-source a {
  color: rgba(255,255,255,0.7) !important;
  text-decoration: underline !important;
  font-size: 12.5px !important;
}
footer#siteFooter > .footer-ai-source a:hover {
  color: #D69E2E !important;
}


/* ============================================================
   Part 36 — 页脚内部结构修正（AI声明条和底部在container内）
   ============================================================ */

/* AI 声明条在 container 内，带负边距撑满宽度 */
footer#siteFooter > .container > .footer-ai-source {
  margin-left: -24px !important;
  margin-right: -24px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  padding-top: 18px !important;
  padding-bottom: 18px !important;
  width: auto !important;
  max-width: none !important;
}

/* 底部版权区也在 container 内 */
footer#siteFooter > .container > .footer-bottom {
  margin-left: -24px !important;
  margin-right: -24px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  padding-top: 18px !important;
  padding-bottom: 22px !important;
  width: auto !important;
  max-width: none !important;
}


/* ============================================================
   Part 37 — 精选信息列表样式修复（确保垂直单列）
   ============================================================ */
.classified-list-wrap {
  width: 100% !important;
  display: block !important;
  float: none !important;
  box-sizing: border-box !important;
}

.classified-list-wrap .classified-list {
  display: block !important;
  flex-direction: column !important;
  width: 100% !important;
  float: none !important;
}

.classified-list-wrap .classified-item {
  width: 100% !important;
  float: none !important;
  display: flex !important;
  flex-direction: row !important;
  box-sizing: border-box !important;
}


/* ============================================================
   Part 38 — 分类信息列表简洁版（去图标，文字整齐排版）
   ============================================================ */

/* 列表容器：纯垂直单列 */
.classified-list-wrap .classified-list {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* 每一条：左图右文的标准横排（整齐） */
.classified-list-wrap .classified-item {
  display: flex !important;
  display: -webkit-flex !important;
  flex-direction: row !important;
  -webkit-flex-direction: row !important;
  align-items: flex-start !important;
  -webkit-align-items: flex-start !important;
  justify-content: flex-start !important;
  width: 100% !important;
  padding: 16px 20px !important;
  margin: 0 !important;
  border-bottom: 1px solid #F0F4F8 !important;
  box-sizing: border-box !important;
  float: none !important;
  background: #fff !important;
  transition: background 0.2s !important;
  text-align: left !important;
}
.classified-list-wrap .classified-item:hover {
  background: #FAFBFC !important;
}

/* 去掉图标方块 */
.classified-list-wrap .classified-item .item-icon,
.classified-list-wrap .classified-item .ci-icon,
.classified-list-wrap .classified-item .item-img,
.classified-list-wrap .classified-item > div:first-child[style*="background"],
.classified-list-wrap .classified-item > a:first-child[style*="background"] {
  display: none !important;
}

/* 文字内容区：占满，左对齐，行高整齐 */
.classified-list-wrap .classified-item .item-content,
.classified-list-wrap .classified-item .item-body,
.classified-list-wrap .classified-item .ci-content,
.classified-list-wrap .classified-item > div:last-child {
  flex: 1 1 auto !important;
  -webkit-flex: 1 1 auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: left !important;
  display: block !important;
  float: none !important;
  line-height: 1.5 !important;
}

/* 标题：单行省略号，左对齐 */
.classified-list-wrap .classified-item .item-title,
.classified-list-wrap .classified-item h4,
.classified-list-wrap .classified-item h3 {
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: #1A202C !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
  text-align: left !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: block !important;
  float: none !important;
  writing-mode: horizontal-tb !important;
}

/* 描述文字：2行省略，左对齐 */
.classified-list-wrap .classified-item .item-desc,
.classified-list-wrap .classified-item .desc,
.classified-list-wrap .classified-item p {
  font-size: 12.5px !important;
  color: #718096 !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
  text-align: left !important;
  line-height: 1.6 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  float: none !important;
  writing-mode: horizontal-tb !important;
}

/* 底部标签栏：左对齐 */
.classified-list-wrap .classified-item .item-meta,
.classified-list-wrap .classified-item .item-footer,
.classified-list-wrap .classified-item .ci-meta {
  display: flex !important;
  display: -webkit-flex !important;
  flex-direction: row !important;
  -webkit-flex-direction: row !important;
  align-items: center !important;
  -webkit-align-items: center !important;
  justify-content: flex-start !important;
  -webkit-justify-content: flex-start !important;
  gap: 10px !important;
  font-size: 12px !important;
  color: #A0AEC0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  flex-wrap: wrap !important;
}


/* ============================================================
   Part 39 — 黄页列表标准样式（左图 + 中间信息 + 右侧联系按钮+时间）
   ============================================================ */

/* 整体容器：白底卡片，内边距适中 */
.classified-list-wrap .classified-item {
  display: flex !important;
  display: -webkit-flex !important;
  flex-direction: row !important;
  -webkit-flex-direction: row !important;
  align-items: flex-start !important;
  -webkit-align-items: flex-start !important;
  justify-content: flex-start !important;
  -webkit-justify-content: flex-start !important;
  width: 100% !important;
  padding: 20px !important;
  margin: 0 0 12px 0 !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
  float: none !important;
  background: #fff !important;
  transition: all 0.25s ease !important;
  text-align: left !important;
  writing-mode: horizontal-tb !important;
  position: relative !important;
}
.classified-list-wrap .classified-item:hover {
  border-color: #D69E2E !important;
  box-shadow: 0 4px 16px rgba(214, 158, 46, 0.12) !important;
  background: #fff !important;
}

/* 左侧图片：固定尺寸，圆角 */
.classified-list-wrap .classified-item .item-icon,
.classified-list-wrap .classified-item .ci-icon,
.classified-list-wrap .classified-item .item-img,
.classified-list-wrap .classified-item > div:first-child[style*="background"],
.classified-list-wrap .classified-item > a:first-child[style*="background"] {
  display: block !important;
  flex: 0 0 140px !important;
  -webkit-flex: 0 0 140px !important;
  width: 140px !important;
  height: 100px !important;
  margin-right: 20px !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  background: #F5F7FA !important;
  float: none !important;
  writing-mode: horizontal-tb !important;
  font-size: 48px !important;
  line-height: 100px !important;
  text-align: center !important;
  vertical-align: middle !important;
  font-style: normal !important;
}
.classified-list-wrap .classified-item > div:first-child[style*="background"] {
  font-size: 36px !important;
  line-height: 100px !important;
  text-align: center !important;
}

/* 中间内容区：flex 1，可伸缩 */
.classified-list-wrap .classified-item .item-content,
.classified-list-wrap .classified-item .item-body,
.classified-list-wrap .classified-item .ci-content,
.classified-list-wrap .classified-item > div:nth-child(2) {
  flex: 1 1 auto !important;
  -webkit-flex: 1 1 auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 20px 0 0 !important;
  text-align: left !important;
  display: flex !important;
  display: -webkit-flex !important;
  flex-direction: column !important;
  -webkit-flex-direction: column !important;
  justify-content: flex-start !important;
  -webkit-justify-content: flex-start !important;
  float: none !important;
  line-height: 1.5 !important;
  writing-mode: horizontal-tb !important;
}

/* 标题行：黑色加粗，hover 金色 */
.classified-list-wrap .classified-item .item-title,
.classified-list-wrap .classified-item h4,
.classified-list-wrap .classified-item h3 {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #1A202C !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  text-align: left !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: block !important;
  float: none !important;
  writing-mode: horizontal-tb !important;
  transition: color 0.2s !important;
}
.classified-list-wrap .classified-item:hover .item-title,
.classified-list-wrap .classified-item:hover h3,
.classified-list-wrap .classified-item:hover h4 {
  color: #D69E2E !important;
}

/* 标题上的标签：小型 pill */
.classified-list-wrap .classified-item .item-tag {
  display: inline-block !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  padding: 2px 8px !important;
  border-radius: 4px !important;
  margin-right: 6px !important;
  vertical-align: middle !important;
  line-height: 1.5 !important;
}

/* 服务类型行 */
.classified-list-wrap .classified-item .service-type {
  font-size: 14px !important;
  color: #718096 !important;
  margin: 0 0 8px 0 !important;
  text-align: left !important;
  line-height: 1.5 !important;
  writing-mode: horizontal-tb !important;
}
.classified-list-wrap .classified-item .service-type strong,
.classified-list-wrap .classified-item .service-type b {
  font-weight: 400 !important;
  color: #4A5568 !important;
  margin-right: 4px !important;
}

/* meta 行：认证标签 + 企业名/区域 */
.classified-list-wrap .classified-item .item-meta {
  display: flex !important;
  display: -webkit-flex !important;
  flex-direction: row !important;
  -webkit-flex-direction: row !important;
  align-items: center !important;
  -webkit-align-items: center !important;
  justify-content: flex-start !important;
  -webkit-justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 6px 12px !important;
  font-size: 13px !important;
  color: #718096 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.6 !important;
  writing-mode: horizontal-tb !important;
  float: none !important;
}
.classified-list-wrap .classified-item .item-meta span {
  display: inline-block !important;
  line-height: 1.6 !important;
  writing-mode: horizontal-tb !important;
  vertical-align: middle !important;
  float: none !important;
}

/* 认证标签：蓝色边框 pill */
.classified-list-wrap .classified-item .cert-badge,
.classified-list-wrap .classified-item .item-tag.tag-blue {
  display: inline-block !important;
  padding: 2px 8px !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #3182CE !important;
  border: 1px solid #63B3ED !important;
  border-radius: 4px !important;
  background: #EBF8FF !important;
  margin-right: 4px !important;
  vertical-align: middle !important;
}

/* 描述文字：隐藏（图1风格没有长描述） */
.classified-list-wrap .classified-item .item-desc,
.classified-list-wrap .classified-item .desc,
.classified-list-wrap .classified-item p {
  display: none !important;
}

/* 右侧按钮区：右对齐，按钮+时间 */
.classified-list-wrap .classified-item .item-action {
  flex: 0 0 110px !important;
  -webkit-flex: 0 0 110px !important;
  width: 110px !important;
  display: flex !important;
  display: -webkit-flex !important;
  flex-direction: column !important;
  -webkit-flex-direction: column !important;
  align-items: center !important;
  -webkit-align-items: center !important;
  justify-content: center !important;
  -webkit-justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  writing-mode: horizontal-tb !important;
  float: none !important;
  min-height: 100px !important;
}

/* 联系商家按钮 */
.classified-list-wrap .classified-item .contact-btn {
  display: inline-block !important;
  width: 100% !important;
  padding: 8px 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #E53E3E !important;
  border: 1px solid #E53E3E !important;
  border-radius: 4px !important;
  background: #fff !important;
  text-align: center !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
  line-height: 1.5 !important;
  writing-mode: horizontal-tb !important;
  margin-bottom: 10px !important;
  box-sizing: border-box !important;
}
.classified-list-wrap .classified-item .contact-btn:hover {
  background: #E53E3E !important;
  color: #fff !important;
}

/* 发布时间 */
.classified-list-wrap .classified-item .item-time,
.classified-list-wrap .classified-item .post-time {
  font-size: 13px !important;
  color: #A0AEC0 !important;
  line-height: 1.5 !important;
  writing-mode: horizontal-tb !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  display: block !important;
}

/* 底部 footer：隐藏原来的 footer 行（图1风格没有） */
.classified-list-wrap .classified-item .item-footer,
.classified-list-wrap .classified-item .ci-footer {
  display: none !important;
}

/* 标题行的标签：跟标题同一行 */
.classified-list-wrap .classified-item .item-title-row {
  display: flex !important;
  display: -webkit-flex !important;
  align-items: center !important;
  -webkit-align-items: center !important;
  justify-content: flex-start !important;
  -webkit-justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  margin: 0 0 8px 0 !important;
  writing-mode: horizontal-tb !important;
  float: none !important;
}
.classified-list-wrap .classified-item .item-title-row .item-title {
  flex: 1 1 auto !important;
  -webkit-flex: 1 1 auto !important;
  margin: 0 !important;
}
.classified-list-wrap .classified-item .item-title-row .item-tag {
  flex: 0 0 auto !important;
  -webkit-flex: 0 0 auto !important;
  margin-left: 8px !important;
  margin-right: 0 !important;
}

/* 响应式：平板 */
@media (max-width: 1023px) {
  .classified-list-wrap .classified-item {
    padding: 16px !important;
  }
  .classified-list-wrap .classified-item > div:first-child[style*="background"] {
    flex: 0 0 110px !important;
    -webkit-flex: 0 0 110px !important;
    width: 110px !important;
    height: 85px !important;
    line-height: 85px !important;
    font-size: 30px !important;
    margin-right: 16px !important;
  }
  .classified-list-wrap .classified-item .item-action {
    flex: 0 0 100px !important;
    -webkit-flex: 0 0 100px !important;
    width: 100px !important;
    min-height: 85px !important;
  }
  .classified-list-wrap .classified-item .item-title,
  .classified-list-wrap .classified-item h3 {
    font-size: 16px !important;
  }
}

/* 响应式：手机 */
@media (max-width: 767px) {
  .classified-list-wrap .classified-item {
    flex-wrap: wrap !important;
    -webkit-flex-wrap: wrap !important;
    padding: 14px !important;
  }
  .classified-list-wrap .classified-item > div:first-child[style*="background"] {
    flex: 0 0 90px !important;
    -webkit-flex: 0 0 90px !important;
    width: 90px !important;
    height: 70px !important;
    line-height: 70px !important;
    font-size: 26px !important;
    margin-right: 12px !important;
  }
  .classified-list-wrap .classified-item .item-content {
    flex: 1 1 calc(100% - 102px) !important;
    -webkit-flex: 1 1 calc(100% - 102px) !important;
    margin: 0 !important;
  }
  .classified-list-wrap .classified-item .item-action {
    flex: 1 1 100% !important;
    -webkit-flex: 1 1 100% !important;
    width: 100% !important;
    min-height: auto !important;
    flex-direction: row !important;
    -webkit-flex-direction: row !important;
    justify-content: space-between !important;
    -webkit-justify-content: space-between !important;
    margin-top: 12px !important;
    padding-top: 12px !important;
    border-top: 1px solid #F0F4F8 !important;
  }
  .classified-list-wrap .classified-item .contact-btn {
    width: auto !important;
    padding: 6px 16px !important;
    margin: 0 !important;
  }
  .classified-list-wrap .classified-item .item-title,
  .classified-list-wrap .classified-item h3 {
    font-size: 15px !important;
  }
}


/* ============================================================
   Part 40 — 分类精选推荐（Tab切换 + 每类6条卡片）
   ============================================================ */

.classified-featured {
  padding: 40px 0;
  background: #F5F7FA;
}
.classified-featured .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

/* 头部 */
.cf-header {
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  margin-bottom: 24px;
}
.cf-title-wrap {
  margin-bottom: 16px;
}
.cf-title {
  font-size: 26px;
  font-weight: 700;
  color: #1A365D;
  margin: 0 0 6px 0;
  line-height: 1.3;
}
.cf-sub {
  font-size: 14px;
  color: #718096;
  margin: 0;
  line-height: 1.5;
}

/* Tab 栏 */
.cf-tabs {
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  gap: 8px;
  background: #fff;
  padding: 12px 16px;
  border-radius: 8px;
  border: 1px solid #E2E8F0;
}
.cf-tab {
  display: inline-block;
  padding: 6px 14px;
  font-size: 13.5px;
  font-weight: 500;
  color: #4A5568;
  border-radius: 6px;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease;
  line-height: 1.5;
  border: 1px solid transparent;
  background: transparent;
  white-space: nowrap;
}
.cf-tab:hover {
  color: #1A365D;
  background: #F5F7FA;
}
.cf-tab.active {
  color: #fff;
  background: #1A365D;
  border-color: #1A365D;
  font-weight: 600;
}

/* 面板 */
.cf-panel {
  display: none;
  padding-top: 20px;
}
.cf-panel.active {
  display: block;
}

/* 卡片网格：2行3列 */
.cf-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

/* 单条卡片 */
.cf-item {
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 16px;
  transition: all 0.25s ease;
  box-sizing: border-box;
  position: relative;
}
.cf-item:hover {
  border-color: #D69E2E;
  box-shadow: 0 4px 16px rgba(214, 158, 46, 0.12);
  }

/* 左图 — 固定方框 + 绝对定位封面，避免 flex 子项把图片压扁 */
.cf-item-img {
  position: relative;
  flex: 0 0 88px;
  -webkit-flex: 0 0 88px;
  width: 88px;
  height: 88px;
  border-radius: 8px;
  overflow: hidden;
  margin-right: 14px;
  background: #F5F7FA;
  font-size: 28px;
  line-height: 88px;
  text-align: center;
  flex-shrink: 0;
}

/* 中间信息 */
.cf-item-body {
  flex: 1 1 auto;
  -webkit-flex: 1 1 auto;
  min-width: 0;
  padding-right: 10px;
}
.cf-item-title {
  font-size: 15px;
  font-weight: 600;
  color: #1A202C;
  margin: 0 0 8px 0;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 42px;
  transition: color 0.2s;
}
.cf-item:hover .cf-item-title {
  color: #D69E2E;
}
.cf-item-meta {
  display: flex;
  display: -webkit-flex;
  align-items: center;
  -webkit-align-items: center;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  gap: 8px;
  font-size: 12.5px;
  color: #718096;
  margin-bottom: 6px;
  line-height: 1.5;
}
.cf-tag {
  display: inline-block;
  padding: 1px 6px;
  font-size: 11px;
  font-weight: 500;
  border-radius: 4px;
  line-height: 1.6;
  vertical-align: middle;
}
.cf-tag-blue {
  background: #EBF8FF;
  color: #3182CE;
  border: 1px solid #BEE3F8;
}
.cf-tag-green {
  background: #F0FFF4;
  color: #38A169;
  border: 1px solid #C6F6D5;
}
.cf-tag-gold {
  background: #FFFAF0;
  color: #B7791F;
  border: 1px solid #F6E05E;
}
.cf-tag-red {
  background: #FFF5F5;
  color: #E53E3E;
  border: 1px solid #FED7D7;
}
.cf-item-price {
  font-size: 16px;
  font-weight: 700;
  color: #E53E3E;
  line-height: 1.4;
}
.cf-item-price small {
  font-size: 12px;
  font-weight: 400;
  color: #A0AEC0;
  margin-left: 2px;
}

/* 右侧按钮 */
.cf-item-btn {
  flex: 0 0 72px;
  -webkit-flex: 0 0 72px;
  width: 72px;
  padding: 6px 0;
  font-size: 12.5px;
  font-weight: 600;
  color: #E53E3E;
  border: 1px solid #E53E3E;
  border-radius: 4px;
  background: #fff;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s;
  line-height: 1.5;
  margin-top: 2px;
  white-space: nowrap;
}
.cf-item-btn:hover {
  background: #E53E3E;
  color: #fff;
}

/* 响应式：平板 */
@media (max-width: 1023px) {
  .cf-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .cf-title {
    font-size: 22px;
  }
}

/* 响应式：手机 */
@media (max-width: 767px) {
  .classified-featured {
    padding: 24px 0;
  }
  .cf-title {
    font-size: 20px;
  }
  .cf-tabs {
    padding: 8px 10px;
    gap: 6px;
  }
  .cf-tab {
    font-size: 12.5px;
    padding: 5px 10px;
  }
  .cf-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .cf-item {
    padding: 14px;
  }
  .cf-item-img {
    flex: 0 0 72px;
    -webkit-flex: 0 0 72px;
    width: 72px;
    height: 72px;
    font-size: 24px;
    line-height: 72px;
    margin-right: 12px;
  }
  .cf-item-title {
    font-size: 14px;
    min-height: 38px;
  }
  .cf-item-btn {
    flex: 0 0 64px;
    -webkit-flex: 0 0 64px;
    width: 64px;
    font-size: 12px;
  }
}

/* 搜索 ?q= 命中提示条 */
.search-hint {
  max-width: 1200px;
  margin: 16px auto;
  padding: 12px 20px;
  background: #FFFFFF;
  border: 1px solid var(--color-accent);
  border-left: 4px solid var(--color-accent);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  font-size: 14px;
  color: var(--color-text-primary);
}
.search-hint strong { color: var(--color-primary); }
.search-hint b { color: var(--color-accent-dark); }
.search-hint a {
  color: var(--color-primary);
  text-decoration: none;
  border: 1px solid var(--color-border);
  border-radius: 4px;
  padding: 4px 12px;
  white-space: nowrap;
}
.search-hint a:hover { border-color: var(--color-accent); color: var(--color-accent-dark); }

/* 404 页面 */
.nf404-main { padding: 80px 0 100px; text-align: center; }
.nf404-code {
  font-size: 96px; font-weight: 700; color: var(--color-accent);
  letter-spacing: 8px; line-height: 1.1;
}
.nf404-main h1 { font-size: 28px; color: var(--color-primary); margin: 16px 0 8px; }
.nf404-lead { color: var(--color-text-secondary); font-size: 15px; margin-bottom: 32px; }
.nf404-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.nf404-btn {
  display: inline-block; padding: 10px 24px; border-radius: 6px;
  background: var(--color-primary); color: #fff; text-decoration: none; font-size: 14px;
  transition: 0.3s ease-in-out;
}
.nf404-btn:hover { background: var(--color-primary-light); }
.nf404-btn-ghost { background: #fff; color: var(--color-primary); border: 1px solid var(--color-border); }
.nf404-btn-ghost:hover { border-color: var(--color-accent); color: var(--color-accent-dark); }

/* 城市分站折叠栏（弱化城市维度） */
details.gqb-collapsed {
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
}
details.gqb-collapsed > summary {
  cursor: pointer;
  font-size: 14px;
  color: var(--color-text-secondary);
  list-style: none;
  display: flex;
  align-items: center;
  gap: 8px;
  user-select: none;
}
details.gqb-collapsed > summary::-webkit-details-marker { display: none; }
details.gqb-collapsed > summary::after {
  content: '\25BC';
  font-size: 10px;
  color: var(--color-text-muted);
  transition: transform 0.3s ease-in-out;
}
details.gqb-collapsed[open] > summary::after { transform: rotate(180deg); }
details.gqb-collapsed > summary strong { color: var(--color-primary); }
details.gqb-collapsed .gqb-pills { max-height: 160px; overflow-y: auto; }

/* 关于我们-运营主体卡 */
.about-entity-card {
  background: #FFFFFF;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0 2px 8px rgba(26, 54, 93, 0.08);
}
.about-entity-card .aect-row {
  display: flex; gap: 12px; padding: 8px 0;
  border-bottom: 1px dashed var(--color-border);
  font-size: 14px; line-height: 1.6;
}
.about-entity-card .aect-row:last-child { border-bottom: none; }
.about-entity-card .aect-key { flex: 0 0 64px; color: var(--color-text-muted); font-size: 13px; }
.about-entity-card a { color: var(--color-primary); }
.about-entity-card a:hover { color: var(--color-accent-dark); }

/* 首页统计口径脚注 */
.ph-stats-note { grid-column: 1 / -1; flex-basis: 100%; font-size: 12px; color: var(--color-text-muted); padding-top: 6px; }

/* ===== 分类信息/商家详情动态正文（life/detail ?t= / ?alias=） ===== */
.lb-dl { display: grid; grid-template-columns: 96px 1fr; gap: 10px 16px; font-size: 15px; line-height: 1.8; margin: 0; }
.lb-dl dt { color: #718096; }
.lb-dl dd { margin: 0; color: #1A202C; word-break: break-all; }
.lb-guide { padding-left: 20px; margin: 0; }
.lb-guide li { margin-bottom: 8px; line-height: 1.8; color: #1A202C; font-size: 15px; }
.lb-tip { background: #FFF9EC; border: 1px solid #EAD9A0; border-radius: 8px; padding: 14px 16px; font-size: 14px; color: #5F4B0A; line-height: 1.8; margin-top: 12px; }
.lb-rel-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.lb-rel-card { border: 1px solid #E2E8F0; border-radius: 8px; padding: 14px 16px; transition: all 0.3s ease-in-out; background: #fff; }
.lb-rel-card:hover { border-color: #D69E2E; box-shadow: 0 2px 8px rgba(26, 54, 93, 0.08); }
.lb-rel-card a { color: #1A365D; font-weight: 600; text-decoration: none; font-size: 15px; line-height: 1.5; display: block; }
.lb-rel-card a:hover { color: #D69E2E; }
.lb-rel-card p { margin: 6px 0 0; font-size: 13px; color: #718096; }
@media (max-width: 768px) {
  .lb-dl { grid-template-columns: 1fr; gap: 4px 0; }
  .lb-rel-grid { grid-template-columns: 1fr; }
}

/* ===== stores 门店卡片链接化（v3.3） ===== */
.store-name a { color: inherit; text-decoration: none; }
.store-card:hover .store-name a { color: var(--color-primary); }
.store-detail-link { display: inline-block; margin-top: 10px; font-size: 13px; color: var(--color-primary); text-decoration: none; font-weight: 600; transition: color 0.3s ease-in-out; }
.store-card:hover .store-detail-link { color: var(--color-accent); }
.store-detail-link:hover { text-decoration: underline; }

/* ============================================================
   Part 40 — 移动端溢出修复 v3.5（五维度视觉审查）
   ============================================================ */

/* 1) 页脚通栏条：负边距与容器内边距对齐，消除移动端 8px 溢出 */
@media (max-width: 767px) {
  footer#siteFooter > .container > .footer-ai-source,
  footer#siteFooter > .container > .footer-bottom {
    margin-left: -20px !important;
    margin-right: -20px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* 2) premium-hero 双栏在平板/手机折叠为单列 */
@media (max-width: 1023px) {
  .premium-hero .ph-hero-layout { grid-template-columns: 1fr; gap: 28px; }
  .premium-hero .ph-hero-side { max-width: 420px; }
}

/* 3) 详情页信息栏：值域允许收缩换行，防止固定列宽撑爆 */
.detail-info-item { min-width: 0; }
.detail-info-value { min-width: 0; overflow-wrap: anywhere; }

/* 4) 协会卡移动端纵向堆叠（评分侧栏改为底部通栏） */
@media (max-width: 767px) {
  .assoc-card { flex-direction: column; gap: 14px; }
  .assoc-card-side {
    width: 100%;
    flex-shrink: 1;
    border-left: none;
    border-top: 1px solid var(--color-border);
    padding-left: 0;
    padding-top: 14px;
    flex-direction: row;
    align-items: center;
    gap: 14px;
  }
  .assoc-score { flex: 1; text-align: left; }
  .assoc-detail-btn { width: auto; padding: 8px 18px; }
}

/* 5) 品牌详情 quick-info 长文本（合规核验指引条）正常换行 */
.bqi-note { white-space: normal; overflow: visible; text-overflow: clip; }

/* 6) 可访问性：用户偏好减少动效时关闭装饰性动画/过渡 */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* 7) center-header 区块头（CORE VALUES / PARTNER 等）恢复纵向堆叠左对齐：
      原 .section-header 的 flex+space-between 规则把 label/标题/副标题横向拆开 */
.section-header.center-header {
  display: block;
  text-align: left;
}
.section-header.center-header .section-subtitle {
  margin: 6px 0 0;
  max-width: none;
}

/* 8) footer-grid 终局归一（此前 8 处 grid/flex 定义交叉覆盖，flex+nowrap 致列挤压） */
footer#siteFooter .footer-grid,
#siteFooter .footer-grid {
  display: grid !important;
  grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr !important;
  flex-wrap: initial !important;
  align-items: start !important;
}
@media (max-width: 1023px) {
  footer#siteFooter .footer-grid,
  #siteFooter .footer-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
  }
  footer#siteFooter .footer-brand-col,
  #siteFooter .footer-brand-col { grid-column: 1 / -1 !important; }
}
@media (max-width: 767px) {
  footer#siteFooter .footer-grid,
  #siteFooter .footer-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
  }
}

/* 9) footer-col 终局：清除 flex 时代残留的 16%/28% 列宽锁定，交给 grid 轨道分配 */
footer#siteFooter .footer-col,
#siteFooter .footer-col {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: initial !important;
  float: none !important;
}
footer#siteFooter .footer-col.footer-brand-col,
#siteFooter .footer-col.footer-brand-col {
  width: auto !important;
  max-width: none !important;
  padding-right: 0 !important;
}

/* 9.1) 提高特异性覆盖 :not(.footer-brand-col) 的 18% max-width 残留 */
footer#siteFooter .footer-grid .footer-col,
#siteFooter .footer-grid .footer-col,
footer#siteFooter .footer-grid .footer-col.footer-brand-col,
#siteFooter .footer-grid .footer-col.footer-brand-col {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: initial !important;
  float: none !important;
}

/* ===== Part 42: 品牌卡旗形徽章（与工厂卡 fai-rank-badge 统一）===== */
.brand-ai-card .bai-name-row h3 { margin-right: 42px; }

/* ===== Part 43: section-header 副标题统一居左不限宽 =====
   根因：14540 段裸 .section-subtitle{margin:0 auto;max-width:600px} 使全站副标题盒居中限宽，
   找品牌/找客户副标题被居中、找客户长句被折行。本规则(0,2,0)反超；center-header 专属规则(0,3,1)不受影响 */
.section-header .section-subtitle {
  margin: 4px 0 0 18px;
  max-width: none;
  text-align: left;
}
@media (min-width: 1024px) {
  .section-header .section-subtitle { white-space: nowrap; }
}

/* ===== Part 44: 找客户模块 Tab 面板 + 侧栏拉伸修复 ===== */
.hct-panel { display: none; }
.hct-panel.active { display: block; }
.hct-tab { cursor: pointer; user-select: none; }
.factory-premium-layout { align-items: start; }
.factory-premium-layout > .factory-cat-sidebar { align-self: start; }
.fcs-geo-note { padding: 0 18px; font-size: 12px; color: var(--color-text-muted); line-height: 1.7; }

/* ===== Part 45: CORE VALUES / PARTNER 区块头左右布局（左标题+副标题，右 pill 徽章）===== */
.section-header.split-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  text-align: left;
}
.section-header.split-header .sh-left { flex: 1; min-width: 0; }
.section-header.split-header .sh-right { flex-shrink: 0; }
@media (max-width: 767px) {
  .section-header.split-header { flex-direction: column; align-items: flex-start; gap: 2px; }
  .section-header.split-header .sh-right { order: -1; }
  .section-header.split-header .section-label { margin-bottom: 10px; }
}

/* ===== Part 46: 全行业快速入口脱离上模块（取消 -60px 悬浮叠层，消除白卡粘连）===== */
.hero-entry-grid {
  margin-top: 0;
  box-shadow: 0 2px 12px rgba(26, 54, 93, 0.08);
}

/* ===== Part 47: 页脚包裹层清除（去米黄外框/边框/底部白条，声明区并入深蓝一体） ===== */
/* 根因：.footer-disclaimer 包住 compliance + footer（全站同构 DOM），米黄底#FFFBEB + padding + border-top
   在深蓝 footer 外形成一圈外框，底部 padding 露出 14px 白条 */
footer#siteFooter,
.footer-disclaimer {
  border-top: none !important;
  border-bottom: none !important;
}
.footer-disclaimer {
  background: var(--color-primary-dark) !important;
  padding: 16px 0 20px !important;
  margin: 0 !important;
}
.footer-disclaimer .cd-text {
  color: rgba(255, 255, 255, 0.55) !important;
}
.footer-disclaimer .cd-text strong {
  color: #D69E2E !important;
}

/* AI 信源声明条：去边框/圆角/阴影，保留半透明底与金色装饰线 */
footer#siteFooter > .container > .footer-ai-source,
footer#siteFooter .footer-ai-source {
  border: none !important;
  border-top: none !important;
  border-bottom: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: rgba(0, 0, 0, 0.22) !important;
}
footer#siteFooter .footer-ai-source::before {
  top: 0 !important;
}

/* ===== Part 48: 分类信息页 12 卡网格桌面挤压修复（12 列 86px → 6 列） ===== */
.overview-grid-12 { grid-template-columns: repeat(6, 1fr); }
@media (max-width: 1023px) {
  .overview-grid-12 { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 767px) {
  .overview-grid-12 { grid-template-columns: repeat(3, 1fr); }
}

/* ===== Part 49: 页脚三项收尾（全页幽灵框根因修复 / stats 外框清除 / AI 条与版权区满屏） ===== */
/* 1) 全页幽灵边框根因：.footer-logo-icon 为 static 定位，其 ::after（inset:2px + 1px rgba(255,255,255,.25)
      边框 + radius 8px，本意是 38x38 的 logo 内框）的包含块上溯到 #siteFooter(relative)，
      被放大成铺满整个 footer 的大框（左 x2 / 右 x-3 / 全高的浅色圆角描边）。
      修复：logo-icon 自建 relative 包含块，::after 恢复为 logo 内框 */
#siteFooter .footer-logo-icon { position: relative !important; }

/* 2) 980万+/260+ 统计容器外框清除（保留内部两个 footer-stat-item 自身边框） */
footer#siteFooter .footer-brand-stats {
  border: none !important;
  background: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
footer#siteFooter .footer-brand-stats::before,
footer#siteFooter .footer-brand-stats::after { content: none !important; }

/* 3) AI 信源声明条 + 版权区满屏通栏（原为 container 内 1152 定宽）
      选择器与 28180/28194 段同特异性 (0,1,3)，本段在后故胜出 */
footer#siteFooter > .container > .footer-ai-source,
footer#siteFooter > .container > .footer-bottom {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  border-radius: 0 !important;
}
/* 满屏后顶部金色装饰短线居中 */
footer#siteFooter .footer-ai-source::before {
  left: 50% !important;
  margin-left: -30px !important;
}
/* vw 含滚动条宽度，经典滚动条环境下防 15px 横向溢出兜底（全站已验证零溢出）
   clip 而非 hidden：hidden 使 body 成为滚动容器，杀掉 position:sticky（header/吸顶条） */
body { overflow-x: hidden; overflow-x: clip; }

/* ===== Part 50: 栏目页 Banner 顶部间距恢复（分类信息/找工厂/找组织/商业资讯/services） ===== */
/* 根因：'导航后不留白'清零规则（#siteHeader + section / #siteHeader + * + section，特异性 (1,0,1)）
   把 unified-hero 的 padding-top 一并清零——该规则意图是清 hero 外部留白，误伤 hero 内部留白，
   导致 banner 内容紧贴导航栏；找品牌页因 main[role="main"]>section:first-child 40px 规则侥幸正常。
   修复：#siteHeader ~ 通用兄弟 + .unified-hero 类，特异性 (1,1,1)/(1,1,2) 反超，恢复设计值 48px */
#siteHeader ~ section.unified-hero,
#siteHeader ~ main section.unified-hero,
#siteHeader ~ section.premium-hero,
#siteHeader ~ main section.premium-hero {
  padding-top: 48px !important;
}
@media (max-width: 767px) {
  #siteHeader ~ section.unified-hero,
  #siteHeader ~ main section.unified-hero,
  #siteHeader ~ section.premium-hero,
  #siteHeader ~ main section.premium-hero {
    padding-top: 32px !important;
  }
}

/* Part 51: 找工厂 city 分站 classified-hero 顶部间距恢复（Part 50 同款清零规则误伤，classified-hero 不在原反超名单） */
#siteHeader ~ section.classified-hero { padding-top: 56px !important; }
@media (max-width: 767px) {
  #siteHeader ~ section.classified-hero { padding-top: 32px !important; }
}

/* Part 52: 找工厂详情页-公司新闻（平台收录动态/核验指引/行业观察，非编造企业事件） */
.fac-news-list { display: grid; gap: 14px; }
.fac-news-item {
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 16px 20px;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.fac-news-item:hover {
  border-color: var(--color-accent);
  box-shadow: 0 6px 18px rgba(26, 54, 93, 0.08);
}
.fac-news-top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.fac-news-date { font-size: 12px; color: var(--color-text-secondary); font-variant-numeric: tabular-nums; }
.fac-news-tag {
  font-size: 12px;
  padding: 2px 8px;
  border-radius: 4px;
  background: #EAF0F7;
  color: var(--color-primary);
  font-weight: 600;
}
.fac-news-item h4 { font-size: 16px; color: var(--color-text); margin: 0 0 6px; }
.fac-news-item p { font-size: 13px; line-height: 1.8; color: var(--color-text-secondary); margin: 0; }
.fac-news-note { margin-top: 14px; font-size: 12px; color: var(--color-text-secondary); }
@media (max-width: 767px) {
  .fac-news-item { padding: 14px 16px; }
}

/* ================= Part 53: 全站 header 城市选择器（logo 旁下拉切换 24 城分站） ================= */
.city-switcher { position: relative; margin-left: 16px; }
.nav-container > .main-nav,
.nav-container > .nav-actions,
.nav-container > .menu-toggle { margin-left: auto; }
.cs-btn {
  display: inline-flex; align-items: center; gap: 6px;
  height: 34px; padding: 0 12px; border-radius: 8px;
  background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.18);
  color: #fff; font-size: 13px; cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.cs-btn:hover, .cs-open .cs-btn {
  background: rgba(214,158,46,0.18); border-color: rgba(214,158,46,0.5); color: var(--color-accent);
}
.cs-label { font-weight: 600; letter-spacing: 0.5px; }
.cs-caret { transition: transform 0.2s ease; }
.cs-open .cs-caret { transform: rotate(180deg); }
.cs-panel {
  position: absolute; top: calc(100% + 10px); left: 0;
  width: 660px; max-width: calc(100vw - 32px);
  background: #fff; border-radius: 12px; border: 1px solid #E2E8F0;
  box-shadow: 0 20px 50px rgba(13,27,42,0.25);
  padding: 18px 20px 14px; z-index: 1001;
  opacity: 0; visibility: hidden; transform: translateY(8px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
}
.cs-open .cs-panel { opacity: 1; visibility: visible; transform: none; }
.cs-head {
  display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap;
  padding-bottom: 10px; border-bottom: 1px solid #EDF2F7; margin-bottom: 12px;
}
.cs-head strong { color: var(--color-primary); font-size: 15px; }
.cs-head span { color: #718096; font-size: 12px; }
.cs-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; }
.cs-tile {
  background: #F8FAFC; border: 1px solid transparent; border-radius: 8px;
  padding: 8px 6px 6px; text-align: center;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.cs-tile:hover { background: #fff; border-color: var(--color-accent); box-shadow: 0 4px 12px rgba(26,54,93,0.08); }
.cs-tile.cs-cur { border-color: var(--color-accent); background: #FDF9F0; }
.cs-city { display: block; font-size: 14px; font-weight: 700; color: var(--color-primary); }
.cs-city:hover { color: var(--color-accent); }
.cs-sub { display: flex; justify-content: center; gap: 6px; margin-top: 3px; }
.cs-sub a { font-size: 11px; color: #718096; }
.cs-sub a:hover { color: var(--color-accent); }
.cs-foot { margin-top: 12px; padding-top: 10px; border-top: 1px solid #EDF2F7; text-align: center; }
.cs-foot a { font-size: 13px; color: var(--color-primary); font-weight: 600; }
.cs-foot a:hover { color: var(--color-accent); }
@media (max-width: 1023px) {
  .cs-grid { grid-template-columns: repeat(4, 1fr); }
  .cs-panel { width: 560px; }
}
@media (max-width: 767px) {
  .city-switcher { margin-left: 10px; }
  .cs-btn { height: 30px; padding: 0 8px; font-size: 12px; }
  .cs-label { max-width: 52px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .cs-panel {
    position: fixed; top: var(--nav-height); left: 0; right: 0;
    width: auto; max-width: none; border-radius: 0 0 12px 12px;
    max-height: calc(100vh - var(--nav-height)); overflow-y: auto;
  }
  .cs-grid { grid-template-columns: repeat(3, 1fr); gap: 6px; }
}

/* ================= Part 54: AI 信源条统一组件（找品牌/找工厂/找组织三栏目统一形态） ================= */
.ais-bar {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  background: linear-gradient(135deg, #E6FFFA 0%, #F0FFF4 100%);
  border: 1px solid #B2F5EA; border-radius: 10px;
  padding: 16px 20px; margin-bottom: 14px;
}
.ais-left { display: flex; align-items: center; gap: 14px; min-width: 0; }
.ais-icon { font-size: 32px; flex-shrink: 0; animation: pulse-ais 2.5s ease-in-out infinite; }
@keyframes pulse-ais {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.7; transform: scale(1.1); }
}
.ais-text { min-width: 0; }
.ais-title { font-size: 15px; font-weight: 700; color: #234E52; margin-bottom: 3px; }
.ais-sub { font-size: 12px; color: #2C7A7B; line-height: 1.5; }
.ais-badges { display: flex; gap: 7px; flex-wrap: wrap; flex-shrink: 0; justify-content: flex-end; }
.ais-badge {
  font-size: 11px; font-weight: 500; padding: 5px 11px;
  background: #fff; color: #2C7A7B; border-radius: 14px;
  border: 1px solid #B2F5EA; white-space: nowrap;
}
@media (max-width: 1023px) {
  .ais-bar { flex-direction: column; align-items: flex-start; gap: 10px; }
  .ais-badges { justify-content: flex-start; }
}
@media (max-width: 767px) {
  .ais-bar { padding: 13px 14px; }
  .ais-icon { font-size: 26px; }
}

/* ================= Part 55: hero 区块间距修复 ================= */
/* 1) unified-hero 右栏被通用覆写为 display:block 后丢失 flex gap（根因 24272 行），
      恢复数据卡与 AI 信源卡的间距（原设计 gap 16px） */
.unified-hero .uh-ai-badge { margin-top: 16px; }
/* 2) 首页"全行业快速入口"白卡与 hero 深蓝底之间恢复间隔（Part 46 曾置 0 导致贴边） */
.hero-entry-grid { margin-top: 24px; }

/* ===== Part 56（v4.9 已废弃删除）：page-header 内面包屑白字适配。
   v4.9 误判 8 页面包屑位于 banner 内，实为 banner 上方；v4.12 已全部移至
   banner 下方，此段选择器不再命中，整体删除 */

/* ===== Part 57: 品牌页栏目导航 5 卡填满（v4.10） =====
   病灶：.brand-sub-nav 3 列 grid 装 5 卡 → 3+2 两行，第二行右侧空 432px（2560 宽视口尤显）
   方案：6 列轨道，前 3 卡各跨 2、后 2 卡各跨 3 → 两行均满宽 */
.brand-sub-nav { grid-template-columns: repeat(6, 1fr); }
.bsn-item { grid-column: span 2; }
.bsn-item:nth-child(4),
.bsn-item:nth-child(5) { grid-column: span 3; }
@media (max-width: 1023px) {
  .brand-sub-nav { grid-template-columns: repeat(2, 1fr); }
  .bsn-item,
  .bsn-item:nth-child(4) { grid-column: auto; }
  .bsn-item:nth-child(5) { grid-column: span 2; }
}

/* ===== Part 58: 面包屑位置/形态全局统一 + 深蓝 banner 标题白字（v4.12） ===== */
/* 58.1 位置统一：全站面包屑一律位于深蓝 banner 之下（59 页 HTML 已批量移动：
   39 页 banner 上→下 + 20 页 factories/city chv3 出 hero，/tmp/move_breadcrumbs.py） */
/* 58.2 形态统一：透明底/无边框/统一间距（覆盖 595 旧规则与 22790 白底规则） */
.breadcrumb,
.breadcrumb-bar,
nav.breadcrumb-bar {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.breadcrumb-bar { padding: 0 !important; }
.breadcrumb {
  padding: 14px 0 !important;
  font-size: 13px;
}
/* 58.3 深蓝 banner 内标题一律白色。
   根因：121 行全局 h1-h6{color:var(--color-primary)} 直接规则 (0,0,1) 压过深蓝容器
   继承的 color:#fff → life/factories/associations 三 detail 页标题深藏青贴深蓝底（低对比）。
   注意：不能用 :where(...) :where(h1...) —— :where 连 h1 的类型特异性一并清零，
   整条 (0,0,0) 反而必输；具名类 (0,1,1) 胜 121 行 (0,0,1) 与各 hero 内 h1 布局规则
   （.sp-main-info h1 等同特异性但源顺序在前）。金色强调子元素（uh-title-gold/
   sp-level-badge 等）是 h1 内部 span，色值来自自身规则/内联样式，不受影响。
   [style*="1A365D"] 兜底 life/cat 12 页 + business 等 20 页内联深蓝 hero（section 无类名） */
.brand-hero h1, .brand-hero h2,
.brand-detail-hero h1, .brand-detail-hero h2,
.assoc-detail-hero h1, .assoc-detail-hero h2,
.fame-detail-hero h1, .fame-detail-hero h2,
.page-header h1, .page-header h2,
.unified-hero h1, .unified-hero h2,
.premium-hero h1, .premium-hero h2,
.page-hero h1, .page-hero h2,
.hotel-hero h1, .hotel-hero h2,
.rank-hero h1, .rank-hero h2,
.classified-hero h1, .classified-hero h2,
.cust-hero-v3 h1, .cust-hero-v3 h2,
.pricing-hero h1, .pricing-hero h2,
.join-hero h1, .join-hero h2,
.factory-hero-detail h1, .factory-hero-detail h2,
.service-detail-hero h1, .service-detail-hero h2,
.hall-of-fame-hero h1, .hall-of-fame-hero h2,
[style*="1A365D"] h1, [style*="1A365D"] h2 {
  color: #fff;
}
/* 58.4 detail 系 hero 顶部间距恢复（Part 50 名单扩展）。
   根因：Part 21 "导航后不留白"清零规则 #siteHeader + section 特异性 (1,0,1)
   把 header 后第一个 hero 的内部 padding-top 清零 → life/detail sp-avatar-big
   白块贴导航裁切。#siteHeader ~ (1,1,0) 反超恢复设计间距 */
#siteHeader ~ section.brand-hero,
#siteHeader ~ section.brand-detail-hero,
#siteHeader ~ section.assoc-detail-hero,
#siteHeader ~ section.fame-detail-hero,
#siteHeader ~ section.page-header,
#siteHeader ~ section.page-hero,
#siteHeader ~ section.hotel-hero,
#siteHeader ~ section.rank-hero,
#siteHeader ~ section.service-detail-hero,
#siteHeader ~ section.pricing-hero,
#siteHeader ~ section.join-hero,
#siteHeader ~ section.hall-of-fame-hero,
#siteHeader ~ div.factory-hero-detail,
/* main 内层 hero 变体：~ 通用兄弟不跨 main 层级（Part 50 同款双变体写法），
   join/index 等页 hero 在 main 内，清零规则 main>section:first-child (0,1,1)!important 需同强反超 */
#siteHeader ~ main section.brand-hero,
#siteHeader ~ main section.brand-detail-hero,
#siteHeader ~ main section.assoc-detail-hero,
#siteHeader ~ main section.fame-detail-hero,
#siteHeader ~ main section.page-header,
#siteHeader ~ main section.page-hero,
#siteHeader ~ main section.hotel-hero,
#siteHeader ~ main section.rank-hero,
#siteHeader ~ main section.service-detail-hero,
#siteHeader ~ main section.pricing-hero,
#siteHeader ~ main section.join-hero,
#siteHeader ~ main section.hall-of-fame-hero {
  padding-top: 48px !important;
}
@media (max-width: 767px) {
  #siteHeader ~ section.brand-hero,
  #siteHeader ~ section.brand-detail-hero,
  #siteHeader ~ section.assoc-detail-hero,
  #siteHeader ~ section.fame-detail-hero,
  #siteHeader ~ section.page-header,
  #siteHeader ~ section.page-hero,
  #siteHeader ~ section.hotel-hero,
  #siteHeader ~ section.rank-hero,
  #siteHeader ~ section.service-detail-hero,
  #siteHeader ~ section.pricing-hero,
  #siteHeader ~ section.join-hero,
  #siteHeader ~ div.factory-hero-detail,
  #siteHeader ~ main section.brand-hero,
  #siteHeader ~ main section.brand-detail-hero,
  #siteHeader ~ main section.assoc-detail-hero,
  #siteHeader ~ main section.fame-detail-hero,
  #siteHeader ~ main section.page-header,
  #siteHeader ~ main section.page-hero,
  #siteHeader ~ main section.hotel-hero,
  #siteHeader ~ main section.rank-hero,
  #siteHeader ~ main section.service-detail-hero,
  #siteHeader ~ main section.pricing-hero,
  #siteHeader ~ main section.join-hero,
  #siteHeader ~ main section.hall-of-fame-hero {
    padding-top: 32px !important;
  }
}

/* ===== Part 59: FAQ 手风琴视觉强化 + section-header 副标题归位 + 资讯跨栏目卡标题白字（v4.14） ===== */
/* 59.1 FAQ open 态视觉强化（折叠交互见 main.js initFaqAccordion，每列首项默认展开） */
.faq-item.open {
  border-color: var(--color-accent);
  box-shadow: 0 4px 14px rgba(26, 54, 93, 0.08);
}
.faq-item.open .faq-num { background: var(--color-accent); }
/* 59.2 section-header 直挂 section-desc 归位：6242 行 .section-header 为 flex space-between，
   无 title-wrap 的页面（news/index 跨栏目、categories、pricing、brands/city 全系 20+ 页）
   副标题被推到最右贴边；强制换行到标题下方左对齐 */
.section-header { flex-wrap: wrap; }
.section-header > .section-desc {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  margin: 8px 0 0;
  text-align: left;
}
/* 59.3 资讯页跨栏目卡标题白字：.cfc-top 四色渐变底（金/绿/深蓝/红）内 h3
   被 121 行全局 h3 深藏青规则命中，深蓝底上不可见（用户截图找组织卡） */
.cfc-top h3 { color: #fff; }

/* ================= Part 60（v4.16）：GEO 城市栏标签与内容顶对齐 =================
   现象：news/index 城市资讯栏 17 个长 pill 换行两行后，.geo-label 垂直居中于整个容器
   → 相对第一行 pill 下坠 17px，与找组织页"热门城市"栏（单行）视觉不一致（用户截图对比）。
   方案：align-items:flex-start（顶对齐）+ label line-height 28px（=pill 实测高，
   标签文字与第一行 pill 光学居中对齐；单行页 flex-start 与 center 等价，零副作用）。
   影响面：.geo-quick-bar 全站 24 页（news 系/brands city 系/associations）统一生效 */
.geo-quick-bar {
  align-items: flex-start;
}
.geo-quick-bar .geo-label {
  line-height: 35px; /* = Part 62 pill 实测高（13px 字 + 12px 纵向 padding + 2px 边框） */
}

/* ================= Part 61（v4.17）：工厂详情侧栏"合作对接指引"修复 =================
   病灶：22040 段 contact.html 旧版网格卡样式裸用全局 .contact-item（padding20+白底圆角
   +text-align:center+span 灰色）覆盖 2482 行紧凑 flex 行定义 → 侧栏 5 条变成居中白卡堆叠，
   且 .label width:50px 装不下"对接方式"4 字 → 换行"对接方/式"（用户截图）。
   已给 22040 死代码加 .contact-grid 前缀根除污染；此处恢复紧凑行并优化对齐 */
.contact-card .contact-item {
  padding: 0;
  background: transparent;
  border-radius: 0;
  text-align: left;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 10px;
  font-size: 13px;
  line-height: 1.5;
}
.contact-card .contact-item .label {
  width: auto;
  flex-shrink: 0;
  white-space: nowrap;
  opacity: 0.78;
}
.contact-card .contact-item .value {
  flex: 1;
  text-align: right;
  font-weight: 600;
  opacity: 1;
}

/* ================= Part 62（v4.18）：侧栏入驻 CTA 卡 + GEO 城市栏 pill 统一 ================= */

/* 62.1 工厂详情侧栏"入驻工厂榜"卡（用户截图：btn-gold 裸类无按钮形态 → 金色文字贴片；
   卡内元素左对齐堆叠松散）→ 居中 CTA 卡 + 完整按钮形态。btn-gold 全局他页均连用 .btn
   基础类（不受影响），此处仅作用域修复 */
.sidebar-cta {
  text-align: center;
}
.sidebar-cta h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 8px;
}
.sidebar-cta p {
  font-size: 13px;
  line-height: 1.7;
  color: var(--color-text-secondary);
  margin: 0 0 14px;
}
.sidebar-cta .btn-gold {
  display: inline-block;
  padding: 10px 32px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-primary-dark);
  border: 1px solid var(--color-accent);
  transition: transform .2s, box-shadow .2s;
}
.sidebar-cta .btn-gold:hover {
  box-shadow: var(--shadow-gold);
}

/* 62.2 GEO 城市栏 pill 统一升级（用户反馈"找组织这里的样式没变"）：24 页统一为
   白底+浅边框+胶囊形态（13px/6px 16px，比原 11.5px/4px 12px 更舒展），
   hover 主色描边，active 深蓝渐变；与标签顶对齐（Part 60）配合形成两栏一致新样式。
   作用域 (0,2,0) 反超 9897/13328 两组裸 .geo-pill (0,1,0) */
.geo-quick-bar .geo-pill {
  background: #fff;
  border: 1px solid var(--color-border);
  padding: 6px 16px;
  font-size: 13px;
  border-radius: 999px;
  color: var(--color-text-secondary);
}
.geo-quick-bar .geo-pill:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: #fff;
}
.geo-quick-bar .geo-pill.active {
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  border-color: transparent;
  color: #fff;
  font-weight: 600;
  box-shadow: 0 2px 6px rgba(26, 54, 93, 0.18);
}

/* ================= Part 63（v4.19）：全站分页 normalize 统一 =================
   三套分页组件（.pagination / .news-pagination / factories 专用动态）统一视觉：
   normalize 引擎（js/main.js）动态重写页码后渲染 span.current + span.ellipsis，
   .pagination 需补 .current / .ellipsis 样式与 a.active 同构 */
.pagination .current {
  min-width: 36px; height: 36px;
  display: inline-flex; align-items: center; justify-content: center;
  padding: 0 10px;
  font-size: 14px;
  background-color: var(--color-primary);
  border: 1px solid var(--color-primary);
  border-radius: var(--radius-sm);
  color: var(--color-accent);
  font-weight: 600;
}
.pagination span.ellipsis {
  color: var(--color-text-muted);
  padding: 0 4px;
  min-width: auto; height: auto;
  display: inline-flex; align-items: center;
}
.news-pagination span.ellipsis {
  border: none; background: none;
  min-width: auto; height: auto; padding: 0 4px;
  color: var(--color-text-muted);
}
/* normalize 渲染的上一页/下一页与页码同构（.news-pagination nav 无 a 基础样式场景已由原规则覆盖） */
.pagination a.page-prev, .pagination a.page-next,
.news-pagination a.page-prev, .news-pagination a.page-next {
  white-space: nowrap;
}

/* ================= Part 64（v4.20）：城市切换面板定位修复 =================
   病灶1：#siteHeader 带 backdrop-filter（创建包含块），其后代中 position:fixed 的 .cs-panel
          实际相对 header 定位 → 移动端 top:var(--nav-height) 语义错乱、滚动时面板随 header 漂移
   病灶2：≤767px 时 #siteHeader 实际高 52px（ID !important），原 --nav-height=56px → 4px 缝隙
   方案：移动端 .city-switcher 静态化（含块上溯），面板改 absolute 相对 .nav-container
        （sticky header 内层 position:relative，与 header 同高），top:100% 紧贴 header 底零缝隙 */
.cs-sub { white-space: nowrap; }
.cs-panel { max-height: calc(100vh - 96px); overflow-y: auto; }
@media (max-width: 767px) {
  .city-switcher { position: static; }
  .cs-panel {
    position: absolute; top: 100%;
    width: auto; max-width: none;
  }
}

/* ================= Part 65（v4.20）：移动/平板汉堡抽屉修复 =================
   病灶：#siteHeader .main-nav{display:none!important}（24205，文件更晚）与
        {position:static!important;top:auto!important}（24022）以 ID+important 锁死 .main-nav，
        808 行 .main-nav.mobile-open（类选择器、无 important）无法顶开
        → ≤1023px 点汉堡完全无反应（抽屉从未展开过）
   方案：以更高优先级 (#siteHeader .main-nav.mobile-open) 重建抽屉态；
        --nav-height 补平板 56px 断点（原仅全局 64px 与 ≤768 52px 两档，平板 56px 脱节） */
@media (max-width: 1023px) {
  :root { --nav-height: 56px; }
}
@media (max-width: 767px) {
  :root { --nav-height: 52px; }
}
@media (max-width: 1023px) {
  #siteHeader .main-nav.mobile-open {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    position: fixed !important;
    /* header 带 backdrop-filter（fixed 后代包含块=header），top=header 高恰为 header 底部，滚动时随 sticky header 跟随 */
    top: var(--nav-height) !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    height: auto !important;
    max-height: calc(100vh - var(--nav-height));
    overflow-y: auto;
    background: var(--color-primary, #1A365D) !important;
    padding: 10px 14px !important;
    margin: 0 !important;
    z-index: 999;
    box-shadow: 0 14px 30px rgba(13, 27, 42, 0.3);
    gap: 2px;
  }
  #siteHeader .main-nav.mobile-open a {
    display: flex !important;
    justify-content: flex-start !important;
    text-align: left !important;
    width: 100% !important;
    padding: 12px 14px !important;
    border-radius: 8px !important;
  }
  #siteHeader .main-nav.mobile-open a.active::after { display: none !important; }
}

/* ================= Part 66（v4.21，v4.23 回退配色）：分类信息页 AI 信源声明板块 =================
   病灶：life/index 大板块误用侧栏小卡类 .ai-source-card（4767 绿色渐变 18px 侧栏卡），
        .ai-source-title/.ai-source-desc/.ai-platforms 无任何定义 → 绿卡错配 + 品牌名裸文字堆叠；
        文案含编造数字（68城/8,600家）/编造核验流程（7层实地核验）/99.8% 自评/“已被主流 AI 平台收录采信”
        编造合作关系 → 已合规重写（300+城/980万+企业信息/12分类、以官方公示为准）
   v4.21 曾改深蓝金主题；用户反馈回退配色（v4.23）：恢复 v4.21 前的绿色渐变体系
        （#F0FFF4→#C6F6D5 底 / #9AE6B4 边 / #276749 深绿标题 / #2F855A 正文，与 4767 侧栏绿卡同源），
        保留大卡布局（居中/padding/圆角/响应式）与合规文案；
        另：ai-source-section 与上方 promises 深蓝区零间距粘连 → 加 margin-top:48px（与全站 section 间距一致） */
.as-hero-card {
  background: linear-gradient(135deg, #F0FFF4 0%, #C6F6D5 100%);
  border: 1px solid #9AE6B4;
  border-radius: 16px;
  padding: 46px 56px;
  text-align: center;
  box-shadow: 0 12px 32px rgba(39, 103, 73, 0.10);
}
.as-hero-card .ai-source-badge {
  background: #F0FFF4;
  border-color: #9AE6B4;
  color: #276749;
}
.ai-source-title {
  color: #276749;
  font-size: 26px;
  font-weight: 700;
  margin: 18px 0 14px;
  letter-spacing: 0.5px;
}
.ai-source-desc {
  color: #2F855A;
  font-size: 15px;
  line-height: 1.9;
  max-width: 880px;
  margin: 0 auto 22px;
}
.ai-source-desc strong { color: #276749; font-weight: 600; }
.ai-platforms {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 12px;
}
.ai-platform {
  padding: 7px 18px;
  background: rgba(255, 255, 255, 0.65);
  border: 1px solid rgba(154, 230, 180, 0.9);
  border-radius: 999px;
  color: #276749;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.5px;
  white-space: nowrap;
}
/* v4.23：与上方 classified-promises 深蓝区拉开间距（原 gap=0 两深蓝色块粘连） */
.ai-source-section { margin-top: 48px; }
@media (max-width: 767px) {
  .as-hero-card { padding: 30px 18px; border-radius: 12px; }
  .ai-source-title { font-size: 20px; margin: 14px 0 10px; }
  .ai-source-desc { font-size: 13px; margin-bottom: 16px; }
  .ai-source-section { margin-top: 32px; }
}

/* ================= Part 67（v4.22）：brands/city 城市分站统一卡区 =================
   病灶：26 页曾并存两套模板（8 旧白底 16KB / 18 新深蓝 60KB），卡区容器 .brand-grid 与
        .brand-logo-placeholder/.brand-info/.brand-tags 全站无样式定义 → 卡片裸奔（logo 压扁、
        标题重复渲染、单列堆叠）；新模板另有热门搜索"美的"未闭合嵌套吞卡（浏览器纠错后卡宽 60%、
        pill 裁切）→ HTML 已重生成统一，此处补齐卡区样式
   注意：.brand-grid 作用域限定，不影响首页 .brands-grid 4 列布局的 .brand-card */
.brand-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
.brand-grid .brand-card {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 20px;
}
.brand-logo-placeholder {
  width: 64px;
  height: 64px;
  flex-shrink: 0;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color: var(--color-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.25;
  padding: 4px;
  text-align: center;
  word-break: break-all;
  overflow: hidden;
}
.brand-grid .brand-info { flex: 1; min-width: 0; }
.brand-grid .brand-info h3 {
  font-size: 17px;
  color: var(--color-text-primary);
  margin: 0 0 6px;
  line-height: 1.4;
}
.brand-grid .brand-desc {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.7;
  margin: 0 0 10px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.brand-tags { display: flex; gap: 6px; flex-wrap: wrap; }
.brand-tags .tag { white-space: nowrap; }
@media (max-width: 1023px) {
  .brand-grid { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .brand-grid .brand-card { padding: 16px; gap: 12px; }
  .brand-logo-placeholder { width: 52px; height: 52px; font-size: 12px; }
}

/* ================= Part 69（v4.24）：找工厂详情页 产品展示/公司新闻 会员站版式 =================
   借鉴 11467.com 会员站：产品展示 → product.asp 网格卡（方形图区+名称+询价行）；
   公司新闻 → news.asp 日期块行式列表（左侧日期块+右侧标题/摘要，虚线分隔）。
   合规：产品卡为"行业通用品类示意"（icon 占位+类目示意角标），非实拍图/非具体产品承诺，
        目录与报价以在线询盘为准；新闻仍为平台收录动态/核验指引（非编造企业事件）
   生效范围：factories/detail.html 为参数式单模板，149 家会员站全量生效 */
.fac-product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin: 14px 0 12px;
}
.fac-product-card {
  background: var(--color-surface, #fff);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md, 10px);
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.fac-product-card:hover { box-shadow: 0 10px 24px rgba(26, 54, 93, 0.10);
  border-color: var(--color-accent);
}
.fac-product-pic {
  position: relative;
  aspect-ratio: 4 / 3;
  background: linear-gradient(180deg, #FAFBFC 0%, #EEF1F5 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}
.fac-product-pic span { font-size: 44px; line-height: 1; }
.fac-product-pic i {
  position: absolute;
  right: 8px;
  bottom: 6px;
  font-style: normal;
  font-size: 10px;
  color: var(--color-text-muted, #718096);
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid var(--color-border);
  border-radius: 4px;
  padding: 2px 6px;
  line-height: 1.4;
}
.fac-product-body { padding: 12px 14px 14px; }
.fac-product-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text);
  margin: 0 0 8px;
  transition: color 0.2s ease;
}
.fac-product-card:hover .fac-product-name { color: var(--color-accent); }
.fac-product-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.fac-product-cat {
  font-size: 11px;
  color: var(--color-text-secondary);
  background: var(--color-bg, #F5F7FA);
  border-radius: 4px;
  padding: 2px 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 70%;
}
.fac-product-ask { font-size: 12px; color: var(--color-accent); font-weight: 600; white-space: nowrap; }
.fac-product-note { font-size: 12px; color: var(--color-text-muted, #718096); line-height: 1.7; margin: 10px 0 0; }
@media (max-width: 1023px) {
  .fac-product-grid { grid-template-columns: repeat(3, 1fr); gap: 12px; }
}
@media (max-width: 767px) {
  .fac-product-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; margin: 10px 0 8px; }
  .fac-product-pic span { font-size: 34px; }
  .fac-product-body { padding: 10px 12px 12px; }
}
/* --- 公司新闻：日期块行式列表（news.asp 风格），覆盖 Part 52 纵向卡 --- */
.fac-news-list { display: block; }
.fac-news-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 16px 4px;
  border: 0;
  border-radius: 0;
  border-bottom: 1px dashed var(--color-border);
  background: transparent;
  box-shadow: none;
  transition: background 0.2s ease;
}
.fac-news-item:hover { background: rgba(234, 240, 247, 0.45); border-color: var(--color-border); box-shadow: none; }
.fac-news-item:last-child { border-bottom: 0; }
.fac-news-datebox {
  flex-shrink: 0;
  width: 60px;
  text-align: center;
  background: var(--color-bg, #F5F7FA);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 8px 0 7px;
}
.fac-news-datebox .d {
  display: block;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.1;
  color: var(--color-primary);
  font-variant-numeric: tabular-nums;
  transition: color 0.2s ease;
}
.fac-news-datebox .m { display: block; font-size: 11px; color: var(--color-text-muted, #718096); margin-top: 2px; }
.fac-news-item:hover .fac-news-datebox .d { color: var(--color-accent); }
.fac-news-main { flex: 1; min-width: 0; }
.fac-news-main h4 {
  font-size: 15px;
  color: var(--color-text);
  margin: 0 0 6px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  transition: color 0.2s ease;
}
.fac-news-main h4 .fac-news-tag { flex-shrink: 0; }
.fac-news-item:hover .fac-news-main h4 { color: var(--color-accent); }
.fac-news-main p {
  font-size: 13px;
  line-height: 1.8;
  color: var(--color-text-secondary);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.fac-news-top { display: none; }
.fac-news-date { display: none; }
@media (max-width: 767px) {
  .fac-news-item { gap: 12px; padding: 14px 2px; }
  .fac-news-datebox { width: 52px; padding: 6px 0 5px; }
  .fac-news-datebox .d { font-size: 20px; }
  .fac-news-main h4 { font-size: 14px; }
}

/* ================= Part 70（v4.25）：找工厂 产品详情页/新闻详情页 =================
   借鉴 11467.com 会员站详情版式：product 详情 = 左大图右信息 + 下方说明 + 相关产品；
   news 详情 = 标题 + meta + 正文 + 相关阅读。产品卡/新闻标题整链化可点击。
   合规：产品详情为"行业通用品类说明"（非具体产品实拍/参数承诺），报价以在线询盘为准 */
/* 产品卡 a 形态重置（原 div 卡整卡可点） */
a.fac-product-card { display: block; color: inherit; text-decoration: none; }
/* 新闻标题链接继承（h4 hover 金色联动） */
.fac-news-main h4 a { color: inherit; text-decoration: none; }
.fac-news-main h4 a:hover { color: var(--color-accent); }

/* ---- 产品详情页 ---- */
.fpd-section { padding: 4px 0 48px; }
.fpd-layout {
  display: grid;
  grid-template-columns: 420px 1fr;
  gap: 28px;
  align-items: start;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: 24px;
  box-shadow: var(--shadow-sm);
}
.fpd-pic {
  aspect-ratio: 4 / 3;
  background: linear-gradient(135deg, #F7FAFC, #EDF2F7);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
.fpd-pic span { font-size: 88px; line-height: 1; }
.fpd-pic i {
  position: absolute;
  right: 12px;
  bottom: 10px;
  font-style: normal;
  font-size: 11px;
  color: var(--color-text-muted);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid var(--color-border);
  border-radius: 999px;
  padding: 3px 10px;
}
.fpd-info h1 {
  font-size: 22px;
  line-height: 1.4;
  color: var(--color-text-primary);
  margin: 0 0 12px;
}
.fpd-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.fpd-factory-card {
  background: var(--color-bg);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  padding: 14px 16px;
  margin-bottom: 18px;
}
.fpd-factory-card .fname {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-primary);
  margin: 0 0 4px;
}
.fpd-factory-card .fname a { color: inherit; text-decoration: none; }
.fpd-factory-card .fname a:hover { color: var(--color-accent); }
.fpd-factory-card .fdesc {
  font-size: 13px;
  line-height: 1.7;
  color: var(--color-text-secondary);
  margin: 0;
}
.fpd-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 14px; }
.fpd-actions .btn { min-width: 160px; }
.fpd-tip {
  font-size: 12px;
  line-height: 1.7;
  color: var(--color-text-muted);
  margin: 0;
}
.fpd-desc { margin-top: 24px; }
.fpd-desc h3 {
  font-size: 17px;
  color: var(--color-text-primary);
  margin: 0 0 14px;
  padding-left: 10px;
  border-left: 3px solid var(--color-accent);
}
.fpd-desc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.fpd-desc-item {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  padding: 16px;
}
.fpd-desc-item .di-title { font-size: 14px; font-weight: 600; color: var(--color-text-primary); margin: 0 0 8px; }
.fpd-desc-item p { font-size: 13px; line-height: 1.8; color: var(--color-text-secondary); margin: 0; }
.fpd-desc-item ul { margin: 0; padding-left: 18px; }
.fpd-desc-item li { font-size: 13px; line-height: 1.9; color: var(--color-text-secondary); }
.fpd-related { margin-top: 28px; }
.fpd-related h3 {
  font-size: 17px;
  color: var(--color-text-primary);
  margin: 0 0 14px;
  padding-left: 10px;
  border-left: 3px solid var(--color-accent);
}

/* ---- 新闻详情页 ---- */
.fnd-section { padding: 4px 0 48px; }
.fnd-article {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: 28px 32px;
  box-shadow: var(--shadow-sm);
}
.fnd-article h1 {
  font-size: 22px;
  line-height: 1.5;
  color: var(--color-text-primary);
  margin: 0 0 14px;
}
.fnd-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  padding-bottom: 16px;
  margin-bottom: 20px;
  border-bottom: 1px dashed var(--color-border);
  font-size: 13px;
  color: var(--color-text-muted);
}
.fnd-body p {
  font-size: 15px;
  line-height: 1.9;
  color: var(--color-text-secondary);
  margin: 0 0 14px;
}
.fnd-body strong { color: var(--color-text-primary); }
.fnd-verify {
  background: var(--color-bg);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  padding: 14px 16px;
  font-size: 13px;
  line-height: 1.8;
  color: var(--color-text-secondary);
  margin-top: 20px;
}
.fnd-verify strong { color: var(--color-primary); }
.fnd-related { margin-top: 28px; }
.fnd-related h3 {
  font-size: 17px;
  color: var(--color-text-primary);
  margin: 0 0 6px;
  padding-left: 10px;
  border-left: 3px solid var(--color-accent);
}
.fnd-related .fac-news-list { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: 4px 20px; box-shadow: var(--shadow-sm); }

@media (max-width: 1023px) {
  .fpd-layout { grid-template-columns: 1fr; padding: 18px; }
  .fpd-pic { max-width: 480px; }
  .fpd-desc-grid { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .fpd-layout { padding: 14px; gap: 18px; }
  .fpd-pic span { font-size: 64px; }
  .fpd-info h1 { font-size: 19px; }
  .fnd-article { padding: 20px 16px; }
  .fnd-article h1 { font-size: 19px; }
  .fpd-actions .btn { min-width: 0; flex: 1; }
}


/* ================= Part 70.2（v4.26）：产品详情 11467 版式 + 新闻详情 w10 版式 + AI 采信优化 =================
   product.html → product.11467.com/info 版式：h1 + "面议"价格行 + key-value 参数表 + 询盘按钮组
   news.html → 资讯详情版式：article-title/meta 三段 item/正文/上一篇下一篇 nav
   AI 采信：Product/Article JSON-LD 动态同步（@id=url/canonical 含参/首段摘要），BreadcrumbList position3=工厂名 */
.fpd-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0 0 16px;
}
.fpd-price .p-num {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-accent-dark);
}
.fpd-price .p-note {
  font-size: 12px;
  color: var(--color-text-muted);
}
.fpd-params {
  margin: 0 0 18px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  overflow: hidden;
}
.fpd-params .fp-row {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 12px;
  padding: 9px 14px;
  border-bottom: 1px solid var(--color-border);
  background: var(--color-bg);
}
.fpd-params .fp-row:nth-child(even) { background: var(--color-surface); }
.fpd-params .fp-row:last-child { border-bottom: 0; }
.fpd-params dt { font-size: 13px; color: var(--color-text-muted); margin: 0; }
.fpd-params dd { font-size: 13px; color: var(--color-text-primary); margin: 0; line-height: 1.6; }
.fnd-title { font-size: 22px; }
.fnd-meta .item {
  display: inline-flex;
  align-items: center;
}
.fnd-meta .item + .item::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 12px;
  background: var(--color-border);
  margin-right: 10px;
}
.fnd-meta .item a { color: var(--color-primary); text-decoration: none; }
.fnd-meta .item a:hover { color: var(--color-accent); }
.fnd-meta .fnd-item-note { color: var(--color-text-muted); }
.fnd-nav {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px dashed var(--color-border);
}
.fnd-nav .fnd-nav-prev,
.fnd-nav .fnd-nav-next {
  flex: 1;
  min-width: 0;
  font-size: 12px;
  color: var(--color-text-muted);
  line-height: 1.5;
}
.fnd-nav .fnd-nav-next { text-align: right; }
.fnd-nav a {
  display: block;
  margin-top: 4px;
  font-size: 14px;
  color: var(--color-text-primary);
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.2s ease;
}
.fnd-nav a:hover { color: var(--color-accent); }
.fnd-nav .fnd-nav-none { opacity: 0.45; }
@media (max-width: 767px) {
  .fpd-params .fp-row { grid-template-columns: 92px 1fr; gap: 8px; padding: 8px 10px; }
  .fpd-price .p-num { font-size: 20px; }
  .fnd-nav { flex-direction: column; gap: 10px; }
  .fnd-nav .fnd-nav-next { text-align: left; }
  .fnd-nav a { white-space: normal; }
}

/* ================= Part 70.3（v4.27）：新闻详情 H1/H2/H3 大纲样式 + 产品页联系方式卡 =================
   news 正文 h2/h3 结构化供 AI 抓取识别文档大纲；fpd-contact 仅展示会员已录入联系方式，未录入显示"—" */
.fnd-body h2 {
  font-size: 17px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin: 22px 0 10px;
  padding-left: 10px;
  border-left: 3px solid var(--color-accent);
  line-height: 1.4;
}
.fnd-body h2:first-child { margin-top: 0; }
.fnd-body h3 {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin: 16px 0 8px;
  line-height: 1.4;
}
.fnd-body h3::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-accent);
  margin-right: 8px;
  vertical-align: 2px;
}
.fnd-verify h2 {
  font-size: 15px;
  font-weight: 600;
  margin: 0 0 8px;
}
.fpd-contact { margin: 0 0 18px; }
.fpd-contact h3 {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin: 0 0 10px;
}
.fpd-contact-note {
  font-size: 12px;
  color: var(--color-text-muted);
  margin: 8px 0 0;
  line-height: 1.6;
}

/* ================= Part 70.4（v4.28）：其他栏目会员详情页 H 大纲修正 + 联系卡复用 =================
   正文区块标题 h3→h2 后补同款样式（原规则为标签选择器，h2 需镜像）；.fpd-contact/.fpd-params 复用 Part 70 */
.detail-body h2 {
  font-size: 20px;
  font-weight: 600;
  margin: 28px 0 16px;
  padding-left: 12px;
  border-left: 3px solid var(--color-accent);
  color: var(--color-text-primary);
}
.factory-info-section h2 {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 16px;
  padding-left: 12px;
  border-left: 4px solid var(--color-accent);
}
.rank-intro h2 {
  font-size: 18px;
  font-weight: 600;
  color: var(--color-primary);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.rank-intro h2::before {
  content: '';
  width: 4px;
  height: 16px;
  background: var(--color-accent);
  border-radius: 2px;
}

/* ============ Part 71: life 分类信息会员站（11467 版式）行业色 + 服务项目/商家动态（v4.29） ============ */
/* 动态渲染说明块（静态源码中性占位 + 动态区提示） */
.lb-dyn-note { padding: 18px 20px; background: var(--color-bg-secondary); border-left: 3px solid var(--color-gold); border-radius: 6px; }
.lb-dyn-note p { margin: 0 0 8px; font-size: 14px; line-height: 1.8; color: var(--color-text-secondary); }
.lb-dyn-note p:last-child { margin-bottom: 0; }
.lb-sec-note { margin: -4px 0 16px; font-size: 14px; line-height: 1.7; color: var(--color-text-muted); }
/* hero 第一徽章兜底（静态中性态）与行业色态 */
.service-detail-hero h1 .sp-level-badge:first-of-type { background: rgba(255, 255, 255, 0.18); color: #fff; }
/* 12 分类行业色板：藏青 -> 行业色 hero 渐变 + accent 变量 */
body[data-lbcat="shenghuo"] { --lb-accent: #2C7A7B; --lb-accent-soft: rgba(44, 122, 123, 0.12); }
body[data-lbcat="shenghuo"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #2C7A7B 100%); }
body[data-lbcat="shangwu"] { --lb-accent: #2A4E77; --lb-accent-soft: rgba(42, 78, 119, 0.14); }
body[data-lbcat="shangwu"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #2A4E77 100%); }
body[data-lbcat="qiche"] { --lb-accent: #2D3748; --lb-accent-soft: rgba(45, 55, 72, 0.12); }
body[data-lbcat="qiche"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #2D3748 100%); }
body[data-lbcat="jiaoyu"] { --lb-accent: #276749; --lb-accent-soft: rgba(39, 103, 73, 0.12); }
body[data-lbcat="jiaoyu"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #276749 100%); }
body[data-lbcat="lvyou"] { --lb-accent: #2B6CB0; --lb-accent-soft: rgba(43, 108, 176, 0.12); }
body[data-lbcat="lvyou"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #2B6CB0 100%); }
body[data-lbcat="ershou"] { --lb-accent: #744210; --lb-accent-soft: rgba(116, 66, 16, 0.12); }
body[data-lbcat="ershou"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #744210 100%); }
body[data-lbcat="xinpan"] { --lb-accent: #975A16; --lb-accent-soft: rgba(151, 90, 22, 0.12); }
body[data-lbcat="xinpan"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #975A16 100%); }
body[data-lbcat="yiliao"] { --lb-accent: #285E61; --lb-accent-soft: rgba(40, 94, 97, 0.12); }
body[data-lbcat="yiliao"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #285E61 100%); }
body[data-lbcat="hunqing"] { --lb-accent: #97266D; --lb-accent-soft: rgba(151, 38, 109, 0.12); }
body[data-lbcat="hunqing"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #97266D 100%); }
body[data-lbcat="qinzi"] { --lb-accent: #B7791F; --lb-accent-soft: rgba(183, 121, 31, 0.14); }
body[data-lbcat="qinzi"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #B7791F 100%); }
body[data-lbcat="yundong"] { --lb-accent: #C05621; --lb-accent-soft: rgba(192, 86, 33, 0.12); }
body[data-lbcat="yundong"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #C05621 100%); }
body[data-lbcat="jiaju"] { --lb-accent: #5F4B32; --lb-accent-soft: rgba(95, 75, 50, 0.12); }
body[data-lbcat="jiaju"] .service-detail-hero { background: linear-gradient(135deg, #1A365D 0%, #5F4B32 100%); }
/* 行业色应用到组件（徽章/tabs/卡/日期块/tag） */
body[data-lbcat] .service-detail-hero h1 .sp-level-badge:first-of-type { background: var(--lb-accent); color: #fff; }
body[data-lbcat] .service-tabs li a.active, body[data-lbcat] .service-tabs li a:hover { color: var(--lb-accent); border-bottom-color: var(--lb-accent); }
body[data-lbcat] .lb-svc-card:hover { border-color: var(--lb-accent); box-shadow: 0 6px 18px var(--lb-accent-soft); }
body[data-lbcat] .lb-svc-icon { background: var(--lb-accent-soft); }
body[data-lbcat] .lb-svc-tag { color: var(--lb-accent); border-color: var(--lb-accent); }
body[data-lbcat] .lb-news-date { background: var(--lb-accent); }
body[data-lbcat] .lb-news-tag { color: var(--lb-accent); border-color: var(--lb-accent); }
body[data-lbcat] .lb-news-title:hover { color: var(--lb-accent); }
/* 服务项目网格（11467 产品供应区版式：2 行 x 3 列品类卡） */
.lb-svc-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.lb-svc-card { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 22px 12px 16px; background: #fff; border: 1px solid var(--color-border); border-radius: 10px; text-decoration: none; transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s; }
.lb-svc-card:hover { }
.lb-svc-icon { width: 52px; height: 52px; display: flex; align-items: center; justify-content: center; font-size: 26px; border-radius: 12px; background: var(--color-bg-secondary); }
.lb-svc-name { font-size: 15px; font-weight: 600; color: var(--color-text-primary); }
.lb-svc-tag { font-size: 11px; padding: 1px 8px; border: 1px solid var(--color-border); border-radius: 999px; color: var(--color-text-muted); }
/* 商家动态列表（11467 新闻区版式：日期块 + 标题行式） */
.lb-news-list { display: flex; flex-direction: column; }
.lb-news-item { display: flex; gap: 16px; padding: 16px 0; border-bottom: 1px dashed var(--color-border); }
.lb-news-item:last-child { border-bottom: none; }
.lb-news-date { flex-shrink: 0; width: 74px; height: 54px; display: flex; align-items: center; justify-content: center; background: var(--color-primary); color: #fff; font-size: 13px; font-weight: 600; border-radius: 6px; letter-spacing: 0.5px; }
.lb-news-body { min-width: 0; flex: 1; }
.lb-news-title { margin: 0 0 4px; font-size: 15px; font-weight: 600; color: var(--color-text-primary); line-height: 1.5; cursor: default; }
.lb-news-abs { margin: 0; font-size: 13px; line-height: 1.7; color: var(--color-text-muted); overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.lb-news-tag { display: inline-block; margin-right: 8px; font-size: 11px; font-weight: 600; padding: 1px 8px; border: 1px solid var(--color-border); border-radius: 999px; color: var(--color-text-muted); vertical-align: 1px; }
/* 响应式：平板 2 列 / 手机 1 列，日期块收窄 */
@media (max-width: 1023px) { .lb-svc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) {
  .lb-svc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .lb-svc-card { padding: 16px 8px 12px; }
  .lb-svc-icon { width: 44px; height: 44px; font-size: 22px; }
  .lb-news-item { gap: 10px; }
  .lb-news-date { width: 60px; height: 44px; font-size: 11px; }
}

/* ============ Part 72: life 服务详情/商家动态详情页（v4.30，两级详情闭环） ============ */
/* service.html 图区行业色（data-lbcat 变量由 JS 按商家分类注入） */
body[data-lbcat] .fpd-pic { background: linear-gradient(135deg, #1A365D 0%, var(--lb-accent, #D69E2E) 100%); }
body[data-lbcat] .fpd-pic span { background: rgba(255, 255, 255, 0.16); }
/* detail 商家动态标题链接化（v4.30 列表标题包 a） */
.lb-news-title a { color: inherit; text-decoration: none; transition: color 0.2s; }
.lb-news-title a:hover { color: var(--lb-accent, var(--color-gold)); }
/* news.html 上下篇置空占位 */
.fnd-nav-none { display: inline-block; padding: 10px 16px; background: var(--color-bg-secondary); border-radius: 6px; color: var(--color-text-muted); font-size: 13px; }
/* news.html 相关阅读标题层级（h3 已有 fac-news-list 样式，补区块间距） */
.fnd-related h3 { margin: 28px 0 14px; font-size: 18px; color: var(--color-text-primary); }

/* ============ Part 73: life 分类信息 12 分类一行白底浅灰边框（v4.45，桌面端） ============ */
@media (min-width: 1024px) {
  .classified-page .overview-grid-12 { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 6px; }
  .classified-page .overview-grid-12 .overview-card {
    background: #fff;
    border: 1px solid #E8ECF1;
    box-shadow: none;
    border-radius: 12px;
    padding: 12px 4px 10px;
    gap: 8px;
    height: auto;
    overflow: visible;
  }
  .classified-page .overview-grid-12 .overview-card::after { display: none; }
  .classified-page .overview-grid-12 .overview-card:hover {
    border-color: var(--color-accent);
    box-shadow: 0 8px 20px rgba(214, 158, 46, 0.12);
    background: #fff;
  }
  .classified-page .overview-grid-12 .ov-icon { width: 40px; height: 40px; font-size: 21px; border-radius: 10px; }
  .classified-page .overview-grid-12 .ov-title { font-size: 13px; }
  .classified-page .overview-grid-12 .ov-sub {
    font-size: 11px;
    line-height: 1.4;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    -webkit-line-clamp: unset;
    -webkit-box-orient: unset;
  }
}

/* ============ Part 74: life 12 分类卡统一白底（v4.45，原按图标淡彩底已废弃） ============ */

/* ============ Part 75: 详情页主栏核验指引精修 + 侧栏 CTA 上下布局（v4.33） ============ */
/* 1) 详情页主栏内的信息核验指引：米黄通栏条 → 白底金条精致卡 */
.detail-main .data-compliance-notice {
  background: #fff;
  border: 1px solid var(--color-border);
  border-left: 3px solid var(--color-accent);
  border-radius: 10px;
  padding: 16px 18px;
  margin: 16px 0;
}
.detail-main .data-compliance-notice .dcn-content {
  display: flex;
  gap: 10px;
  font-size: 13px;
  line-height: 1.9;
  color: var(--color-text-secondary);
}
.detail-main .data-compliance-notice .dcn-icon { font-size: 16px; margin-top: 3px; flex-shrink: 0; }
.detail-main .data-compliance-notice .dcn-content strong { color: var(--color-primary); }
/* 2) 侧栏 CTA 卡：图标+标题 / 描述 / 整宽按钮 上下布局 */
.detail-cta-row { flex-direction: column; align-items: stretch; gap: 10px; padding: 18px 18px 16px; }
.detail-cta-row .cta-top { display: flex; align-items: center; gap: 12px; }
.detail-cta-row .cta-icon { width: 42px; height: 42px; border-radius: 10px; font-size: 20px; flex-shrink: 0; }
.detail-cta-row .cta-content { flex: 1; min-width: 0; }
.detail-cta-row .cta-content h4 { margin: 0; font-size: 14.5px; line-height: 1.4; }
.detail-cta-row .cta-desc { margin: 0; font-size: 12.5px; line-height: 1.75; color: var(--color-text-muted); }
.detail-cta-row .cta-btn { width: 100%; text-align: center; padding: 11px 0; font-size: 13.5px; margin-top: 2px; }

/* ============ Part 76: 资讯头条卡真实封面图（v4.33） ============ */
.nfc-cover-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }

/* 头条卡 a 标签化：抑制默认链接色 */
a.news-feature-card { color: inherit; text-decoration: none; }
a.news-feature-card:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; }

/* ============ Part 77: 文章页侧栏去双重 sticky（v4.33） ============ */
/* 根因：.detail-side 与 .article-toc 均设 sticky top:80，嵌套吸附滚动错乱；
   且吸附点低于容器顶（header 约64px）致初始加载右栏下移、左右不对齐。
   文章页 scope 内恢复文档流，左右栏 grid 顶对齐。 */
.article-layout .detail-side { position: static; }
.article-layout .article-toc { position: static; }

/* ============ Part 78: FAQ 统一 6 条两列布局（v4.33） ============ */
.faq-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
  max-width: 100%;
  margin: 36px auto 0;
  align-items: start;
}
.faq-item { margin-bottom: 0; }
@media (max-width: 1023px) {
  .faq-list { gap: 12px; }
}
@media (max-width: 767px) {
  .faq-list { grid-template-columns: 1fr; gap: 12px; }
}

/* ============ Part 79: FAQ 双列独立容器（v4.33） ============ */
/* 左右两列各 3 条独立堆积：展开只影响本列下方，另一列纹丝不动 */
.faq-col { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
@media (max-width: 767px) { .faq-col { gap: 12px; } }

/* ============ Part 80: detail-tab 锚点化 + 品牌独立页面包屑（v4.33） ============ */
a.detail-tab { color: inherit; text-decoration: none; }
a.detail-tab:hover { color: var(--color-primary); }
.detail-section { scroll-margin-top: 84px; }

/* ============ Part 82: 全站缺失类系统性补齐（v4.37） ============ */
/* 根因：services/hotels/factories/brands/categories 等多轮批量生成的页面携带大量
   style.css 未定义类，布局骨架类缺失导致双栏堆叠、网格失效（用户报 services 两页错乱）。
   本块按全站设计语言补齐有视觉意义的类；纯标记类（父类已覆盖）与页内内联覆盖类不在此列。 */

/* ---- services 布局骨架 ---- */
.main-content { padding: 0 0 56px; }
.content-layout { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 28px; align-items: start; }
.main-col { min-width: 0; }
.side-col { min-width: 0; }
@media (max-width: 1023px) { .content-layout { grid-template-columns: minmax(0,1fr); } }
.detail-content { font-size: 15px; line-height: 1.9; color: var(--color-text-primary); }
.detail-content p { margin: 0 0 14px; }
.side-box { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: 20px; margin-bottom: 16px; }
.side-title { font-size: 15px; font-weight: 700; color: var(--color-primary); margin: 0 0 12px; padding-bottom: 10px; border-bottom: 1px solid var(--color-border); }
.cac-phone, .cac-address, .cac-website { display: inline-flex; align-items: center; gap: 6px; margin-right: 16px; font-size: 13px; color: var(--color-text-secondary); }
.cac-desc { font-size: 13px; color: var(--color-text-secondary); line-height: 1.7; margin: 6px 0 0; }

/* ---- 双栏主列防溢出（news/cat 与 hotels 详情） ---- */
.news-main-col, .hotel-mdetail-main { min-width: 0; }

/* ---- services/detail 服务案例卡配图 ---- */
.case-img { position: relative; overflow: hidden; }
.case-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }

/* ---- hotels 列表卡（index/3star/4star/5star） ---- */
.hotel-card-title { font-size: 16px; font-weight: 700; color: var(--color-primary); margin: 0 0 6px; }
.hotel-card-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; font-size: 13px; color: var(--color-text-secondary); }
.hotel-area { color: var(--color-text-secondary); font-size: 13px; }
.hotel-tag { display: inline-block; font-size: 12px; color: var(--color-accent); background: rgba(214,158,46,.12); padding: 2px 10px; border-radius: 999px; }
.tag-sm { display: inline-block; padding: 2px 9px; font-size: 12px; border-radius: 999px; background: rgba(26,54,93,.07); color: var(--color-primary); margin: 0 6px 6px 0; }

/* ---- factories cat/city 工厂卡 ---- */
.factory-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
@media (max-width: 767px) { .factory-grid { grid-template-columns: minmax(0,1fr); } }
.factory-icon { width: 44px; height: 44px; border-radius: var(--radius-md); background: rgba(214,158,46,.12); display: flex; align-items: center; justify-content: center; font-size: 22px; flex-shrink: 0; }
.factory-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.factory-tags span { font-size: 12px; color: var(--color-primary); background: rgba(26,54,93,.06); padding: 3px 10px; border-radius: 999px; }
.factory-desc { font-size: 13px; color: var(--color-text-secondary); line-height: 1.7; margin: 8px 0 0; }
.factory-more-tip { text-align: center; color: var(--color-text-muted); font-size: 13px; margin: 20px 0 0; padding: 14px; background: var(--color-bg); border-radius: var(--radius-md); }

/* ---- factories/index 卡内部结构 ---- */
.fac-title-block { display: flex; align-items: center; gap: 12px; min-width: 0; }
.fac-name { font-size: 16px; font-weight: 700; color: var(--color-primary); margin: 0; }
.fac-area, .fac-years, .fac-workers { font-size: 13px; color: var(--color-text-secondary); margin-right: 14px; }
.fac-meta-row { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 13px; color: var(--color-text-secondary); margin-top: 10px; }
.fac-certs, .fac-cert { display: inline-block; font-size: 12px; color: #B7791F; background: rgba(214,158,46,.10); padding: 2px 9px; border-radius: 999px; margin: 0 6px 6px 0; }
.fac-advantages { margin-top: 12px; }
.fac-adv-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; }
.fac-adv-tag { font-size: 12px; color: var(--color-text-secondary); background: var(--color-bg); border: 1px solid var(--color-border); border-radius: var(--radius-sm); padding: 4px 8px; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fac-main-prod { margin-top: 12px; font-size: 13px; color: var(--color-text-secondary); }
.fac-prod-list { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.fac-prod-meta, .fac-prod-tag { font-size: 12px; color: var(--color-text-secondary); background: var(--color-bg); border: 1px solid var(--color-border); border-radius: 999px; padding: 3px 10px; }
.fac-section-title { font-size: 18px; font-weight: 700; color: var(--color-primary); margin: 32px 0 16px; padding-left: 12px; border-left: 4px solid var(--color-accent); }
.fac-product-icon { width: 44px; height: 44px; margin: 0 auto 10px; border-radius: var(--radius-md); background: rgba(214,158,46,.12); display: flex; align-items: center; justify-content: center; font-size: 22px; }
.fac-product-tag { font-size: 12px; color: var(--color-text-muted); margin-top: 6px; }
.rank-pro { display: inline-block; font-size: 12px; color: #fff; background: var(--color-accent); border-radius: 999px; padding: 2px 10px; }

/* ---- brands/news 招商资讯列表（fnb-*） ---- */
.fnb-layout { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 28px; align-items: start; }
@media (max-width: 1023px) { .fnb-layout { grid-template-columns: minmax(0,1fr); } }
.fnb-list { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.fnb-item { display: block; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: 18px 22px; transition: box-shadow var(--transition-base), transform var(--transition-base); }
.fnb-item:hover { box-shadow: var(--shadow-md); }
.fnb-item h2 { font-size: 17px; font-weight: 700; color: var(--color-primary); margin: 8px 0 6px; line-height: 1.5; }
.fi-top { display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 12px; color: var(--color-text-muted); }
.fi-tag { color: var(--color-accent); font-weight: 600; }
.fi-date { color: var(--color-text-muted); }
.fi-link { color: var(--color-primary); font-size: 13px; font-weight: 600; margin-top: 8px; display: inline-block; }
.fnb-cat-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.uh-kicker { display: inline-block; font-size: 13px; font-weight: 600; color: var(--color-accent); letter-spacing: .08em; margin-bottom: 8px; }
.nav-active { color: var(--color-accent); font-weight: 600; }

/* ---- categories 行业分类 / regions 行政区划 ---- */
.alpha-index { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
.alpha-index a { display: inline-flex; width: 30px; height: 30px; align-items: center; justify-content: center; font-size: 13px; color: var(--color-primary); background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-sm); }
.category-block { margin-bottom: 32px; }
.category-section-title { display: flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 700; color: var(--color-primary); margin: 0 0 14px; }
.title-icon { font-size: 20px; }
.category-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px,1fr)); gap: 12px; }
.region-block { margin-bottom: 28px; }
.region-nav { display: grid; grid-template-columns: repeat(7,1fr); gap: 12px; margin-bottom: 32px; }
@media (max-width: 767px) { .region-nav { grid-template-columns: repeat(2,1fr); } }
.region-nav-item { padding: 16px; text-align: center; background: var(--color-surface); border-radius: var(--radius-md); box-shadow: var(--shadow-sm); transition: all var(--transition-base); color: var(--color-primary); font-weight: 600; }
.region-nav-item:hover { box-shadow: var(--shadow-md); }
.region-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px,1fr)); gap: 16px; }
.region-card { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: 18px 20px; }
.region-cities { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.region-cities a { font-size: 13px; color: var(--color-text-secondary); }
.region-cities a:hover { color: var(--color-primary); }

/* ---- properties/detail AI 横幅 ---- */
.ai-banner-content { display: flex; align-items: center; gap: 14px; padding: 14px 0; }
.ai-banner-icon { font-size: 26px; flex-shrink: 0; }
.ai-banner-text { min-width: 0; }
.ai-banner-text h3 { font-size: 15px; }
.ai-banner-badges { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
.ai-badge { display: inline-block; font-size: 12px; color: #276749; background: rgba(72,187,120,.14); border: 1px solid #C6F6D5; padding: 2px 10px; border-radius: 999px; }
.cert-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px,1fr)); gap: 10px; margin-top: 12px; }

/* ---- life 系 ---- */
.badge-icon { font-size: 15px; }
.badge-text { font-size: 12px; color: var(--color-text-secondary); }
.premium-promises { border-top: 1px solid var(--color-border); }
.fac-product-card { display: block; text-align: center; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: 16px 12px; transition: box-shadow var(--transition-base); }
.fac-product-card:hover { box-shadow: var(--shadow-md); }
.fnd-date { color: var(--color-text-muted); font-size: 13px; margin-right: 12px; }
.fnd-meta-item { font-size: 13px; color: var(--color-text-secondary); margin-right: 12px; }

/* ---- 首页 eyebrow ---- */
.section-eyebrow { display: block; font-size: 12px; font-weight: 700; color: var(--color-accent); letter-spacing: .12em; margin-bottom: 8px; text-transform: uppercase; }

/* ---- AI 信源徽章（uh-ai-badge 文本列） ---- */
.uh-ai-text { display: flex; flex-direction: column; line-height: 1.4; min-width: 0; }

/* ---- join 入驻系 ---- */
.join-form { display: grid; gap: 16px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 767px) { .form-row { grid-template-columns: minmax(0,1fr); } }
.join-form input, .join-form select, .join-form textarea { width: 100%; padding: 11px 14px; font-size: 14px; color: var(--color-text-primary); background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-md); box-sizing: border-box; }
.join-form input:focus, .join-form select:focus, .join-form textarea:focus { outline: none; border-color: var(--color-accent); box-shadow: 0 0 0 3px rgba(214,158,46,.14); }
.join-hero-content { max-width: 760px; margin: 0 auto; text-align: center; position: relative; z-index: 1; }
/* .join-process 是 section 外壳，4 列网格在 .process-steps（勿给 section 设 grid，否则标题与步骤错位） */
.pricing-hero-content, .partner-page { position: relative; z-index: 1; }

/* ---- celebrities 工具类与侧栏 ---- */
.mt-30 { margin-top: 30px; }
.mb-40 { margin-bottom: 40px; }
.sidebar { min-width: 0; }

/* ---- 分页器变体统一（不同批次类名，统一为 .pagination a 视觉） ---- */
.pg-link, .page-btn, .page-link, .page-dots, .page-ellipsis, .prev, .next {
  min-width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center;
  padding: 0 10px; font-size: 14px; color: var(--color-text-secondary);
  border: 1px solid var(--color-border); border-radius: var(--radius-sm); background: var(--color-surface);
  transition: all var(--transition-base); text-decoration: none;
}
.pg-link:hover, .page-btn:hover, .page-link:hover, .prev:hover, .next:hover { color: var(--color-primary); border-color: var(--color-accent); }
.pg-link.active, .page-btn.active, .page-link.active, .pg-link[aria-current], .prev.disabled, .next.disabled { color: #fff; background: var(--color-primary); border-color: var(--color-primary); pointer-events: none; }
.page-ellipsis, .page-dots { border: none; background: transparent; min-width: 24px; }

/* ---- 补遗：services/detail 服务优势特性列表 + brands 首页 section ---- */
.feature-list { display: grid; gap: 14px; margin: 0; padding: 0; }
.feature-item { display: flex; align-items: flex-start; gap: 12px; background: var(--color-bg); border-radius: var(--radius-md); padding: 14px 16px; }
.feature-icon { font-size: 20px; flex-shrink: 0; line-height: 1.4; }
.feature-text { min-width: 0; }
.feature-text h4 { font-size: 14px; font-weight: 700; color: var(--color-primary); margin: 0 0 4px; }
.feature-text p { font-size: 13px; color: var(--color-text-secondary); line-height: 1.7; margin: 0; }
.brand-list-ai-section { padding: 56px 0; }

/* ---- hotel 详情页 intro 配图铺满（v4.37） ---- */
.hotel-mintro-img { position: relative; overflow: hidden; }
.hotel-mintro-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }


/* ============ Part 84: 分类信息列表卡片真实配图（v4.41，.item-image 内 img 铺满裁剪，渐变背景兜底） ============ */
.item-image { overflow: hidden; }
.item-image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
/* Part 49: 分类信息发布卡按钮规范化（原 14 处内联渐变样式收敛为标准类） */
.pub-cta-btn {
  display: inline-block;
  margin-top: 10px;
  background: var(--color-accent);
  color: #fff;
  padding: 9px 22px;
  border-radius: var(--radius-md);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  width: auto;
  box-shadow: 0 2px 8px rgba(214, 158, 46, 0.28);
  transition: background 0.2s ease, box-shadow 0.2s ease;
}
.pub-cta-btn:hover {
  background: #B8860B;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 4px 12px rgba(214, 158, 46, 0.36);
}

/* Part 50: 搜索输入框豁免全局 focus-visible 金环（输入光标已表明焦点，避免输入时黄色描边） */
.uh-search-input:focus-visible {
  outline: none;
}

/* Part 51: 酒店卡价格与单位同行展示 */
.hotel-card-price {
  display: flex;
  align-items: baseline;
  gap: 6px;
}
.hotel-card-price .price-num {
  line-height: 1;
}

/* Part 52: header 品牌图形（G×闪电 SVG）与文字 logo 适配 */
.logo-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 8px;
}

/* Part 53: 品牌字体（抖音美好体 DouyinSans，OFL 1.1 免费商用，仅 logo 子集 1KB） */
@font-face {
  font-family: 'DouyinSans Logo';
  src: url('/fonts/douyin-sans-logo.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* 抖音美好体完整字重（商铺 logo 用，OFL 1.1） */
@font-face {
  font-family: 'DouyinSans';
  src: url('/fonts/DouyinSansBold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

#siteHeader .logo-text {
  font-family: 'DouyinSans Logo', 'PingFang SC', 'Microsoft YaHei', sans-serif !important;
  font-weight: 400 !important;
}
.footer-logo-text {
  font-family: 'DouyinSans Logo', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  font-weight: 400;
}

/* Part 54: 品牌 logo 全局统一（顶部 G×闪电图案 + 底部白金渐变文字效果） */
#siteHeader .logo-text {
  background: linear-gradient(135deg, #ffffff 0%, #F6E05E 60%, #D69E2E 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  letter-spacing: 2px !important;
}
.footer-logo-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 8px;
}

/* Part 55: logo 图形去底放大版（无方块背景，图形直接置于深色导航条） */
#siteHeader .logo-icon {
  background: none !important;
  box-shadow: none !important;
}
.footer-logo-icon {
  background: none !important;
  box-shadow: none !important;
}

/* Part 56: 生活服务栏目 emoji 占位配图升级为真实场景图（/images/service/） */
.cf-item-img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: 8px;
  display: block;
}
.ov-icon {
  position: relative;
  overflow: hidden;
}
.ov-icon img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: 10px;
  display: block;
}

/* Part 57: footer logo 图案矩形背景去除（对冲 ID 前缀存量金渐变方块与 ::after 幽灵内框） */
footer#siteFooter .footer-logo-icon,
#siteFooter .footer-logo-icon,
.footer-logo-icon {
  background: none !important;
  box-shadow: none !important;
  border: none !important;
  outline: none !important;
}
footer#siteFooter .footer-logo-icon::after,
#siteFooter .footer-logo-icon::after,
.footer-logo-icon::after {
  content: none !important;
  display: none !important;
  border: none !important;
  background: none !important;
}


/* ===== Part 87: 分页器间距/尺寸统一修复（v4.24c） =====
   病灶：.pagination 子项（a / .page-btn / .current / .ellipsis）样式分散在
   基础规则、Part 63 normalize、Part 变体统一三处，border/box-sizing/gap 计算
   不一致导致"1-2 紧挨、4-下一页间距大"等不均匀现象。
   修复：.pagination 内强制统一所有直接子项尺寸/边框/间距 */
.pagination{gap:8px}
.pagination > *{box-sizing:border-box;flex-shrink:0}
.pagination a,.pagination .page-btn,.pagination .current,.pagination span.ellipsis,
.pagination .page-ellipsis,.pagination .pg-link{
  min-width:36px;height:36px;padding:0 10px;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:14px;color:var(--color-text-secondary);
  border:1px solid var(--color-border);border-radius:var(--radius-sm);
  background:var(--color-surface);text-decoration:none;
  transition:all var(--transition-base);
}
.pagination a:hover,.pagination .page-btn:hover,.pagination .pg-link:hover{
  border-color:var(--color-accent);color:var(--color-accent);
}
.pagination a.active,.pagination .page-btn.active,.pagination .current,
.pagination .pg-link.active,.pagination .pg-link[aria-current]{
  background:var(--color-primary);border-color:var(--color-primary);
  color:#fff;font-weight:600;pointer-events:none;
}
.pagination span.ellipsis,.pagination .page-ellipsis,.pagination .page-dots{
  border:none;background:transparent;min-width:24px;padding:0 4px;
  color:var(--color-text-muted);
}
.pagination a.page-prev,.pagination a.page-next,.pagination .prev,.pagination .next{
  padding:0 14px;white-space:nowrap;
}
@media (max-width:767px){
  .pagination{gap:6px}
  .pagination a,.pagination .page-btn,.pagination .current{min-width:32px;height:32px;padding:0 8px;font-size:13px}
  .pagination a.page-prev,.pagination a.page-next{padding:0 10px;font-size:12px}
}

/* ===== Part 88: 分类卡片 hover 平滑效果（v4.24d） =====
   病灶：.cg-card 无 hover 样式，仅链接文字变金色，反馈弱且不统一
   修复：添加阴影+边框色过渡，不加位移保持体积稳定 */
.cg-card{
  background:#fff;border:1px solid var(--color-border,#E2E8F0);border-radius:12px;
  padding:24px;transition:box-shadow var(--transition-base,0.3s) ease,border-color var(--transition-base,0.3s) ease;
}
.cg-card:hover{
  box-shadow:0 4px 12px rgba(26,54,93,0.08);border-color:var(--color-accent,#D69E2E);
}
.cg-card .cg-head{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border,#E2E8F0)}
.cg-card .cg-emoji{font-size:24px}
.cg-card .cg-name{font-size:16px;font-weight:700;color:var(--color-text-primary,#1A202C);margin:0;flex:1}
.cg-card .cg-count{font-size:12px;color:var(--color-text-muted,#718096);background:var(--color-bg,#F7FAFC);padding:2px 8px;border-radius:12px}
.cg-card .cg-links{display:grid;gap:10px}
.cg-card .cg-links a{
  display:block;padding:8px 12px;border-radius:6px;
  transition:background var(--transition-base,0.3s) ease;
  text-decoration:none;color:inherit;
}
.cg-card .cg-links a:hover{background:var(--color-bg,#F7FAFC)}
.cg-card .cg-links a strong{font-size:14px;font-weight:600;color:var(--color-text-primary,#1A202C);margin-right:6px}
.cg-card .cg-links a span{font-size:13px;color:var(--color-text-muted,#718096)}
.cng-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media (max-width:1023px){.cng-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:767px){.cng-grid{grid-template-columns:1fr}}

/* ===== Part 89: 新闻详情页标题上方间距过大修复（v4.24e） =====
   病灶：.detail-section(32px) + .detail-main(32px) + .article-header(32px) = 96px 累积间距
   修复：.article-header padding 从 32px 改为 24px 32px（上下 24px，左右保持 32px） */
.article-header{padding:24px 32px}
@media (max-width:767px){.article-header{padding:20px 16px}}

/* ===== Part 91: 分页器底部间距 + 免责声明顶部间距（v4.24g） ===== */
.pagination,.news-pagination{margin-bottom:32px}
.footer-disclaimer{padding-top:20px !important}

/* ===== Part 92: 酒店列表封面图变形修复 =====
   病灶：.hotel-card-cover 内 img 带 width/height 属性 + 全局 img{max-width:100%} 未设 height:auto
   → 宽度被压到卡片宽、高度仍按 HTML 1600 拉伸，比例失真。
   修复：封面图绝对铺满 200px 盒 + object-fit:cover 等比裁剪（与 nfc-cover-img / hotel-mintro-img 同构） */
.hotel-card-cover img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

/* ===== Part 93: 分类精选「查看全部」按钮 hover 字色 =====
   内联 color:#1A365D 会压过 .btn-outline:hover 金色字，藏青底+藏青字看不见。
   已去掉内联字色；此处再锁定 hover 白字，保证深蓝底可读。 */
.classified-featured a.btn.btn-outline:hover {
  color: #fff;
}

/* ===== Part 94: 商业资讯列表（对齐 gjsk 分类列表：左列表右栏） =====
   列表为标题+摘要+作者/日期行，不再用 company-ai-card；侧栏 280px 靠右。 */
.news-index-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 28px;
  align-items: start;
  margin-top: 8px;
}
.news-index-main {
  min-width: 0;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 20px 28px 28px;
  box-shadow: 0 2px 8px rgba(26, 54, 93, 0.08);
}
.nal-list {
  display: flex;
  flex-direction: column;
}
.nal-item {
  padding: 22px 0;
  border-bottom: 1px solid var(--color-border);
}
.nal-item:first-child {
  padding-top: 4px;
}
.nal-item:last-child {
  border-bottom: none;
  padding-bottom: 4px;
}
.nal-cat {
  display: inline-block;
  margin-bottom: 8px;
  padding: 2px 10px;
  font-size: 12px;
  line-height: 1.6;
  color: var(--color-accent);
  background: rgba(214, 158, 46, 0.1);
  border-radius: 4px;
  text-decoration: none;
}
.nal-cat:hover {
  color: var(--color-primary);
  background: rgba(26, 54, 93, 0.08);
}
.nal-title {
  margin: 0 0 8px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.45;
  color: var(--color-primary);
}
.nal-title a {
  color: inherit;
  text-decoration: none;
}
.nal-title a:hover {
  color: var(--color-accent);
}
.nal-excerpt {
  margin: 0 0 12px;
  font-size: 14px;
  line-height: 1.7;
  color: var(--color-text-secondary);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.nal-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 0;
  font-size: 13px;
  color: var(--color-text-muted);
}
.nal-meta > * + *::before {
  content: "·";
  margin: 0 10px;
  color: #CBD5E0;
  font-weight: 400;
}
.nal-meta-tag {
  color: var(--color-accent);
}
.nal-meta-views {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-variant-numeric: tabular-nums;
}
.nal-meta-views .nal-eye {
  flex: 0 0 auto;
  opacity: 0.75;
}
.nal-views-num {
  letter-spacing: 0.02em;
}
.nal-meta time {
  font-variant-numeric: tabular-nums;
}
.news-index-side {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.news-index-side .sls-block {
  padding: 16px 18px;
}
.nal-rank {
  list-style: none;
  margin: 0;
  padding: 0;
  counter-reset: nal-rank;
}
.nal-rank li {
  counter-increment: nal-rank;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px dashed var(--color-border);
}
.nal-rank li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.nal-rank li::before {
  content: counter(nal-rank);
  flex: 0 0 22px;
  height: 22px;
  border-radius: 4px;
  background: var(--color-bg);
  color: var(--color-primary);
  font-size: 12px;
  font-weight: 700;
  line-height: 22px;
  text-align: center;
}
.nal-rank li:nth-child(1)::before {
  background: var(--color-accent);
  color: #fff;
}
.nal-rank li:nth-child(2)::before,
.nal-rank li:nth-child(3)::before {
  background: var(--color-primary);
  color: var(--color-accent);
}
.nal-rank a {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--color-text-primary);
  text-decoration: none;
}
.nal-rank a:hover {
  color: var(--color-accent);
}
.nal-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.nal-tags a {
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 10px;
  font-size: 12px;
  color: var(--color-text-secondary);
  background: var(--color-bg);
  border-radius: 4px;
  text-decoration: none;
  transition: color 0.2s ease, background 0.2s ease;
}
.nal-tags a:hover {
  color: var(--color-primary);
  background: rgba(26, 54, 93, 0.08);
}
.nal-side-note p {
  margin: 0;
  font-size: 12.5px;
  line-height: 1.7;
  color: var(--color-text-secondary);
}
@media (max-width: 1023px) {
  .news-index-layout {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .news-index-side {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }
  .nal-side-note {
    grid-column: 1 / -1;
  }
}
@media (max-width: 767px) {
  .news-index-main {
    padding: 16px 16px 20px;
  }
  .nal-title {
    font-size: 17px;
  }
  .news-index-side {
    grid-template-columns: 1fr;
  }
  .nal-item {
    padding: 18px 0;
  }
}


/* ===== Part 95: 分类信息详情列表网式 + 统一商铺页 ===== */
.lb-cover {
  border-radius: 8px;
  overflow: hidden;
  background: #1A365D;
  aspect-ratio: 16 / 9;
  margin-bottom: 4px;
}
.lb-cover img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.lb-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.lb-gallery-item {
  margin: 0;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-bg);
  aspect-ratio: 4 / 3;
  border: 1px solid var(--color-border);
}
.lb-gallery-item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.lb-adv-list {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: lb-adv;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.lb-adv-list li {
  counter-increment: lb-adv;
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px 16px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.7;
  color: var(--color-text-primary);
}
.lb-adv-list li::before {
  content: counter(lb-adv);
  flex: 0 0 28px;
  height: 28px;
  border-radius: 6px;
  background: var(--color-primary);
  color: var(--color-accent);
  font-weight: 700;
  font-size: 13px;
  line-height: 28px;
  text-align: center;
}
.lb-process-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.lb-process-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
}
.lb-step-num {
  flex: 0 0 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(214, 158, 46, 0.15);
  color: var(--color-accent-dark);
  font-weight: 700;
  font-size: 13px;
  line-height: 28px;
  text-align: center;
}
.lb-step-txt { font-size: 14px; color: var(--color-text-primary); font-weight: 600; }
.lb-shop-link { color: var(--color-primary); font-weight: 600; text-decoration: none; }
.lb-shop-link:hover { color: var(--color-accent); }
.lb-shop-tip { font-size: 12px; color: var(--color-text-muted); margin-left: 6px; }
.lb-sec-note { margin-top: 10px; font-size: 13px; color: var(--color-text-muted); line-height: 1.7; }
.item-company {
  color: inherit;
  text-decoration: none;
  font-weight: 500;
}
.item-company:hover { color: var(--color-accent); }

/* 统一商铺页 */
.shop-hero {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  padding: calc(var(--nav-height) + 36px) 0 36px;
  color: #fff;
}
.shop-hero-inner { display: flex; gap: 20px; align-items: center; }
.shop-avatar {
  width: 72px; height: 72px; border-radius: 12px;
  background: linear-gradient(135deg, #FFFDF5, #D69E2E);
  color: var(--color-primary-dark);
  font-size: 28px; font-weight: 800;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.shop-hero-main h1 { margin: 0 0 8px; font-size: 28px; color: #fff; }
.shop-slogan { margin: 0 0 12px; color: rgba(255,255,255,0.78); font-size: 14px; }
.shop-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.shop-tag {
  display: inline-flex; align-items: center; height: 26px; padding: 0 10px;
  border-radius: 999px; font-size: 12px;
  background: rgba(255,255,255,0.14); border: 1px solid rgba(255,255,255,0.22);
}
.shop-tabs-bar {
  background: #fff; border-bottom: 1px solid var(--color-border);
  position: sticky; top: var(--nav-height); z-index: 20;
}
.shop-tabs { display: flex; gap: 4px; overflow-x: auto; padding: 0; }
.shop-tabs a {
  flex: 0 0 auto; padding: 14px 16px; font-size: 14px;
  color: var(--color-text-secondary); text-decoration: none; border-bottom: 2px solid transparent;
}
.shop-tabs a:hover, .shop-tabs a.active {
  color: var(--color-primary); border-bottom-color: var(--color-accent); font-weight: 600;
}
.shop-layout {
  display: grid; grid-template-columns: minmax(0,1fr) 280px; gap: 24px; align-items: start;
  padding-top: 8px; padding-bottom: 40px;
}
.shop-svc-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px;
}
.shop-svc-card {
  display: flex; flex-direction: column; gap: 6px;
  padding: 16px; border: 1px solid var(--color-border); border-radius: 8px;
  background: #fff; text-decoration: none; color: inherit;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.shop-svc-card:hover { border-color: var(--color-accent); box-shadow: 0 2px 8px rgba(26,54,93,0.08); }
.shop-svc-name { font-weight: 700; color: var(--color-primary); font-size: 15px; }
.shop-svc-meta { font-size: 12px; color: var(--color-text-muted); }
.shop-news-item {
  padding: 12px 0; border-bottom: 1px dashed var(--color-border);
}
.shop-news-item:last-child { border-bottom: none; }
.shop-news-tag {
  display: inline-block; margin-bottom: 6px; padding: 2px 8px;
  font-size: 12px; color: var(--color-accent); background: rgba(214,158,46,0.1); border-radius: 4px;
}
.shop-news-item p { margin: 0; font-size: 14px; line-height: 1.7; color: var(--color-text-secondary); }
.shop-rel { list-style: none; margin: 0; padding: 0; }
.shop-rel li { margin-bottom: 8px; }
.shop-rel a { color: var(--color-primary); text-decoration: none; font-size: 13px; }
.shop-rel a:hover { color: var(--color-accent); }
.shop-side { display: flex; flex-direction: column; gap: 16px; }
@media (max-width: 1023px) {
  .shop-layout { grid-template-columns: 1fr; }
  .lb-adv-list, .lb-process-list, .shop-svc-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
  .shop-hero-main h1 { font-size: 22px; }
  .lb-adv-list, .lb-process-list, .shop-svc-grid, .lb-gallery-grid { grid-template-columns: 1fr; }
  .shop-avatar { width: 56px; height: 56px; font-size: 22px; }
}


/* ===== Part 97: 列表网信息详情 + 店铺站同构 ===== */
body.lb-info-mode .page-main { background: var(--color-bg); padding-bottom: 40px; }
.lb-info-layout { align-items: start; gap: 20px; margin-top: 8px; }
.lb-info-main { min-width: 0; }
.lb-post {
  /* 去掉内层白卡边框，避免框套框；内容直接铺在主栏 */
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 8px 0 24px;
  box-shadow: none;
}
.lb-post-title {
  margin: 0 0 12px;
  font-size: 26px;
  font-weight: 800;
  line-height: 1.35;
  color: #1A202C;
}
.lb-post-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 18px;
  font-size: 13px;
  color: #718096;
}
.lb-post-acts { display: inline-flex; gap: 8px; }
.lb-act {
  height: 28px; padding: 0 12px;
  border: 1px solid var(--color-border);
  border-radius: 4px;
  background: #fff;
  color: #718096;
  font-size: 12px;
  cursor: default;
}
/* 图文左右：左图库 + 右字段/CTA */
.lb-post-media {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.9fr);
  gap: 24px;
  align-items: stretch;
  margin-bottom: 24px;
}
.lb-post-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: minmax(0, 1.55fr) minmax(0, 0.7fr);
  gap: 8px;
  margin: 0;
  min-height: 280px;
  height: 100%;
  max-height: 360px;
}
.lb-post-pic {
  margin: 0;
  border-radius: 6px;
  overflow: hidden;
  background: #EDF2F7;
  min-height: 0;
  height: 100%;
}
.lb-post-pic.is-main {
  grid-column: 1 / -1;
  grid-row: 1;
  aspect-ratio: auto;
  min-height: 0;
}
.lb-post-pic img {
  display: block; width: 100%; height: 100%; object-fit: cover;
}
.lb-post-panel {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
}
.lb-post-panel .lb-post-head {
  margin-bottom: 12px;
}
.lb-post-panel .lb-post-title {
  margin: 0 0 10px;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.4;
  color: #1A202C;
}
.lb-post-panel .lb-post-meta {
  margin-bottom: 14px;
  justify-content: flex-start;
  gap: 12px;
}
.lb-post-fields {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 10px 14px;
  flex: 1;
  margin: 0 0 16px;
  padding: 16px 18px;
  background: #F7FAFC;
  border: 1px solid #EDF2F7;
  border-radius: 8px;
  align-content: start;
}
.lb-post-fields dt {
  margin: 0;
  font-size: 13px;
  color: #718096;
  line-height: 1.7;
}
.lb-post-fields dd {
  margin: 0;
  font-size: 14px;
  color: #1A202C;
  font-weight: 600;
  line-height: 1.7;
}
.lb-post-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0;
}
.lb-cta-primary,
.lb-cta-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 22px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}
.lb-cta-primary {
  background: var(--color-primary);
  color: var(--color-accent);
}
.lb-cta-ghost {
  background: #fff;
  color: var(--color-primary);
  border: 1px solid var(--color-primary);
}
.lb-part { margin-bottom: 28px; }
.lb-part-title {
  margin: 0 0 14px;
  padding-left: 12px;
  border-left: 3px solid var(--color-accent);
  font-size: 18px;
  font-weight: 800;
  color: var(--color-primary);
}
.lb-part-body h3 {
  margin: 16px 0 8px;
  font-size: 16px;
  color: #1A202C;
}
.lb-part-body p {
  margin: 0 0 10px;
  font-size: 15px;
  line-height: 1.9;
  color: #2D3748;
}
.lb-part-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.lb-part-gallery figure {
  margin: 0;
  border-radius: 6px;
  overflow: hidden;
  aspect-ratio: 4/3;
  border: 1px solid var(--color-border);
}
.lb-part-gallery img {
  display: block; width: 100%; height: 100%; object-fit: cover;
}
.lb-adv6 {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.lb-adv6 li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px 16px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
}
.lb-adv6 .n {
  flex: 0 0 28px;
  height: 28px;
  border-radius: 6px;
  background: var(--color-primary);
  color: var(--color-accent);
  font-weight: 800;
  font-size: 13px;
  line-height: 28px;
  text-align: center;
}
.lb-adv6 .t { font-size: 14px; line-height: 1.6; color: #2D3748; }
.lb-flow {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
}
.lb-flow li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 14px 8px;
  background: #F7FAFC;
  border-radius: 8px;
  border: 1px solid #EDF2F7;
  text-align: center;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-primary);
}
.lb-flow .dot {
  width: 10px; height: 10px; border-radius: 50%;
  background: var(--color-accent);
}
.lb-warm {
  margin: 8px 0 0;
  padding: 12px 14px;
  font-size: 13px;
  line-height: 1.7;
  color: #744210;
  background: #FFFAF0;
  border: 1px solid #FEEBC8;
  border-radius: 6px;
}
.lb-back { margin: 16px 0 8px; }
.lb-back a { color: #2B6CB0; text-decoration: none; }
.lb-info-aside { display: flex; flex-direction: column; gap: 14px; }
.lb-side-stack { display: flex; flex-direction: column; gap: 14px; }
.lb-side-shop {
  background: linear-gradient(160deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  color: #fff;
  border-radius: 8px;
  padding: 20px 18px;
  text-align: center;
}
.lb-side-shop-badge {
  display: inline-block;
  margin-bottom: 10px;
  padding: 2px 10px;
  font-size: 12px;
  border-radius: 999px;
  background: rgba(214,158,46,0.25);
  color: var(--color-accent);
  font-weight: 700;
}
.lb-side-shop-name {
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 6px;
  word-break: break-all;
}
a.lb-side-shop-name {
  display: block;
  color: #fff;
  text-decoration: none;
  transition: color 0.2s ease;
}
a.lb-side-shop-name:hover { color: var(--color-accent); }
.lb-side-shop-meta { margin: 0 0 14px; font-size: 12px; color: rgba(255,255,255,0.7); }
.lb-side-shop-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 16px;
  border-radius: 6px;
  background: var(--color-accent);
  color: var(--color-primary-dark);
  font-weight: 700;
  text-decoration: none;
  font-size: 14px;
}
.lb-side-box {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 14px 16px;
}
.lb-side-tit {
  margin-bottom: 10px;
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
}
.lb-side-tips {
  margin: 0;
  padding-left: 18px;
  font-size: 12.5px;
  line-height: 1.7;
  color: #4A5568;
}
.lb-side-rel { list-style: none; margin: 0; padding: 0; }
.lb-side-rel li { margin-bottom: 8px; }
.lb-side-rel a {
  font-size: 13px;
  line-height: 1.5;
  color: #2D3748;
  text-decoration: none;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.lb-side-rel a:hover { color: var(--color-accent); }

/* ---- 店铺站（对齐 shop.liebiao） ---- */
.lshop-banner {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  padding: calc(var(--nav-height) + 28px) 0 28px;
  color: #fff;
}
.lshop-banner-inner {
  display: grid;
  grid-template-columns: 72px minmax(0,1fr) 200px;
  gap: 20px;
  align-items: center;
}
.lshop-logo {
  width: 72px; height: 72px; border-radius: 12px;
  background: linear-gradient(135deg, #FFFDF5, #D69E2E);
  color: var(--color-primary-dark);
  font-size: 28px; font-weight: 800;
  display: flex; align-items: center; justify-content: center;
}
.lshop-banner-main h1 { margin: 0 0 8px; font-size: 28px; color: #fff; }
.lshop-sub { margin: 0 0 10px; color: rgba(255,255,255,0.78); font-size: 14px; }
.lshop-cert { display: flex; flex-wrap: wrap; gap: 8px; }
.lshop-tag {
  display: inline-flex; align-items: center; height: 26px; padding: 0 10px;
  border-radius: 999px; font-size: 12px;
  background: rgba(255,255,255,0.14); border: 1px solid rgba(255,255,255,0.22);
}
.lshop-banner-side {
  text-align: right;
  padding: 12px 14px;
  border-radius: 8px;
  background: rgba(0,0,0,0.18);
}
.lshop-phone-label { font-size: 12px; color: rgba(255,255,255,0.65); margin-bottom: 4px; }
.lshop-phone-val { font-size: 15px; font-weight: 700; margin-bottom: 10px; }
.lshop-phone-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 32px; padding: 0 12px; border-radius: 6px;
  background: var(--color-accent); color: var(--color-primary-dark);
  font-size: 13px; font-weight: 700; text-decoration: none;
}
.lshop-nav {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: var(--nav-height);
  z-index: 20;
}
.lshop-nav-inner {
  display: flex;
  gap: 4px;
  overflow-x: auto;
}
.lshop-nav a {
  flex: 0 0 auto;
  padding: 14px 16px;
  font-size: 14px;
  color: var(--color-text-secondary);
  text-decoration: none;
  border-bottom: 2px solid transparent;
}
.lshop-nav a:hover,
.lshop-nav a.active {
  color: var(--color-primary);
  border-bottom-color: var(--color-accent);
  font-weight: 600;
}
.lshop-body { padding-bottom: 48px; }
.lshop-sec {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 22px 24px;
  margin-bottom: 16px;
}
.lshop-sec-title {
  margin: 0 0 16px;
  padding-left: 12px;
  border-left: 3px solid var(--color-accent);
  font-size: 18px;
  font-weight: 800;
  color: var(--color-primary);
}
.lshop-svc-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.lshop-svc-card {
  display: block;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  background: #fff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.lshop-svc-card:hover {
  border-color: var(--color-accent);
  box-shadow: 0 2px 8px rgba(26,54,93,0.08);
}
.lshop-svc-cover { aspect-ratio: 16/10; background: #EDF2F7; overflow: hidden; }
.lshop-svc-cover img,
.lshop-gallery img,
.lshop-post-cover img {
  display: block; width: 100%; height: 100%; object-fit: cover;
}
.lshop-svc-body { padding: 12px 14px; }
.lshop-svc-name { font-weight: 700; color: var(--color-primary); font-size: 15px; margin-bottom: 4px; }
.lshop-svc-meta { font-size: 12px; color: var(--color-text-muted); }
.lshop-about p { margin: 0 0 12px; font-size: 15px; line-height: 1.9; color: #2D3748; }
.lshop-info-dl {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 10px 16px;
  margin: 0;
}
.lshop-info-dl dt { margin: 0; font-size: 13px; color: #718096; }
.lshop-info-dl dd { margin: 0; font-size: 14px; font-weight: 600; color: #1A202C; }
.lshop-adv {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px;
}
.lshop-adv li {
  display: flex; gap: 12px; align-items: flex-start;
  padding: 14px 16px; border: 1px solid var(--color-border); border-radius: 8px;
}
.lshop-adv .n {
  flex: 0 0 36px; height: 36px; border-radius: 8px;
  background: rgba(214,158,46,0.15); color: var(--color-accent-dark);
  font-weight: 800; font-size: 13px; line-height: 36px; text-align: center;
}
.lshop-adv strong { display: block; margin-bottom: 4px; color: var(--color-primary); }
.lshop-adv p { margin: 0; font-size: 13px; color: #4A5568; line-height: 1.6; }
.lshop-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.lshop-gallery figure {
  margin: 0; aspect-ratio: 4/3; border-radius: 6px; overflow: hidden;
  border: 1px solid var(--color-border); background: #EDF2F7;
}
.lshop-news-item {
  display: flex; gap: 14px; padding: 14px 0;
  border-bottom: 1px dashed var(--color-border);
}
.lshop-news-item:last-child { border-bottom: none; }
.lshop-news-date {
  flex: 0 0 64px;
  background: var(--color-primary);
  color: #fff;
  border-radius: 8px;
  text-align: center;
  padding: 10px 6px;
}
.lshop-news-date b { display: block; font-size: 18px; line-height: 1.2; }
.lshop-news-date span { font-size: 11px; opacity: 0.8; }
.lshop-news-tag {
  display: inline-block; margin-bottom: 6px; padding: 2px 8px;
  font-size: 12px; color: var(--color-accent); background: rgba(214,158,46,0.1); border-radius: 4px;
}
.lshop-news-main h3 { margin: 0 0 6px; font-size: 15px; color: #1A202C; }
.lshop-news-main p { margin: 0; font-size: 13px; line-height: 1.7; color: #4A5568; }
.lshop-posts {
  display: grid; grid-template-columns: 1fr 1fr; gap: 14px;
}
.lshop-post-card {
  display: grid; grid-template-columns: 140px 1fr; gap: 12px;
  border: 1px solid var(--color-border); border-radius: 8px; overflow: hidden;
  text-decoration: none; color: inherit; background: #fff;
}
.lshop-post-cover { aspect-ratio: 4/3; background: #EDF2F7; overflow: hidden; }
.lshop-post-body { padding: 12px 12px 12px 0; }
.lshop-post-body h3 { margin: 0 0 6px; font-size: 14px; color: var(--color-primary); line-height: 1.4; }
.lshop-post-body p { margin: 0 0 8px; font-size: 12.5px; line-height: 1.6; color: #4A5568;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.lshop-post-meta { font-size: 12px; color: var(--color-text-muted); }
.lshop-flow {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px;
}
.lshop-flow li {
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  padding: 16px 8px; background: #F7FAFC; border: 1px solid #EDF2F7; border-radius: 8px;
}
.lshop-flow .n {
  width: 28px; height: 28px; border-radius: 50%;
  background: rgba(214,158,46,0.15); color: var(--color-accent-dark);
  font-weight: 800; font-size: 13px; line-height: 28px; text-align: center;
}
.lshop-flow .t { font-size: 13px; font-weight: 600; color: var(--color-primary); text-align: center; }

@media (max-width: 1023px) {
  .lb-info-layout { grid-template-columns: 1fr !important; }
  .lb-post-media { grid-template-columns: 1fr; gap: 16px; }
  .lb-post-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: minmax(180px, 1.4fr) minmax(72px, 0.65fr);
    max-height: 320px;
    min-height: 240px;
  }
  .lb-post-pic.is-main { grid-column: 1 / -1; grid-row: 1; min-height: 0; }
  .lb-adv6, .lshop-adv, .lshop-svc-grid { grid-template-columns: 1fr 1fr; }
  .lb-flow, .lshop-flow { grid-template-columns: repeat(3, 1fr); }
  .lb-part-gallery, .lshop-gallery { grid-template-columns: repeat(2, 1fr); }
  .lshop-banner-inner { grid-template-columns: 64px 1fr; }
  .lshop-banner-side { grid-column: 1 / -1; text-align: left; }
  .lshop-posts { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .lb-post { padding: 16px; }
  .lb-post-title { font-size: 20px; }
  .lb-post-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: auto auto;
    max-height: none;
    min-height: 0;
    height: auto;
  }
  .lb-post-pic { aspect-ratio: 4/3; height: auto; }
  .lb-post-pic.is-main {
    grid-column: 1 / -1;
    grid-row: 1;
    aspect-ratio: 16/10;
  }
  .lb-adv6, .lshop-adv, .lshop-svc-grid, .lb-flow, .lshop-flow, .lb-part-gallery, .lshop-gallery { grid-template-columns: 1fr; }
  .lshop-banner-main h1 { font-size: 22px; }
  .lshop-post-card { grid-template-columns: 100px 1fr; }
}


/* Part 97b: 店铺分页面详情 */
a.lshop-news-item { text-decoration: none; color: inherit; }
a.lshop-news-item:hover .lshop-news-main h3 { color: var(--color-accent); }
.lshop-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}
.lshop-detail-pic {
  border-radius: 8px;
  overflow: hidden;
  background: #EDF2F7;
  aspect-ratio: 4/3;
  border: 1px solid var(--color-border);
}
.lshop-detail-pic img { display:block; width:100%; height:100%; object-fit:cover; }
.lshop-detail-h1 {
  margin: 0 0 8px;
  font-size: 24px;
  font-weight: 800;
  color: #1A202C;
  line-height: 1.35;
}
.lshop-detail-sub {
  margin: 0 0 16px;
  font-size: 14px;
  color: #718096;
}
.lshop-article-meta {
  display: flex; flex-wrap: wrap; gap: 8px 16px;
  margin: 0 0 18px; font-size: 13px; color: #718096;
}
.lshop-article-meta a { color: var(--color-primary); text-decoration: none; }
.lshop-article-nav {
  display: flex; justify-content: space-between; gap: 12px;
  margin-top: 24px; padding-top: 16px;
  border-top: 1px dashed var(--color-border);
}
.lshop-article-nav a { color: var(--color-primary); text-decoration: none; font-size: 14px; }
.lshop-article-nav .fnd-nav-none { color: #CBD5E0; font-size: 14px; }
@media (max-width: 767px) {
  .lshop-detail-layout { grid-template-columns: 1fr; }
}


/* ===== Part 98: 商铺个人站多页 ===== */
body.lshop-site { background: var(--color-bg); }
.lshop-site-top {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: 0;
  z-index: 100;
}
.lshop-site-top-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 56px;
  gap: 16px;
}
.lshop-site-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: var(--color-primary);
  font-weight: 700;
  font-size: 17px;
  min-width: 0;
}
.lshop-site-logo {
  width: 36px; height: 36px; border-radius: 8px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  color: #fff; display:flex; align-items:center; justify-content:center;
  font-size: 15px; font-weight: 700; flex-shrink: 0;
}
.lshop-site-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width: 42vw; }
.lshop-site-top-actions { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.lshop-site-back {
  font-size: 13px; color: #718096; text-decoration: none;
}
.lshop-site-back:hover { color: var(--color-primary); }
.lshop-site .lshop-banner { margin-top: 0; }
.lshop-more { margin: 12px 0 0; text-align: right; }
.lshop-more a { color: var(--color-primary); font-size: 13px; text-decoration: none; font-weight: 600; }
.lshop-more a:hover { color: var(--color-accent); }
.lshop-gallery figcaption {
  display:block; padding: 8px 10px; font-size: 12px; color: #718096; background:#fff;
  border-top: 1px solid var(--color-border);
}
.lshop-site-foot {
  background: var(--color-primary-dark);
  color: rgba(255,255,255,0.7);
  padding: 28px 0 36px;
  margin-top: 24px;
}
.lshop-site-foot-nav { text-align:center; margin-bottom: 12px; font-size: 13px; }
.lshop-site-foot-nav a { color: rgba(255,255,255,0.85); text-decoration: none; margin: 0 2px; }
.lshop-site-foot-nav a:hover { color: var(--color-accent); }
.lshop-site-foot-note { text-align:center; font-size: 12px; margin: 0; line-height: 1.7; }
.lshop-site-foot-note a { color: rgba(255,255,255,0.65); }
@media (max-width: 767px) {
  .lshop-site-top-inner { min-height: 52px; }
  .lshop-site-name { max-width: 36vw; font-size: 15px; }
  .lshop-site-back { display: none; }
}


/* ===== Part 99: 登录页 ===== */
.login-main { padding-bottom: 48px; }
.login-section { padding: 24px 0 48px; }
.login-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 440px);
  gap: 32px;
  align-items: stretch;
  max-width: 960px;
}
.login-side {
  background: linear-gradient(145deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  border-radius: 12px;
  color: #fff;
  padding: 40px 32px;
}
.login-side h2 { margin: 0 0 12px; font-size: 26px; color: #fff; }
.login-side p { margin: 0 0 16px; font-size: 14px; line-height: 1.7; color: rgba(255,255,255,0.82); }
.login-side-list { margin: 0 0 20px; padding-left: 18px; font-size: 14px; line-height: 1.9; color: rgba(255,255,255,0.9); }
.login-side-note { margin: 0; font-size: 13px; color: rgba(255,255,255,0.7); }
.login-side-note a { color: var(--color-accent); font-weight: 600; }
.login-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 12px rgba(26,54,93,0.08);
  border: 1px solid var(--color-border);
  padding: 32px 28px 28px;
}
.login-card-head { margin-bottom: 20px; }
.login-card-head h1 { margin: 0 0 6px; font-size: 22px; color: var(--color-primary); }
.login-card-head p { margin: 0; font-size: 13px; color: var(--color-text-muted); }
.login-tabs {
  display: flex;
  gap: 0;
  margin-bottom: 22px;
  border-bottom: 1px solid var(--color-border);
}
.login-tab {
  flex: 1;
  background: none;
  border: 0;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  padding: 12px 8px;
  font-size: 14px;
  font-weight: 600;
  color: #718096;
  cursor: pointer;
  font-family: inherit;
}
.login-tab.active {
  color: var(--color-primary);
  border-bottom-color: var(--color-accent);
}
.login-form .form-group { margin-bottom: 16px; }
.login-pwd-wrap { position: relative; }
.login-pwd-wrap .form-control { padding-right: 56px; }
.login-eye {
  position: absolute; right: 8px; top: 50%; transform: translateY(-50%);
  background: none; border: 0; color: var(--color-primary); font-size: 12px;
  font-weight: 600; cursor: pointer; padding: 6px 8px; font-family: inherit;
}
.login-row {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; margin-bottom: 18px; flex-wrap: wrap;
}
.login-row .checkbox-label { margin: 0; }
.login-link { font-size: 13px; color: var(--color-primary); text-decoration: none; }
.login-link:hover { color: var(--color-accent); }
.login-code-row { display: flex; gap: 10px; }
.login-code-row .form-control { flex: 1; min-width: 0; }
.login-code-btn {
  flex-shrink: 0; white-space: nowrap; min-width: 110px;
  height: 42px; padding: 0 12px; font-size: 13px;
}
.login-code-btn:disabled { opacity: 0.55; cursor: not-allowed; }
.login-tip {
  min-height: 20px; margin: 14px 0 0; font-size: 13px; line-height: 1.5; color: #718096;
}
.login-tip.ok { color: #276749; }
.login-tip.err { color: #C53030; }
.login-foot {
  margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--color-border);
  text-align: center; font-size: 13px; color: #718096;
}
.login-foot a { color: var(--color-accent); font-weight: 600; text-decoration: none; margin-left: 4px; }
.login-page .nav-login.active-login {
  background: rgba(255,255,255,0.12);
}
@media (max-width: 1023px) {
  .login-layout { grid-template-columns: 1fr; max-width: 480px; margin: 0 auto; }
  .login-side { padding: 28px 24px; }
  .login-side h2 { font-size: 22px; }
}
@media (max-width: 767px) {
  .login-card { padding: 24px 18px 20px; }
  .login-tab { font-size: 13px; padding: 10px 4px; }
}


/* ===== Part 100: 入驻流程错位修复 =====
   Part 82 曾误把 .join-process（section）设为 4 列 grid，导致
   container/标题挤在首列、步骤错位。网格只应作用在 .process-steps。 */
section.page-section.join-process {
  display: block;
}
section.join-process > .container {
  display: block;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
section.join-process .section-header {
  display: block;
  text-align: left;
  margin-bottom: 8px;
  padding-bottom: 16px;
}
section.join-process .section-header > .section-title {
  margin-bottom: 8px;
}
section.join-process .section-header > .section-desc {
  flex: none;
  width: auto;
  max-width: none;
  margin: 0;
  text-align: left;
}
section.join-process .process-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin-top: 28px;
  align-items: stretch;
}
section.join-process .process-step {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(26,54,93,0.06);
  padding: 28px 18px 24px;
  text-align: center;
  min-width: 0;
}
section.join-process .process-step h3 {
  margin: 0 0 8px;
  font-size: 17px;
  line-height: 1.35;
}
section.join-process .process-step p {
  margin: 0;
  font-size: 13px;
  line-height: 1.65;
}
section.join-process .step-num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  line-height: 1;
  margin: 0 auto 14px;
}
@media (max-width: 1023px) {
  section.join-process .process-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  section.join-process .process-steps {
    grid-template-columns: minmax(0, 1fr);
  }
}


/* ===== Part 101: 顶栏登录入口可见可点 =====
   ≤1023 原隐藏 .nav-login，入驻页点「登录」无入口/像没反应；改为始终显示 */


/* ===== Part 102: 店铺站对齐列表网 + 信息详情去框套框 ===== */
body.lb-info-mode .page-main { background: #fff; }
body.lb-info-mode .detail-layout {
  background: #fff;
  border: none;
  box-shadow: none;
}
body.lb-info-mode .lb-info-main,
body.lb-info-mode .detail-main {
  background: transparent;
  border: none;
  box-shadow: none;
  padding: 0;
}

/* 店铺顶栏（对齐 header_title） */
.lshop-site { background: #f5f5f5; }
.lshop-topbar {
  background: #fff;
  border-bottom: 1px solid #eee;
}
.lshop-topbar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 64px;
  gap: 16px;
}
.lshop-topbar-name {
  font-size: 26px;
  font-weight: 800;
  color: #222;
  text-decoration: none;
  letter-spacing: 1px;
}
.lshop-topbar-name h1 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  letter-spacing: inherit;
  display: inline;
}
.lshop-topbar-phone {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.lshop-topbar-phone-label { font-size: 12px; color: #999; }
.lshop-topbar-phone-val { font-size: 15px; font-weight: 700; color: #333; }
.lshop-topbar-cta {
  display: inline-flex; align-items: center; justify-content: center;
  height: 34px; padding: 0 14px; border-radius: 4px;
  background: #FF6600; color: #fff; font-size: 13px; font-weight: 700;
  text-decoration: none;
}
.lshop-topbar-cta:hover { background: #e55b00; color: #fff; }

/* 导航条（对齐 header_nav） */
.lshop-site .lshop-nav {
  background: #1A365D;
  border-bottom: none;
  position: sticky;
  top: 0;
  z-index: 30;
}
.lshop-site .lshop-nav-inner {
  display: flex;
  justify-content: stretch;
  gap: 0;
  overflow-x: auto;
}
.lshop-site .lshop-nav a {
  flex: 1 1 0;
  text-align: center;
  padding: 0;
  color: rgba(255,255,255,0.88);
  border-bottom: none;
  font-weight: 500;
  font-size: 15px;
  min-width: 88px;
}
.lshop-site .lshop-nav a span {
  display: block;
  padding: 14px 8px;
}
.lshop-site .lshop-nav a:hover,
.lshop-site .lshop-nav a.active {
  color: #fff;
  background: rgba(255,255,255,0.08);
  font-weight: 700;
  border-bottom-color: transparent;
}
.lshop-site .lshop-nav a.active {
  background: #FF6600;
}

/* 大图 Banner */
.lshop-hero-banner {
  height: 320px;
  background: #1A365D center/cover no-repeat;
  position: relative;
}
.lshop-hero-banner::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(26,54,93,0.15), rgba(26,54,93,0.45));
}

.lshop-main-wrap { background: #f5f5f5; padding-bottom: 40px; }
.lshop-bc {
  padding: 14px 0;
  font-size: 13px;
  color: #888;
}
.lshop-bc a { color: #666; text-decoration: none; }
.lshop-bc a:hover { color: #FF6600; }
.lshop-bc .sep { margin: 0 6px; color: #bbb; }

/* 左右栏 */
.lshop-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 20px;
  align-items: start;
}
.lshop-main { min-width: 0; }
.lshop-side { position: sticky; top: 64px; }

/* 区块：白底无重边框，标题底线（对齐列表网） */
.lshop-site .lshop-sec {
  background: #fff;
  border: none;
  border-radius: 0;
  padding: 20px 22px 24px;
  margin-bottom: 16px;
  box-shadow: none;
}
.lshop-sec-hd {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid #eee;
}
.lshop-site .lshop-sec-title {
  margin: 0;
  padding: 0;
  border: none;
  font-size: 18px;
  font-weight: 700;
  color: #222;
  position: relative;
}
.lshop-site .lshop-sec-hd .lshop-sec-title::after {
  content: '';
  position: absolute;
  left: 0; bottom: -11px;
  width: 64px; height: 2px;
  background: #FF6600;
}
.lshop-sec-more {
  font-size: 13px;
  color: #999;
  text-decoration: none;
}
.lshop-sec-more:hover { color: #FF6600; }

/* 产品网格 hover 查看详情（对齐列表网 product_list） */
.lshop-prod-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.lshop-prod-item {
  position: relative;
  background: #fafafa;
  overflow: hidden;
}
.lshop-prod-item img {
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
}
.lshop-prod-name {
  margin: 0;
  padding: 10px 12px;
  font-size: 14px;
  color: #333;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 48px;
}
.lshop-prod-cover {
  position: absolute;
  inset: 0;
  background: rgba(26,54,93,0.55);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity .2s ease;
  text-decoration: none;
}
.lshop-prod-cover span {
  color: #fff;
  border: 1px solid #fff;
  padding: 8px 18px;
  font-size: 14px;
}
.lshop-prod-item:hover .lshop-prod-cover { opacity: 1; }

.lshop-gold-badge {
  display: inline-block;
  background: linear-gradient(135deg, #F6E05E, #D69E2E);
  color: #1A365D;
  font-size: 12px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 3px;
}
.lshop-side-box {
  background: #fff;
  padding: 18px 16px 20px;
}
.lshop-side-dl { margin: 0; }
.lshop-side-dl > div {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 8px;
  padding: 10px 0;
  border-bottom: 1px dashed #eee;
  font-size: 13px;
}
.lshop-side-dl > div:last-child { border-bottom: none; }
.lshop-side-dl dt { margin: 0; color: #999; }
.lshop-side-dl dd { margin: 0; color: #333; font-weight: 600; }
.lshop-side-dl a { color: #1A365D; text-decoration: none; }
.lshop-side-dl a:hover { color: #FF6600; }

.lshop-info-list { display: flex; flex-direction: column; gap: 12px; }
.lshop-info-row {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  text-decoration: none;
  color: inherit;
  padding-bottom: 12px;
  border-bottom: 1px solid #f0f0f0;
}
.lshop-info-thumb {
  position: relative;
  width: 120px;
  height: 90px;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #eee;
  border-radius: 6px;
  flex-shrink: 0;
  align-self: start;
}
.lshop-info-thumb img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.lshop-info-body h3 { margin: 0 0 6px; font-size: 14px; color: #222; line-height: 1.4; }
.lshop-info-body p { margin: 0 0 6px; font-size: 12px; color: #999; }
.lshop-info-body span { font-size: 13px; color: #FF6600; font-weight: 700; }

.lshop-site .lshop-site-foot {
  background: #2d2d2d;
  margin-top: 0;
}
@media (max-width: 1023px) {
  .lshop-layout { grid-template-columns: 1fr; }
  .lshop-side { position: static; }
  .lshop-hero-banner { height: 200px; }
  .lshop-prod-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .lshop-site .lshop-nav a { flex: 0 0 auto; }
}
@media (max-width: 767px) {
  .lshop-topbar-name { font-size: 18px; }
  .lshop-topbar-phone-label { display: none; }
  .lshop-prod-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .lshop-info-row { grid-template-columns: 88px minmax(0, 1fr); }
  .lshop-info-thumb { width: 88px; height: 66px; }
}

/* ===== Part 103: 店铺首页全宽竖排（对齐列表网 index） =====
   内页保持左主右栏；首页改为全宽模块堆叠，商铺信息为整行区块 */
body.lshop-is-home main.lshop-main-wrap > .container {
  max-width: none;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}
body.lshop-is-home .lshop-bc {
  max-width: 1200px;
  margin: 0 auto;
  padding: 14px 20px;
  box-sizing: border-box;
}
body.lshop-is-home .lshop-body { padding-bottom: 0; }
body.lshop-is-home .lshop-main-wrap { background: #fff; }

.lshop-home { width: 100%; }
.lshop-home-block {
  width: 100%;
  padding: 0 0 48px;
}
.lshop-home-block.is-gray { background: #F2F2F3; }
.lshop-home-block.is-white { background: #fff; }
.lshop-home-block.is-accent {
  background: var(--color-primary);
  color: #fff;
  padding-bottom: 56px;
}
.lshop-home-block.is-dark {
  background: #3D3E3F;
  color: #fff;
  padding-bottom: 56px;
}

.lshop-home-title {
  margin: 0;
  padding: 56px 0 40px;
  text-align: center;
  font-size: 28px;
  font-weight: 600;
  line-height: 1;
  color: var(--color-primary);
}
.lshop-home-title span { display: inline-block; }
.lshop-home-block.is-accent .lshop-home-title,
.lshop-home-block.is-dark .lshop-home-title { color: #fff; }

.lshop-home-more {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: fit-content;
  min-width: 148px;
  height: 42px;
  margin: 40px auto 8px;
  padding: 0 28px;
  background: var(--color-primary);
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.04em;
  box-sizing: border-box;
  box-shadow: 0 2px 8px rgba(26, 54, 93, 0.12);
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
.lshop-home-more::after {
  content: '→';
  font-weight: 400;
  opacity: 0.85;
  transition: transform 0.2s ease;
}
.lshop-home-more span { position: relative; z-index: 1; }
.lshop-home-more:hover {
  background: var(--color-primary-dark);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(26, 54, 93, 0.18);
}
.lshop-home-more:hover::after { transform: translateX(3px); }
.lshop-home-block.is-accent .lshop-home-more {
  background: #fff;
  color: var(--color-primary);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
}
.lshop-home-block.is-accent .lshop-home-more:hover {
  background: #FFF8EB;
  color: var(--color-primary-dark);
}

.lshop-home-block .lshop-prod-grid {
  gap: 40px 60px;
  max-width: 1200px;
  margin: 0 auto;
}
.lshop-home-block .lshop-prod-item {
  background: transparent;
  border-radius: 10px;
  overflow: hidden;
}
.lshop-home-block .lshop-prod-item img {
  border: 1px solid #ccc;
  border-radius: 10px;
  aspect-ratio: 360 / 270;
}
.lshop-home-block .lshop-prod-name {
  background: rgba(239,239,239,0.6);
  text-align: center;
  min-height: 40px;
  padding: 8px 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lshop-info-full {
  max-width: 1200px;
  margin: 0 auto;
}
.lshop-info-full-dl {
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 80px;
}
.lshop-info-full-dl > div {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 8px;
  padding: 18px 0;
  border-bottom: 1px dashed #ccc;
  font-size: 16px;
}
.lshop-info-full-dl > div:nth-last-child(-n+2) { border-bottom: none; }
.lshop-info-full dt { margin: 0; color: #666; font-weight: 400; }
.lshop-info-full dd { margin: 0; color: #222; font-weight: 600; }
.lshop-info-full a { color: var(--color-primary); text-decoration: none; }
.lshop-info-full a:hover { color: #FF6600; }

.lshop-home-block .lshop-about {
  max-width: 1000px;
  margin: 0 auto;
  font-size: 16px;
  line-height: 2;
  color: #333;
}

/* 首页服务优势：一行 6 列竖卡，圆形序号（去掉侧栏深蓝块） */
.lshop-home-block .lshop-adv {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  max-width: 1200px;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
}
.lshop-home-block .lshop-adv li {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  padding: 22px 10px 18px;
  background: #fff;
  border: 1px solid #E8ECF1;
  border-radius: 10px;
  min-height: 0;
  box-shadow: 0 1px 4px rgba(26, 54, 93, 0.04);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.lshop-home-block .lshop-adv li:hover {
  border-color: rgba(214, 158, 46, 0.45);
  box-shadow: 0 6px 16px rgba(26, 54, 93, 0.08);
  transform: translateY(-2px);
}
.lshop-home-block.is-white .lshop-adv li {
  box-shadow: 0 1px 4px rgba(26, 54, 93, 0.04);
}
.lshop-home-block .lshop-adv .n {
  flex: none;
  width: 40px;
  height: 40px;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, #1A365D 0%, #2B4C7E 50%, #D69E2E 100%);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  font-variant-numeric: tabular-nums;
  box-shadow: none;
}
.lshop-home-block .lshop-adv li > div {
  flex: 1;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  min-width: 0;
}
.lshop-home-block .lshop-adv strong {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0;
  line-height: 1.35;
}
.lshop-home-block .lshop-adv p {
  margin: 0;
  font-size: 12.5px;
  line-height: 1.55;
  color: #718096;
}

.lshop-home-block .lshop-gallery {
  max-width: 1200px;
  margin: 0 auto;
}
.lshop-home-block.is-accent .lshop-gallery figure {
  border: none;
  background: rgba(255,255,255,0.12);
}

.lshop-home-block.is-dark .lshop-flow .t { color: #fff; }
.lshop-home-block.is-dark .lshop-flow .n {
  background: rgba(255,255,255,0.12);
  color: #fff;
  border-color: rgba(255,255,255,0.25);
}

@media (max-width: 1023px) {
  .lshop-home-block .lshop-prod-grid { gap: 20px 16px; }
  .lshop-home-title { font-size: 22px; padding: 40px 0 28px; }
  .lshop-home-block .lshop-adv { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
}
@media (max-width: 767px) {
  .lshop-info-full-dl { grid-template-columns: 1fr; gap: 0; }
  .lshop-info-full-dl > div:nth-last-child(-n+2) { border-bottom: 1px dashed #ccc; }
  .lshop-info-full-dl > div:last-child { border-bottom: none; }
  .lshop-home-block .lshop-adv { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .lshop-home-block .lshop-adv li { padding: 18px 8px 14px; }
  .lshop-home-block .lshop-adv .n { width: 36px; height: 36px; font-size: 12px; }
  .lshop-home-block .lshop-adv strong { font-size: 14px; }
  .lshop-home-more { margin-top: 32px; }
}

/* ===== Part 104: 商铺案例中心卡片 + 案例详情 ===== */
.lshop-case-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.lshop-case-grid.is-compact {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.lshop-case-grid.is-related {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
a.lshop-case-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: box-shadow .2s ease, transform .2s ease;
}
a.lshop-case-card:hover {
  box-shadow: 0 6px 18px rgba(26,54,93,0.12);
  transform: translateY(-2px);
}
.lshop-case-pic {
  aspect-ratio: 4/3;
  overflow: hidden;
  background: #EDF2F7;
}
.lshop-case-pic img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.lshop-case-body {
  padding: 14px 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}
.lshop-case-title {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: #222;
  line-height: 1.4;
}
a.lshop-case-card:hover .lshop-case-title { color: #FF6600; }
.lshop-case-intro {
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
  color: #666;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
}
.lshop-case-more {
  display: inline-block;
  margin-top: 4px;
  font-size: 13px;
  color: var(--color-primary);
  font-weight: 600;
}
a.lshop-case-card:hover .lshop-case-more { color: #FF6600; }

/* 首页服务展示紧凑卡 */
.lshop-home-block .lshop-case-grid.is-compact .lshop-case-body {
  padding: 10px 12px 12px;
}
.lshop-home-block .lshop-case-grid.is-compact .lshop-case-title {
  font-size: 14px;
}
.lshop-home-block.is-accent .lshop-case-card {
  background: rgba(255,255,255,0.12);
  border-color: transparent;
}
.lshop-home-block.is-accent .lshop-case-title,
.lshop-home-block.is-accent .lshop-case-more { color: #fff; }
.lshop-home-block.is-accent a.lshop-case-card:hover .lshop-case-title,
.lshop-home-block.is-accent a.lshop-case-card:hover .lshop-case-more { color: #FFD666; }

@media (max-width: 1023px) {
  .lshop-case-grid,
  .lshop-case-grid.is-related { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lshop-case-grid.is-compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .lshop-case-grid,
  .lshop-case-grid.is-compact,
  .lshop-case-grid.is-related { grid-template-columns: 1fr; }
}

/* ===== Part 105: 商铺站 logo — 抖音美好体 + 渐变色 ===== */
.lshop-site .lshop-topbar-name,
.lshop-site .lshop-topbar-name h1,
.lshop-site #shopHeadName {
  font-family: 'DouyinSans', 'DouyinSans Logo', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
  background: linear-gradient(135deg, #1A365D 0%, #2B4C7E 42%, #D69E2E 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.lshop-site .lshop-topbar-name:hover,
.lshop-site .lshop-topbar-name:hover h1 {
  background: linear-gradient(135deg, #0F2440 0%, #D69E2E 55%, #F6E05E 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
/* 页脚商铺名同款字标 */
.lshop-site #shopFootName.lshop-site-foot-note,
.lshop-site .lshop-site-foot-note#shopFootName {
  font-family: 'DouyinSans', 'DouyinSans Logo', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 1px;
  background: linear-gradient(135deg, #F6E05E 0%, #D69E2E 55%, #ffffff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
@media (max-width: 767px) {
  .lshop-site .lshop-topbar-name,
  .lshop-site .lshop-topbar-name h1 {
    letter-spacing: 0.5px;
  }
}


/* ===== Part 106: 商铺站内页分页 + 新闻详情正文/标签 ===== */
.lshop-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 28px 0 8px;
}
.lshop-article-lead {
  margin: 0 0 18px;
  font-size: 15px;
  line-height: 1.8;
  color: #4A5568;
}
.lshop-article-body {
  margin: 0 0 20px;
}
.lshop-article-body h2 {
  margin: 22px 0 10px;
  padding-left: 12px;
  border-left: 3px solid var(--color-accent);
  font-size: 17px;
  font-weight: 700;
  color: var(--color-primary);
  line-height: 1.4;
}
.lshop-article-body h3 {
  margin: 16px 0 8px;
  font-size: 15px;
  font-weight: 700;
  color: #2D3748;
}
.lshop-article-body h3::before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 8px;
  border-radius: 50%;
  background: var(--color-accent);
  vertical-align: middle;
}
.lshop-article-body p {
  margin: 0 0 12px;
  font-size: 15px;
  line-height: 1.85;
  color: #2D3748;
}
.lshop-article-verify {
  margin: 20px 0;
  padding: 16px 18px;
  background: #F7FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
}
.lshop-article-verify h2 {
  margin: 0 0 8px;
  font-size: 15px;
  color: var(--color-primary);
}
.lshop-article-verify p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.75;
  color: #4A5568;
}
.lshop-article-verify a { color: var(--color-primary); }
.lshop-article-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 20px 0 8px;
  padding-top: 16px;
  border-top: 1px dashed var(--color-border);
}
.lshop-article-tags-label {
  font-size: 13px;
  color: #718096;
  font-weight: 600;
}
.lshop-article-tag {
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(26, 54, 93, 0.06);
  border: 1px solid rgba(26, 54, 93, 0.12);
  color: var(--color-primary);
  font-size: 12.5px;
  font-weight: 600;
}


/* ===== Part 107: 商铺关于我们 / 联系我们页设计增强 ===== */
.lshop-about-teaser .lshop-about-lead {
  margin: 0 0 14px;
  font-size: 16px;
  line-height: 1.9;
  color: #2D3748;
}
.lshop-about-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 14px;
}
.lshop-about-chips span {
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(26,54,93,0.06);
  border: 1px solid rgba(26,54,93,0.12);
  color: var(--color-primary);
  font-size: 12.5px;
  font-weight: 600;
}
.lshop-about-teaser a,
.lshop-about-page a,
.lshop-contact-page a { color: var(--color-primary); }

.lshop-about-page,
.lshop-contact-page { display: flex; flex-direction: column; gap: 22px; }

.lshop-about-hero,
.lshop-contact-hero {
  position: relative;
  padding: 28px 28px 26px;
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(214,158,46,0.12) 0%, transparent 42%),
    linear-gradient(160deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  color: #fff;
  overflow: hidden;
}
.lshop-about-hero::after,
.lshop-contact-hero::after {
  content: '';
  position: absolute;
  right: -40px; top: -40px;
  width: 160px; height: 160px;
  border-radius: 50%;
  background: rgba(214,158,46,0.18);
  pointer-events: none;
}
.lshop-about-hero-badge {
  display: inline-flex;
  align-items: center;
  height: 26px;
  padding: 0 12px;
  margin-bottom: 12px;
  border-radius: 999px;
  background: rgba(214,158,46,0.28);
  color: var(--color-accent);
  font-size: 12px;
  font-weight: 700;
}
.lshop-about-hero-name,
.lshop-contact-hero-title {
  margin: 0 0 8px;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: 0.02em;
}
.lshop-about-hero-lead,
.lshop-contact-hero-desc,
.lshop-contact-hero-kicker {
  margin: 0;
  font-size: 14px;
  line-height: 1.7;
  color: rgba(255,255,255,0.78);
}
.lshop-contact-hero-kicker {
  margin-bottom: 8px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--color-accent);
}

.lshop-about-block,
.lshop-about-verify,
.lshop-contact-panel,
.lshop-contact-steps-wrap,
.lshop-contact-tips {
  padding: 20px 22px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.lshop-about-h {
  margin: 0 0 12px;
  font-size: 17px;
  font-weight: 800;
  color: var(--color-primary);
  padding-left: 12px;
  border-left: 3px solid var(--color-accent);
  line-height: 1.35;
}
.lshop-about-block p,
.lshop-about-verify p {
  margin: 0 0 12px;
  font-size: 15px;
  line-height: 1.9;
  color: #2D3748;
}
.lshop-about-block p:last-child,
.lshop-about-verify p:last-child { margin-bottom: 0; }

.lshop-about-pillars {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.lshop-about-pillar {
  position: relative;
  padding: 20px 16px 18px;
  background: #fff;
  border: 1px solid #E8ECF1;
  border-radius: 10px;
  box-shadow: 0 1px 4px rgba(26,54,93,0.04);
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
.lshop-about-pillar:hover {
  border-color: rgba(214,158,46,0.55);
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(26,54,93,0.08);
}
.lshop-about-pillar-n {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px; height: 28px;
  margin-bottom: 10px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}
.lshop-about-pillar h4 {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
}
.lshop-about-pillar p {
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
  color: #4A5568;
}

.lshop-about-ideas {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}
.lshop-about-ideas li {
  display: grid;
  grid-template-columns: 88px 1fr;
  gap: 12px;
  align-items: start;
  padding: 12px 14px;
  background: #F7FAFC;
  border-radius: 8px;
  border: 1px solid #EDF2F7;
}
.lshop-about-ideas strong {
  font-size: 14px;
  color: var(--color-primary);
}
.lshop-about-ideas span {
  font-size: 13.5px;
  line-height: 1.7;
  color: #4A5568;
}

.lshop-about-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.lshop-about-cta .lb-cta-primary,
.lshop-about-cta .lb-cta-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 18px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}
.lshop-about-cta .lb-cta-primary {
  background: var(--color-accent);
  color: var(--color-primary-dark);
}
.lshop-about-cta .lb-cta-ghost {
  background: #fff;
  color: var(--color-primary);
  border: 1px solid var(--color-border);
}
.lshop-about-cta .lb-cta-ghost:hover {
  border-color: var(--color-primary);
}

.lshop-contact-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.lshop-contact-card {
  padding: 20px 18px;
  background: #fff;
  border: 1px solid #E8ECF1;
  border-radius: 10px;
  border-top: 3px solid var(--color-accent);
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.lshop-contact-card h3 {
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: 800;
  color: var(--color-primary);
}
.lshop-contact-card p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.75;
  color: #4A5568;
}

.lshop-contact-dl {
  margin: 0;
  display: grid;
  gap: 0;
}
.lshop-contact-row {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px dashed #E2E8F0;
}
.lshop-contact-row:last-child { border-bottom: none; }
.lshop-contact-row dt {
  margin: 0;
  font-size: 13px;
  color: #718096;
  font-weight: 600;
}
.lshop-contact-row dd {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #1A202C;
  word-break: break-all;
}
.lshop-contact-note {
  margin: 14px 0 0;
  font-size: 13px;
  line-height: 1.7;
  color: #718096;
}

.lshop-contact-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.lshop-contact-steps li {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 14px;
  background: #F7FAFC;
  border-radius: 8px;
  border: 1px solid #EDF2F7;
  min-height: 100%;
}
.lshop-contact-steps .n {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px; height: 28px;
  border-radius: 50%;
  background: var(--color-accent);
  color: var(--color-primary-dark);
  font-size: 13px;
  font-weight: 800;
}
.lshop-contact-steps strong {
  display: block;
  margin-bottom: 4px;
  font-size: 14px;
  color: var(--color-primary);
}
.lshop-contact-steps p {
  margin: 0;
  font-size: 13px;
  line-height: 1.65;
  color: #4A5568;
}

.lshop-contact-tips ul {
  margin: 0 0 12px;
  padding-left: 18px;
  color: #4A5568;
  font-size: 13.5px;
  line-height: 1.8;
}
.lshop-contact-gsxt {
  margin: 0;
  font-size: 13.5px;
  color: #2D3748;
}

@media (max-width: 1023px) {
  .lshop-about-pillars { grid-template-columns: 1fr 1fr; }
  .lshop-contact-cards { grid-template-columns: 1fr; }
  .lshop-contact-steps { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
  .lshop-about-hero,
  .lshop-contact-hero { padding: 22px 18px; }
  .lshop-about-hero-name,
  .lshop-contact-hero-title { font-size: 20px; }
  .lshop-about-pillars,
  .lshop-contact-steps { grid-template-columns: 1fr; }
  .lshop-about-ideas li { grid-template-columns: 1fr; gap: 4px; }
  .lshop-contact-row { grid-template-columns: 1fr; gap: 4px; }
  .lshop-about-block,
  .lshop-about-verify,
  .lshop-contact-panel,
  .lshop-contact-steps-wrap,
  .lshop-contact-tips { padding: 16px; }
}


/* ===== Part 108: 商铺联系我们 — 服务区域地图 ===== */
.lshop-contact-map {
  padding: 20px 22px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(26,54,93,0.05);
}
.lshop-contact-map-hd {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 16px;
  margin-bottom: 8px;
}
.lshop-contact-map-hd .lshop-about-h { margin-bottom: 0; }
.lshop-contact-map-link {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-primary);
  text-decoration: none;
}
.lshop-contact-map-link:hover { color: var(--color-accent); }
.lshop-contact-map-meta {
  margin: 0 0 12px;
  font-size: 13px;
  color: #718096;
  line-height: 1.6;
}
.lshop-contact-map-frame {
  position: relative;
  width: 100%;
  height: 320px;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid #E2E8F0;
  background: #EDF2F7;
}
.lshop-contact-map-frame iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}
.lshop-contact-map-note {
  margin: 12px 0 0;
  font-size: 12.5px;
  line-height: 1.7;
  color: #718096;
}
@media (max-width: 767px) {
  .lshop-contact-map { padding: 16px; }
  .lshop-contact-map-frame { height: 240px; }
}

/* ===== Part 109: 商铺分类信息列表缩略图防挤压 ===== */
.lshop-site .lshop-info-row { align-items: start; }
.lshop-site .lshop-info-thumb {
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
  align-self: start;
}
.lshop-site .lshop-info-thumb img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
}
/* ===== Part 94: GSTG 管理后台 /qbsadmin/ ===== */
body.qbs-admin{
  margin:0;min-height:100vh;background:var(--color-bg);
  font-family:var(--font-base);color:var(--color-text-primary);
}
body.qbs-admin h1,body.qbs-admin h2,body.qbs-admin h3{color:var(--color-primary)}
.qbs-login{
  min-height:100vh;display:flex;align-items:center;justify-content:center;
  padding:32px 20px;
  background:linear-gradient(160deg,var(--color-primary-dark) 0%,var(--color-primary) 58%,#1b4a6e 100%);
}
.qbs-login[hidden],.qbs-app[hidden]{display:none}
.qbs-login-card{
  width:100%;max-width:420px;background:#fff;border-radius:12px;
  padding:36px 32px 28px;box-shadow:var(--shadow-lg);
}
.qbs-login-brand{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.qbs-login-brand .logo-icon,.qbs-side-brand .logo-icon{width:40px;height:40px;flex:none}
.qbs-login-brand strong{display:block;font-size:16px;color:var(--color-primary)}
.qbs-login-brand span{font-size:12px;color:var(--color-text-muted)}
.qbs-login-card h1{font-size:24px;margin:0 0 6px}
.qbs-login-sub{margin:0 0 22px;color:var(--color-text-secondary);font-size:13px}
.qbs-login-foot{margin:20px 0 0;text-align:center;font-size:12px;color:var(--color-text-muted)}
.qbs-form{display:grid;gap:14px}
.qbs-form-card{
  width:100%;box-sizing:border-box;background:#fff;border:1px solid var(--color-border);
  border-radius:10px;padding:24px;box-shadow:var(--shadow-sm);
}
.qbs-field{display:grid;gap:6px}
.qbs-field span{font-size:13px;font-weight:600;color:var(--color-primary)}
.qbs-field input,.qbs-field textarea,.qbs-search{
  width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;
  font:inherit;color:var(--color-text-primary);background:#fff;box-sizing:border-box;
}
.qbs-field input:focus,.qbs-field textarea:focus,.qbs-search:focus{
  outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(214,158,46,.14);
}
.qbs-field input[readonly]{background:#F7FAFC;color:var(--color-text-secondary)}
.qbs-captcha{display:flex;gap:10px;align-items:stretch}
.qbs-field .qbs-captcha input{
  width:auto;flex:1;min-width:0;letter-spacing:4px;text-transform:uppercase;
}
.qbs-captcha-btn{
  flex:none;width:140px;height:44px;padding:0;border:1px solid var(--color-border);
  border-radius:6px;overflow:hidden;background:#F5F7FA;cursor:pointer;
}
.qbs-captcha-btn:hover{border-color:var(--color-accent)}
.qbs-captcha-btn img{display:block;width:140px;height:44px}
.qbs-btn{
  display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 16px;
  border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid transparent;
}
.qbs-btn-primary{background:var(--color-primary);color:var(--color-accent)}
.qbs-btn-primary:hover{background:var(--color-primary-dark);color:#fff}
.qbs-btn-outline{background:#fff;color:var(--color-primary);border-color:var(--color-border)}
.qbs-btn-outline:hover{border-color:var(--color-accent);color:var(--color-accent)}
.qbs-btn-ghost{background:transparent;color:inherit;height:auto;padding:4px 8px}
.qbs-btn:disabled{opacity:.5;cursor:not-allowed}
.qbs-error{margin:0;color:var(--color-danger);font-size:13px}
.qbs-ok{margin:0;color:var(--color-success);font-size:13px}
.qbs-app{display:flex;min-height:100vh}
.qbs-side{
  width:220px;flex:none;background:var(--color-primary-dark);color:rgba(255,255,255,.78);
  display:flex;flex-direction:column;padding:18px 14px;
}
.qbs-side-brand{display:flex;align-items:center;gap:10px;color:#fff;margin:0 6px 18px}
.qbs-side-brand em{font-style:normal;font-weight:700;color:var(--color-accent)}
.qbs-nav{display:grid;gap:4px}
.qbs-nav a{
  padding:9px 12px;border-radius:6px;color:rgba(255,255,255,.8);font-size:14px;
}
.qbs-nav a:hover{background:rgba(255,255,255,.08);color:#fff}
.qbs-nav a.is-active{background:rgba(214,158,46,.16);color:var(--color-accent)}
.qbs-nav-group{display:grid;gap:2px;margin:4px 0}
.qbs-nav-toggle{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  width:100%;padding:9px 12px;border:0;border-radius:6px;background:transparent;
  color:rgba(255,255,255,.55);font:inherit;font-size:12px;font-weight:700;
  letter-spacing:.04em;text-align:left;cursor:pointer;
}
.qbs-nav-toggle::after{
  content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(-45deg);opacity:.7;flex:none;transition:transform .2s ease;
}
.qbs-nav-group.is-open > .qbs-nav-toggle{color:rgba(255,255,255,.85)}
.qbs-nav-group.is-open > .qbs-nav-toggle::after{transform:rotate(45deg)}
.qbs-nav-toggle:hover{background:rgba(255,255,255,.06);color:#fff}
.qbs-nav-body{display:none;grid-gap:2px}
.qbs-nav-group.is-open > .qbs-nav-body{display:grid}
.qbs-nav-group a{padding-left:22px;font-size:13px}
.qbs-nav-group-l3{margin:2px 0 2px 8px;padding-left:4px;border-left:1px solid rgba(255,255,255,.12)}
.qbs-nav-group-l3 > .qbs-nav-toggle{padding:7px 10px;font-size:12px}
.qbs-nav-group-l3 a{padding-left:18px;font-size:12.5px}
.qbs-shop-pick{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 14px}
.qbs-shop-pick select{min-width:240px;max-width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;font:inherit}
.qbs-shop-pick .qbs-note{margin:0}
.qbs-emoji-btn{
  width:40px;height:40px;padding:0;border:1px solid var(--color-border);border-radius:8px;
  background:#fff;font-size:22px;line-height:1;cursor:pointer;
}
.qbs-emoji-btn:hover,.qbs-emoji-btn.is-open{border-color:var(--color-accent);background:#FFFBEB}
.qbs-emoji-pop{
  position:fixed;z-index:60;width:280px;padding:10px;
  background:#fff;border:1px solid var(--color-border);border-radius:10px;
  box-shadow:0 8px 24px rgba(26,54,93,.16);
  display:grid;grid-template-columns:repeat(8,1fr);gap:6px;
}
.qbs-emoji-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}
.qbs-emoji-choice{
  width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:8px;
  background:transparent;font-size:20px;line-height:1;cursor:pointer;
}
.qbs-emoji-grid .qbs-emoji-choice{
  width:100%;height:36px;border-color:var(--color-border);background:#fff;
}
.qbs-emoji-choice:hover,.qbs-emoji-choice.is-on{
  border-color:var(--color-accent);background:#FFFBEB;
}
.qbs-cover-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.qbs-cover-preview{
  width:96px;height:96px;object-fit:cover;border-radius:8px;
  border:1px solid var(--color-border);background:#F7FAFC;
}
.qbs-thumb{
  display:block;width:56px;height:56px;object-fit:cover;border-radius:6px;
  border:1px solid var(--color-border);background:#F7FAFC;
}
.qbs-file{
  position:relative;overflow:hidden;
  display:inline-flex;align-items:center;justify-content:center;
  padding:8px 14px;border:1px solid var(--color-border);border-radius:6px;
  background:#fff;font-size:13px;font-weight:600;color:var(--color-primary);cursor:pointer;
}
.qbs-file input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.qbs-field select{
  width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;
  font:inherit;color:var(--color-text-primary);background:#fff;box-sizing:border-box;
}
.qbs-field select:focus{
  outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(214,158,46,.14);
}
.qbs-main{flex:1;min-width:0;display:flex;flex-direction:column}
.qbs-top{
  display:flex;align-items:center;gap:12px;padding:14px 24px;background:#fff;
  border-bottom:1px solid var(--color-border);
}
.qbs-top h2{margin:0;font-size:18px;flex:1}
.qbs-top-actions{display:flex;align-items:center;gap:10px}
.qbs-who{font-size:13px;color:var(--color-text-secondary)}
.qbs-menu{display:none}
.qbs-content{padding:24px;flex:1}
.qbs-banner{
  margin:0 0 16px;padding:12px 14px;border-radius:8px;font-size:13px;line-height:1.6;
  background:#FFFBEB;border:1px solid #F6E05E;color:var(--color-primary);
}
.qbs-banner.is-ok{background:#F0FFF4;border-color:#9AE6B4}
.qbs-kv{display:grid;gap:8px;margin:0}
.qbs-kv div{display:grid;grid-template-columns:88px 1fr;gap:8px;font-size:13px}
.qbs-kv dt{color:var(--color-text-muted)}
.qbs-kv dd{margin:0;color:var(--color-text-primary);font-weight:600}
.qbs-db-card{margin-bottom:16px}
.qbs-lead,.qbs-note{margin:0 0 16px;color:var(--color-text-secondary);font-size:13px;line-height:1.7}
.qbs-lead code{font-size:12px;background:#EDF2F7;padding:1px 6px;border-radius:4px}
.qbs-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.qbs-card{
  background:#fff;border:1px solid var(--color-border);border-radius:10px;padding:18px;
  box-shadow:var(--shadow-sm);display:grid;gap:6px;
}
.qbs-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md)}
.qbs-card-k{font-size:13px;color:var(--color-text-muted)}
.qbs-card strong{font-size:28px;color:var(--color-primary);line-height:1.1}
.qbs-card em{font-size:12px;font-style:normal;color:var(--color-text-secondary)}
.qbs-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.qbs-search{max-width:280px}
.qbs-filter{
  min-width:168px;padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;
  font:inherit;color:var(--color-text-primary);background:#fff;
}
.qbs-filter:focus{
  outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(214,158,46,.14);
}
.qbs-count{font-size:13px;color:var(--color-text-muted);margin-left:auto}
.qbs-table-wrap{background:#fff;border:1px solid var(--color-border);border-radius:10px;overflow:auto}
.qbs-table{width:100%;border-collapse:collapse;font-size:13px}
.qbs-table th,.qbs-table td{
  padding:10px 12px;text-align:left;border-bottom:1px solid var(--color-border);
  vertical-align:top;word-break:break-word;
}
.qbs-table th{background:#F7FAFC;color:var(--color-primary);font-weight:700;white-space:nowrap}
.qbs-ops{white-space:nowrap}
.qbs-link{color:var(--color-primary);font-weight:600;margin-right:10px;padding:0}
.qbs-link:hover{color:var(--color-accent)}
.qbs-danger{color:var(--color-danger)}
.qbs-pager{display:flex;align-items:center;gap:12px;margin-top:16px}
.qbs-sp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.qbs-sp-head .qbs-note{margin-bottom:12px}
.qbs-sp-actions{display:flex;gap:8px;flex-shrink:0}
.qbs-seg{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.qbs-seg button{
  border:1px solid var(--color-border);background:#fff;color:var(--color-text-secondary);
  border-radius:6px;padding:7px 14px;font:inherit;font-size:13px;cursor:pointer;
}
.qbs-seg button:hover{border-color:var(--color-primary);color:var(--color-primary)}
.qbs-seg-main button.is-active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}
.qbs-seg-range button{border-color:transparent;background:transparent;padding:5px 12px}
.qbs-seg-range button.is-active{background:#2F855A;color:#fff}
.qbs-sp-cards{margin-bottom:16px}
.qbs-sp-cards .qbs-card:hover{border-color:var(--color-border);box-shadow:var(--shadow-sm)}
.qbs-sp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
.qbs-sp-title{margin:0;padding:14px 16px 10px;font-size:15px;color:var(--color-primary)}
.qbs-table .qbs-num{text-align:right;white-space:nowrap}
.qbs-table .qbs-nowrap{white-space:nowrap}
.qbs-sp-pct{color:#2F855A}
.qbs-sp-url{color:var(--color-primary)}
.qbs-sp-url:hover{color:var(--color-accent)}
.qbs-sp-path{max-width:420px;word-break:break-all}
.qbs-sp-code{display:inline-block;min-width:36px;padding:1px 6px;border-radius:4px;background:#F0FFF4;color:#2F855A;font-size:12px;text-align:center}
.qbs-sp-code.is-redir{background:#FFFAF0;color:#B7791F}
.qbs-sp-code.is-bad{background:#FFF5F5;color:var(--color-danger)}
.qbs-sp-engines{padding-bottom:12px}
.qbs-sp-bar{display:grid;grid-template-columns:110px minmax(0,1fr) 120px;align-items:center;gap:12px;padding:5px 16px;font-size:13px}
.qbs-sp-bar i{display:block;height:8px;background:#EDF2F7;border-radius:4px;overflow:hidden}
.qbs-sp-bar b{display:block;height:100%;background:#38A169;border-radius:4px}
.qbs-sp-bar em{font-style:normal;color:var(--color-text-secondary);text-align:right}
@media (max-width:1023px){
  .qbs-sp-grid{grid-template-columns:1fr}
  .qbs-sp-head{flex-direction:column}
}
.qbs-modal{
  position:fixed;inset:0;background:rgba(15,36,64,.45);display:flex;align-items:flex-start;
  justify-content:center;padding:48px 16px;z-index:40;overflow:auto;
}
.qbs-modal[hidden]{display:none}
.qbs-modal-card{
  width:min(640px,100%);background:#fff;border-radius:12px;padding:20px 22px 24px;
  box-shadow:var(--shadow-lg);
}
.qbs-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.qbs-modal-head h3{margin:0;font-size:18px}
.qbs-modal-actions{display:flex;justify-content:flex-end}
.qbs-modal-card.qbs-modal-wide{width:min(860px,100%)}
.qbs-form-2col{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.qbs-form-2col > .qbs-field-full,
.qbs-form-2col > .qbs-note,
.qbs-form-2col > .qbs-modal-actions{grid-column:1 / -1}
.qbs-form-2col > .qbs-field{min-width:0}
.qbs-form-2col > .qbs-modal-actions{
  border-top:1px solid var(--color-border);padding-top:14px;margin-top:2px;
}
.qbs-form-2col > .qbs-note{margin:0}
.qbs-form-2col .qbs-emoji-grid{grid-template-columns:repeat(auto-fill,minmax(40px,1fr))}
.qbs-form-group{
  grid-column:1 / -1;margin:6px 0 -4px;padding:0 0 0 10px;border-left:3px solid var(--color-accent);
  font-size:14px;font-weight:700;color:var(--color-primary);line-height:1.3;
}
.qbs-field textarea{resize:vertical;min-height:72px}
.qbs-img-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}
.qbs-img-list:empty{display:none}
.qbs-img-item{
  position:relative;margin:0;aspect-ratio:4/3;border-radius:8px;overflow:hidden;
  border:1px solid var(--color-border);background:#F7FAFC;
}
.qbs-img-item.is-first{border-color:var(--color-accent)}
.qbs-img-item img{display:block;width:100%;height:100%;object-fit:cover}
.qbs-img-del{
  position:absolute;top:4px;right:4px;width:24px;height:24px;padding:0;border:0;border-radius:50%;
  background:rgba(15,36,64,.7);color:#fff;font-size:16px;line-height:24px;cursor:pointer;
}
.qbs-img-del:hover{background:var(--color-danger)}
.qbs-img-first,.qbs-img-badge{
  position:absolute;left:4px;bottom:4px;padding:2px 8px;border:0;border-radius:4px;
  font-size:12px;line-height:18px;
}
.qbs-img-first{background:rgba(255,255,255,.9);color:var(--color-primary);cursor:pointer}
.qbs-img-first:hover{color:var(--color-accent)}
.qbs-img-item .qbs-img-badge{background:var(--color-primary);color:var(--color-accent);font-size:12px;font-weight:600}
.qbs-empty{margin:0;padding:28px 20px;text-align:center;color:var(--color-text-secondary)}
.qbs-cat4-list{display:grid;gap:16px}
.qbs-cat4-card{
  background:#fff;border:1px solid var(--color-border);border-radius:10px;overflow:hidden;
  box-shadow:0 2px 8px rgba(26,54,93,0.06);
}
.qbs-cat4-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  padding:14px 16px;background:#F7FAFC;border-bottom:1px solid var(--color-border);
}
.qbs-cat4-title{display:flex;align-items:center;gap:10px;min-width:0}
.qbs-cat4-meta{display:grid;gap:2px;min-width:0}
.qbs-cat4-meta strong{
  display:flex;align-items:center;gap:8px;font-size:16px;color:var(--color-primary);line-height:1.3;
}
.qbs-cat4-id{font-size:12px;color:var(--color-text-secondary);word-break:break-all}
.qbs-cat4-lv{
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
  min-width:34px;height:20px;padding:0 6px;border-radius:999px;
  background:var(--color-primary);color:#fff;font-size:11px;font-weight:600;line-height:20px;
}
.qbs-cat4-lv2{background:#2B6CB0}
.qbs-cat4-lv3{background:#2F855A}
.qbs-cat4-lv4{background:var(--color-accent);color:#1A202C}
.qbs-cat4-cover{padding:12px 16px 0}
.qbs-cat4-cover img{display:block;width:120px;height:68px;object-fit:cover;border-radius:6px;border:1px solid var(--color-border)}
.qbs-cat4-empty{margin:0;padding:18px 16px;color:var(--color-text-secondary);font-size:13px}
.qbs-cat4-body{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;
  border-top:1px solid var(--color-border);
}
.qbs-cat4-l2{padding:14px 16px;border-right:1px solid var(--color-border);min-width:0}
.qbs-cat4-l2:last-child{border-right:0}
.qbs-cat4-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:10px}
.qbs-cat4-row h4,.qbs-cat4-row .qbs-cat4-l3name{margin:0;min-width:0}
.qbs-ops-inline{display:flex;flex-wrap:wrap;gap:2px 8px;justify-content:flex-end;flex:0 0 auto}
.qbs-ops-inline .qbs-link{margin:0;font-size:12px}
.qbs-cat4-l2 h4{
  display:flex;align-items:center;gap:8px;padding-left:10px;
  border-left:3px solid var(--color-primary);font-size:14px;color:var(--color-primary);
}
.qbs-cat4-l3list{display:grid;gap:10px}
.qbs-cat4-l3{display:grid;gap:6px;min-width:0}
.qbs-cat4-l3name{
  display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--color-text-primary);
}
.qbs-cat4-l4{display:flex;flex-wrap:wrap;gap:6px;padding-left:2px}
.qbs-cat4-tag{
  display:inline-flex;align-items:center;gap:4px 6px;padding:4px 8px;border-radius:6px;
  background:#F7FAFC;border:1px solid var(--color-border);font-size:12px;color:var(--color-text-primary);
}
.qbs-cat4-tag .qbs-link{margin:0;font-size:12px;line-height:1}
.qbs-cat4-tag-name{margin-right:2px}
.qbs-cat4-tag-cover{
  width:28px;height:28px;border-radius:4px;object-fit:cover;flex:0 0 auto;
  background:#E2E8F0;border:1px solid var(--color-border);
}
.qbs-cat4-muted{font-size:12px;color:var(--color-text-secondary)}
@media (max-width:1023px){
  .qbs-cat4-body{grid-template-columns:1fr}
  .qbs-cat4-l2{border-right:0;border-bottom:1px solid var(--color-border)}
  .qbs-cat4-l2:last-child{border-bottom:0}
}
.qbs-tree{display:grid;gap:12px}
.qbs-tree:empty{display:none}
.qbs-tree-l2{border:1px solid var(--color-border);border-radius:8px;background:#F7FAFC;padding:12px}
.qbs-tree-head,.qbs-tree-l3-head{display:flex;align-items:center;gap:6px;margin-bottom:10px}
.qbs-tree-head .qbs-link,.qbs-tree-l3-head .qbs-link{margin-right:0;font-size:13px;white-space:nowrap}
.qbs-tree-lv{
  flex:0 0 auto;padding:2px 8px;border-radius:999px;background:var(--color-primary);color:#fff;
  font-size:11px;font-weight:600;line-height:18px;
}
.qbs-form .qbs-tree-head .qbs-tree-l2-name{flex:1;min-width:0;font-weight:700;color:var(--color-primary)}
.qbs-form .qbs-tree-l3-head .qbs-tree-l3-name{flex:1;min-width:0;font-weight:600}
.qbs-tree-l3list{display:grid;gap:10px;padding-left:14px;border-left:2px solid #CBD5E0}
.qbs-tree-l3{background:#fff;border:1px solid var(--color-border);border-radius:8px;padding:10px}
.qbs-tree-l4list{display:grid;gap:6px;padding-left:12px;border-left:2px solid var(--color-accent)}
.qbs-tree-l4{display:grid;grid-template-columns:minmax(0,1fr) 28px;gap:6px;align-items:center}
.qbs-tree-l3 input,.qbs-tree-l4 input,.qbs-tree-head input{
  width:100%;height:36px;padding:0 10px;border:1px solid var(--color-border);border-radius:6px;
  background:#fff;font:inherit;font-size:13px;color:var(--color-text-primary);
}
.qbs-tree-l3 input:focus,.qbs-tree-l4 input:focus,.qbs-tree-head input:focus{outline:none;border-color:var(--color-accent)}
.qbs-tree-x{
  width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;
  color:var(--color-text-secondary);font-size:18px;line-height:28px;cursor:pointer;
}
.qbs-tree-x:hover{background:#FFF5F5;color:var(--color-danger)}
.qbs-tree-add3,.qbs-tree-add4{margin:8px 0 0;font-size:13px}
.qbs-tree-add3{margin-left:14px}
.qbs-tree-add4{margin-left:12px}
.qbs-tree-add{justify-self:start;margin-top:10px}
.qbs-img-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.qbs-img-tools .qbs-note{margin:0}
@media (max-width:1023px){
  .qbs-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  .qbs-form-2col{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:767px){
  .qbs-login-card{padding:28px 20px}
  .qbs-menu{display:inline-flex}
  .qbs-side{
    position:fixed;z-index:30;top:0;bottom:0;left:0;transform:translateX(-100%);
    transition:transform .2s ease;
  }
  .qbs-side.is-open{transform:none}
  .qbs-cards{grid-template-columns:minmax(0,1fr)}
  .qbs-top{padding:12px 14px}
  .qbs-content{padding:16px}
  .qbs-who{display:none}
}

/* ===== Part 95: 免费入驻申请 + 后台入驻列表 ===== */
.join-hp{
  position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;
}
.join-form-err{
  margin:0;color:var(--color-danger);font-size:13px;line-height:1.6;
}
.join-form-err[hidden]{display:none}
.qbs-st{
  display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;
  background:#EDF2F7;color:var(--color-primary);
}
.qbs-st-contacted{background:#EBF8FF;color:#2B6CB0}
.qbs-st-listed{background:#F0FFF4;color:#276749}
.qbs-st-rejected{background:#FFF5F5;color:#C53030}
.qbs-st-pending{background:#FFFBEB;color:#975A16}
.qbs-check{
  display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-primary);
  cursor:pointer;user-select:none;
}
.qbs-check input[type="checkbox"]{
  width:16px;height:16px;margin:0;padding:0;border:0;border-radius:3px;
  accent-color:var(--color-primary);flex:none;cursor:pointer;
  box-shadow:none;background:transparent;
}
.qbs-check em{font-style:normal;font-weight:600;color:var(--color-text-primary)}
.qbs-check i{font-style:normal;font-size:12px;color:var(--color-text-muted)}
.qbs-check-field .qbs-check{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  min-height:42px;padding:0 12px;border:1px solid var(--color-border);border-radius:6px;
  background:#F7FAFC;box-sizing:border-box;
}
.qbs-check-field .qbs-check:hover{border-color:var(--color-accent);background:#FFFBEB}
.qbs-sub-h{margin:6px 0 0;padding-top:12px;border-top:1px solid var(--color-border);font-size:14px;color:var(--color-primary)}
.qbs-hint{font-size:12px;color:var(--color-text-muted)}
.qbs-news-ai{margin-bottom:16px}
.qbs-news-ai-head{display:flex;flex-wrap:wrap;gap:8px 24px;padding:12px 16px;font-size:13px;color:var(--color-text-secondary)}
.qbs-news-ai-err{padding:0 16px 10px}
.qbs-ok-txt{color:var(--color-success)}
.qbs-bad-txt{color:var(--color-danger)}
.qbs-time-range{display:flex;align-items:center;gap:8px}
.qbs-time-range input{flex:1;min-width:0;padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;font:inherit}
.qbs-time-range em{font-style:normal;color:var(--color-text-muted)}
.qbs-settings-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;align-items:start}
.qbs-settings-grid .qbs-form-card{padding:20px 22px}
.qbs-settings-grid h3{margin:0}
.qbs-mail-card .qbs-modal-actions{align-items:center;justify-content:space-between;gap:12px}
.qbs-mail-card .qbs-modal-actions p{margin:0;font-size:13px}
@media (max-width:1023px){
  .qbs-settings-grid{grid-template-columns:1fr}
}
.qbs-join-kv div{grid-template-columns:132px 1fr}
.qbs-join-kv dd{font-weight:400;word-break:break-word}

/* ===== Part 110: 分类信息详情 — 后台自定义图片数 / 流程步数适配 ===== */
.lb-post-gallery.is-single{grid-template-rows:minmax(0,1fr)}
.lb-flow{grid-template-columns:repeat(var(--lb-flow-n,6),minmax(0,1fr))}
@media (max-width:1023px){
  .lb-post-gallery.is-single{grid-template-rows:minmax(180px,1fr)}
  .lb-flow{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:767px){
  .lb-post-gallery.is-single{grid-template-rows:auto}
  .lb-flow{grid-template-columns:minmax(0,1fr)}
}

/* ===== Part 111: 后台内容采集（列表→详情→待发布） ===== */
.qbs-collect{display:grid;gap:18px;width:100%;max-width:100%}
.qbs-collect .qbs-form-card{
  max-width:none;width:100%;box-sizing:border-box;
}
.qbs-collect .qbs-form-card h3{margin:0 0 8px;font-size:17px;color:var(--color-primary)}
.qbs-collect .qbs-toolbar{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:12px;
}
.qbs-collect .qbs-table-wrap{overflow:auto;border:1px solid var(--color-border);border-radius:8px}
.qbs-collect .qbs-table{width:100%;border-collapse:collapse;font-size:13px;background:#fff}
.qbs-collect .qbs-table th,
.qbs-collect .qbs-table td{
  padding:10px 12px;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;
}
.qbs-collect .qbs-table th{
  background:#F7FAFC;color:var(--color-primary);font-weight:600;white-space:nowrap;
}
.qbs-collect .qbs-table a{color:var(--color-primary);text-decoration:underline}
.qbs-collect .qbs-st-published{background:#F0FFF4;color:#276749}
.qbs-collect #qcRunMsg{margin-left:8px}
.qbs-collect .qbs-url-cell{
  max-width:280px;word-break:break-all;font-size:12px;
}
.qbs-collect .qbs-actions{
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;white-space:nowrap;
}
.qbs-collect .qbs-check-field{align-content:start}
.qbs-field input[type="checkbox"]{
  width:16px;height:16px;padding:0;border:0;box-shadow:none;accent-color:var(--color-primary);
}
.qbs-area-dists{
  display:flex;flex-wrap:wrap;gap:8px;padding:4px 0 2px;
}
.qbs-area-pill{
  display:inline-flex;align-items:center;gap:6px;padding:6px 10px;
  background:#F7FAFC;border:1px solid var(--color-border);border-radius:999px;
  font-size:13px;color:var(--color-text);
}
.qbs-area-pill em{font-style:normal;font-weight:600;color:var(--color-primary)}
.qbs-area-pill small{color:#718096;font-size:11px}
.qbs-area-pill .qbs-link{font-size:12px;padding:0}
.visually-hidden{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* 信息管理：四级分类可筛选下拉 */
.qbs-cat-pick-field{position:relative}
.qbs-cat-pick{position:relative}
.qbs-cat-pick-input{
  width:100%;box-sizing:border-box;height:40px;padding:0 12px;
  border:1px solid var(--color-border);border-radius:6px;background:#fff;
  font:inherit;color:var(--color-text);
}
.qbs-cat-pick-input:focus{
  outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(26,54,93,0.12);
}
.qbs-cat-pick-list{
  position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:40;
  max-height:280px;overflow:auto;background:#fff;
  border:1px solid var(--color-border);border-radius:8px;
  box-shadow:0 8px 24px rgba(26,54,93,0.12);
}
.qbs-cat-pick-opt{
  display:grid;gap:2px;width:100%;padding:10px 12px;border:0;border-bottom:1px solid #EDF2F7;
  background:#fff;text-align:left;cursor:pointer;font:inherit;color:inherit;
}
.qbs-cat-pick-opt:last-child{border-bottom:0}
.qbs-cat-pick-opt:hover,.qbs-cat-pick-opt:focus{background:#F7FAFC;outline:none}
.qbs-cat-pick-opt strong{font-size:14px;color:var(--color-primary)}
.qbs-cat-pick-opt span{font-size:12px;color:var(--color-text-secondary);line-height:1.4}
.qbs-cat-pick-empty{padding:14px 12px;font-size:13px;color:var(--color-text-secondary)}
.qbs-table .qbs-cat-path{
  max-width:280px;font-size:12px;line-height:1.45;color:var(--color-text-secondary);
  word-break:break-all;
}

/* life list: text-only cards + pager */
.classified-list .classified-item > .item-image{display:none}
.classified-list .classified-item{
  display:block;gap:0;
}
.classified-list .classified-item .item-content{width:100%;min-width:0}
.classified-list + .pagination,
#lb-pagination{
  margin-top:20px;display:flex;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center;
}

/* life list: L2/L3/L4 subcat filters */
.lb-subcats{
  display:flex;flex-direction:column;gap:8px;
  margin:0 0 16px;padding:12px 14px;
  background:#fff;border:1px solid var(--color-border);border-radius:10px;
}
.lb-subcats[hidden]{display:none}
.cf-grid .cf-empty{
  grid-column:1/-1;margin:0;padding:32px 16px;text-align:center;color:#718096;font-size:14px;
}
.classified-list .lb-empty{
  margin:0;padding:48px 16px;text-align:center;color:#718096;font-size:14px;
  background:#fff;border:1px dashed var(--color-border);border-radius:8px;
}
.lb-subcat-row{
  display:flex;align-items:flex-start;gap:10px;
}
.lb-subcat-label{
  flex:0 0 36px;margin-top:5px;
  font-size:12px;font-weight:600;color:var(--color-text-secondary);line-height:1.2;
}
.lb-subcat-pills{
  display:flex;flex-wrap:wrap;gap:6px;min-width:0;flex:1;
}
.lb-subcat-pill{
  display:inline-flex;align-items:center;height:28px;padding:0 12px;
  font-size:12.5px;color:var(--color-text-secondary);text-decoration:none;
  background:#F7FAFC;border:1px solid var(--color-border);border-radius:999px;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.lb-subcat-pill:hover{
  color:var(--color-primary);border-color:var(--color-primary);background:#F0F7FF;
}
.lb-subcat-pill.active{
  color:#fff;background:var(--color-primary);border-color:var(--color-primary);font-weight:600;
}
@media (max-width:767px){
  .lb-subcat-row{flex-direction:column;gap:6px}
  .lb-subcat-label{flex-basis:auto;margin-top:0}
}

/* life list: footer CTA bottom-right */
.classified-list .classified-item .item-footer{
  display:flex;justify-content:space-between;align-items:flex-end;gap:12px;
  margin-top:12px;padding-top:12px;border-top:1px dashed var(--color-border);
}
.classified-list .classified-item .item-footer-left{
  display:flex;flex-direction:column;gap:4px;min-width:0;
}
.classified-list .classified-item .item-footer-right{
  display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;
}
.classified-list .classified-item .item-verify{
  font-size:12px;color:#A0AEC0;
}
.classified-list .classified-item .contact-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:96px;height:34px;padding:0 16px;
  font-size:13px;font-weight:600;line-height:1;text-decoration:none;
  color:var(--color-primary);background:#fff;
  border:1px solid var(--color-primary);border-radius:6px;
  box-shadow:0 1px 2px rgba(26,54,93,0.06);
  transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.classified-list .classified-item .contact-btn:hover{
  color:#fff;background:var(--color-primary);border-color:var(--color-primary);
  box-shadow:0 4px 12px rgba(26,54,93,0.18);transform:translateY(-1px);
}
.classified-list .classified-item .contact-btn:active{
  transform:translateY(0);box-shadow:0 1px 2px rgba(26,54,93,0.1);
}
@media (max-width:767px){
  .classified-list .classified-item .item-footer{
    align-items:stretch;
  }
  .classified-list .classified-item .item-footer-right{
    align-items:stretch;
  }
  .classified-list .classified-item .contact-btn{
    width:100%;min-width:0;
  }
}

/* ---------- Part 87: 工厂待采集队列 ---------- */
.qbs-fac-q-stats{
  display:flex;flex-wrap:wrap;gap:10px 18px;margin:12px 0 8px;
  font-size:13.5px;color:#4A5568;
}
.qbs-fac-q-stats b{color:#1A202C;font-weight:700;margin-left:4px}
.qbs-fac-queue .qbs-toolbar{gap:10px;flex-wrap:wrap}

/* ---------- Part 87: 资讯内容列表（综合筛选 + 前台链接 + 访问量） ---------- */
.qbs-news-toolbar{
  display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px 16px;
}
.qbs-news-filters{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:1 1 520px;min-width:0;
}
.qbs-news-filters .qbs-search{min-width:180px;flex:1 1 200px}
.qbs-news-filters .qbs-filter{min-width:110px}
.qbs-news-filters .qbs-date{min-width:132px}
.qbs-news-filters .qbs-mark-filter{min-width:96px;max-width:120px}
.qbs-filter-sep{font-size:12px;color:#A0AEC0;padding:0 2px}
.qbs-news-toolbar-right{
  display:flex;align-items:center;gap:12px;flex:0 0 auto;
}
.qbs-news-table th{white-space:nowrap;font-size:13px;color:#4A5568}
.qbs-news-table td{vertical-align:middle;font-size:13.5px}
.qbs-th-sort{
  display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;
  font:inherit;font-weight:700;color:inherit;cursor:pointer;
}
.qbs-th-sort i{font-style:normal;font-size:11px;color:#A0AEC0;font-weight:400}
.qbs-news-title-cell{min-width:220px;max-width:420px}
.qbs-news-title-cell strong{
  display:block;font-size:14px;font-weight:600;color:#1A202C;line-height:1.4;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.qbs-news-slug{
  display:block;margin-top:3px;font-size:12px;color:#A0AEC0;
  font-family:ui-monospace,Consolas,monospace;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.qbs-pill{
  display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;
  line-height:1.4;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.qbs-pill-cat{background:#E6FFFA;color:#234E52}
.qbs-st-news-published{background:#F0FFF4;color:#276749}
.qbs-st-news-draft{background:#EDF2F7;color:#4A5568}
.qbs-st-news-off{background:#FFF5F5;color:#C53030}
.qbs-news-ops{display:flex;align-items:center;gap:6px}
.qbs-icon-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;padding:0;border:1px solid #E2E8F0;border-radius:6px;
  background:#F7FAFC;color:#4A5568;font-size:13px;line-height:1;text-decoration:none;
  cursor:pointer;box-sizing:border-box;
}
.qbs-icon-btn:hover{border-color:#CBD5E0;background:#EDF2F7;color:#1A365D}
a.qbs-icon-btn{color:#3182CE}
a.qbs-icon-btn:hover{color:#2B6CB0}
.qbs-icon-btn.qbs-icon-danger{color:#E53E3E}
.qbs-icon-btn.qbs-icon-danger:hover{background:#FFF5F5;border-color:#FEB2B2;color:#C53030}
.qbs-icon-btn.is-disabled{
  opacity:0.35;cursor:not-allowed;pointer-events:none;
}
@media (max-width:1023px){
  .qbs-news-title-cell{max-width:240px}
  .qbs-news-filters .qbs-search{flex:1 1 100%}
}

/* ---------- Part 86: 资讯分类 AI 调度表 ---------- */
.qbs-news-cats-table th{white-space:nowrap;font-size:13px;color:#4A5568}
.qbs-news-cats-table td{vertical-align:middle;font-size:13.5px}
.qbs-nc-cat{min-width:160px}
.qbs-nc-cat strong{display:block;font-size:14px;font-weight:600;color:#1A202C;line-height:1.35}
.qbs-nc-slug{display:block;margin-top:3px;font-size:12px;color:#A0AEC0;font-family:ui-monospace,Consolas,monospace}
.qbs-nc-kb{max-width:180px;color:#718096;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qbs-nc-ai{white-space:nowrap}
.qbs-nc-switch{
  display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none;
}
.qbs-nc-switch input{width:16px;height:16px;accent-color:#38A169;cursor:pointer}
.qbs-nc-ai-lab{font-size:13px;color:#4A5568}
.qbs-nc-interval{
  display:flex;align-items:center;gap:6px;white-space:nowrap;color:#718096;
}
.qbs-nc-mins{
  width:72px;height:32px;padding:0 8px;text-align:center;
  border:1px solid var(--color-border);border-radius:6px;font-size:13px;
  background:#fff;color:#1A202C;
}
.qbs-nc-mins:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(26,54,93,0.12)}
.qbs-nc-last{font-size:12.5px;color:#718096;white-space:nowrap;font-variant-numeric:tabular-nums}
.qbs-nc-ops{white-space:nowrap}
.qbs-nc-act{
  display:inline-flex;align-items:center;gap:2px;margin-right:8px;padding:0;
  border:none;background:none;cursor:pointer;font-size:13px;line-height:1.4;
}
.qbs-nc-gen{color:#DD6B20}
.qbs-nc-gen:hover{color:#C05621;text-decoration:underline}
.qbs-nc-edit{color:#3182CE}
.qbs-nc-edit:hover{color:#2B6CB0;text-decoration:underline}
.qbs-nc-del{color:#E53E3E}
.qbs-nc-del:hover{text-decoration:underline}
.qbs-ai-warn{color:#C05621 !important}
@media (max-width:1023px){
  .qbs-nc-kb{max-width:100px}
}

/* ---------- Part 85: AI 内容生成（双引擎切换） ---------- */
.qbs-ai-page{display:flex;flex-direction:column;gap:16px;max-width:920px}
.qbs-ai-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  margin:0 0 4px;
}
.qbs-ai-head-text h3{
  margin:0 0 6px;font-size:22px;font-weight:700;color:#1A202C;line-height:1.3;
}
.qbs-ai-head-text .qbs-note{margin:0;max-width:620px;line-height:1.55}
.qbs-btn-ai-save{
  flex-shrink:0;display:inline-flex;align-items:center;gap:6px;
  height:40px;padding:0 18px;border:none;border-radius:8px;cursor:pointer;
  font-size:14px;font-weight:600;color:#fff;
  background:#DD6B20;box-shadow:0 2px 8px rgba(221,107,32,0.28);
  transition:background .2s ease,transform .2s ease,box-shadow .2s ease;
}
.qbs-btn-ai-save:hover{
  background:#C05621;box-shadow:0 4px 12px rgba(221,107,32,0.35);transform:translateY(-1px);
}
.qbs-ai-section h4{margin:0 0 6px;font-size:16px;font-weight:700;color:#1A202C}
.qbs-ai-section > .qbs-note{margin:0 0 14px}
.qbs-ai-engines{
  display:grid;grid-template-columns:1fr 1fr;gap:12px;
}
.qbs-ai-engine{
  position:relative;display:flex;align-items:flex-start;gap:12px;
  width:100%;padding:16px 16px 14px;text-align:left;cursor:pointer;
  background:#fff;border:1.5px solid var(--color-border);border-radius:12px;
  transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.qbs-ai-engine:hover{border-color:#A0AEC0}
.qbs-ai-engine.is-active{
  background:#F0FFF4;border-color:#38A169;
  box-shadow:0 0 0 1px rgba(56,161,105,0.2);
}
.qbs-ai-engine-badge{
  position:absolute;top:10px;right:10px;
  padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;
  color:#276749;background:#C6F6D5;
}
.qbs-ai-engine-radio{
  flex:0 0 18px;width:18px;height:18px;margin-top:2px;
  border:2px solid #CBD5E0;border-radius:50%;
  background:#fff;box-sizing:border-box;
}
.qbs-ai-engine.is-active .qbs-ai-engine-radio{
  border-color:#38A169;
  background:radial-gradient(circle at center,#38A169 0 45%,#fff 48%);
}
.qbs-ai-engine-body{display:flex;flex-direction:column;gap:4px;min-width:0;padding-right:52px}
.qbs-ai-engine-body strong{font-size:15px;font-weight:700;color:#1A202C}
.qbs-ai-engine-body em{font-style:normal;font-size:12px;color:#718096;font-family:ui-monospace,Consolas,monospace}
.qbs-ai-engine-body small{font-size:12.5px;color:#4A5568;line-height:1.4}
.qbs-ai-advanced{margin-bottom:8px}
@media (max-width:767px){
  .qbs-ai-head{flex-direction:column;align-items:stretch}
  .qbs-btn-ai-save{width:100%;justify-content:center}
  .qbs-ai-engines{grid-template-columns:1fr}
  .qbs-ai-engine-body{padding-right:64px}
}

/* ---------- Part 90: 会员后台 ---------- */
.member-dash{max-width:960px;margin:0 auto 48px}
.member-dash-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}
.member-dash-eyebrow{margin:0 0 6px;font-size:12px;letter-spacing:2px;color:#D69E2E;font-weight:700;text-transform:uppercase}
.member-dash-head h1{margin:0;font-size:28px;color:#1A365D}
.member-dash-sub{margin:8px 0 0;color:#4A5568;font-size:14px}
.member-dash-status{flex-shrink:0;padding:8px 14px;border-radius:999px;background:#EBF8FF;color:#2B6CB0;font-size:13px;font-weight:700}
.member-dash-status[data-status="listed"]{background:#F0FFF4;color:#276749}
.member-dash-status[data-status="rejected"]{background:#FFF5F5;color:#C53030}
.member-dash-status[data-status="contacted"]{background:#FFFAF0;color:#C05621}
.member-dash-err{padding:14px 16px;border-radius:8px;background:#FFF5F5;color:#C53030;border:1px solid #FEB2B2}
.member-dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.member-dash-card{background:#fff;border:1px solid #E2E8F0;border-radius:8px;padding:20px 22px;box-shadow:0 2px 8px rgba(26,54,93,0.06)}
.member-dash-card h2{margin:0 0 14px;font-size:16px;color:#1A365D}
.member-dash-card-wide{grid-column:1/-1}
.member-dash-dl{margin:0}
.member-dash-dl > div{display:flex;gap:12px;padding:8px 0;border-bottom:1px dashed #EDF2F7}
.member-dash-dl > div:last-child{border-bottom:0}
.member-dash-dl dt{width:88px;flex-shrink:0;color:#718096;font-size:13px}
.member-dash-dl dd{margin:0;color:#1A202C;font-weight:600;word-break:break-all}
.member-dash-next{margin:0 0 16px;padding-left:18px;color:#4A5568;line-height:1.7;font-size:14px}
.member-dash-actions{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width:767px){
  .member-dash-head{flex-direction:column}
  .member-dash-grid{grid-template-columns:1fr}
  .member-dash-head h1{font-size:22px}
}

