/* ============================================================
   右侧悬浮客服 (设计稿 Frame 4610 (86×144) 硬件产品-列表页)
   在线客服 chat.svg / 客服资料 Frame.svg / 返回顶部 jt-top.svg
   固定右侧垂直居中, 3 个 44×44 圆形按钮竖排
   ============================================================ */
.fside {
  position: fixed;
  right: 24px;
  top: 80%;
  transform: translateY(-50%);
  z-index: 900;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.fside-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #E3E8F0;
  box-shadow: 0 4px 16px rgba(0,0,0,.08);
  color: #2168E5;
  text-decoration: none;
  transition: transform .25s var(--ease), box-shadow .25s var(--ease), background-color .25s var(--ease);
}
.fside-btn svg,
.fside-btn img {
  width: 24px;
  height: 24px;
  display: block;
}
.fside-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(33,104,229,.18);
  /* 保持白底, 图标为图片不变色 */
}
/* hover 提示文字 (右侧滑出) */
.fside-tip {
  position: absolute;
  right: 52px;
  top: 50%;
  transform: translateY(-50%) translateX(6px);
  padding: 6px 12px;
  border-radius: 6px;
  background: #2E3033;
  color: #fff;
  font-size: 12px;
  font-weight: 513;
  line-height: 18px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s var(--ease), transform .2s var(--ease);
}
.fside-btn:hover .fside-tip {
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}

/* 返回顶部: 滚动出现 */
.fside-top {
  display: none;
}
.fside-top.is-show {
  display: flex;
}

/* 移动端: 缩小靠右 */
@media (max-width: 767px) {
  .fside { right: 12px; gap: 10px; }
  .fside-btn { width: 40px; height: 40px; }
  .fside-btn svg,
  .fside-btn img { width: 20px; height: 20px; }
  .fside-tip { display: none; }
}
