    :root {
      --radius: 5px;
      --shadow: 0 4px 20px rgba(0,0,0,.08);
    }

    /* ===== 最新对接模块：白底 + 左上角标题 + 丝滑水平滑窗 ===== */
    .dock-module {
      position: relative;
      margin: 20px auto;
      width: 80%;
      height: 46px;
      background: #fff;
      border-radius: 25px;
      box-shadow: var(--shadow);
      overflow: hidden;
      min-width: 380px;
      max-width: 480px;
    }
    .dock-label {
      position: absolute;
      left: 20px;
      top: 50%;
      transform: translateY(-50%);
      color: var(--b2b-orange);
      font-size: 14px;
      font-weight: 600;
      z-index: 2;
    }
    .dock-slider {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      white-space: nowrap;
      opacity: 0;
      transition: opacity .4s ease, transform .6s cubic-bezier(.22,.61,.36,1);
      padding-left: 90px; /* 避开“最新对接”4字 */
    }
    .dock-slider.in {
      opacity: 1;
      transform: translateY(-50%) translateX(0);
    }
    .dock-slider.out-left {
      opacity: 0;
      transform: translateY(-50%) translateX(-100%);
    }
    .dock-slider.out-right {
      opacity: 0;
      transform: translateY(-50%) translateX(100%);
    }

    /* 一行密集搜索栏（白底） */
    .search-bar {
      background: #fff;
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      padding: 15px 20px;
      margin-bottom: 20px;
    }
    .search-bar .form-control,
    .search-bar .form-select {
      border: 1px solid #e0e0e0;
      border-radius: var(--radius);
      font-size: 14px;
    }
    .btn-search {
      background: linear-gradient(135deg, var(--b2b-blue), #004a8c);
      color: #fff;
      border: 0;
      border-radius: var(--radius);
      font-size: 14px;
      padding: 8px 20px;
      transition: .3s;
    }
    .btn-search:hover {
      background: linear-gradient(135deg, var(--b2b-orange), #e55a00);
      transform: translateY(-2px);
      box-shadow: 0 6px 20px rgba(253, 95, 0, .25);
    }

    /* 采购列表：ul li 形式 + 表头 */
    .buy-list {
      background: #fff;
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      padding: 0;
      margin: 0;
      list-style: none;
    }
    .buy-header {
      display: flex;
      padding: 12px 20px;
      background: var(--b2b-light);
      font-size: 14px;
      font-weight: 600;
      color: var(--b2b-blue);
      border-bottom: 2px solid var(--b2b-orange);
      border-radius: var(--radius) var(--radius) 0 0;
    }
    .buy-header .col {
      text-align: center;
    }
    .buy-header .col-5 {
      text-align: left;
    }

    .buy-item {
      display: flex;
      padding: 14px 20px;
      border-bottom: 1px solid #f0f0f0;
      transition: .3s;
      align-items: center;
    }
    .buy-item:hover {
      background: #fff8f0;
      border-radius: var(--radius);
    }
    .buy-item:last-child {
      border-bottom: 0;
      border-radius: 0 0 var(--radius) var(--radius);
    }
    .buy-item .col {
      text-align: center;
    }
    .buy-item .col-5 {
      text-align: left;
    }

    .buy-tag {
      background: var(--b2b-orange);
      color: #fff;
      font-size: 12px;
      padding: 4px;
      border-radius: 4px;
      white-space: nowrap;
    }
    .buy-title {
      font-size: 15px;
      font-weight: 600;
      color: var(--b2b-blue);
      margin-bottom: 4px;
    }
    .buy-title:hover {
      color: var(--b2b-orange);
    }
    .buy-meta {
      font-size: 12px;
      color: #777;
    }
    .buy-date {
      font-size: 12px;
      color: #999;
    }
    .btn-contact {
      background: linear-gradient(135deg, var(--b2b-blue), #004a8c);
      color: #fff;
      border: 0;
      border-radius: var(--radius);
      padding: 6px 14px;
      font-size: 13px;
      transition: .3s;
    }
    .btn-contact:hover {
      background: linear-gradient(135deg, var(--b2b-orange), #e55a00);
      transform: translateY(-2px);
      box-shadow: 0 4px 12px rgba(253, 95, 0, .25);
    }

    /* 无数据提示 */
    .no-data {
      text-align: center;
      padding: 60px 20px;
      color: #999;
      font-size: 16px;
    }
    .no-data i {
      font-size: 48px;
      color: #ddd;
      margin-bottom: 12px;
    }

    /* 侧边栏 20% */
    .sidebar {
      background: #fff;
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      padding: 20px;
    }
    .sidebar-tit {
      font-size: 16px;
      font-weight: 600;
      color: var(--b2b-blue);
      margin-bottom: 12px;
      border-left: 4px solid var(--b2b-orange);
      padding-left: 8px;
    }
    .hot-word a {
      display: inline-block;
      background: var(--b2b-light);
      color: #555;
      font-size: 13px;
      padding: 5px 10px;
      border-radius: var(--radius);
      margin: 4px 4px 4px 0;
      transition: .2s;
    }
    .hot-word a:hover {
      background: var(--b2b-orange);
      color: #fff;
    }
    .sidebar-ad {
      width: 100%;
      border-radius: var(--radius);
      margin-top: 15px;
    }

    /* 分页：居中在列表下方 */
    .pagination-container {
      margin-top: 20px;
      display: flex;
      justify-content: center;
    }
    .pagination .page-link {
      color: var(--b2b-blue);
      border-radius: var(--radius);
      margin: 0 3px;
    }
    .pagination .page-link:hover {
      background: var(--b2b-orange);
      color: #fff;
      border-color: var(--b2b-orange);
    }
    .pagination .page-item.active .page-link {
      background: var(--b2b-orange);
      border-color: var(--b2b-orange);
    }

    /* 响应式：手机堆叠 */
    @media (max-width: 768px) {
      .buy-header,
      .buy-item {
        /*flex-direction: column;*/
        gap: 8px;
        align-items: flex-start;
      }
      .buy-header .col,
      .buy-item .col {
        width: 100% !important;
        text-align: left !important;
      }
    }
    
    
    /* 面包屑 */
    .breadcrumb {
      background: #fff;
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      padding: 10px 15px;
      font-size: 13px;
      margin-bottom: 20px;
    }
    .breadcrumb a {
      color: var(--b2b-blue);
    }
    .breadcrumb a:hover {
      color: var(--b2b-orange);
    }

    /* 主内容：左侧 80% | 右侧 20% */
    .main-content {
      background: #fff;
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      padding: 25px;
    }
    .detail-title {
      font-size: 24px;
      font-weight: 700;
      color: var(--b2b-blue);
      margin-bottom: 10px;
    }
    .detail-meta {
      font-size: 13px;
      color: #777;
      margin-bottom: 20px;
    }
    .detail-meta span {
      margin-right: 20px;
    }
    .detail-meta .fa {
      margin-right: 4px;
    }
    
    /* ===== 动态飘动手机图标 ===== */
.customer-card {
  /* 已给出的样式保持不变，只需追加 overflow:hidden 即可 */
  overflow: hidden;
}

.customer-card::before {
  content: '';
  position: absolute;
  inset: 0;                 /* 等价 top:0;right:0;bottom:0;left:0; */
  z-index: 0;               /* 衬在内容下方 */
  opacity: .06;             /* 透明度：可调 */
  pointer-events: none;     /* 完全忽略鼠标事件 */

  background-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwMDU3OTIiIGQ9Ik04ODkuMTQ3IDc4NS40NDdhNTYuMTYyIDU2LjE2MiAwIDAgMSAwIDc5LjMyMWwtMzkuNjIxIDM5LjY2YTE5MS4yOTEgMTkxLjI5MSAwIDAgMS0xMTQuNjA5IDUzLjA5IDI3OC4wOTUgMjc4LjA5NSAwIDAgMS0zNC45MzQgMi4xNjYgMzg5LjYzMiAzODkuNjMyIDAgMCAxLTEwOS41NjgtMTcuMTcyIDc2NS4zNjEgNzY1LjM2MSAwIDAgMS0zMTIuMTYyLTE5Ni44MDUgNzY2LjMwNyA3NjYuMzA3IDAgMCAxLTE5Ni45MjMtMzEyLjIwMiAzNTYuOTgyIDM1Ni45ODIgMCAwIDEtMTQuODg3LTE0NC4zODQgMTkxLjQwOSAxOTEuNDA5IDAgMCAxIDUzLjIwOS0xMTQuNDkxbDM5LjU4MS0zOS43NzdhNTYuMTYyIDU2LjE2MiAwIDAgMSA3OS4zMjEgMGwxNzQuNTkyIDE3NC41NTJhNTYuMTYyIDU2LjE2MiAwIDAgMSAwIDc5LjMyMWwtMzkuNyAzOS42NmMtMjIuNDQ5IDIyLjQ0OSAwIDk1LjExNCA2My40ODggMTU4LjY4MXMxMzYuMTkyIDg1LjkzNyAxNTguNjgxIDYzLjQ0OWwzOS42Ni0zOS42NmE1Ni4xNjIgNTYuMTYyIDAgMCAxIDc5LjM2IDBsMTc0LjU1MyAxNzQuNTUyek02MDAuNjE1IDM3OC41MjVhNDQuOTM4IDQ0LjkzOCAwIDAgMSA0NC44OTggNDQuODU4IDIyLjQ0OSAyMi40NDkgMCAwIDAgNDQuODU5IDAgODkuODc2IDg5Ljg3NiAwIDAgMC04OS43OTctODkuNzU3IDIyLjQ0OSAyMi40NDkgMCAxIDAgMCA0NC44NTl6bTMzMC44MzEtOTQuODc3QTM1OC43OTQgMzU4Ljc5NCAwIDAgMCA2MDAuNTc2IDY0LjM1NGEyMi40NDkgMjIuNDQ5IDAgMSAwIDAgNDQuODU5IDMxNC42MDQgMzE0LjYwNCAwIDAgMSAzMTQuMjEgMzE0LjIxIDIyLjQ0OSAyMi40NDkgMCAxIDAgNDQuODU5IDAgMzU2Ljc4NSAzNTYuNzg1IDAgMCAwLTI4LjI3OC0xMzkuNzc2ek02MDAuNTc2IDEzMy45MjJhMTc5Ljc1MSAxNzkuNzUxIDAgMCAxIDE3OS41MTUgMTc5LjQ3NiAyMi40NDkgMjIuNDQ5IDAgMSAwIDQ0Ljg1OSAwIDIyNC40OTIgMjI0LjQ5MiAwIDAgMC0yMjQuNDkyLTIyNC40OTIgMjIuNDQ5IDIyLjQ0OSAwIDEgMCAwIDQ0Ljg1OXoiLz48L3N2Zz4=");

  background-size: 64px 64px;          /* 图标大小 */
  animation: float 20s linear infinite; /* 速度：可调 */
}

/* 背景图无限向左上方飘动 */
@keyframes float {
  0%   { background-position: 0 0; }
  100% { background-position: -256px -256px; } /* 4*64px，保证无缝衔接 */
}

    /* 客户信息：仅姓名+手机号局部毛玻璃美化 */
    .customer-card {
      position: relative;
      background: linear-gradient(135deg, var(--b2b-light), #e8ecf0);
      border-radius: var(--radius);
      padding: 25px;
      margin-bottom: 25px;
      text-align: center;
    }
    .customer-mask {
      position: absolute;
      inset: 0;
      background: rgba(255,255,255,.25);
      backdrop-filter: blur(6px);
      border-radius: var(--radius);
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--b2b-blue);
      font-size: 16px;
      font-weight: 600;
      z-index: 2;
    }
    .customer-content {
      position: relative;
      z-index: 1;
    }
    .customer-name,
    .customer-phone {
      font-size: 20px;
      color: var(--b2b-blue);
      margin: 6px 0;
      letter-spacing: 1px;
      transition: transform .3s ease;
    }
    .customer-name.reveal,
    .customer-phone.reveal {
      transform: scale(1.05);
    }

    /* 获取联系方式按钮 */
    .btn-get-contact {
      background: linear-gradient(135deg, var(--b2b-blue), #004a8c);
      color: #fff;
      border: 0;
      border-radius: 25px;
      padding: 10px 30px;
      font-size: 16px;
      transition: .3s;
      margin-top: 15px;
    }
    .btn-get-contact:hover {
      background: linear-gradient(135deg, var(--b2b-orange), #e55a00);
      transform: translateY(-2px);
      box-shadow: 0 6px 20px rgba(253, 95, 0, .25);
    }

    /* 联系方式弹窗 */
    .modal-content {
      border-radius: var(--radius);
      box-shadow: var(--shadow);
    }
    .modal-header {
      background: var(--b2b-light);
      border-bottom: 2px solid var(--b2b-orange);
      border-radius: var(--radius) var(--radius) 0 0;
    }
    .modal-title {
      font-size: 18px;
      font-weight: 600;
      color: var(--b2b-blue);
    }
    .modal-body {
      font-size: 15px;
      color: #555;
    }
    .contact-result {
      background: #f8f9fa;
      border-radius: var(--radius);
      padding: 15px;
      margin-top: 15px;
      font-size: 16px;
      color: var(--b2b-blue);
      animation: fadeIn .4s ease;
    }
    .contact-result strong {
      color: #d63384;
    }
    @keyframes fadeIn {
      from { opacity: 0; transform: scale(.95); }
      to { opacity: 1; transform: scale(1); }
    }

    /* 相关采购 table */
    .related-table {
      background: #fff;
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      padding: 20px;
      margin-top: 30px;
    }
    .related-table h5 {
      font-size: 18px;
      font-weight: 600;
      color: var(--b2b-blue);
      margin-bottom: 15px;
      border-left: 4px solid var(--b2b-orange);
      padding-left: 8px;
    }
    .table-related {
      font-size: 14px;
      margin: 0;
    }
    .table-related th {
      background: var(--b2b-light);
      color: var(--b2b-blue);
      font-weight: 600;
      border: 0;
    }
    .table-related td {
      border: 0;
      border-bottom: 1px solid #f0f0f0;
      vertical-align: middle;
    }
    .table-related a {
      color: var(--b2b-blue);
    }
    .table-related a:hover {
      color: var(--b2b-orange);
    }

    /* 侧边栏 20% */
    .sidebar {
      background: #fff;
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      padding: 20px;
      margin-bottom: 20px;
    }
    .sidebar-tit {
      font-size: 16px;
      font-weight: 600;
      color: var(--b2b-blue);
      margin-bottom: 12px;
      border-left: 4px solid var(--b2b-orange);
      padding-left: 8px;
    }
    .sidebar-list {
      list-style: none;
      padding: 0;
      margin: 0;
    }
    .sidebar-list li {
      padding: 8px 0;
      border-bottom: 1px solid #f0f0f0;
      font-size: 13px;
    }
    .sidebar-list li:last-child {
      border-bottom: 0;
    }
    .sidebar-list a {
      color: #555;
      transition: .2s;
    }
    .sidebar-list a:hover {
      color: var(--b2b-orange);
      padding-left: 4px;
    }
    .sidebar-ad {
      width: 100%;
      border-radius: var(--radius);
      margin-top: 15px;
    }

    /* 响应式：手机堆叠 */
    @media (max-width: 768px) {
      .main-content,
      .sidebar {
        margin-bottom: 20px;
      }
    }