/* =========================================================
   右侧悬浮客服入口
   ========================================================= */
.fc-sidebar{
  position:fixed; right:14px; top:50%; transform:translateY(-50%); z-index:880;
  display:flex; flex-direction:column; gap:1px;
  background:rgba(227,232,239,.9); border-radius:12px; overflow:visible;
  box-shadow:0 8px 28px rgba(10,22,40,.16);
}
.fc-item:first-child{ border-radius:12px 12px 0 0; }
.fc-item:last-child{ border-radius:0 0 12px 12px; }
.fc-item{
  position:relative; width:62px; padding:13px 6px; background:#fff;
  display:flex; flex-direction:column; align-items:center; gap:5px;
  cursor:pointer; transition:all .25s ease; border:none; font-family:inherit;
}
.fc-item:hover{ background:var(--c-green,#00C853); }
.fc-item:hover .fc-ico, .fc-item:hover .fc-label{ color:#fff; }
.fc-item--link{ color:inherit; text-decoration:none; -webkit-tap-highlight-color:transparent; }
.fc-ico{ color:var(--c-navy,#0A1628); transition:color .25s; display:flex; }
.fc-label{
  font-size:11.5px; color:var(--c-navy,#0A1628); line-height:1.35;
  text-align:center; transition:color .25s; font-weight:500;
}

/* 悬浮面板 */
.fc-panel{
  position:absolute; right:calc(100% + 12px); top:50%; transform:translateY(-50%) translateX(8px);
  background:#fff; border-radius:12px; box-shadow:0 12px 40px rgba(10,22,40,.2);
  padding:18px 20px; opacity:0; visibility:hidden; transition:all .28s ease;
  white-space:nowrap; border:1px solid var(--c-border,#E3E8EF);
}
.fc-item.is-open .fc-panel,
.fc-item:hover .fc-panel{ opacity:1; visibility:visible; transform:translateY(-50%) translateX(0); }
.fc-panel::after{
  content:''; position:absolute; right:-6px; top:50%; transform:translateY(-50%) rotate(45deg);
  width:11px; height:11px; background:#fff;
  border-right:1px solid var(--c-border,#E3E8EF); border-top:1px solid var(--c-border,#E3E8EF);
}
.fc-panel-title{ font-size:13px; color:var(--c-muted,#6B7A8D); margin-bottom:7px; }
.fc-panel-value{ font-size:19px; font-weight:700; color:var(--c-navy,#0A1628); letter-spacing:.01em; }
.fc-panel-value.sm{ font-size:14.5px; font-weight:600; }
.fc-panel-divider{ height:1px; background:var(--c-border,#E3E8EF); margin:13px 0; }

/* 二维码面板 */
.fc-panel-qr{ text-align:center; }
.fc-panel-qr img{ width:150px; height:150px; display:block; margin:0 auto; border-radius:8px; }
.fc-panel-qr-label{ margin-top:11px; font-size:13px; color:var(--c-muted,#6B7A8D); }

/* 回到顶部 */
.fc-item--top{ background:var(--c-navy,#0A1628); }
.fc-item--top .fc-ico, .fc-item--top .fc-label{ color:#fff; }
.fc-item--top:hover{ background:var(--c-green,#00C853); }

/* ============ 内嵌「提交转型需求」表单面板 ============ */
.fc-panel--form{ width:264px; white-space:normal; padding:16px 18px; }
.fc-panel-head{
  font-size:14px; font-weight:700; color:var(--c-navy,#0A1628);
  margin-bottom:13px; padding-left:10px; position:relative;
}
.fc-panel-head::before{
  content:''; position:absolute; left:0; top:2px; bottom:2px; width:4px;
  background:var(--c-green,#00C853); border-radius:2px;
}
.fc-form{ display:flex; flex-direction:column; gap:9px; }
.fc-input, .fc-textarea{
  width:100%; box-sizing:border-box; font-family:inherit; font-size:13px;
  color:var(--c-navy,#0A1628); background:#F5F7FA;
  border:1px solid var(--c-border,#E3E8EF); border-radius:8px;
  padding:9px 11px; outline:none;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.fc-input::placeholder, .fc-textarea::placeholder{ color:var(--c-muted-2,#94A3B8); }
.fc-input:focus, .fc-textarea:focus{
  border-color:var(--c-green,#00C853);
  box-shadow:0 0 0 3px rgba(0,200,83,.14);
  background:#fff;
}
.fc-textarea{ resize:vertical; min-height:62px; line-height:1.5; }
.fc-submit{
  margin-top:3px; width:100%; border:none; cursor:pointer;
  font-family:inherit; font-size:14px; font-weight:600; color:#fff;
  background:var(--c-green,#00C853); border-radius:8px; padding:10px 0;
  transition:background .2s ease;
}
.fc-submit:hover{ background:var(--c-green-d,#00A344); }
.fc-submit:disabled{ opacity:.65; cursor:default; }
.fc-more{
  display:block; text-align:center; font-size:12px;
  color:var(--c-green-d,#00A344); text-decoration:none; margin-top:3px;
}
.fc-more:hover{ text-decoration:underline; }
.fc-error{ display:none; font-size:12px; color:#E5484D; line-height:1.45; }
.fc-success{
  font-size:13px; color:var(--c-green-d,#00A344);
  line-height:1.65; padding:8px 2px; font-weight:600;
}

@media (max-width:980px){
  .fc-sidebar{ right:10px; }
  .fc-item{ width:52px; padding:10px 4px; }
  .fc-label{ font-size:10.5px; }
  .fc-panel-qr img{ width:128px; height:128px; }
}

@media (max-width:520px){
  .fc-sidebar{ top:auto; bottom:16px; transform:none; }
}
