/* FloatSuite 图标：取自主题图标库 iconfont，woff 内嵌，零额外请求 */
@font-face{font-family:"iconfont";src:url('data:application/x-font-woff;charset=utf-8;base64,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') format("woff");font-weight:normal;font-style:normal;font-display:swap}
.iconfont{font-family:"iconfont"!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.icon-dianhua:before{content:"\e609"}
.icon-lianxiren:before{content:"\e654"}
.icon-qq:before{content:"\e603"}
.icon-weixin:before{content:"\e616"}
.icon-wangzhi:before{content:"\e658"}
.icon-tuitetwitter44:before{content:"\e9be"}
.icon-beizhuweitianxie:before{content:"\e60c"}
.icon-jiantouxiangyou:before{content:"\e6f1"}
.icon-phone:before{content:"\e636"}

/* 悬浮转化组件 — 图标全部使用主题图标库 iconfont；细边框、低阴影、主色点缀 */
.ft-dock{
  --ft-accent:#1f5fbf;
  --ft-accent-d:#164a96;
  --ft-ink:#1c2430;
  --ft-muted:#6b7684;
  --ft-line:#e6eaf0;
  --ft-radius:12px;
  position:fixed;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  z-index:900;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
  font-size:13px;
  line-height:1.6;
  color:var(--ft-ink);
  -webkit-font-smoothing:antialiased;
}
.ft-dock *{box-sizing:border-box}
.ft-ic{display:block;font-size:20px;line-height:1;color:inherit}
.ft-ic-up{transform:rotate(-90deg)}

/* 营销 CTA：主文案 + 副文案，双行更易读 */
.ft-cta{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:9px 15px 9px 13px;
  border-radius:14px;
  background:var(--ft-accent);
  color:#fff!important;
  text-decoration:none!important;
  box-shadow:0 6px 18px rgba(31,95,191,.26);
  transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.ft-cta:hover{background:var(--ft-accent-d);transform:translateY(-1px);box-shadow:0 8px 22px rgba(31,95,191,.32)}
.ft-cta:active{transform:translateY(0)}
.ft-cta:focus-visible{outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px rgba(31,95,191,.35)}
.ft-cta-ic{font-size:22px}
.ft-cta-t{display:flex;flex-direction:column;line-height:1.25;text-align:left}
.ft-cta-txt{font-weight:600;font-size:13px;letter-spacing:.01em}
.ft-cta-sub{margin-top:1px;font-size:11px;font-weight:400;opacity:.82}

/* 转化气泡：首次访问延迟出现一次 */
.ft-nudge{
  position:relative;
  width:198px;
  padding:11px 12px 12px;
  border:1px solid var(--ft-line);
  border-radius:12px;
  background:#fff;
  box-shadow:0 12px 30px rgba(20,32,48,.14);
  text-align:left;
}
.ft-nudge::after{content:"";position:absolute;right:22px;bottom:-6px;width:10px;height:10px;background:#fff;border-right:1px solid var(--ft-line);border-bottom:1px solid var(--ft-line);transform:rotate(45deg)}
.ft-nudge strong{display:block;font-size:13px;font-weight:600;color:var(--ft-ink)}
.ft-nudge span{display:block;margin-top:2px;font-size:11.5px;color:var(--ft-muted)}
.ft-nudge-go{width:100%;margin-top:8px;padding:7px 8px;border:0;border-radius:7px;background:#eef4fd;color:var(--ft-accent);font:inherit;font-size:12px;font-weight:600;cursor:pointer}
.ft-nudge-go:hover{background:#e2edfc}
.ft-nudge-x{position:absolute;right:4px;top:2px;width:22px;height:22px;border:0;border-radius:6px;background:transparent;color:#a8b2c0;font-size:15px;line-height:1;cursor:pointer}
.ft-nudge-x:hover{background:#f2f4f7;color:var(--ft-ink)}

/* 竖向工具条 */
.ft-rail{
  display:flex;
  flex-direction:column;
  gap:1px;
  padding:6px;
  background:#fff;
  border:1px solid var(--ft-line);
  border-radius:var(--ft-radius);
  box-shadow:0 10px 26px rgba(20,32,48,.10);
}
.ft-btn{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  width:52px;
  padding:8px 2px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#4a5563;
  font:inherit;
  font-size:11px;
  line-height:1.2;
  text-decoration:none!important;
  cursor:pointer;
  transition:background .15s ease,color .15s ease;
}
.ft-btn:hover,.ft-btn[aria-expanded="true"]{background:#f2f6fc;color:var(--ft-accent)}
.ft-btn:focus-visible{outline:2px solid var(--ft-accent);outline-offset:-2px}
.ft-btn--top{color:#8a94a2}
.ft-lb{white-space:nowrap;font-size:11px}

/* 底部社交平台：悬停（桌面）/ 点击（触屏）显示二维码 */
.ft-btn--soc{position:relative}
.ft-soc-ic{display:flex;align-items:center;justify-content:center;width:20px;height:20px;line-height:1;color:#4a5563}
.ft-soc-ic svg{display:block;width:20px;height:20px}
.ft-soc--douyin .ft-soc-ic{color:#161823}
.ft-soc--wechat .ft-soc-ic{color:#07c160}
.ft-soc-ab{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:currentColor;color:#fff;font-size:11px;font-weight:600;line-height:1}
.ft-socpop{
  position:absolute;
  right:calc(100% + 12px);
  top:50%;
  z-index:4;
  width:136px;
  padding:7px 7px 6px;
  border:1px solid var(--ft-line);
  border-radius:10px;
  background:#fff;
  box-shadow:0 12px 30px rgba(20,32,48,.16);
  opacity:0;
  visibility:hidden;
  transform:translateY(-50%) translateX(6px);
  transition:opacity .16s ease,transform .16s ease,visibility .16s;
  pointer-events:none;
}
.ft-socpop::after{content:"";position:absolute;right:-5px;top:50%;width:8px;height:8px;margin-top:-4px;background:#fff;border-right:1px solid var(--ft-line);border-top:1px solid var(--ft-line);transform:rotate(45deg)}
.ft-socpop img{display:block;width:120px;height:120px;object-fit:contain;border-radius:6px;background:#fff}
.ft-socname{display:block;margin-top:4px;font-size:11.5px;line-height:1.4;color:var(--ft-muted);text-align:center}
.ft-btn--soc:hover .ft-socpop,.ft-btn--soc:focus-visible .ft-socpop,.ft-btn--soc.is-open .ft-socpop{opacity:1;visibility:visible;transform:translateY(-50%) translateX(0)}

/* 面板 */
.ft-panels{position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%);display:flex;justify-content:flex-end}
.ft-panel{
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%) translateX(8px);
  width:296px;
  background:#fff;
  border:1px solid var(--ft-line);
  border-radius:14px;
  box-shadow:0 18px 46px rgba(20,32,48,.16);
  opacity:0;
  visibility:hidden;
  transition:opacity .16s ease,transform .16s ease,visibility .16s;
}
.ft-panel--wide{width:320px}
.ft-panel.is-open{opacity:1;visibility:visible;transform:translateY(-50%) translateX(0)}
.ft-ph{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--ft-line)}
.ft-ph strong{font-size:14px;font-weight:600;letter-spacing:.01em}
.ft-x{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:#8a94a2;font-size:19px;line-height:1;cursor:pointer}
.ft-x:hover{background:#f2f4f7;color:var(--ft-ink)}
.ft-x:focus-visible{outline:2px solid var(--ft-accent);outline-offset:1px}
.ft-pb{padding:14px}
.ft-center{text-align:center}

.ft-qr{width:168px;margin:0 auto 10px;padding:8px;border:1px solid var(--ft-line);border-radius:10px;background:#fff}
.ft-qr img{display:block;width:100%;height:auto;border-radius:4px}
.ft-rows{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;font-size:13px;color:#3d4753}
.ft-row{padding:0}
.ft-row a{color:var(--ft-accent)!important;text-decoration:none}
.ft-row a:hover{text-decoration:underline}
.ft-muted,.ft-tip{color:var(--ft-muted);font-size:12px}
.ft-wxid{margin:4px 0 2px;font-size:18px;font-weight:600;letter-spacing:.02em;color:var(--ft-ink);word-break:break-all}

.ft-act{
  display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;min-height:40px;padding:8px 12px;margin-top:8px;
  border:1px solid var(--ft-line);border-radius:9px;background:#fff;
  color:var(--ft-ink)!important;text-decoration:none!important;
  font-family:inherit;font-size:13px;font-weight:500;line-height:1.4;
  text-align:center;cursor:pointer;-webkit-appearance:none;appearance:none;
  transition:border-color .15s ease,background .15s ease,color .15s ease;
}
.ft-act:hover{border-color:#c9d6ea;background:#f7f9fc}
.ft-act:active{transform:translateY(1px)}
.ft-act:focus-visible{outline:2px solid var(--ft-accent);outline-offset:2px}
.ft-act--main{border-color:var(--ft-accent);background:var(--ft-accent);color:#fff!important;font-weight:600;box-shadow:0 2px 8px rgba(31,95,191,.18)}
.ft-act--main:hover{border-color:var(--ft-accent-d);background:var(--ft-accent-d);color:#fff!important}
.ft-act .ft-ic{font-size:17px;line-height:1;flex:0 0 auto;color:inherit!important}
.ft-act-t{display:inline-block;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* 分享 */
.ft-share{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px}
.ft-sh{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 2px;border-radius:9px;border:1px solid var(--ft-line);background:#fff;color:#4a5563!important;text-decoration:none!important;font:inherit;font-size:11px;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}
.ft-sh:hover{border-color:#c9d6ea;color:var(--ft-accent)!important;background:#f7f9fc}
.ft-sh .ft-ic{font-size:20px}
.ft-copy{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:9px;border:1px dashed #cfd8e5;border-radius:9px;background:#fafbfd;color:#4a5563;font:inherit;font-size:12px;cursor:pointer}
.ft-copy:hover{border-color:var(--ft-accent);color:var(--ft-accent)}
.ft-copy.is-done{border-style:solid;border-color:#2f9e5f;color:#2f9e5f;background:#f3fbf6}
.ft-share-tip{margin:8px 0 0;text-align:center}

/* 留言表单 */
.ft-form{padding:14px}
.ft-form-lead{margin:0 0 10px;padding:8px 10px;border-radius:8px;background:#f4f8fe;color:#2b4a72;font-size:12px;line-height:1.5}
.ft-fg{margin-bottom:10px}
.ft-fg label{display:block;margin-bottom:4px;font-size:12px;color:var(--ft-muted)}
.ft-fg input,.ft-fg textarea{
  width:100%;padding:9px 10px;border:1px solid var(--ft-line);border-radius:8px;
  background:#fff;color:var(--ft-ink);font:inherit;font-size:13px;line-height:1.5;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.ft-fg textarea{resize:vertical;min-height:72px}
.ft-fg input:focus,.ft-fg textarea:focus{outline:0;border-color:var(--ft-accent);box-shadow:0 0 0 3px rgba(31,95,191,.12)}
.ft-fg input[aria-invalid="true"],.ft-fg textarea[aria-invalid="true"]{border-color:#d64545;box-shadow:0 0 0 3px rgba(214,69,69,.10)}
.ft-submit{width:100%;padding:10px;border:0;border-radius:9px;background:var(--ft-accent);color:#fff;font:inherit;font-weight:600;cursor:pointer;transition:background .15s ease}
.ft-submit:hover{background:var(--ft-accent-d)}
.ft-submit[disabled]{opacity:.6;cursor:progress}
.ft-status{min-height:18px;margin:8px 0 0;font-size:12px;text-align:center;color:var(--ft-muted)}
.ft-status.is-ok{color:#2f9e5f}
.ft-status.is-err{color:#d64545}

/* 入场：滚动后出现，避免首屏遮挡 */
.ft-dock{opacity:0;visibility:hidden;transform:translateY(-46%);transition:opacity .22s ease,transform .22s ease,visibility .22s}
.ft-dock.is-visible{opacity:1;visibility:visible;transform:translateY(-50%)}
.ft-nudge[hidden]{display:none}

/* 移动端：底部横条，面板上弹，避免遮挡正文 */
@media (max-width:768px){
  body{padding-bottom:124px}
  .ft-dock{right:10px;left:10px;top:auto;bottom:10px;transform:none;align-items:stretch}
  .ft-dock.is-visible{transform:none}
  .ft-cta{align-self:stretch;justify-content:center;padding:9px 12px}
  .ft-cta-sub{font-size:10.5px}
  .ft-nudge{position:fixed;left:10px;right:10px;width:auto;bottom:132px}
  .ft-nudge::after{display:none}
  .ft-rail{flex-direction:row;justify-content:space-around;gap:0;padding:4px}
  .ft-btn{flex:1;width:auto;padding:6px 2px;gap:2px}
  .ft-lb{font-size:10px}
  .ft-ic{font-size:18px}
  .ft-btn--top{display:none}
  /* 触屏没有 hover：点击后二维码居中弹出，避免贴边溢出 */
  .ft-socpop{position:fixed;left:50%;right:auto;bottom:auto;top:50%;width:188px;padding:10px;transform:translate(-50%,-50%) scale(.96);z-index:1000}
  .ft-socpop::after{display:none}
  .ft-socpop img{width:168px;height:168px;margin:0 auto}
  .ft-btn--soc:hover .ft-socpop,
  .ft-btn--soc:focus-visible .ft-socpop,
  .ft-btn--soc.is-open .ft-socpop{transform:translate(-50%,-50%) scale(1)}
  .ft-btn--soc.is-open{border-radius:9px;background:#f2f6fc;color:var(--ft-accent)}
  .ft-panels{position:fixed;left:10px;right:10px;bottom:132px;top:auto;transform:none;justify-content:center}
  .ft-panel{position:relative;right:auto;top:auto;transform:translateY(8px);width:100%;max-width:420px;max-height:60vh;overflow:auto}
  .ft-panel.is-open{transform:translateY(0)}
  .ft-panel--wide{width:100%}
  .ft-qr{width:148px}
}

@media (prefers-reduced-motion:reduce){
  .ft-dock,.ft-panel,.ft-cta,.ft-btn{transition:none!important}
}
