/* ============================================================
   首页右下角「郑重承诺」弹窗
   内容 / 行为参照 vpcs.weipuvip.com/index.html 的原弹窗
   （原站：#dialogIndexTips 内联样式，橙色边框 316px 固定右下角，点 X 隐藏）
   本站适配：圆角 / 柔和阴影 / 字体 / flex 排版 / 精致关闭按钮
   2026-11-09 二调：整体高度压缩约 1/4（内边距 / 字号 / 行高 / logo 同步收紧）
   2026-11-09 三调：贴右下角（客服条已改为右侧垂直居中，不再需要横向避让）；
   主色由橙色改为与首页右上角「报告下载」按钮完全一致的 #df4747（实测
   rgb(223,71,71)，纯色非渐变；hover 态沿用按钮的 #d63a3e）
   ★ 独立文件，不改动从线上抓取的原始样式
   ============================================================ */
.vpcs-promise {
  position: fixed;
  /* 靠右靠底：与客服条同用 right:18px；客服条垂直居中，两者上下错开不打架 */
  right: 18px;
  bottom: 16px;
  z-index: 1001;
  width: 320px;
  background: #fff;
  border: 1px solid #f2c9c9;
  border-radius: 10px;
  box-shadow: 0 14px 38px rgba(170, 55, 55, .18);
  overflow: hidden;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  animation: vpcsPromiseIn .38s cubic-bezier(.22, .9, .32, 1) both;
}
@keyframes vpcsPromiseIn {
  from { opacity: 0; transform: translateY(18px) scale(.97); }
  to   { opacity: 1; transform: none; }
}
.vpcs-promise.is-closed {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .22s ease, transform .22s ease;
  pointer-events: none;
}

/* 标题栏：与右上角「报告下载」按钮同色 #df4747，白字，圆形关闭按钮 */
.vpcs-promise-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  background: #df4747;
  color: #fff;
}
.vpcs-promise-title {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .5px;
}
.vpcs-promise-title svg { width: 14px; height: 14px; }
.vpcs-promise-close {
  width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .20);
  color: #fff;
  font-size: 15px;
  line-height: 20px;
  text-align: center;
  cursor: pointer;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
.vpcs-promise-close:hover {
  background: #fff;
  color: #d63a3e;
  transform: rotate(90deg);
}

/* 内容：flex 左图右文，替代原站的 float */
.vpcs-promise-body {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px 14px;
}
.vpcs-promise-logo {
  flex: 0 0 82px;
  width: 82px;
  height: auto;
  border-radius: 6px;
}
.vpcs-promise-body p {
  margin: 0;
  font-size: 13px;
  line-height: 1.65;
  color: #3c4652;
  text-align: justify;
  word-break: break-word;
}

/* 小屏：同样贴右下角，缩放尺寸 */
@media (max-width: 767px) {
  .vpcs-promise {
    right: 10px;
    bottom: 12px;
    width: min(300px, calc(100vw - 20px));
  }
  .vpcs-promise-body { gap: 8px; padding: 11px 10px 12px; }
  .vpcs-promise-logo { flex-basis: 68px; width: 68px; }
  .vpcs-promise-body p { font-size: 12.5px; line-height: 1.6; }
}
@media (prefers-reduced-motion: reduce) {
  .vpcs-promise { animation: none; }
}
