/* 客服悬浮按钮 —— 首页与「我的网站」共用 */
.kefu-float {
  position: fixed; right: 18px; bottom: 22px; z-index: 90;
  display: flex; flex-direction: column; align-items: flex-end;
  font-family: inherit;
}
.kefu-btn {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px;
  width: 56px; height: 56px; border-radius: 16px; border: 1px solid #e2e8f0;
  background: #fff; color: #2563eb; cursor: pointer; padding: 0;
  box-shadow: 0 6px 20px rgba(15, 23, 42, .12);
  transition: transform .16s, box-shadow .16s, background .16s;
}
.kefu-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(15, 23, 42, .16); }
.kefu-btn.is-open { background: #eff4ff; }
.kefu-btn svg { width: 24px; height: 24px; }
.kefu-btn span { font-size: 11px; font-weight: 600; line-height: 1; }

.kefu-pop {
  position: absolute; right: 0; bottom: 68px; width: 190px;
  background: #fff; border: 1px solid #e2e8f0; border-radius: 14px;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .16);
  padding: 12px 12px 10px; text-align: center;
}
.kefu-pop img { width: 150px; height: 150px; border-radius: 8px; display: block; margin: 0 auto; }
.kefu-pop p { margin: 8px 0 0; font-size: 12px; line-height: 1.5; color: #64748b; }
.kefu-arrow {
  position: absolute; right: 21px; bottom: -6px; width: 10px; height: 10px;
  background: #fff; border-right: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0;
  transform: rotate(45deg);
}

@media (max-width: 560px) {
  .kefu-float { right: 12px; bottom: 14px; }
  .kefu-pop { position: fixed; right: 12px; left: 12px; bottom: 88px; width: auto; }
  .kefu-arrow { display: none; }
}
