@charset "UTF-8";
/**
 * 养老人才网 - 2025-2026 现代化设计系统
 * 基于 BOSS直聘/猎聘 设计语言 + 液态玻璃美学
 * 主色#d4380d + 辅助色#1677ff + 中性色体系
 * CSS变量统一在 global.css :root 中定义
 */

:root {
  /* 容器 - 仅 modern-design 专有变量 */
  --container-width: 1200px;
  --container-max: 1200px;
  --container-pad: 20px;
}

/* ========== 全局基础重置 ========== */
html {
  scroll-behavior: smooth;
  -webkit-tap-highlight-color: transparent;
}

body {
  font-family: var(--font-family);
  color: var(--color-text-body);
  font-size: var(--font-size-base);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: var(--color-bg-page);
}

/* ========== 微交互动画系统 ========== */
/* 卡片hover上浮 */
.job-card, .resume-card, .company-card, .news-featured {
  transition: transform var(--transition-normal), box-shadow var(--transition-normal);
}
.job-card:hover, .resume-card:hover, .company-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-card-hover);
}
/* 按钮按压反馈 */
.btn-post-job, .search-submit-btn, .search-type-tab,
button[type="submit"], .uc-btn {
  transition: all var(--transition-fast);
}
.btn-post-job:active, .search-submit-btn:active, .uc-btn:active {
  transform: scale(0.97);
}
/* 链接hover下划线动画 */
.section-more, .category-submenu-grid a {
  position: relative;
}
.section-more::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--color-primary);
  transition: width var(--transition-normal);
}
.section-more:hover::after {
  width: 100%;
}
/* 骨架屏加载动画 */
@keyframes shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}
.skeleton {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
  border-radius: var(--radius-sm);
}
/* 渐入动画 */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}


/* ========== 顶部信息栏 ========== */
.top-info-bar {
  background: var(--color-bg-glass);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--color-border-light);
  height: 36px;
  line-height: 36px;
  font-size: var(--font-size-xs);
  position: relative;
  z-index: var(--z-sticky);
}
.top-info-inner {
  max-width: var(--container-width);
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 var(--space-xl);
}
.top-info-left {
  color: var(--color-text-light);
  font-size: var(--font-size-xs);
}
.top-info-right {
  display: flex;
  align-items: center;
  gap: 2px;
}
.top-info-right a {
  color: var(--color-text-muted);
  padding: 0 8px;
  transition: color var(--transition-fast);
  font-size: var(--font-size-xs);
  line-height: 36px;
}
.top-info-right a:hover {
  color: var(--color-primary);
}
.top-info-right .divider {
  color: var(--color-border);
  margin: 0 2px;
}
.top-info-right .reg-link {
  color: var(--color-primary);
  font-weight: 500;
}
.top-info-right .user-info {
  color: var(--color-text-heading);
  font-weight: 500;
  margin-right: 4px;
}

/* ========== 主导航栏 ========== */
.main-nav {
  background: rgba(255,255,255,0.92);
  height: 60px;
  position: sticky;
  top: 0;
  z-index: var(--z-sticky);
  box-shadow: 0 1px 12px rgba(0,0,0,0.08);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(0,0,0,0.04);
  transition: box-shadow 0.3s ease;
}
.main-nav-inner {
  max-width: var(--container-width);
  margin: 0 auto;
  display: flex;
  align-items: center;
  height: 60px;
  padding: 0 var(--space-xl);
  gap: var(--space-lg);
}
.nav-logo {
  margin-right: 24px;
  flex-shrink: 0;
}
.nav-logo img {
  height: 38px;
  vertical-align: middle;
}
.nav-menu {
  display: flex;
  align-items: center;
  gap: 0;
  flex: 1;
}
.nav-menu a {
  font-size: var(--font-size-lg);
  color: var(--color-text-body);
  padding: 0 20px;
  height: 60px;
  line-height: 60px;
  transition: all var(--transition-fast);
  position: relative;
  white-space: nowrap;
  font-weight: 500;
  letter-spacing: 0.5px;
}
.nav-menu a:hover {
  color: var(--color-primary);
}
/* 当前页高亮 - 胶囊背景 */
.nav-menu a.gloasel {
  color: var(--color-primary);
  font-weight: 600;
  background: var(--color-primary-bg);
  border-radius: 0 0 var(--radius-md) var(--radius-md);
}
.nav-menu a.gloasel::after {
  content: '';
  position: absolute;
  bottom: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 20px;
  height: 3px;
  background: var(--color-primary);
  border-radius: 2px;
}

/* 自定义导航链接（外部站点） */
.nav-menu a.nav-item-custom {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  position: relative;
  white-space: nowrap;
  color: var(--color-primary);
  font-weight: 600;
}
.nav-menu a.nav-item-custom:hover {
  opacity: 0.85;
}
.nav-menu a.nav-item-custom .nav-ext-icon {
  width: 10px;
  height: 10px;
  opacity: 0.5;
  margin-left: 1px;
  flex-shrink: 0;
}
.nav-menu a.nav-item-custom:hover .nav-ext-icon {
  opacity: 0.8;
}
.nav-actions {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  flex-shrink: 0;
}
/* 发布按钮 - 渐变圆角 */
.btn-post-job {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 38px;
  padding: 0 24px;
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-gradient) 100%);
  color: #fff;
  border-radius: var(--radius-pill);
  font-size: var(--font-size-base);
  font-weight: 600;
  transition: all var(--transition-normal);
  text-decoration: none;
  box-shadow: 0 2px 8px rgba(212,56,13,0.2);
  letter-spacing: 0.5px;
}
.btn-post-job:hover {
  box-shadow: 0 4px 16px rgba(212,56,13,0.35);
  transform: translateY(-1px);
  color: #fff;
}
.btn-post-job:active {
  transform: scale(0.97);
  box-shadow: 0 2px 8px rgba(212,56,13,0.2);
}
/* 适老化切换按钮 */
.elder-mode-toggle {
  background: none;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  padding: 6px 10px;
  cursor: pointer;
  color: var(--color-text-muted);
  display: flex;
  align-items: center;
  transition: all var(--transition-fast);
}
.elder-mode-toggle:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: var(--color-primary-bg);
}
.elder-mode .elder-mode-toggle {
  background: var(--color-primary);
  color: #fff;
  border-color: var(--color-primary);
}

/* ========== 汉堡菜单 ========== */
.nav-hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  cursor: pointer;
  background: none;
  border: none;
  padding: 8px;
  gap: 5px;
  z-index: 1000;
}
.nav-hamburger span {
  display: block;
  width: 22px;
  height: 2px;
  background: var(--color-text-heading);
  border-radius: 2px;
  transition: all 0.3s ease;
}
.nav-hamburger.open span:nth-child(1) {
  transform: rotate(45deg) translate(5px, 5px);
}
.nav-hamburger.open span:nth-child(2) {
  opacity: 0;
}
.nav-hamburger.open span:nth-child(3) {
  transform: rotate(-45deg) translate(5px, -5px);
}

/* ========== Hero 搜索区域 ========== */
.hero-search {
  background: url('/static/img/hero-bg.png') center center / cover no-repeat;
  padding: 48px 0 44px;
  position: relative;
  overflow: hidden;
  min-height: 280px;
}
/* 蒙版 - 中间深两侧浅，保留两侧背景图可见 */
.hero-search::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 55% 80% at 50% 50%, rgba(180,60,20,0.38) 0%, transparent 100%),
    linear-gradient(180deg, rgba(180,60,20,0.15) 0%, rgba(160,45,15,0.18) 100%);
  pointer-events: none;
}
/* 右上装饰光晕 - 增加层次感 */
.hero-search::after {
  content: '';
  position: absolute;
  top: -10%;
  right: 5%;
  width: 350px;
  height: 350px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 70%);
  pointer-events: none;
}
.hero-search-inner {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--space-xl);
  position: relative;
  z-index: 1;
}
/* 无统计区域时缩小 hero-search 避免空白 */
.hero-search.no-stats {
  padding: 48px 0 56px; /* 底部 28px → 56px，增加呼吸感 */
  min-height: auto;
}
.hero-search.no-stats .hot-tags {
  margin-bottom: 0;
}
.hero-subtitle {
  text-align: center;
  color: rgba(255, 255, 255, 0.55); /* 降对比度：让搜索框成为唯一 L1 焦点 */
  font-size: 14px;
  font-weight: 400;
  margin: 6px 0 18px 0;
  letter-spacing: 1.5px;
  text-shadow: 0 1px 3px rgba(0,0,0,0.3);
}
/* 视觉主标题 */
.hero-title {
  text-align: center;
  color: #fff;
  font-size: 32px;
  font-weight: 800;
  margin: 0 0 24px 0; /* 标题与搜索框间距：4px → 24px，增加呼吸感 */
  letter-spacing: 3px;
  text-shadow: 0 2px 8px rgba(0,0,0,0.35);
  line-height: 1.2;
}
/* 信任标签（弱化的0费用 + 平台保障） */
.hero-trust-tags {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 14px 0 16px 0;
  flex-wrap: wrap;
}
.hero-trust-tags .trust-tag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  color: rgba(255,255,255,0.65); /* 降对比度：信任标签弱化为 L3 背景 */
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.5px;
}
.hero-trust-tags .trust-tag-dot {
  color: rgba(255,255,255,0.4);
  font-size: 12px;
}
.hero-industry-icons {
  display: flex;
  justify-content: center;
  gap: 32px;
  margin-bottom: 12px;
}
.hero-industry-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  color: rgba(255, 255, 255, 0.7);
  transition: all var(--transition-normal);
}
.hero-industry-icon svg {
  width: 28px;
  height: 28px;
  transition: all var(--transition-normal);
}
.hero-industry-icon span {
  font-size: 12px;
  white-space: nowrap;
}
.hero-industry-icon:hover {
  color: rgba(255, 255, 255, 0.95);
  transform: translateY(-2px);
}
.hero-industry-icon:hover svg {
  color: var(--color-primary);
}
/* 搜索类型切换 - 胶囊按钮组 */
.search-type-tabs {
  display: flex;
  justify-content: center;
  gap: 4px;
  margin-bottom: 14px;
}
.search-type-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 28px;
  border-radius: var(--radius-pill);
  font-size: var(--font-size-md);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.8);
  background: rgba(255, 255, 255, 0.15);
  border: none;
  cursor: pointer;
  transition: all var(--transition-normal);
  letter-spacing: 1px;
}
.search-type-tab:hover {
  background: rgba(255, 255, 255, 0.3);
  color: #fff;
}
.search-type-tab.active {
  background: var(--color-primary);
  color: #fff;
  font-weight: 600;
  box-shadow: 0 2px 12px rgba(255, 68, 0, 0.25);
}
/* 搜索框容器 */
.search-box-wrapper {
  display: flex;
  align-items: center;
  max-width: 720px;
  margin: 0 auto;
  background: var(--color-bg-card);
  border-radius: var(--radius-xl);
  box-shadow: 0 8px 32px rgba(0,0,0,0.12);
  overflow: hidden;
  transition: box-shadow var(--transition-normal), transform var(--transition-normal);
  position: relative;
}
.search-box-wrapper:focus-within {
  box-shadow: 0 12px 40px rgba(0,0,0,0.18);
  /* 去掉 scale(1.01)：1% 缩放肉眼不可见，保留阴影加深即可 */
}
.search-type-select {
  display: flex;
  align-items: center;
  padding: 0 16px 0 20px;
  height: 56px;
  font-size: var(--font-size-md);
  color: var(--color-text-body);
  cursor: pointer;
  border-right: 1px solid var(--color-border-light);
  white-space: nowrap;
  gap: 4px;
  transition: color var(--transition-fast);
  position: relative;
  user-select: none;
}
.search-type-select:hover {
  color: var(--color-primary);
}
.search-type-select .arrow-icon {
  transition: transform var(--transition-fast);
}
.search-type-select:hover .arrow-icon {
  transform: rotate(180deg);
}
/* 搜索类型下拉 */
.search-type-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  background: var(--color-bg-card);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--color-border-light);
  overflow: hidden;
  z-index: var(--z-dropdown);
  min-width: 140px;
  display: none;
  animation: dropdownFadeIn 0.2s ease;
}
.search-type-dropdown.show {
  display: block;
}
.search-type-dropdown a {
  display: block;
  padding: 10px 20px;
  font-size: var(--font-size-base);
  color: var(--color-text-body);
  transition: all var(--transition-fast);
  text-decoration: none;
}
.search-type-dropdown a:hover {
  background: var(--color-primary-bg);
  color: var(--color-primary);
}
@keyframes dropdownFadeIn {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: translateY(0); }
}
/* 搜索输入框 */
.search-input-wrapper {
  flex: 1;
  position: relative;
}
.search-input-wrapper input {
  width: 100%;
  height: 56px;
  border: none;
  outline: none;
  padding: 0 16px;
  font-size: var(--font-size-lg);
  color: var(--color-text-heading);
  background: transparent;
  font-family: var(--font-family);
}
.search-input-wrapper input::placeholder {
  color: var(--color-text-placeholder);
}
/* 搜索按钮 - 实心深橙，消除右侧白边 */
.search-submit-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 56px;
  background: linear-gradient(135deg, #e63900 0%, #f40 50%, #ff5722 100%);
  border: none;
  border-radius: 0 var(--radius-xl) var(--radius-xl) 0;
  cursor: pointer;
  transition: all var(--transition-fast);
  flex-shrink: 0;
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.08);
}
.search-submit-btn:hover {
  background: linear-gradient(135deg, #d63000 0%, #e63900 50%, #f40 100%);
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.15), 0 4px 12px rgba(230, 57, 0, 0.35);
}
.search-submit-btn:active {
  transform: scale(0.96);
}
.search-submit-btn svg {
  width: 24px;
  height: 24px;
  color: #fff;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.2));
}
/* 热门搜索标签 */
.hot-tags {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
  justify-content: center;
}
.hot-tags-label {
  color: rgba(255, 255, 255, 0.6);
  font-size: var(--font-size-sm);
  margin-right: 4px;
}
.hot-tags a {
  display: inline-flex;
  align-items: center;
  padding: 4px 14px;
  border-radius: var(--radius-pill);
  font-size: var(--font-size-sm);
  color: rgba(255, 255, 255, 0.85);
  background: rgba(255, 255, 255, 0.12);
  text-decoration: none;
  transition: all var(--transition-fast);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
.hot-tags a:hover {
  background: rgba(255, 255, 255, 0.25);
  color: #fff;
  transform: translateY(-1px);
}
.hot-tags a.tag-more {
  background: transparent;
  color: rgba(255, 255, 255, 0.5);
}
.hot-tags a.tag-more:hover {
  color: rgba(255, 255, 255, 0.85);
  background: transparent;
}

/* 统计条 - 细线分隔符避免遮挡背景人物 */
.hero-stats-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: 18px;
  padding-top: 14px;
  position: relative;
}
.hero-stats-bar::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 200px;
  height: 1px;
  background: rgba(255, 255, 255, 0.2);
}
.hero-stat-item {
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.hero-stat-num {
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  letter-spacing: -0.5px;
  text-shadow: 0 1px 4px rgba(0,0,0,0.3);
}
.hero-stat-label {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.7);
}
/* 今日新增高亮 */
.hero-stat-highlight .hero-stat-num {
  color: #f9c74f;
  text-shadow: 0 1px 6px rgba(249,199,79,0.4);
}
.hero-stat-highlight .hero-stat-label {
  color: rgba(249,199,79,0.85);
}
.hero-stat-divider {
  width: 12px;
  height: 0.5px;
  background: rgba(255, 255, 255, 0.18);
}
/* 实时投递动态条 */
.live-feed {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  padding: 6px 14px;
  background: rgba(255,255,255,0.08);
  border-radius: 20px;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255,255,255,0.1);
  overflow: hidden;
}
.live-feed-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #4cd964;
  flex-shrink: 0;
  animation: live-dot-pulse 1.5s ease-in-out infinite;
}
@keyframes live-dot-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.3; }
}
.live-feed-track {
  flex: 1;
  overflow: hidden;
  height: 20px;
  position: relative;
}
.live-feed-content {
  display: inline-block;
  white-space: nowrap;
  font-size: 12px;
  line-height: 20px;
  color: rgba(255,255,255,0.75);
  animation: live-feed-scroll 60s linear infinite;
}
.live-feed-content span {
  display: inline-block;
  margin-right: 40px;
}
.live-feed-content span b {
  color: rgba(255,255,255,0.95);
  font-weight: 500;
}
@keyframes live-feed-scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.hero-stat-cta {
  display: inline-flex;
  align-items: center;
  padding: 4px 16px;
  border-radius: var(--radius-pill);
  font-size: 13px;
  font-weight: 600;
  color: #fff;
  background: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.3);
  text-decoration: none;
  transition: all var(--transition-fast);
  margin-left: 8px;
}
.hero-stat-cta:hover {
  background: rgba(255,255,255,0.25);
  border-color: rgba(255,255,255,0.5);
  transform: translateY(-1px);
}

/* ========== 分类导航条（独立区块） ========== */
.category-nav-bar {
  background: var(--color-bg-card);
  border-top: 3px solid transparent;
  background-image: linear-gradient(var(--color-bg-card), var(--color-bg-card)), linear-gradient(to right, rgba(212,56,13,0.25), rgba(212,56,13,0.03));
  background-origin: border-box;
  background-clip: padding-box, border-box;
  border-bottom: 1px solid var(--color-border-light);
  padding: 12px 0;
}
.category-nav-inner {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--space-xl);
  display: flex;
  align-items: center;
  gap: 24px;
}
.category-nav-icons {
  display: flex;
  gap: 20px;
  flex: 1; /* 占满整行（chip 隐藏后独占一行） */
  justify-content: center; /* 8 个图标居中显示，视觉协调 */
}
.category-nav-icon-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  text-decoration: none;
  color: var(--color-text-muted);
  transition: all var(--transition-fast);
  padding: 6px;
  border-radius: var(--radius-md);
}
.category-nav-icon-item:hover {
  color: var(--color-primary);
  background: var(--color-primary-bg);
  transform: translateY(-2px);
}
.category-nav-icon-item svg {
  width: 22px;
  height: 22px;
}
.category-nav-icon-item span {
  font-size: 12px;
  white-space: nowrap;
}
.category-nav-chips {
  display: none; /* PC/移动端统一隐藏：8 图标已覆盖分类入口，chip 行信息冗余 */
}
.category-nav-chip-row {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 6px;
}
.category-nav-chip {
  display: inline-flex;
  padding: 5px 12px;
  border-radius: var(--radius-pill);
  font-size: 13px;
  color: var(--color-text-body);
  background: var(--color-bg-page);
  text-decoration: none;
  transition: all var(--transition-fast);
  white-space: nowrap;
  min-height: 32px;
  align-items: center;
}
.category-nav-chip:hover {
  background: var(--color-primary-bg);
  color: var(--color-primary);
  transform: translateY(-1px);
}
.category-nav-chip.chip-all {
  background: rgba(22,119,255,0.08);
  color: var(--color-secondary);
}
.category-nav-chip.chip-all:hover {
  background: rgba(22,119,255,0.15);
}
.category-nav-chip.chip-publish {
  background: transparent;
  color: var(--color-primary);
  font-weight: 600;
  border: 1px solid var(--color-primary);
  box-shadow: none;
}
.category-nav-chip.chip-publish:hover {
  background: var(--color-primary-bg);
  color: var(--color-primary);
  box-shadow: none;
}

/* ========== 区块标题 ========== */
.section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: var(--container-width);
  margin: 0 auto;
  padding: var(--space-3xl) var(--space-xl) var(--space-lg);
}
.section-title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: var(--font-size-xl);
  font-weight: 700;
  color: var(--color-text-heading);
  margin: 0;
}
.section-title::before {
  content: '';
  display: inline-block;
  width: 4px;
  height: 22px;
  background: linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary-gradient) 100%);
  border-radius: 2px;
  flex-shrink: 0;
}
.section-title .title-link {
  color: inherit;
  text-decoration: none;
}
/* 推荐职位 Tab 标题旁的统计标签（合并自 Hero 区统计条，信息减负） */
.section-stat {
  font-size: 13px;
  color: var(--color-text-body);
  font-weight: 400;
  letter-spacing: 0.2px;
}
.section-stat em {
  color: var(--color-primary);
  font-weight: 700;
  font-style: normal;
}
.section-title-group {
  display: flex;
  align-items: center;
  gap: 16px;
}
.job-tabs {
  display: flex;
  gap: 2px;
  background: var(--color-bg-page);
  border-radius: var(--radius-pill);
  padding: 2px;
}
.job-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 16px;
  border-radius: var(--radius-pill);
  font-size: var(--font-size-sm);
  font-weight: 500;
  color: var(--color-text-muted);
  background: transparent;
  border: none;
  cursor: pointer;
  transition: all var(--transition-fast);
}
.job-tab:hover {
  color: var(--color-text-body);
}
.job-tab.active {
  background: var(--color-bg-card);
  color: var(--color-primary);
  box-shadow: var(--shadow-xs);
  font-weight: 600;
}
.section-more {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 16px;
  border-radius: var(--radius-pill);
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  background: var(--color-bg-card);
  border: 1px solid var(--color-border);
  transition: all var(--transition-fast);
  text-decoration: none;
}
.section-more:hover {
  color: var(--color-primary);
  background: var(--color-primary-bg);
  border-color: rgba(212,56,13,0.2);
}
.section-more:active {
  transform: scale(0.97);
}
.section-more .arrow {
  display: inline-block;
  transition: transform var(--transition-fast);
  font-size: var(--font-size-xs);
}
.section-more:hover .arrow {
  transform: translateX(3px);
}

/* ========== 简历完整度引导条 ========== */
.resume-guide-bar {
  max-width: var(--container-max, 1200px);
  margin: 16px auto;
  padding: 0 var(--container-pad, 20px);
}
.resume-guide-inner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #fff;
  border-radius: var(--radius-lg, 12px);
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
  border-left: 3px solid var(--color-primary, #e85d3a);
}
.resume-guide-inner:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(232,93,58,0.12);
}
.resume-guide-icon {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-primary-bg, rgba(232,93,58,0.08));
  border-radius: 50%;
  color: var(--color-primary, #e85d3a);
}
.resume-guide-text {
  flex: 1;
  min-width: 0;
}
.resume-guide-title {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: #333;
  margin-bottom: 4px;
}
.resume-guide-desc {
  display: block;
  font-size: 12px;
  color: #888;
}
.resume-guide-progress {
  height: 4px;
  background: #f0f0f5;
  border-radius: 2px;
  overflow: hidden;
}
.resume-guide-progress-fill {
  height: 100%;
  background: linear-gradient(90deg, var(--color-primary, #e85d3a), var(--color-primary-gradient, #f4a261));
  border-radius: 2px;
  transition: width 0.3s;
}
.resume-guide-btn {
  flex-shrink: 0;
  padding: 6px 14px;
  background: var(--color-primary, #e85d3a);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  border-radius: var(--radius-pill, 999px);
  white-space: nowrap;
}
@media (max-width: 767px) {
  .resume-guide-bar {
    margin: 10px 0;
    padding: 0 12px;
  }
  .resume-guide-inner {
    padding: 10px 12px;
    gap: 10px;
  }
  .resume-guide-icon {
    width: 32px;
    height: 32px;
  }
  .resume-guide-title {
    font-size: 13px;
  }
  .resume-guide-desc {
    font-size: 12px;
  }
  .resume-guide-btn {
    padding: 5px 12px;
    font-size: 12px;
  }
}

/* ========== 职位卡片 ========== */
.job-grid {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--space-xl);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-lg);
}
/* 平板断点：768-1024px 改为2列，避免4列挤压 */
@media (max-width: 1024px) and (min-width: 769px) {
  .job-grid,
  .resume-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.job-card {
  background: #fff;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  border-radius: var(--radius-lg);
  box-shadow: 0 1px 4px rgba(0,0,0,0.06);
  border: 1px solid rgba(0,0,0,0.06);
  padding: 14px 16px;
  transition: all var(--transition-normal);
  display: flex;
  flex-direction: column;
  cursor: pointer;
  min-height: auto;
  overflow: hidden;
  position: relative;
}
.job-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.8), transparent);
}
.job-card:hover {
  box-shadow: var(--shadow-card-hover);
  transform: translateY(-3px);
  border-color: rgba(232,93,58,0.15);
}
/* 急招卡片左侧竖条 */
.job-card-urgent {
  border-left: 3px solid var(--color-primary);
  padding-left: 13px;
}
/* Tab 切换过渡动画 */
.job-tab-content {
  animation: tabFadeIn 0.3s ease-out;
}
@keyframes tabFadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .job-tab-content { animation: none; }
}
/* 极速发布徽章微光动画 */
.job-card-quick .quick-pub-badge {
  animation: quickGlow 2s ease-in-out infinite;
}
@keyframes quickGlow {
  0%, 100% { box-shadow: 0 0 0 0 rgba(232,93,58,0.4); }
  50% { box-shadow: 0 0 0 4px rgba(232,93,58,0); }
}
@media (prefers-reduced-motion: reduce) {
  .job-card-quick .quick-pub-badge { animation: none; }
}
.job-card a {
  text-decoration: none;
  color: inherit;
}
.job-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}
.job-card-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-heading);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
  transition: color var(--transition-fast);
}
.job-card:hover .job-card-title {
  color: var(--color-primary);
}
.job-card-salary {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
  flex-shrink: 0;
  white-space: nowrap;
}
.job-card-meta {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-bottom: 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.meta-sep {
  margin: 0 6px;
  color: var(--color-divider);
}

.job-card-company {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-top: 10px;
  border-top: 1px solid var(--color-divider);
  margin-top: auto;
}
.job-card-company-logo {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.job-card-company-name {
  font-size: 12px;
  color: var(--color-text-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color var(--transition-fast);
  flex: 1;
  min-width: 0;
}
.job-card:hover .job-card-company-name {
  color: var(--color-secondary);
}
.job-card-company-meta {
  font-size: 12px;
  color: var(--color-text-light);
  margin-left: auto;
  flex-shrink: 0;
  white-space: nowrap;
}
/* 职位卡片福利标签 */
.job-card-welfare {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 8px;
}
/* HR活跃状态标签 */
.hr-active-tag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 1px 6px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: var(--radius-xs, 4px);
  white-space: nowrap;
  margin-left: auto;
  font-weight: 500;
}
.hr-active-tag .hr-active-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  display: inline-block;
}
.hr-active-now {
  color: #52c41a;
  background: rgba(82,196,26,0.1);
}
.hr-active-now .hr-active-dot {
  animation: hrPulse 1.5s ease-in-out infinite;
}
@keyframes hrPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(1.3); }
}
.hr-active-recent {
  color: #73d13d;
  background: rgba(115,209,61,0.08);
}
.hr-active-week {
  color: #999;
  background: #f5f5f5;
}
/* 已投递标记 */
.applied-tag {
  display: inline-block;
  padding: 1px 6px;
  font-size: 11px;
  line-height: 1.5;
  color: #999;
  background: #f0f0f0;
  border-radius: var(--radius-xs, 4px);
  margin-left: 6px;
  font-weight: 500;
  vertical-align: middle;
}
.job-card-welfare .welfare-tag {
  display: inline-block;
  padding: 1px 6px;
  font-size: 11px;
  line-height: 1.5;
  color: #e85d3a;
  background: rgba(232,93,58,0.08);
  border-radius: var(--radius-xs, 4px);
  white-space: nowrap;
}


/* ========== 人才卡片 ========== */
.resume-grid {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--space-xl);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-lg);
}
.resume-card {
  background: rgba(255,255,255,0.72);
  backdrop-filter: blur(12px) saturate(180%);
  -webkit-backdrop-filter: blur(12px) saturate(180%);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
  border: 1px solid rgba(255,255,255,0.5);
  padding: var(--space-lg);
  transition: all var(--transition-normal);
  position: relative;
}
.resume-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(22,119,255,0.3), transparent);
}
.resume-card:hover {
  box-shadow: 0 8px 24px rgba(22,119,255,0.12);
  transform: translateY(-3px);
  border-color: rgba(22,119,255,0.15);
}
.resume-card a {
  text-decoration: none;
  color: inherit;
}
.resume-card-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}
.resume-card-header-info {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}
.resume-card-salary {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
  flex-shrink: 0;
}
.resume-card-meta {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-bottom: 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.resume-card-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
/* 头像包裹+活跃绿点 */
.resume-card-avatar-wrap {
  position: relative;
  flex-shrink: 0;
}
.resume-active-dot {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 9px;
  height: 9px;
  background: #52c41a;
  border-radius: 50%;
  border: 2px solid #fff;
  box-shadow: 0 0 0 1px rgba(82,196,26,0.3);
}
/* 经验高亮 */
.resume-exp-highlight {
  color: var(--color-primary);
  font-weight: 600;
}
.resume-card-name {
  font-size: var(--font-size-md);
  font-weight: 600;
  color: var(--color-text-heading);
  transition: color var(--transition-fast);
}
.resume-card:hover .resume-card-name {
  color: var(--color-primary);
}

/* 意向标签容器：单行 flex 布局，固定高度确保卡片尺寸统一；JS 检测溢出时给第二个标签加 .is-overflow 自动隐藏 */
.resume-card-intent {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 6px;
  overflow: hidden;
  height: 24px;
  flex-shrink: 0;
}
.resume-card-intent-tag {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 100%;
  padding: 2px 10px;
  border-radius: var(--radius-pill);
  font-size: 12px;
  background: var(--color-primary-bg);
  color: var(--color-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* 第二个标签默认收缩优先，溢出时由 JS 添加 is-overflow 隐藏 */
.resume-card-intent-tag-2 {
  flex: 0 0 auto;
}
.resume-card-intent-tag-2.is-overflow {
  display: none;
}


/* ========== 资讯卡片 ========== */
.news-grid {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--space-xl);
  display: grid;
  /* auto-fit 自适应：PC/平板 2 列，移动端自动单列堆叠（统一一套 HTML） */
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--space-lg);
}
.news-column {
  background: #fff;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  border-radius: var(--radius-lg);
  box-shadow: 0 1px 4px rgba(0,0,0,0.06);
  border: 1px solid rgba(0,0,0,0.06);
  overflow: hidden;
  transition: all var(--transition-normal);
}
.news-column:hover {
  box-shadow: var(--shadow-card-hover);
  transform: translateY(-2px);
}
.news-column-title {
  padding: 14px 20px;
  font-size: var(--font-size-md);
  font-weight: 600;
  color: var(--color-text-heading);
  border-bottom: 1px solid var(--color-border-light);
  display: flex;
  align-items: center;
  gap: 8px;
}
.news-column-title::before {
  content: '';
  display: inline-block;
  width: 3px;
  height: 16px;
  background: var(--news-accent, var(--color-primary));
  border-radius: 2px;
}
.news-featured {
  position: relative;
  overflow: hidden;
}
.news-featured a {
  display: block;
  text-decoration: none;
  color: inherit;
}
.news-featured img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  display: block;
  transition: transform var(--transition-slow);
}
.news-featured:hover img {
  transform: scale(1.03);
}
.news-featured-title {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 24px 16px 12px;
  background: linear-gradient(transparent, rgba(0,0,0,0.7));
  color: #fff;
  font-size: var(--font-size-base);
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.news-list {
  padding: 8px 16px 16px;
}
.news-list a {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 0;
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
  text-decoration: none;
  transition: color var(--transition-fast);
  line-height: 1.5;
  border-bottom: 1px solid rgba(0,0,0,0.03);
}
.news-list a:last-child {
  border-bottom: none;
}
.news-list a::before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ddd;
  flex-shrink: 0;
  margin-top: 7px;
  transition: background var(--transition-fast);
}
.news-list a:hover {
  color: var(--color-primary);
}
.news-list a:hover::before {
  background: var(--color-primary);
}

/* ========== 底部 - 服务分类（单行紧凑） ========== */
.footer-services {
  background: #1a1a2e;
  padding: 16px 0;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.footer-services-inner {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--space-xl);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 48px;
  flex-wrap: wrap;
}

.footer-services-col h4 {
  font-size: 13px;
  font-weight: 600;
  color: rgba(255,255,255,0.7);
  margin: 0 12px 0 0;
  display: inline;
  position: relative;
  padding-bottom: 0;
}
.footer-services-col h4::after {
  display: none;
}
.footer-services-col {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
}
.footer-services-col a {
  display: inline;
  font-size: 12px;
  color: rgba(255,255,255,0.4);
  text-decoration: none;
  padding: 0;
  transition: all var(--transition-fast);
  white-space: nowrap;
}
.footer-services-col a::before {
  content: '·';
  margin: 0 6px;
  color: rgba(255,255,255,0.2);
}
.footer-services-col a:first-child::before {
  display: none;
}
.footer-services-col a:hover {
  color: var(--color-primary);
  transform: none;
}
.footer-services-col p {
  font-size: 12px;
  color: rgba(255,255,255,0.4);
  line-height: 1.5;
  margin: 0;
  display: inline;
  white-space: nowrap;
}
.footer-services-col .expand-icon {
  display: none;
}

/* ========== 底部 - 版权 ========== */
.footer-copyright {
  background: #141425;
  padding: 12px 0;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.footer-copyright-inner {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--space-xl);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-xl);
}
.footer-copyright-text {
  font-size: var(--font-size-xs);
  color: rgba(255,255,255,0.35);
  line-height: 1.8;
}
.footer-copyright-text a {
  color: rgba(255,255,255,0.4);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.footer-copyright-text a:hover {
  color: var(--color-primary);
}
.footer-copyright-text img {
  vertical-align: middle;
  margin: 0 4px;
}
.footer-free-statement {
  color: rgba(82,196,26,0.7) !important;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.5px;
}
.footer-social {
  display: flex;
  align-items: flex-end;
  gap: 32px;
  flex-shrink: 0;
}
/* 按钮垂直布局：图标+常显文字名称 */
.footer-social .footer-social-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  position: relative;
  transition: all var(--transition-normal);
  padding: 4px 2px;
  cursor: pointer;
}
.footer-social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.7);
  transition: all var(--transition-normal);
}
.footer-social-name {
  font-size: 12px;
  color: rgba(255,255,255,0.6);
  letter-spacing: 0.3px;
  transition: color var(--transition-normal);
  white-space: nowrap;
}
.footer-social-btn:hover .footer-social-icon {
  background: var(--color-primary);
  color: #fff;
  transform: translateY(-3px);
  box-shadow: 0 6px 14px rgba(212,56,13,0.4);
}
.footer-social-btn:hover .footer-social-name {
  color: #fff;
}
.footer-social a svg {
  width: 20px;
  height: 20px;
}
/* hover 弹出二维码（仅图片，白背景完美包裹） */
.footer-social a .social-qr {
  display: none;
  position: absolute;
  bottom: calc(100% + 12px);
  left: 50%;
  transform: translateX(-50%);
  /* 自适应 img 尺寸 + padding，避免固定 width 与 padding 冲突导致 img 溢出白底 */
  width: auto;
  height: auto;
  box-sizing: content-box;
  background: #fff;
  border-radius: 10px;
  padding: 12px;
  box-shadow: 0 8px 28px rgba(0,0,0,0.22), 0 0 0 1px rgba(0,0,0,0.04);
  z-index: var(--z-dropdown);
  border: 1px solid #f0f0f0;
}
.footer-social a .social-qr::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 7px solid transparent;
  border-top-color: #fff;
  margin-top: -1px;
}
.footer-social a .social-qr img {
  width: 120px;
  height: 120px;
  object-fit: cover;
  display: block;
  border-radius: 4px;
}
.footer-social a:hover .social-qr,
.footer-social a:focus .social-qr {
  display: block;
}

/* ========== 通用工具类 ========== */
.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}
.truncate-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

/* ========== 分页 ========== */
.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 24px 0;
  list-style: none;
  margin: 0;
}
.pagination li {
  display: inline-block;
  list-style: none;
}
.pagination li a,
.pagination li span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 8px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  font-size: 14px;
  color: var(--color-text-muted);
  text-decoration: none;
  transition: all var(--transition-fast);
  line-height: 1;
  box-sizing: border-box;
}
.pagination li a:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: var(--color-primary-bg);
}
.pagination li.active span,
.pagination li.active a {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
  font-weight: 600;
}
.pagination li.disabled span,
.pagination li.disabled a {
  color: #ccc;
  cursor: not-allowed;
  pointer-events: none;
}
/* 移动端分页 - 见下方统一 @media (max-width: 767px) 块 */

/* ========== 面包屑 ========== */
.breadcrumb {
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
}
.breadcrumb a {
  color: var(--color-secondary);
  transition: color var(--transition-fast);
}
.breadcrumb a:hover {
  color: var(--color-primary);
}
.breadcrumb .separator {
  margin: 0 6px;
  color: var(--color-text-light);
}
.breadcrumb .current {
  color: var(--color-text-body);
}

/* ========== 隐藏老系统元素 ========== */
.bfbtop1,
.top2bfb,
.kjcaid {
  /* 老系统分类侧边栏由新系统替代 */
}

/* ========== 移动端底部Tab导航（桌面端隐藏） ==========*/
.mobile-tab-bar {
  display: none;
}

/* ========== 行业数据横条 ========== */
.urgent-badge {
  display: inline-flex;
  align-items: center;
  padding: 1px 6px;
  border-radius: var(--radius-xs);
  font-size: 11px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-gradient));
  flex-shrink: 0;
  letter-spacing: 0.5px;
}

/* 极速发布标签 */
.quick-pub-badge {
  display: inline-flex;
  align-items: center;
  padding: 1px 6px;
  border-radius: var(--radius-xs);
  font-size: 11px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, #e85d3a, #f4a261);
  flex-shrink: 0;
  letter-spacing: 0.5px;
  vertical-align: middle;
}

/* 极速发布引导条 */
.quick-pub-banner {
  max-width: var(--container-max);
  margin: 24px auto;
  padding: 0 var(--container-pad);
}
.quick-pub-banner-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  /* 纯色背景：避免渐变叠加渐变视觉过重，符合"克制"原则 */
  background: #fff5f0;
  border: 1px solid rgba(232, 93, 58, 0.12);
  border-radius: var(--radius-lg, 12px);
  padding: 14px 20px;
  text-decoration: none;
  color: var(--color-text-heading, #1a1a1a);
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
  box-shadow: 0 2px 8px rgba(232, 93, 58, 0.06);
}
.quick-pub-banner-inner:hover {
  transform: translateY(-2px);
  border-color: rgba(232, 93, 58, 0.25);
  box-shadow: 0 4px 14px rgba(232, 93, 58, 0.12);
}
.qpb-left {
  display: flex;
  align-items: center;
  gap: 12px;
}
.qpb-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg, #e85d3a 0%, #c84a2a 100%);
  color: #fff;
  border-radius: var(--radius-md, 8px);
  flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(232, 93, 58, 0.25);
}
.qpb-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.qpb-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary, #e85d3a);
  letter-spacing: 0.5px;
}
.qpb-desc {
  font-size: 12px;
  color: var(--color-text-muted, #888);
  letter-spacing: 0.3px;
}
.qpb-right {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}
.qpb-btn {
  font-size: 13px;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(135deg, #e85d3a 0%, #c84a2a 100%);
  padding: 6px 14px;
  border-radius: var(--radius-md, 8px);
  white-space: nowrap;
  box-shadow: 0 2px 6px rgba(232, 93, 58, 0.2);
}
.qpb-right svg {
  color: var(--color-primary, #e85d3a);
}
/* 极速发布引导条移动端 - 见下方统一 @media (max-width: 767px) 块 */

.brand-data-bar {
  background: var(--color-bg-card);
  padding: 20px 0;
  margin: var(--space-2xl) 0;
  border-top: 1px solid var(--color-border-light);
  border-bottom: 1px solid var(--color-border-light);
}
.brand-data-bar-inner {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--space-xl);
  display: flex;
  align-items: center;
  gap: 32px;
}
.brand-bar-label {
  font-size: 12px;
  color: var(--color-text-light);
  margin-right: 8px;
  flex-shrink: 0;
}
.brand-bar-salary {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.brand-bar-salary-item {
  display: inline-flex;
  padding: 4px 10px;
  border-radius: var(--radius-pill);
  font-size: 12px;
  color: var(--color-text-muted);
  background: var(--color-bg-page);
  margin-right: 6px;
}
.brand-bar-salary-item em {
  font-style: normal;
  color: var(--color-primary);
  font-weight: 600;
  margin-left: 2px;
}
.salary-mini-bar {
  display: block;
  height: 3px;
  background: var(--color-bg-page);
  border-radius: 2px;
  margin-top: 3px;
  overflow: hidden;
}
.salary-mini-fill {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--color-primary), var(--color-primary-gradient));
  border-radius: 2px;
  transition: width 0.6s ease;
}
.brand-bar-salary-item::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 2px;
  margin-right: 4px;
  vertical-align: middle;
}
.brand-bar-salary-item:nth-child(2)::before { background: var(--color-primary); }
.brand-bar-salary-item:nth-child(3)::before { background: var(--color-primary-gradient); }
.brand-bar-salary-item:nth-child(4)::before { background: #fa8c16; }
.brand-bar-salary-item:nth-child(5)::before { background: var(--color-success); }
.brand-bar-salary-item:nth-child(6)::before { background: var(--color-secondary); }
.brand-bar-hot {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
}
.brand-bar-hot-item {
  font-size: 12px;
  color: var(--color-text-muted);
  text-decoration: none;
  margin-right: 12px;
  white-space: nowrap;
  transition: color var(--transition-fast);
}
.brand-bar-hot-item:hover {
  color: var(--color-primary);
}
.brand-bar-cta {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}
.brand-bar-cta-text {
  font-size: 13px;
  color: var(--color-text-light);
}
.brand-bar-cta-btn {
  display: inline-flex;
  align-items: center;
  padding: 6px 20px;
  border-radius: var(--radius-pill);
  font-size: 13px;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-gradient));
  text-decoration: none;
  transition: all var(--transition-normal);
  white-space: nowrap;
}
.brand-bar-cta-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(212,56,13,0.3);
}

/* ========== 区块标题HOT标签 ========== */
.section-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: var(--radius-xs);
  font-size: 11px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-gradient));
  margin-left: 8px;
  letter-spacing: 1px;
  vertical-align: middle;
}

/* ========== 搜索智能建议 ========== */
.search-suggest {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: var(--color-bg-card);
  border-radius: 0 0 var(--radius-lg) var(--radius-lg);
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--color-border-light);
  border-top: none;
  z-index: var(--z-dropdown);
  display: none;
  max-height: 320px;
  overflow-y: auto;
}
.search-suggest.show {
  display: block;
}
.search-suggest-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 20px;
  font-size: var(--font-size-base);
  color: var(--color-text-body);
  cursor: pointer;
  transition: background var(--transition-fast);
  text-decoration: none;
}
.search-suggest-item:hover {
  background: var(--color-primary-bg);
}
.search-suggest-item .suggest-title {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.search-suggest-item .suggest-title em {
  color: var(--color-primary);
  font-style: normal;
  font-weight: 600;
}
.search-suggest-item .suggest-salary {
  font-size: var(--font-size-sm);
  color: var(--color-primary);
  font-weight: 600;
  margin-left: 12px;
  flex-shrink: 0;
}

/* ========== 区块滚动渐入动画 ========== */
.fade-in-up {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
  animation: none;
}
.fade-in-up.visible {
  opacity: 1;
  transform: translateY(0);
}

/* ========== 2026移动端全面优化 ========== */

/* 移动端专用头部（桌面端隐藏） */
.mobile-header {
  display: none;
}
.mobile-nav-links {
  display: none;
}

/* ========== 响应式 - 平板 ========== */
@media screen and (max-width: 1199px) {
  .footer-services-inner {
    flex-wrap: wrap;
    gap: 16px;
  }
  .brand-data-bar-inner {
    gap: 20px;
  }
}

/* ========== 响应式 - 手机 ========== */
@media screen and (max-width: 767px) {
  /* 顶部信息栏隐藏 */
  .top-info-bar {
    display: none;
  }

  /* 主导航栏移动端隐藏（由移动端专用头部替代） */
  .main-nav {
    display: none;
  }

  /* 移动端专用头部 - 高级质感 */
  .mobile-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(255,255,255,0.96);
    backdrop-filter: saturate(180%) blur(24px);
    -webkit-backdrop-filter: saturate(180%) blur(24px);
    height: 56px;
    padding: 0 16px;
    border-bottom: none;
    box-shadow: 0 0.5px 0 rgba(0,0,0,0.08);
    transition: box-shadow 0.3s ease;
  }
  /* 顶部主色装饰细线 */
  .mobile-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--color-primary, #e85d3a), var(--color-primary-gradient, #f4a261), var(--color-primary, #e85d3a));
    background-size: 200% 100%;
    animation: headerLineShift 3s ease-in-out infinite;
  }
  @keyframes headerLineShift {
    0%, 100% { background-position: 0% 0%; }
    50% { background-position: 100% 0%; }
  }
  .mobile-header.scrolled {
    box-shadow: 0 0.5px 0 rgba(0,0,0,0.08), 0 4px 16px rgba(0,0,0,0.06);
  }
  .mobile-header-logo {
    display: flex;
    align-items: center;
    text-decoration: none;
    gap: 8px;
  }
  .mobile-header-logo img {
    height: 34px;
    vertical-align: middle;
  }
  .mobile-header-logo::after {
    content: '养老人才网';
    font-size: 16px;
    font-weight: 700;
    color: #222;
    letter-spacing: 0.5px;
    display: none;
  }
  .mobile-header-actions {
    display: flex;
    align-items: center;
    gap: 6px; /* P6: 通知与城市选择器之间留出间隔 */
  }
  .mobile-header-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: none;
    background: none;
    color: #444;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    border-radius: 50%;
    transition: background var(--transition-fast);
    text-decoration: none;
    position: relative;
  }
  .mobile-header-btn:active {
    background: rgba(0,0,0,0.06);
  }
  .mobile-header-btn svg {
    width: 22px;
    height: 22px;
    stroke-width: 1.8;
  }
  /* 城市选择器 */
  .mobile-header-city {
    display: flex;
    align-items: center;
    gap: 3px;
    padding: 6px 10px;
    margin-left: 0; /* P6: 城市选择器已移入右侧操作组，无需左外边距 */
    background: var(--color-primary-bg, rgba(232,93,58,0.08));
    border-radius: var(--radius-pill, 999px);
    color: var(--color-primary, #e85d3a);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    max-width: 100px;
    transition: background 0.2s;
    -webkit-tap-highlight-color: transparent;
  }
  .mobile-header-city:active {
    background: rgba(232,93,58,0.15);
  }
  .mobile-header-city .city-name {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 60px;
  }
  /* 通知数字badge */
  .mobile-notif-badge {
    position: absolute;
    top: 4px;
    right: 4px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 8px;
    background: #ff4d4f;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    line-height: 16px;
    text-align: center;
    box-shadow: 0 0 0 2px #fff;
  }

  /* 移动端快捷导航条 - 大气专业 */
  .mobile-nav-links {
    display: flex;
    align-items: center;
    justify-content: space-around;
    background: rgba(255,255,255,0.96);
    backdrop-filter: saturate(180%) blur(24px);
    -webkit-backdrop-filter: saturate(180%) blur(24px);
    border-bottom: none;
    box-shadow: 0 0.5px 0 rgba(0,0,0,0.06);
    padding: 0 8px;
    height: 44px;
    position: sticky;
    top: 56px;
    z-index: 999;
  }
  .mobile-nav-link {
    position: relative;
    font-size: 14px;
    font-weight: 500;
    color: #555;
    text-decoration: none;
    padding: 8px 14px;
    border-radius: 8px;
    transition: all 0.2s ease;
    white-space: nowrap;
    -webkit-tap-highlight-color: transparent;
    letter-spacing: 0.3px;
  }
  .mobile-nav-link-publish {
    color: var(--color-primary);
    font-weight: 600;
    background: rgba(212,56,13,0.06);
    border-radius: 16px;
  }

  /* 移动端"更多"下拉菜单 */
  .mobile-nav-more-wrap {
    position: relative;
    margin-left: auto;
  }
  .mobile-nav-more-btn {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 13px;
    color: #666;
    -webkit-tap-highlight-color: transparent;
  }
  .mobile-nav-more-dropdown {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    min-width: 160px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0,0,0,0.12);
    padding: 6px 0;
    z-index: 10000;
    max-height: 320px;
    overflow-y: auto;
  }
  .mobile-nav-more-dropdown.show {
    display: block;
  }
  .mobile-nav-more-item {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 12px 16px;
    font-size: 14px;
    color: #333;
    text-decoration: none;
    white-space: nowrap;
    border-bottom: 1px solid #f5f5f5;
    -webkit-tap-highlight-color: transparent;
  }
  .mobile-nav-more-item:last-child {
    border-bottom: none;
  }
  .mobile-nav-more-item:active {
    background: #f5f5f5;
  }
  .mobile-external-tag {
    display: inline-flex;
    align-items: center;
    margin-left: auto;
    opacity: 0.5;
  }
  .mobile-external-tag svg {
    width: 10px;
    height: 10px;
  }

  /* 移动端禁用backdrop-filter节省GPU */
  .job-card,
  .resume-card,
  .news-column {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    background: var(--color-bg-card);
    border-color: var(--color-border-light);
  }
  .job-card::before,
  .resume-card::before {
    display: none;
  }

  /* Hero搜索 */
  .hero-search {
    padding: 32px 0 28px;
    animation: none;
  }
  .hero-search::before,
  .hero-search::after {
    display: none;
  }
  .hero-subtitle {
    font-size: 13px;
    margin-bottom: 14px;
    letter-spacing: 1px;
  }
  .hero-title {
    font-size: 22px;
    letter-spacing: 2px;
    margin-bottom: 2px;
  }
  .hero-trust-tags {
    margin: 10px 0 14px 0;
    gap: 6px;
  }
  .hero-trust-tags .trust-tag {
    font-size: 12px;
  }
  .hero-industry-icons {
    gap: 16px;
    margin-bottom: 8px;
  }
  .hero-industry-icon svg {
    width: 22px;
    height: 22px;
  }
  .hero-industry-icon span {
    font-size: 11px;
  }
  .search-type-tabs {
    margin-bottom: 14px;
  }
  .search-type-tab {
    padding: 6px 20px;
    font-size: var(--font-size-sm);
  }
  .search-box-wrapper {
    border-radius: var(--radius-lg);
  }
  .search-type-select {
    padding: 0 10px 0 12px;
    height: 48px;
    font-size: var(--font-size-sm);
  }
  .search-input-wrapper input {
    height: 48px;
    font-size: var(--font-size-base);
  }
  .search-submit-btn {
    width: 60px;
    height: 48px;
  }
  /* 热门标签横向滚动 */
  .hot-tags {
    gap: 6px;
    margin-top: 12px;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    justify-content: flex-start;
    padding-bottom: 4px;
    scrollbar-width: none;
  }
  .hot-tags::-webkit-scrollbar {
    display: none;
  }
  .hot-tags a {
    padding: 4px 12px;
    font-size: 12px;
    min-height: 32px;
    flex-shrink: 0;
  }
  .hot-tags-label {
    flex-shrink: 0;
  }

  /* Hero统计条 */
  .hero-stats-bar {
    gap: 16px;
    margin-top: 16px;
    padding-top: 12px;
  }
  .hero-stat-num {
    font-size: 18px;
  }
  .hero-stat-label {
    font-size: 12px;
  }

  /* 分类导航条 */
  .category-nav-inner {
    flex-direction: column;
    gap: 12px;
    padding: 0 var(--space-md);
  }
  /* 图标行横向可滑动 */
  .category-nav-icons {
    gap: 12px;
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
    scrollbar-width: none;
  }
  .category-nav-icons::-webkit-scrollbar {
    display: none;
  }
  .category-nav-icon-item {
    padding: 10px;
    min-width: 44px;
    min-height: 44px;
    flex-shrink: 0;
  }
  /* chip行横向可滑动（移动端恢复单行，覆盖PC端两组垂直堆叠） */
  .category-nav-chips {
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
    scrollbar-width: none;
    flex: 1;
    min-width: 0;
    max-width: 100%;
  }
  /* 移动端取消分组行结构，让所有chip平铺滚动 */
  .category-nav-chip-row {
    display: contents;
  }
  .category-nav-chips::-webkit-scrollbar {
    display: none;
  }
  .category-nav-chip {
    padding: 6px 10px;
    font-size: 12px;
    min-height: 36px;
    flex-shrink: 0;
  }

  /* 行业数据横条 */
  .brand-data-bar {
    padding: 16px 0;
    border-top: 1px solid var(--color-border-light);
    border-bottom: 1px solid var(--color-border-light);
  }
  .brand-data-bar-inner {
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
  }
  .brand-bar-salary, .brand-bar-hot {
    flex-wrap: wrap;
  }
  .brand-bar-cta {
    width: 100%;
    justify-content: space-between;
  }

  /* 移动端底部Tab导航 - 5个Tab升级 */
  .mobile-tab-bar {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100vw;
    height: 56px;
    background: var(--color-bg-card);
    border-top: 1px solid rgba(0,0,0,0.06);
    z-index: var(--z-sticky);
    box-shadow: 0 -1px 8px rgba(0,0,0,0.06);
    padding-bottom: env(safe-area-inset-bottom, 0);
    align-items: flex-end;
    box-sizing: border-box;
  }
  .mobile-tab-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    text-decoration: none;
    color: var(--color-text-light);
    transition: color var(--transition-fast);
    -webkit-tap-highlight-color: transparent;
    position: relative;
    overflow: visible;
    height: 56px;
  }
  .mobile-tab-item span {
    font-size: 11px;
    line-height: 1;
  }
  .mobile-tab-item.active {
    color: var(--color-primary);
  }
  /* BOSS直聘风格：未选中空心线条 ↔ 选中实心填充 */
  .mobile-tab-item svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    transition: fill 0.25s ease, stroke 0.25s ease, stroke-width 0.25s ease;
  }
  .mobile-tab-item.active svg {
    fill: currentColor;
    stroke: currentColor;
    stroke-width: 0;
  }
  /* 触摸涟漪效果 */
  .mobile-tab-item.tab-ripple {
    background: rgba(212,56,13,0.08);
    transition: background 0.2s ease;
  }
  /* 图标容器+红点 */
  .tab-icon-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .tab-badge {
    position: absolute;
    top: -4px;
    right: -8px;
    min-width: 16px;
    height: 16px;
    line-height: 16px;
    padding: 0 4px;
    border-radius: 8px;
    background: #ff4d4f;
    color: #fff;
    font-size: 11px;
    text-align: center;
    font-weight: 600;
    box-shadow: 0 1px 4px rgba(255,77,79,0.3);
  }
  /* 中间"发布+"按钮突出设计 */
  .mobile-tab-publish {
    position: relative;
    flex: 1;
  }
  .tab-publish-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-gradient) 100%);
    box-shadow: 0 6px 16px rgba(232,93,58,0.4);
    margin: -16px auto 2px;
    transition: transform var(--transition-fast), box-shadow var(--transition-fast);
    animation: publishPulse 2.5s ease-in-out infinite;
  }
  @keyframes publishPulse {
    0%, 100% { box-shadow: 0 6px 16px rgba(232,93,58,0.4), 0 0 0 0 rgba(232,93,58,0.3); }
    50% { box-shadow: 0 6px 16px rgba(232,93,58,0.4), 0 0 0 8px rgba(232,93,58,0); }
  }
  .tab-publish-icon svg {
    color: #fff;
    stroke: #fff;
    stroke-width: 2.5;
    fill: none;
  }
  .mobile-tab-publish:active .tab-publish-icon {
    transform: scale(0.9);
    box-shadow: 0 2px 8px rgba(232,93,58,0.3);
    animation: none;
  }
  .mobile-tab-publish.active {
    color: var(--color-primary);
  }
  .mobile-tab-publish.active .tab-publish-icon {
    box-shadow: 0 6px 20px rgba(232,93,58,0.55);
  }
  /* 发布按钮排除fill切换（保持白色+号线条） */
  .mobile-tab-publish.active svg {
    fill: none;
    stroke: #fff;
    stroke-width: 2.5;
  }
  /* Tab切换微交互 */
  .mobile-tab-item {
    transition: transform 0.15s ease;
  }
  .mobile-tab-item:active {
    transform: scale(0.88);
  }
  .mobile-tab-item.active .tab-icon-wrap {
    transform: scale(1.1);
    transition: transform 0.2s ease;
  }
  /* 底部Tab导航占位（防止内容被遮挡） */
  /* 移动端隐藏底部服务列和版权区 */
  .footer-services {
    display: none !important;
  }
  .footer-services-inner {
    flex-direction: column;
    align-items: center;
    gap: 6px;
  }
  .footer-services a {
    font-size: 12px;
  }
  .footer-copyright {
    display: none !important;
  }
  .footer-copyright-inner {
    flex-direction: column;
    align-items: center;
    gap: 8px;
    justify-content: center;
  }
  .footer-copyright-inner p {
    text-align: center;
    font-size: 12px;
  }
  .footer-social {
    justify-content: center;
  }
  /* 移动端隐藏资讯区"政策"标签 */
  .section-badge {
    display: none;
  }
  /* 移动端养老资讯 - 只展示养老政策 1 列（精简浏览节奏，避免内容过长） */
  .news-grid {
    padding: 0 12px 16px;
    gap: 12px;
    grid-template-columns: 1fr; /* 强制单列，覆盖 auto-fit */
  }
  /* 隐藏养老要闻列（移动端用户注意力稀缺，要闻在 /news 列表页可深入浏览） */
  .news-column:nth-child(2) {
    display: none;
  }
  /* 列表只显示前 3 条（featured 1 + 列表 3 = 4 条信息足够） */
  .news-column .news-list a:nth-child(n+4) {
    display: none;
  }
  /* 移动端标题单行截断（避免长标题折行导致列表过长） */
  .news-list a {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  /* featured 大图高度适配单列宽度（避免 180px 在全宽下过大） */
  .news-featured img {
    height: 140px;
  }

  /* ===== APP质感升级 - 全局背景 + Tab栏留白 ===== */
  body {
    background: #f5f5f7;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding-bottom: 72px;
  }

  /* 移动端头部 - APP质感 */
  .mobile-header {
    background: rgba(255,255,255,0.96);
    backdrop-filter: saturate(180%) blur(20px);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    border-bottom: none;
    box-shadow: 0 0.5px 0 rgba(0,0,0,0.08);
  }
  .mobile-header.scrolled {
    box-shadow: 0 0.5px 0 rgba(0,0,0,0.08), 0 2px 12px rgba(0,0,0,0.06);
  }

  /* 移动端导航条 - APP质感升级 */
  .mobile-nav-links {
    background: rgba(255,255,255,0.96);
    backdrop-filter: saturate(180%) blur(20px);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    border-bottom: none;
    box-shadow: 0 0.5px 0 rgba(0,0,0,0.06), 0 2px 8px rgba(0,0,0,0.03);
    height: 42px;
    padding: 0 4px;
  }
  .mobile-nav-link {
    position: relative;
    font-size: 14px;
    font-weight: 500;
    color: #555;
    letter-spacing: 0.3px;
    padding: 8px 14px;
    border-radius: 8px;
    transition: all 0.2s ease;
    -webkit-tap-highlight-color: transparent;
    display: inline-flex;
    align-items: center;
    gap: 4px;
  }
  .mobile-nav-link svg {
    flex-shrink: 0;
    opacity: 0.7;
  }
  .mobile-nav-link:active {
    background: rgba(212,56,13,0.06);
    color: var(--color-primary);
    transform: scale(0.96);
  }
  /* 当前页激活态 - 底部指示条 */
  .mobile-nav-link[aria-current="page"],
  .mobile-nav-link.active {
    color: var(--color-primary);
    font-weight: 600;
  }
  .mobile-nav-link[aria-current="page"]::after,
  .mobile-nav-link.active::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 50%;
    transform: translateX(-50%);
    width: 16px;
    height: 3px;
    border-radius: 3px;
    background: var(--color-primary);
    animation: navIndicatorIn 0.25s ease;
  }
  .mobile-nav-link-publish {
    color: var(--color-primary);
    font-weight: 600;
    background: rgba(212,56,13,0.06);
  }
  .mobile-nav-link-publish:active {
    background: rgba(212,56,13,0.12);
    color: var(--color-primary-hover);
  }

  /* Hero区 - APP质感 */
  .hero-search {
    padding: 20px 0 16px;
  }
  .hero-search.no-stats {
    padding: 20px 0 12px;
  }
  .hero-search-inner {
    padding: 0 16px;
  }
  .hero-subtitle {
    display: none; /* 移动端隐藏副标题，突出搜索框 */
  }
  .hero-title {
    font-size: 18px;
    letter-spacing: 1px;
    margin-bottom: 10px;
  }
  .hero-trust-tags {
    display: none; /* 移动端隐藏信任标签（社会证明区块已有） */
  }
  .search-box-wrapper {
    border-radius: 14px;
    /* L1 视觉焦点：搜索框阴影加深，确立首屏核心 */
    box-shadow: 0 6px 24px rgba(0,0,0,0.14), inset 0 0 0 0.5px rgba(0,0,0,0.08);
  }
  .search-input-wrapper input {
    height: 44px;
    font-size: 15px;
  }
  .search-type-select {
    height: 44px;
  }
  .search-submit-btn {
    width: 52px;
    height: 44px;
    border-radius: 0 14px 14px 0;
  }
  .hero-stats-bar {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 0.5px solid rgba(255,255,255,0.15);
  }
  /* 移动端首页职位/人才卡片只显示5条，隐藏第6条及以后 */
  .job-grid > .job-card:nth-child(n+6),
  .resume-grid > .resume-card:nth-child(n+6) {
    display: none;
  }
  .hero-stat-num {
    font-size: 20px;
    font-weight: 700;
  }
  .hero-stat-label {
    font-size: 12px;
    opacity: 0.7;
  }

  /* 分类导航 - APP质感（2×4 图标网格，删除 chip 行） */
  .category-nav-bar {
    background: #fff;
    box-shadow: 0 0.5px 0 rgba(0,0,0,0.06);
  }
  .category-nav-inner {
    padding: 12px 16px;
    gap: 0;
    max-width: 100%;
    overflow: hidden;
    flex-direction: column;
  }
  /* 图标网格：8 个图标分 2 行 4 列，单层信息架构 */
  .category-nav-icons {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px 6px;
    width: 100%;
  }
  /* 删除 chip 行（信息冗余，与图标重复） */
  .category-nav-chips {
    display: none;
  }
  .category-nav-icon-item {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 64px;
    border-radius: 14px;
    background: var(--color-bg-page);
    gap: 6px;
    padding: 10px 4px;
    transition: transform 0.15s ease, background 0.15s ease;
  }
  .category-nav-icon-item:active {
    transform: scale(0.93);
    background: var(--color-primary-bg);
  }
  .category-nav-icon-item span {
    font-size: 12px;
    font-weight: 500;
    color: var(--color-text-body);
  }
  .category-nav-icon-item svg {
    width: 24px;
    height: 24px;
    stroke: var(--color-primary);
  }
  .category-nav-chip {
    padding: 8px 14px;
    font-size: 13px;
    font-weight: 500;
    border-radius: 20px;
    background: var(--color-bg-page);
    color: var(--color-text-body);
    transition: transform 0.15s ease, background 0.15s ease, color 0.15s ease;
  }
  .category-nav-chip:active {
    transform: scale(0.93);
    background: var(--color-primary);
    color: #fff;
  }

  /* 区块标题 - APP质感 */
  .section-header {
    padding: 20px 16px 10px;
  }
  .section-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--color-text-heading);
    letter-spacing: -0.3px;
  }
  .section-more {
    font-size: 13px;
    font-weight: 500;
    color: var(--color-text-light);
  }

  /* 职位卡片 - APP质感 */
  .job-grid {
    grid-template-columns: 1fr;
    padding: 0 16px;
    gap: 10px;
  }
  .job-card {
    padding: 16px;
    border-radius: 14px;
    box-shadow: 0 0.5px 0 0 rgba(0,0,0,0.04), 0 1px 4px rgba(0,0,0,0.04);
    border: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
  }
  .job-card:active {
    transform: scale(0.97);
    box-shadow: 0 0.5px 0 0 rgba(0,0,0,0.04);
  }
  .job-card-title {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -0.2px;
  }
  .job-card-salary {
    font-size: 16px;
    font-weight: 700;
  }
  .job-card-meta {
    font-size: 12px;
    margin-top: 8px;
  }
  .job-card-company {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 0.5px solid var(--color-border-light);
  }

  /* 人才卡片 - APP质感 */
  .resume-grid {
    grid-template-columns: 1fr;
    padding: 0 16px;
    gap: 10px;
  }
  .resume-card {
    padding: 16px;
    border-radius: 14px;
    box-shadow: 0 0.5px 0 0 rgba(0,0,0,0.04), 0 1px 4px rgba(0,0,0,0.04);
    border: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
  }
  .resume-card:active {
    transform: scale(0.97);
    box-shadow: 0 0.5px 0 0 rgba(0,0,0,0.04);
  }
  .resume-card-name {
    font-size: 16px;
    font-weight: 600;
  }
  .resume-card-salary {
    font-size: 15px;
    font-weight: 700;
  }

  /* 底部Tab - APP质感 */
  .mobile-tab-bar {
    background: rgba(255,255,255,0.96);
    backdrop-filter: saturate(180%) blur(20px);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    border-top: none;
    box-shadow: 0 -0.5px 0 rgba(0,0,0,0.08), 0 -2px 12px rgba(0,0,0,0.04);
  }
  .mobile-tab-item span {
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.2px;
  }
  .mobile-tab-item.active {
    color: var(--color-primary);
  }

  /* 热门标签 - APP质感 */
  .hot-tags a {
    padding: 5px 12px;
    font-size: 12px;
    border-radius: 14px;
    background: rgba(255,255,255,0.15);
    font-weight: 500;
  }
  .hot-tags a:active {
    background: rgba(255,255,255,0.3);
    transform: scale(0.95);
  }

  /* 品牌横条 - APP质感 */
  .brand-data-bar {
    background: #fff;
    border: none;
    box-shadow: 0 0.5px 0 rgba(0,0,0,0.06);
  }
  .brand-bar-cta-btn {
    border-radius: 20px;
    font-weight: 600;
    letter-spacing: 0.3px;
  }

  /* 底部版权 - 已在上方移动端块中处理 */

  /* 表单元素 */
  input[type="text"],
  input[type="password"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  input[type="search"],
  select,
  textarea {
    font-size: 16px !important;
    min-height: 44px;
  }
  button, .btn, input[type="submit"] {
    min-height: 44px;
  }

  /* ===== 移动端分页（紧凑模式由global.css控制）===== */
  .pagination li a,
  .pagination li span {
    min-width: 36px;
    height: 36px;
    font-size: 13px;
    padding: 0 8px;
  }

  /* ===== 极速发布引导条移动端样式已统一在下方 L3 区块（避免重复规则） ===== */

  /* ===== 禁用hover效果（触摸设备无hover） ===== */
  .job-card:hover,
  .resume-card:hover,
  .news-column:hover {
    transform: none;
  }
  .job-card:hover {
    box-shadow: var(--shadow-card);
  }
  .resume-card:hover {
    box-shadow: var(--shadow-card);
  }

  /* ===== 触摸目标最小44px ===== */
  .hot-tags a,
  .section-more,
  .category-nav-chip,
  .job-tab,
  .search-type-tab,
  .brand-bar-hot-item,
  .brand-bar-cta-btn,
  .news-list a,
  .footer-services-col a,
  .footer-social .footer-social-btn,
  .category-nav-icon-item {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }

  /* ===== 触摸:active反馈 ===== */
  .category-nav-chip:active,
  .category-nav-icon-item:active {
    background: rgba(255,255,255,0.3);
    transform: scale(0.95);
  }
  .btn-post-job:active,
  .search-submit-btn:active,
  .section-more:active {
    transform: scale(0.95);
    opacity: 0.85;
  }

  /* ===== 移动端头部滚动阴影 ===== */
  .mobile-header.scrolled {
    box-shadow: 0 1px 8px rgba(0,0,0,0.08);
  }

  /* ===== 横向滚动区域双向渐变提示（左右两侧都暗示可滚动） ===== */
  /* 注意：category-nav-icons 已改为 2×4 网格不滚动，不能应用 mask 否则最右列图标被透明 */
  .hot-tags {
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 4%, #000 96%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0%, #000 4%, #000 96%, transparent 100%);
  }

  /* ===== 极速发布引导条移动端样式已统一在下方 !important 重构块（L4396-4428），此处不再重复 ===== */

  /* ===== 职位卡片底部企业信息防溢出 ===== */
  .job-card-company-meta {
    display: none;
  }
  .job-card-company {
    padding-top: 10px;
    gap: 8px;
  }
  .job-card-company-logo {
    width: 28px;
    height: 28px;
  }
  .job-card-company-name {
    font-size: 13px;
    color: var(--color-text-muted);
  }

  /* ===== 人才卡片意向标签优化 ===== */
  .resume-card-intent {
    gap: 6px;
  }
  .resume-card-intent-tag {
    font-size: 12px;
    padding: 2px 8px;
    border-radius: 10px;
  }

  /* ===== 区块间距统一 ===== */
  .section-header {
    padding: 18px 16px 8px;
  }
  .section-title {
    font-size: 17px;
  }
  .section-title::before {
    height: 18px;
    width: 3px;
  }
  .job-grid,
  .resume-grid {
    gap: 8px;
  }

  /* ===== 搜索框聚焦态优化 ===== */
  .search-box-wrapper:focus-within {
    transform: none;
    /* L1 焦点态：阴影更深 + 主色 inset 描边 */
    box-shadow: 0 8px 28px rgba(0,0,0,0.18), inset 0 0 0 0.5px rgba(212,56,13,0.4);
  }

  /* ===== Tab切换更明显 ===== */
  .job-tabs {
    background: rgba(0,0,0,0.04);
    border-radius: 20px;
  }
  .job-tab {
    padding: 6px 14px;
    font-size: 13px;
    font-weight: 500;
  }
  .job-tab.active {
    font-weight: 600;
  }

  /* ===== 移动端底部Tab图标稍大 ===== */
  .mobile-tab-item svg {
    width: 22px;
    height: 22px;
  }
  .tab-publish-icon {
    width: 46px;
    height: 46px;
  }
  .tab-publish-icon svg {
    width: 22px;
    height: 22px;
  }

  /* ===== 推荐雇主移动端隐藏（用户要求） ===== */
  .employer-section { display: none; }

  /* ===== 骨架屏移动端只显示2个 ===== */
  #jobSkeleton .skeleton-job-card:nth-child(n+3),
  #resumeSkeleton .skeleton-resume-card:nth-child(n+3) {
    display: none !important;
  }
}

/* ========== 响应式 - 超小屏 ========== */
@media screen and (max-width: 374px) {
  .search-type-tabs {
    gap: 2px;
  }
  .search-type-tab {
    padding: 5px 14px;
    font-size: var(--font-size-xs);
  }
}



/* ========== 适老模式增强 ========== */
.elder-mode .hero-search {
  padding: 36px 0 44px;
}
.elder-mode .search-type-tab {
  padding: 10px 32px;
  font-size: var(--font-size-lg);
}
.elder-mode .search-input-wrapper input {
  font-size: var(--font-size-xl);
  height: 64px;
}
.elder-mode .search-submit-btn {
  width: 100px;
  height: 64px;
}
.elder-mode .section-title {
  font-size: var(--font-size-2xl);
}
.elder-mode .job-card-title {
  font-size: var(--font-size-lg);
}
.elder-mode .job-card-salary {
  font-size: var(--font-size-xl);
}

/* ========== 暗色模式 ========== */

/* 职位卡片骨架 */
.skeleton-job-card {
  background: var(--color-bg-card);
  border-radius: var(--radius-lg);
  padding: 14px 16px;
  min-height: auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.skeleton-job-card .sk-title {
  width: 70%;
  height: 16px;
}
.skeleton-job-card .sk-salary {
  width: 40%;
  height: 20px;
}
.skeleton-job-card .sk-tags {
  display: flex;
  gap: 8px;
}
.skeleton-job-card .sk-tags .sk-tag {
  width: 60px;
  height: 14px;
}
.skeleton-job-card .sk-company {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
}
.skeleton-job-card .sk-company .sk-logo {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  flex-shrink: 0;
}
.skeleton-job-card .sk-company .sk-name {
  width: 50%;
  height: 12px;
}
/* 人才卡片骨架 */
.skeleton-resume-card {
  background: var(--color-bg-card);
  border-radius: var(--radius-lg);
  padding: 16px;
  min-height: 160px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.skeleton-resume-card .sk-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
}
.skeleton-resume-card .sk-name {
  width: 60px;
  height: 14px;
}
.skeleton-resume-card .sk-tags {
  display: flex;
  gap: 6px;
}
.skeleton-resume-card .sk-tags .sk-tag {
  width: 40px;
  height: 12px;
}
/* 推荐雇主区 - 增加与上方人才区的分隔感 */
.employer-section .section-header {
  padding-top: 48px;
}
/* 推荐雇主网格 */
.employer-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
  max-width: 1200px;
  margin: 0 auto 24px;
  padding: 0 16px;
}
.employer-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 16px 8px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
}
.employer-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
}
.employer-logo {
  width: 56px;
  height: 56px;
  border-radius: 8px;
  object-fit: contain;
  background: #f8f8f8;
  border: 1px solid #f0f0f0;
}
.employer-name {
  font-size: 12px;
  color: #333;
  text-align: center;
  line-height: 1.3;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* TOP3 大卡 */
.employer-featured-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  max-width: 1200px;
  margin: 0 auto 16px;
  padding: 0 16px;
}
.employer-card-featured {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 20px 12px;
  background: #fff;
  border-radius: var(--radius-lg, 12px);
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
  position: relative;
}
.employer-card-featured:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(232,93,58,0.12);
}
.employer-featured-logo {
  width: 64px;
  height: 64px;
  border-radius: 12px;
  object-fit: contain;
  background: #f8f8f8;
  border: 1px solid #f0f0f0;
}
.employer-featured-name {
  font-size: 14px;
  font-weight: 600;
  color: #333;
  text-align: center;
  line-height: 1.3;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.employer-scale-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  font-size: 12px;
  color: var(--color-primary, #e85d3a);
  background: var(--color-primary-bg, rgba(232,93,58,0.08));
  border-radius: var(--radius-pill, 999px);
  font-weight: 500;
  line-height: 1.4;
}
/* TOP3 在招职位数标签 */
.employer-job-count {
  font-size: 12px;
  color: var(--color-text-muted, #888);
  line-height: 1.4;
}
.employer-job-count em {
  font-style: normal;
  font-weight: 600;
  color: var(--color-primary, #e85d3a);
}
/* 其余企业：4列紧凑卡片网格（PC 端隐藏，TOP3 大卡已覆盖核心雇主展示） */
.employer-mini-grid {
  display: none;
}
.employer-card-mini {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 1px 6px rgba(0,0,0,0.05);
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
}
.employer-card-mini:hover {
  transform: translateY(-2px);
  box-shadow: 0 3px 10px rgba(232,93,58,0.1);
}
.employer-mini-logo {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  object-fit: contain;
  background: #f8f8f8;
  border: 1px solid #f0f0f0;
  flex-shrink: 0;
}
.employer-mini-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1;
}
.employer-mini-name {
  font-size: 13px;
  font-weight: 500;
  color: #333;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.employer-mini-jobs {
  font-size: 12px;
  color: var(--color-text-muted, #999);
  line-height: 1.3;
}
@media (max-width: 1199px) {
  .employer-featured-grid { grid-template-columns: repeat(3, 1fr); }
  .employer-mini-grid { grid-template-columns: repeat(3, 1fr); }
}
/* 推荐雇主移动端隐藏 - 见上方统一 @media (max-width: 767px) 块 */

/* 骨架屏隐藏（内容加载后） */
.skeleton-hidden {
  display: none !important;
}
/* 移动端骨架屏只显示2个 - 见上方统一 @media (max-width: 767px) 块 */

@media (prefers-color-scheme: dark) {
  :root {
    --color-text-heading: #e8e8ed;
    --color-text-body: #c8c8d0;
    --color-text-muted: #9898a6;
    --color-text-light: #76768a;
    --color-text-placeholder: #55556a;
    --color-bg-page: #0f0f18;
    --color-bg-card: #1a1a28;
    --color-bg-glass: rgba(26,26,40,0.72);
    --color-border: #2a2a3e;
    --color-border-light: #222236;
    --color-divider: #1e1e30;
    --color-primary-bg: rgba(212,56,13,0.12);
    --color-primary-bg-hover: rgba(212,56,13,0.18);
    --color-secondary-bg: rgba(22,119,255,0.12);
    --color-success-bg: rgba(82,196,26,0.12);
    --color-warning-bg: rgba(250,173,20,0.12);
    --color-error-bg: rgba(255,77,79,0.12);
    --shadow-card: 0 2px 8px rgba(0,0,0,0.2), 0 0 0 1px rgba(255,255,255,0.04);
    --shadow-card-hover: 0 8px 28px rgba(0,0,0,0.3), 0 0 0 1px rgba(212,56,13,0.12);
  }
  body {
    background-color: var(--color-bg-page);
  }
  /* 导航栏暗色 */
  .main-nav {
    background: rgba(26,26,40,0.92);
    border-bottom-color: rgba(255,255,255,0.06);
  }
  .nav-hamburger span {
    background: #e8e8ed;
  }
  /* 搜索框暗色 */
  .search-box-wrapper {
    background: var(--color-bg-card);
  }
  .search-type-select {
    border-right-color: var(--color-border);
  }
  /* 底部暗色 */
  .footer-services {
    background: #12121e;
  }
  .footer-copyright {
    background: #0a0a14;
  }
  /* 品牌数据横条暗色 */
  .brand-data-bar {
    background: var(--color-bg-card);
    border-color: var(--color-border);
  }
  .brand-bar-salary-item {
    background: rgba(255,255,255,0.06);
    color: var(--color-text-muted);
  }
  /* 液态玻璃卡片暗色适配 */
  .job-card,
  .resume-card,
  .news-column {
    background: rgba(26,26,40,0.65);
    border-color: rgba(255,255,255,0.08);
  }
  .job-card::before {
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.15), transparent);
  }
  .resume-card::before {
    background: linear-gradient(90deg, transparent, rgba(22,119,255,0.2), transparent);
  }
  /* 资讯暗色 */
  .news-column-title {
    border-bottom-color: var(--color-border);
  }
  .news-list a {
    color: var(--color-text-muted);
  }
  .news-list a::before {
    background: var(--color-border);
  }
}

/* ========== 平台保障/社会证明（主色渐变+白字） ========== */
/* 平台保障 - 精简轻量版 */
.trust-section {
  max-width: var(--container-width, 1200px);
  margin: 40px auto;
  padding: 40px 24px 36px;
  position: relative;
  overflow: hidden;
  background: #f7f8fa;
  border-radius: var(--radius-xl, 16px);
  border: 1px solid #E6EDF4;
  box-shadow: none;
}
.trust-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 3px;
  background: linear-gradient(90deg, transparent, rgba(232,93,58,0.4), transparent);
  border-radius: 2px;
}
.trust-section-inner {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.trust-section-title {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  color: #1E2A3B;
  margin: 0 0 4px 0;
  letter-spacing: 1px;
}
.trust-section-title::after {
  content: '';
  display: block;
  width: 36px;
  height: 3px;
  margin: 12px auto 0;
  background: linear-gradient(90deg, #e85d3a, #f4a261);
  border-radius: 2px;
}
.trust-features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 32px;
}
.trust-feature {
  background: #fff;
  border-radius: 12px;
  padding: 24px 16px 20px;
  text-align: center;
  border: 1px solid #E6EDF4;
  box-shadow: 0 1px 4px rgba(0,0,0,0.04);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.trust-feature:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
  border-color: rgba(232,93,58,0.15);
}
.trust-feature-icon {
  width: 40px;
  height: 40px;
  margin: 0 auto 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(232,93,58,0.08);
  border-radius: 10px;
  color: #e85d3a;
  box-shadow: none;
  transition: transform 0.25s ease, background 0.25s ease;
}
.trust-feature:hover .trust-feature-icon {
  /* 去掉 scale(1.05)：双重动画（卡片+图标）视觉过重，保留背景变化即可 */
  background: rgba(232,93,58,0.12);
}
.trust-feature-name {
  font-size: 15px;
  font-weight: 600;
  color: #1E2A3B;
  margin: 0 0 6px 0;
  letter-spacing: 0.5px;
}
.trust-feature-desc {
  font-size: 13px;
  color: #8A9AAB;
  line-height: 1.6;
  margin: 0;
}
@media (max-width: 768px) {
  .trust-section {
    display: none; /* P4: 移动端隐藏trust-section，PC端保持显示 */
    margin: 32px 12px;
    padding: 28px 16px;
  }
  .trust-section-title {
    font-size: 20px;
    letter-spacing: 1px;
  }
  .trust-section-title::after {
    width: 36px;
    margin-top: 10px;
  }
  /* 移动端横向滚动 - 替代2列网格 */
  .trust-features {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    grid-template-columns: none;
    gap: 12px;
    margin-top: 24px;
    scroll-snap-type: x mandatory;
    padding-bottom: 8px;
  }
  .trust-features::-webkit-scrollbar { display: none; }
  .trust-feature {
    flex: 0 0 140px;
    scroll-snap-align: start;
    padding: 18px 12px 16px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  }
  .trust-feature-icon {
    width: 44px;
    height: 44px;
    margin-bottom: 10px;
    background: linear-gradient(135deg, #e85d3a 0%, #c84a2a 100%);
    box-shadow: 0 3px 8px rgba(232, 93, 58, 0.25);
  }
  .trust-feature-name {
    font-size: 13px;
    color: #1a1a1a;
  }
  .trust-feature-desc {
    font-size: 12px;
    line-height: 1.5;
    color: #666;
  }
}

/* ========== 返回顶部按钮 ========== */
.back-to-top {
  position: fixed;
  right: 20px;
  bottom: 80px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid var(--color-border-light, #eee);
  color: var(--color-primary, #e85d3a);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px) scale(0.8);
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s, box-shadow 0.2s;
  z-index: 900;
  -webkit-tap-highlight-color: transparent;
}
.back-to-top.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}
.back-to-top:hover {
  box-shadow: 0 6px 20px rgba(232, 93, 58, 0.25);
  background: #fff;
}
.back-to-top:active {
  transform: translateY(0) scale(0.92);
}
/* PC端位置调整 - 避开聊天FAB按钮 */
@media (min-width: 769px) {
  .back-to-top {
    bottom: 96px;
    right: 32px;
  }
}
/* 移动端避开底部Tab栏 */
@media (max-width: 768px) {
  .back-to-top {
    bottom: 76px;
    right: 16px;
  }
}

/* ========== 空状态设计 ========== */
.empty-state {
  grid-column: 1 / -1;
  text-align: center;
  padding: 48px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.empty-state-icon {
  color: var(--color-text-muted, #999);
  opacity: 0.4;
  margin-bottom: 4px;
}
.empty-state-text {
  font-size: 14px;
  color: var(--color-text-muted, #999);
  margin: 0;
}
.empty-state-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 8px;
  padding: 8px 24px;
  font-size: 13px;
  font-weight: 500;
  color: var(--color-primary, #e85d3a);
  background: var(--color-primary-bg, rgba(232,93,58,0.08));
  border-radius: var(--radius-pill, 999px);
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  -webkit-tap-highlight-color: transparent;
}
.empty-state-btn:hover {
  background: rgba(232,93,58,0.15);
}
.empty-state-btn:active {
  transform: scale(0.96);
}

/* ========== 无限滚动加载（P1-1，仅移动端） ========== */
.load-more-sentinel {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: center;
  /* 默认几乎不占空间，仅保留1px确保IntersectionObserver可触发 */
  min-height: 1px;
  padding: 0;
  cursor: default;
  -webkit-tap-highlight-color: transparent;
  overflow: hidden;
}
/* 活跃状态（加载中/已加载全部/出错）才撑开高度 */
.load-more-sentinel.loading,
.load-more-sentinel.no-more,
.load-more-sentinel.error {
  min-height: 56px;
  padding: 16px 0;
}
/* PC 端隐藏 sentinel，保持固定数量分页（必须置于基础规则之后以生效） */
@media (min-width: 769px) {
  .load-more-sentinel {
    display: none;
  }
}
/* 默认隐藏 loading 旋转图标 */
.load-more-sentinel .load-more-loading {
  display: none;
  width: 22px;
  height: 22px;
  border: 2px solid rgba(232, 93, 58, 0.18);
  border-top-color: var(--color-primary, #e85d3a);
  border-radius: 50%;
  animation: loadMoreSpin 0.7s linear infinite;
}
@keyframes loadMoreSpin {
  to { transform: rotate(360deg); }
}

/* === 列表/详情修复 P7-P17 === */

/* P7: 职位列表"在线沟通"按钮 - 专业配色匹配全站暖橙主题
   原 job-list.css 使用蓝色 secondary，此处覆盖为主色系：
   白底+轻阴影+主色图标 → hover主色底+白色图标，圆形+微交互 */
.jl-card-chat{
  width:44px;
  height:44px;
  border:none;
  border-radius:50%;
  background:#fff;
  color:var(--color-primary);
  cursor:pointer;
  transition:all .2s cubic-bezier(.4,0,.2,1);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  padding:0;
  box-shadow:0 2px 8px rgba(0,0,0,0.08);
}
.jl-card-chat:hover{
  background:var(--color-primary);
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 6px 16px rgba(232,93,58,0.28);
}
.jl-card-chat:active{
  transform:scale(.92);
  background:var(--color-primary-hover);
}
.jl-card-chat svg{display:block;}

/* P9/P16/P17 移动端布局优化 */
@media (max-width:767px){
  /* P9: 职位详情安全提醒 - 紧凑两行布局：第一行图标+文字，第二行举报按钮右对齐 */
  .jd-safety-tip{
    padding:12px 14px;
    gap:8px;
    border-radius:var(--radius-lg,16px);
    align-items:flex-start;
    flex-wrap:wrap;
    background:linear-gradient(135deg,#f0f7ff,#e8f4fd) !important;
    border:1px solid #d6e4ff !important;
  }
  .jd-safety-icon{
    width:28px;
    height:28px;
    border-radius:var(--radius-sm,6px);
    background:linear-gradient(135deg,#1677ff,#4096ff) !important;
    box-shadow:0 2px 6px rgba(22,119,255,0.2) !important;
  }
  .jd-safety-icon svg{width:16px;height:16px;}
  .jd-safety-content{
    flex:1;
    min-width:0;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
  }
  .jd-safety-text{
    font-size:12px;
    line-height:1.5;
    color:#0958d9 !important;
  }
  .jd-safety-report{
    align-self:flex-end;
    padding:5px 14px;
    font-size:11px;
    border:1px solid #d6e4ff !important;
    background:#fff !important;
    color:#1677ff !important;
    border-radius:var(--radius-pill,20px);
  }
  .jd-safety-report:hover{
    background:linear-gradient(135deg,#1677ff,#4096ff) !important;
    color:#fff !important;
    border-color:transparent !important;
  }

  /* P16/P17: 简历详情三按钮统一尺寸，防止溢出与文字换行
     原 resume-detail.css 移动端规则漏掉 .rd-btn-chat，此处统一覆盖 */
  .rd-btn-chat,
  .rd-btn-download,
  .rd-btn-invite{
    width:auto;
    flex:1 1 0;
    max-width:none;
    height:44px;
    min-height:44px;
    font-size:14px;
    padding:0 8px;
    gap:6px;
    white-space:nowrap;
    overflow:hidden;
    border-radius:var(--radius-lg,16px);
  }
  .rd-btn-chat svg,
  .rd-btn-download svg,
  .rd-btn-invite svg{
    flex-shrink:0;
    width:16px;
    height:16px;
  }
}
/* 加载中状态 */
.load-more-sentinel.loading .load-more-loading {
  display: inline-block;
}
/* 终态文字（已加载全部 / 点击重试）通过伪元素渲染，保持HTML简洁 */
.load-more-sentinel::after {
  content: '';
  font-size: 13px;
  line-height: 1.4;
  color: var(--color-text-muted, #999);
}
.load-more-sentinel.no-more::after {
  content: '没有更多了';
}
.load-more-sentinel.error {
  cursor: pointer;
}
.load-more-sentinel.error::after {
  content: '加载失败，点击重试';
  color: var(--color-primary, #e85d3a);
}
/* 尊重用户的减少动效偏好 */
@media (prefers-reduced-motion: reduce) {
  .load-more-sentinel .load-more-loading {
    animation-duration: 2s;
  }
}

/* ========== 职位卡片左滑操作（P1-2，仅移动端） ========== */
@media (max-width: 768px) {
  /* 卡片裁剪溢出，遮住默认隐藏的操作层 */
  .job-card {
    overflow: hidden;
    touch-action: pan-y;
  }
  /* 拖拽中禁用过渡，确保跟手 */
  .job-card-swiping {
    transition: none !important;
  }
  /* 展开态：卡片左移露出操作层 */
  .job-card-swiped {
    transform: translateX(-88px) !important;
  }
  /* 操作层（卡片内部右边缘，默认 translateX(100%) 隐藏在裁剪区） */
  .job-card-actions {
    position: absolute;
    top: 0;
    right: 0;
    width: 88px;
    height: 100%;
    display: flex;
    align-items: stretch;
    pointer-events: auto;
    transform: translateX(100%);
    transition: transform 0.3s ease;
  }
  .job-card-swiping .job-card-actions {
    transition: none;
  }
  .job-card-swiped .job-card-actions {
    transform: translateX(0);
  }
  .job-card-action-btn {
    flex: 1;
    border: none;
    background: linear-gradient(135deg, #ff6b6b 0%, #ee5a52 100%);
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 4px;
    border-radius: 0 var(--radius-lg, 12px) var(--radius-lg, 12px) 0;
    transition: opacity 0.15s;
  }
  .job-card-action-btn:active {
    opacity: 0.85;
  }
  /* 移除动画（点击不感兴趣后） */
  .job-card-removing {
    transform: translateX(-100%) !important;
    opacity: 0;
    transition: transform 0.3s ease, opacity 0.3s ease !important;
  }
}

/* === 首页修复 P1-P15 === */

/* P2: 移动端hero-search背景改用纯色渐变，防止背景图右侧文字漏出 */
@media screen and (max-width: 767px) {
  .hero-search {
    background: linear-gradient(135deg, #e85d3a 0%, #c84a2a 100%) !important;
    background-image: linear-gradient(135deg, #e85d3a 0%, #c84a2a 100%) !important;
  }
}

/* P3: 移动端分类图标横向滚动修复 - 显式约束宽度+启用pan-x手势 */
@media screen and (max-width: 767px) {
  .category-nav-icons {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    touch-action: pan-x;
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
    flex-wrap: nowrap;
  }
}

/* P4: 资讯双卡片已删除，统一为 news-grid auto-fit 自适应（PC 双列/移动单列） */
/* 已清理 .m-news-cards 和 .m-news-entry 规则（HTML 已移除） */

/* P5: 极速发布按钮样式（保留渐变冲击力，CTA 必须醒目） */
.qpb-icon {
  background: linear-gradient(135deg, #e85d3a, #c84a2a);
  color: #fff;
  box-shadow: 0 2px 8px rgba(232,93,58,0.25);
  border: none;
}
.qpb-btn {
  background: linear-gradient(135deg, #e85d3a, #c84a2a);
  color: #fff;
  border: none;
  box-shadow: 0 2px 8px rgba(232,93,58,0.25);
}
.qpb-btn:hover {
  box-shadow: 0 4px 14px rgba(232,93,58,0.35);
  transform: translateY(-1px);
}
/* 极速发布 banner 底色：纯色（避免渐变叠加渐变视觉过重） */
.quick-pub-banner-inner {
  background: #fff5f0;
  border-color: rgba(232,93,58,0.18);
}

/* P12: 移动端隐藏salary-section（薪资分布统计适合PC端浏览） */
@media screen and (max-width: 767px) {
  .salary-section,
  .brand-data-bar {
    display: none;
  }
}

/* P15: 移动端搜索按钮改用白色实底+深橙图标，确保与橙色背景有足够对比度 */
@media screen and (max-width: 767px) {
  .search-submit-btn {
    background: #fff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  }
  .search-submit-btn svg {
    color: #e85d3a !important;
  }
  .search-submit-btn:active {
    background: #fff5f0 !important;
  }
}

/* ===== 移动端首页"做减法"重构（2026-06-26） ===== */
/* PC端默认隐藏移动端专属元素（m-news-entry 已删除，此处保留空注释） */

@media screen and (max-width: 767px) {
  /* --- 移动端整体滚动条美化（细窄+主色半透明） --- */
  ::-webkit-scrollbar {
    width: 4px;
    height: 4px;
  }
  ::-webkit-scrollbar-track {
    background: transparent;
  }
  ::-webkit-scrollbar-thumb {
    background: rgba(232,93,58,0.25);
    border-radius: 2px;
  }
  ::-webkit-scrollbar-thumb:active {
    background: rgba(232,93,58,0.45);
  }
  /* 横向滚动容器滚动条强制隐藏（hot-tags/live-feed/category 等） */
  .hot-tags, .live-feed-track, .category-nav-icons, .category-nav-chips, .trust-features {
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .hot-tags::-webkit-scrollbar,
  .live-feed-track::-webkit-scrollbar,
  .category-nav-icons::-webkit-scrollbar,
  .category-nav-chips::-webkit-scrollbar,
  .trust-features::-webkit-scrollbar {
    display: none;
  }

  /* --- Hero区：浅灰背景 + 深色文字 --- */
  .hero-search {
    background: var(--color-bg) !important;
    background-image: none !important;
    padding: 20px 0 12px !important;
  }
  .hero-search::before,
  .hero-search::after {
    display: none !important;
  }
  .hero-title {
    color: #5A6B7C !important; /* 降对比度：让搜索框成为唯一 L1 焦点 */
    text-shadow: none !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    margin-bottom: 12px !important;
  }
  .hero-subtitle {
    display: none !important; /* 移动端隐藏副标题，突出搜索框（用户确认） */
  }
  /* 搜索框：白色卡片+轻边框 + L1 视觉焦点加深阴影 */
  .search-box-wrapper {
    background: #fff !important;
    border: 1px solid #E6EDF4 !important;
    box-shadow: 0 6px 24px rgba(0,0,0,0.14) !important;
    border-radius: 14px !important;
  }
  .search-input-wrapper input {
    color: #1E2A3B !important;
  }
  .search-input-wrapper input::placeholder {
    color: #8A9AAB !important;
  }
  .search-type-select {
    color: #1E2A3B !important;
  }
  .search-type-select .arrow-icon {
    color: #8A9AAB !important;
  }
  /* 搜索按钮：主色实底 */
  .search-submit-btn {
    background: #e85d3a !important;
    border-radius: 0 14px 14px 0 !important;
  }
  .search-submit-btn svg {
    color: #fff !important;
  }
  .search-submit-btn:active {
    background: #c84a2a !important;
  }
  /* 热门标签：浅色背景适配 */
  .hot-tags-label {
    color: #8A9AAB !important;
  }
  .hot-tags a {
    background: rgba(232,93,58,0.08) !important;
    color: #e85d3a !important;
  }
  .hot-tags a:active {
    background: rgba(232,93,58,0.15) !important;
  }
  .hot-tags a.tag-more {
    color: #8A9AAB !important;
    background: transparent !important;
  }
  /* 信任标签：精简为 1 个（人工审核），移动端也显示 */
  .hero-trust-tags {
    display: flex !important;
    margin: 10px 0 8px 0 !important;
  }
  .hero-trust-tags .trust-tag {
    color: rgba(30,42,59,0.75) !important; /* 深色文字：适配移动端浅色 Hero 背景 */
    font-size: 12px !important;
  }
  .hero-trust-tags .trust-tag-dot {
    color: rgba(30,42,59,0.4) !important; /* 分隔符：深色弱化，与文字同色系 */
  }

  /* --- 隐藏模块 --- */
  /* 统计条已删除（HTML 已移除），保留规则防止残留 */
  .hero-stats-bar { display: none !important; }
  .hero-stat-divider { display: none !important; }
  /* 实时投递动态条：移动端浅色适配 */
  .live-feed {
    background: rgba(232,93,58,0.06) !important;
    border-color: rgba(232,93,58,0.12) !important;
    backdrop-filter: none !important;
    margin-top: 10px !important;
    max-width: 100% !important;
  }
  .live-feed-dot { background: #4cd964 !important; }
  .live-feed-content { color: rgba(30,42,59,0.6) !important; }
  .live-feed-content span b { color: #e85d3a !important; }
  /* 分类导航条：恢复显示（2×4 图标网格已在前面规则中定义） */
  .category-nav-bar { display: block !important; }
  /* 最新人才 */
  .m-hide-talent { display: none !important; }
  /* 养老资讯：恢复显示（统一 news-grid auto-fit 单列堆叠） */
  .m-hide-news-wrap { display: block !important; }
  /* 推荐雇主（已有规则，确保生效） */
  .employer-section { display: none !important; }
  /* 平台保障（已有规则，确保生效） */
  .trust-section { display: none !important; }

  /* --- 极速发布：弱化为 L3 背景区块，让推荐职位 Tab 成为视觉焦点 --- */
  .quick-pub-banner {
    margin: 8px 16px 12px !important;
    padding: 0 !important;
  }
  .quick-pub-banner-inner {
    padding: 10px 14px !important;
    border-radius: 12px !important;
    background: var(--color-bg-page) !important;
    color: var(--color-text-heading) !important;
    border: 1px solid var(--color-border-light) !important;
    box-shadow: none !important;
  }
  .qpb-icon { display: inline-flex !important; }
  .qpb-desc {
    display: block !important;
    font-size: 12px !important;
    color: var(--color-text-secondary) !important;
  }
  .qpb-title { font-size: 13px !important; color: var(--color-text-heading) !important; font-weight: 600 !important; }
  .qpb-right svg { display: inline-block !important; color: var(--color-text-secondary) !important; }
  .qpb-btn {
    font-size: 12px !important;
    padding: 4px 10px !important;
    border-radius: 12px !important;
    background: var(--color-primary) !important;
    color: #fff !important;
    border: none !important;
  }
  .quick-pub-banner-inner:active {
    transform: scale(0.99) !important;
    background: rgba(232,93,58,0.04) !important;
  }

  /* --- 资讯入口已删除，统一为 news-grid auto-fit（PC 双列/移动单列） --- */

  /* --- 统一页面浅灰背景 --- */
  .hero-search-inner {
    padding: 0 16px !important;
  }
  /* 职位卡片统一：白卡片+轻边框 */
  .job-card {
    background: #fff !important;
    border: 1px solid #E6EDF4 !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04) !important;
  }
  /* 移动端隐藏公司性质/规模行，减少信息密度 */
  .job-card-company-meta {
    display: none !important;
  }
  /* 简历引导条适配 */
  .resume-guide-bar {
    margin: 0 16px 12px !important;
  }

  /* --- 底部Tab栏彩色图标高级感 --- */
  .mobile-tab-bar {
    background: rgba(255,255,255,0.98) !important;
    backdrop-filter: saturate(180%) blur(24px) !important;
    -webkit-backdrop-filter: saturate(180%) blur(24px) !important;
    box-shadow: 0 -0.5px 0 rgba(0,0,0,0.06), 0 -2px 12px rgba(0,0,0,0.04) !important;
  }
  .mobile-tab-item {
    transition: all 0.2s cubic-bezier(0.25, 0.1, 0.25, 1) !important;
  }
  /* 默认：灰色未激活，隐藏彩色层 */
  .tab-fill-active { display: none !important; }
  .tab-fill-inactive { display: block !important; fill: #b0b0b0 !important; }
  .tab-detail { display: none !important; }
  .mobile-tab-item svg { color: #b0b0b0 !important; transition: all 0.25s ease !important; }
  /* 激活态：显示彩色层，隐藏灰色层 */
  .mobile-tab-item.active .tab-fill-active { display: block !important; }
  .mobile-tab-item.active .tab-fill-inactive { display: none !important; }
  .mobile-tab-item.active .tab-detail { display: block !important; }
  .mobile-tab-item.active svg { filter: drop-shadow(0 2px 4px rgba(0,0,0,0.12)) !important; }
  /* 按压反馈 */
  .mobile-tab-item:active {
    transform: scale(0.92) !important;
  }
  .mobile-tab-item.tab-ripple {
    background: rgba(232,93,58,0.06) !important;
    border-radius: 12px !important;
  }

  /* --- 顶部导航栏按钮动态效果 --- */
  .mobile-nav-links {
    background: rgba(255,255,255,0.98) !important;
    backdrop-filter: saturate(180%) blur(24px) !important;
    -webkit-backdrop-filter: saturate(180%) blur(24px) !important;
    box-shadow: 0 0.5px 0 rgba(0,0,0,0.06), 0 2px 8px rgba(0,0,0,0.03) !important;
  }
  .mobile-nav-link {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #666 !important;
    padding: 8px 14px !important;
    border-radius: 10px !important;
    transition: all 0.2s cubic-bezier(0.25, 0.1, 0.25, 1) !important;
    position: relative !important;
    -webkit-tap-highlight-color: transparent !important;
  }
  /* 按压效果 - 微缩放+变色 */
  .mobile-nav-link:active {
    background: rgba(232,93,58,0.08) !important;
    color: #e85d3a !important;
    transform: scale(0.95) !important;
  }
  /* 激活态 - 底部渐变指示条 */
  .mobile-nav-link[aria-current="page"],
  .mobile-nav-link.active {
    color: #1E2A3B !important;
    font-weight: 600 !important;
  }
  .mobile-nav-link[aria-current="page"]::after,
  .mobile-nav-link.active::after {
    content: '' !important;
    position: absolute !important;
    bottom: 2px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 18px !important;
    height: 3px !important;
    border-radius: 3px !important;
    background: linear-gradient(90deg, #e85d3a, #ff8c42) !important;
    animation: navIndicatorIn 0.25s ease !important;
  }
  /* 发布按钮 - 主色文字+轻底色（与旁边链接协调） */
  .mobile-nav-link-publish {
    color: #e85d3a !important;
    font-weight: 600 !important;
    background: rgba(232,93,58,0.08) !important;
    border-radius: 10px !important;
    padding: 8px 14px !important;
    box-shadow: none !important;
  }
  .mobile-nav-link-publish:active {
    background: rgba(232,93,58,0.15) !important;
    color: #c84a2a !important;
    transform: scale(0.95) !important;
  }
}

/* ========== PC端首页页面节奏优化 ========== */
/* 统一各section间的垂直间距，建立视觉节奏 */
.section-header {
  padding: 36px var(--space-xl) var(--space-lg);
}
/* 资讯区标题增加上间距 */
.news-grid {
  margin-top: 8px;
}
/* 极速发布CTA上下间距统一 */
.quick-pub-banner {
  margin: 28px auto;
}

/* ========== 全国热门城市分站（首页 GEO 本地化入口） ========== */
.city-portal-section {
  max-width: 1200px;
  margin: 28px auto;
  padding: 28px;
  background: linear-gradient(135deg, #fff5f0 0%, #fff8f3 100%);
  border: 1px solid rgba(232, 93, 58, 0.12);
  border-radius: var(--radius-xl, 16px);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
}
.city-portal-inner {
  width: 100%;
}
.city-portal-head {
  text-align: center;
  margin-bottom: 22px;
}
.city-portal-title {
  font-size: var(--font-size-xl, 22px);
  font-weight: 700;
  color: var(--color-text-title, #1a1a1a);
  margin: 0 0 8px;
  background: linear-gradient(135deg, #e85d3a 0%, #ff8c42 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.city-portal-sub {
  font-size: var(--font-size-sm, 14px);
  color: var(--color-text-muted, #888);
  margin: 0;
}
.city-portal-grid {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  gap: 10px;
}
.city-portal-grid a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 6px;
  background: #fff;
  border: 1px solid rgba(232, 93, 58, 0.08);
  border-radius: var(--radius-md, 10px);
  font-size: 14px;
  color: var(--color-text-body, #444);
  text-decoration: none;
  transition: all 0.2s;
}
.city-portal-grid a:hover {
  background: linear-gradient(135deg, #e85d3a, #ff8c42);
  color: #fff;
  border-color: transparent;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(232, 93, 58, 0.25);
}
.city-portal-grid a:active {
  transform: scale(0.97);
}
/* 折叠按钮：PC 默认隐藏，移动端显示 */
.city-portal-toggle {
  display: none;
}

/* 平板端 6 列 */
@media (max-width: 1199px) and (min-width: 768px) {
  .city-portal-grid {
    grid-template-columns: repeat(6, 1fr);
  }
  .city-portal-section {
    margin: 20px 16px;
    padding: 22px;
  }
}
/* 移动端 */
@media (max-width: 767px) {
  .city-portal-section {
    margin: 16px 12px;
    padding: 18px 14px;
  }
  .city-portal-title {
    font-size: 15px; /* 折叠态紧凑：从 18px 降到 15px */
    margin-bottom: 6px;
  }
  .city-portal-sub {
    font-size: 12px;
    display: none; /* 折叠后副标题占空间，移到按钮内 */
  }
  /* 折叠按钮：移动端显示，全宽胶囊 */
  .city-portal-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 12px 16px;
    margin-bottom: 0;
    background: var(--color-bg-page);
    border: 1px solid var(--color-border-light);
    border-radius: 12px;
    font-size: 14px;
    font-weight: 500;
    color: var(--color-text-body);
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
  }
  .city-portal-toggle:active {
    background: var(--color-primary-bg);
    border-color: rgba(232,93,58,0.25);
  }
  .city-portal-toggle svg {
    transition: transform 0.2s ease;
  }
  /* 展开态：箭头旋转 */
  .city-portal-section.open .city-portal-toggle svg {
    transform: rotate(180deg);
  }
  /* 城市网格：默认折叠，展开时显示 */
  .city-portal-grid {
    display: none;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    margin-top: 10px;
  }
  .city-portal-section.open .city-portal-grid {
    display: grid;
    animation: cityFadeIn 0.2s ease-out;
  }
  .city-portal-grid a {
    padding: 10px 4px;
    font-size: 13px;
  }
  @keyframes cityFadeIn {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
  }
}
/* 小手机 3 列 */
@media (max-width: 480px) {
  .city-portal-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

