 body {
      padding-top: 50px; 
      padding-bottom: 70px;
    }
    /* 筛选区域 */
    .filter-section {
      background: var(--white);
      border-radius: var(--radius-lg);
      padding: var(--spacing-md);
      margin-bottom: var(--spacing-md);
      box-shadow: var(--shadow-sm);
    }

    .filter-row {
      display: flex;
      align-items: center; 
      margin-bottom: var(--spacing-md);
      position: relative;
    }

    .filter-row:last-child {
      margin-bottom: 0;
    }

    /* 筛选区域 */
    .filter-section {
      background: var(--white);
      padding: var(--spacing-md);
      box-shadow: var(--shadow-sm);
    }

    /* 完全重写筛选行布局，确保标签与选项按钮垂直居中对齐，且默认只显示一行 */
    .filter-row {
      display: flex;
      align-items: center; /* 垂直居中对齐标签和按钮 */
      margin-bottom: var(--spacing-md);
      position: relative;
      margin-bottom: 15px;
    }

    .filter-row:last-child {
      margin-bottom: 0;
    }

    .filter-label {
      font-size: 13px;
      font-weight: var(--font-medium);
      color: var(--text-primary);
      flex-shrink: 0;
    }

    .filter-options {
      display: flex;
      flex-wrap: wrap;
      flex: 1;
      max-height: 23px; /* 默认只显示一行 */
      overflow: hidden; /* 完全隐藏溢出内容 */
      transition: max-height 0.3s ease;
      padding-right: 90px; /* 为展开按钮留出空间 */
      align-items: flex-start; /* 顶部对齐，避免内容偏移 */
    }

    .filter-options.expanded {
      max-height: 300px; /* 展开时显示多行 */
    }

    .filter-option {
      padding: 2px 10px;
      background: var(--bg-secondary);
      border: 1px solid var(--border-color);
      border-radius: 25px;
      font-size: 13px;
      color: var(--text-secondary);
      cursor: pointer;
      transition: all var(--transition-fast);
      white-space: nowrap;
      display: flex;
      align-items: center;
      flex-shrink: 0; /* 防止按钮被压缩 */
    }

    .filter-option:hover {
      background: var(--bg-hover);
      border-color: var(--primary-color);
      color: var(--primary-color);
    }

    .filter-option.active {
      background:rgba(61 188 243 / 68%);
      color: var(--white);
    }


    .filter-toggle-btn {
      position: absolute;
      right: 0;
      top: 0; /* 从顶部开始，与第一行按钮对齐 */
      padding: 3px 5px;
      background: #fff;
      color: #ff7373;
      border: 1px solid #ff7373;
      border-radius: var(--radius-md);
      font-size: 12px;
      cursor: pointer;
      display: flex;
      align-items: center;
      transition: all var(--transition-fast);
      box-shadow: var(--shadow-sm);
      margin-top:0px;
    }

    .filter-toggle-btn:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-md);
    }

    .filter-toggle-btn svg {
      width: 14px;
      height: 14px;
      transition: transform var(--transition-fast);
    }

    .filter-toggle-btn.expanded svg {
      transform: rotate(180deg);
    }
    /* 伴游列表卡片 - 横向卡片布局，与高端列表的大图纵向布局不同 */
    .list-container {
      padding: 0 var(--spacing-md) var(--spacing-md);
    }

    .by-card {
      background: var(--white);
      border-radius: var(--radius-lg);
      padding: var(--spacing-md);
      margin-bottom: var(--spacing-md);
      box-shadow: var(--shadow-sm);
      display: flex;
      cursor: pointer;
      transition: all var(--transition-base);
    }

    .by-card:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-md);
    }

    .by-card-image {
      width: 120px;
      height: 160px;
      border-radius: var(--radius-md);
      overflow: hidden;
      flex-shrink: 0;
      position: relative;
      margin-right: var(--spacing-md);
    }

    .by-card-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    /* 置顶和认证标签 */
    .by-card-badges {
      position: absolute;
      left: 0;
      bottom: 0;
      display: flex;
      flex-direction: column;
      gap: var(--spacing-xs);
    }

    .badge {
      padding: 2px var(--spacing-sm);
      border-radius: 0px 5px;
      font-size: 11px;
      font-weight: var(--font-medium);
      white-space: nowrap;
      display: flex;
      align-items: center;
      justify-content: center;
      border: none;
    }

    .badge-top {
      background: linear-gradient(to right, rgba(248 164 10 / 68%), #ff8fb3);
      color: var(--white);
      box-shadow: 0 2px 4px rgba(255, 105, 180, 0.3);
    }

    .badge-verified {
      /* 改为浅粉色主题渐变 */
      background: linear-gradient(to right, rgba(248 164 10 / 68%), #ff8fb3);
      color: var(--white);
      box-shadow: 0 2px 4px rgba(255, 182, 193, 0.3);
    }

    .by-card-content {
      flex: 1;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .by-card-header {
      margin-bottom: var(--spacing-sm);
    }

    .by-card-title {
      font-size: var(--font-lg);
      font-weight: var(--font-semibold);
      color: var(--text-primary);
      margin-bottom: var(--spacing-xs);
    }

    .by-card-subtitle {
          -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: var(--font-sm);
    color: var(--text-secondary);
    line-height: 1.6;
    display: -webkit-box;
    }

    .by-card-info {
      display: grid;
      grid-template-columns: 1fr 1fr;
/*      gap: var(--spacing-xs);*/
      margin-bottom: var(--spacing-sm);
    }

    .info-item {
/*      display: flex;*/
      align-items: center;
      
      font-size: var(--font-sm);
      color: var(--text-secondary);
    }

    .info-item svg {
      width: 14px;
      height: 14px;
      stroke: var(--text-tertiary);
      flex-shrink: 0;
      margin-right: var(--spacing-xs);
    }

    .by-card-tags {
      display: flex;
      flex-wrap: wrap;
      margin-bottom: var(--spacing-sm);
    }

    .tag-item {
      padding: 2px var(--spacing-sm);
      background: rgba(0 0 0 / 3%);
      color: #ff7373;
      border-radius: var(--radius-sm);
      font-size: 13px;
      margin-right:var(--spacing-xs);
    }

.tag-item:last-child {
margin-right: 0;
}


    .by-card-footer {
      display: flex;
      justify-content: space-between;
      align-items: center;
    }

    .by-card-price {
      font-size: var(--font-base);
      font-weight: var(--font-bold);
      color: var(--primary-dark);
    }

    .by-card-price-unit {
      font-size: var(--font-xs);
      font-weight: var(--font-normal);
      color: var(--text-secondary);
    }

    .by-card-stats {
      display: flex;
      gap: var(--spacing-md);
      font-size: 12px;
      color: var(--text-tertiary);
    }

    .stat-item {
      display: flex;
      align-items: center;
/*      gap: 2px;*/
    }

    .stat-item svg {
      width: 14px;
      height: 14px;
      stroke: currentColor;
      margin-right: 2px;
    }