/* 智能客服对话窗口 - 高端商务风格（对标豆包） */
.aikefu-mask{position:fixed;inset:0;background:rgba(20,10,50,.45);z-index:9998;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;}
.aikefu-mask.aikefu-show{opacity:1;visibility:visible;}
.aikefu-win{position:fixed;right:24px;bottom:24px;width:380px;height:600px;max-height:calc(100vh - 48px);background:#fff;border-radius:16px;box-shadow:0 12px 48px rgba(32,20,85,.25);z-index:9999;display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(20px) scale(.96);visibility:hidden;transition:opacity .3s,transform .3s,visibility .3s;font-family:"Microsoft YaHei","PingFang SC",sans-serif;}
.aikefu-win.aikefu-show{opacity:1;transform:translateY(0) scale(1);visibility:visible;}
/* 头部 */
.aikefu-head{height:56px;background:linear-gradient(135deg,#2a1865,#201455);color:#fff;display:flex;align-items:center;padding:0 16px;flex-shrink:0;position:relative;}
.aikefu-avatar{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;margin-right:10px;flex-shrink:0;}
.aikefu-avatar svg{width:22px;height:22px;fill:#fff;}
.aikeuf-head-info{flex:1;}
.aikefu-head-name{font-size:15px;font-weight:600;line-height:1.2;}
.aikefu-head-status{font-size:11px;opacity:.8;display:flex;align-items:center;margin-top:2px;}
.aikefu-head-status .dot{width:6px;height:6px;border-radius:50%;background:#4ade80;margin-right:5px;box-shadow:0 0 6px #4ade80;}
.aikefu-close{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s;flex-shrink:0;}
.aikefu-close:hover{background:rgba(255,255,255,.3);}
.aikefu-close svg{width:16px;height:16px;fill:#fff;}
/* 消息区 */
.aikefu-body{flex:1;overflow-y:auto;padding:16px 14px;background:#fafafa;scroll-behavior:smooth;}
.aikefu-body::-webkit-scrollbar{width:5px;}
.aikefu-body::-webkit-scrollbar-thumb{background:#d4d0e8;border-radius:3px;}
.aikefu-body::-webkit-scrollbar-track{background:transparent;}
.aikefu-msg{display:flex;margin-bottom:14px;animation:aikefuSlideIn .3s ease;}
@keyframes aikefuSlideIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
.aikefu-msg.aikefu-user{justify-content:flex-end;}
.aikefu-msg .aikefu-bubble{max-width:75%;padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.65;word-break:break-word;white-space:pre-wrap;box-shadow:0 1px 3px rgba(0,0,0,.06);}
.aikefu-msg.aikefu-ai .aikefu-bubble{background:#fff;color:#333;border-top-left-radius:4px;border:1px solid #f0eef6;}
.aikefu-msg.aikefu-user .aikefu-bubble{background:#201455;color:#fff;border-top-right-radius:4px;}
.aikefu-msg.aikefu-ai{align-items:flex-start;}
.aikefu-msg .aikefu-mini-avatar{width:28px;height:28px;border-radius:50%;background:#201455;display:flex;align-items:center;justify-content:center;margin-right:8px;flex-shrink:0;}
.aikefu-msg .aikefu-mini-avatar svg{width:16px;height:16px;fill:#fff;}
.aikefu-msg.aikefu-user .aikefu-mini-avatar{display:none;}
/* 正在思考 */
.aikefu-thinking{display:inline-flex;gap:4px;padding:4px 0;}
.aikefu-thinking span{width:7px;height:7px;border-radius:50%;background:#b0a8d8;animation:aikefuBounce 1.2s infinite ease-in-out;}
.aikefu-thinking span:nth-child(2){animation-delay:.15s;}
.aikefu-thinking span:nth-child(3){animation-delay:.3s;}
@keyframes aikefuBounce{0%,80%,100%{transform:scale(.6);opacity:.5;}40%{transform:scale(1);opacity:1;}}
/* 案例卡片 */
.aikefu-cases{margin:6px 0 14px;}
.aikefu-cases-title{font-size:12px;color:#999;margin-bottom:8px;padding-left:2px;}
.aikefu-case-card{display:flex;background:#fff;border:1px solid #f0eef6;border-radius:12px;overflow:hidden;margin-bottom:8px;cursor:pointer;transition:transform .2s,box-shadow .2s;}
.aikefu-case-card:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(32,20,85,.12);}
.aikefu-case-card .aikefu-case-img{width:84px;height:64px;object-fit:cover;flex-shrink:0;background:#f5f4fa;}
.aikefu-case-card .aikefu-case-info{padding:8px 10px;flex:1;min-width:0;}
.aikefu-case-card .aikefu-case-title{font-size:13px;font-weight:600;color:#333;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:3px;}
.aikefu-case-card .aikefu-case-desc{font-size:11px;color:#999;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
/* 联系方式快捷入口 */
.aikefu-contacts{display:flex;justify-content:center;gap:18px;padding:8px 0 4px;border-top:1px solid #f0eef6;margin-top:6px;}
.aikefu-contact-btn{display:flex;flex-direction:column;align-items:center;cursor:pointer;color:#666;transition:color .2s;position:relative;}
.aikefu-contact-btn:hover{color:#201455;}
.aikefu-contact-btn .ic{width:34px;height:34px;border-radius:50%;background:#f5f4fa;display:flex;align-items:center;justify-content:center;margin-bottom:3px;transition:background .2s;}
.aikefu-contact-btn:hover .ic{background:#e8e4f5;}
.aikefu-contact-btn .ic svg{width:18px;height:18px;fill:currentColor;}
.aikefu-contact-btn .lb{font-size:10px;}
/* 输入区 */
.aikefu-input-area{padding:10px 12px;border-top:1px solid #f0eef6;background:#fff;flex-shrink:0;}
.aikefu-input-row{display:flex;align-items:flex-end;gap:8px;}
.aikefu-input-row textarea{flex:1;resize:none;border:1px solid #e4e0ee;border-radius:10px;padding:8px 10px;font-size:14px;line-height:1.5;max-height:96px;outline:none;font-family:inherit;transition:border-color .2s;color:#333;}
.aikefu-input-row textarea:focus{border-color:#201455;}
.aikefu-send{width:38px;height:38px;border-radius:50%;background:#201455;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .2s,transform .1s;}
.aikefu-send:active{transform:scale(.92);}
.aikefu-send:disabled{background:#ccc;cursor:not-allowed;}
.aikefu-send svg{width:18px;height:18px;fill:#fff;}
.aikefu-counter{font-size:11px;color:#bbb;text-align:right;margin-top:4px;padding-right:2px;}
/* 留言表单 */
.aikefu-leave{padding:16px 14px;background:#fafafa;}
.aikefu-leave h4{font-size:14px;color:#333;margin:0 0 12px;text-align:center;}
.aikefu-leave .aikefu-field{margin-bottom:10px;}
.aikefu-leave .aikefu-field label{display:block;font-size:12px;color:#666;margin-bottom:4px;}
.aikefu-leave .aikefu-field label .req{color:#e74c3c;}
.aikefu-leave .aikefu-field input,.aikefu-leave .aikefu-field textarea{width:100%;border:1px solid #e4e0ee;border-radius:8px;padding:8px 10px;font-size:13px;outline:none;font-family:inherit;transition:border-color .2s;color:#333;box-sizing:border-box;}
.aikefu-leave .aikefu-field input:focus,.aikefu-leave .aikefu-field textarea:focus{border-color:#201455;}
.aikefu-leave .aikefu-field .err{color:#e74c3c;font-size:11px;margin-top:3px;display:none;}
.aikefu-leave .aikefu-field.has-err .err{display:block;}
.aikefu-leave .aikefu-leave-submit{width:100%;padding:10px;background:#201455;color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:background .2s;margin-top:4px;}
.aikefu-leave .aikefu-leave-submit:hover{background:#2a1865;}
.aikefu-leave .aikefu-leave-submit:disabled{background:#ccc;cursor:not-allowed;}
.aikefu-leave-success{text-align:center;padding:24px 10px;color:#333;}
.aikefu-leave-success svg{width:42px;height:42px;fill:#4ade80;margin-bottom:8px;}
.aikefu-leave-success p{margin:6px 0;}
/* 微信二维码弹层 */
.aikefu-wx-pop{position:absolute;inset:0;background:rgba(255,255,255,.98);z-index:10;display:none;flex-direction:column;align-items:center;justify-content:center;padding:20px;}
.aikefu-wx-pop.aikefu-show{display:flex;}
.aikefu-wx-pop img{width:180px;height:180px;border-radius:8px;border:1px solid #eee;}
.aikefu-wx-pop span{margin-top:10px;font-size:13px;color:#666;}
.aikefu-wx-pop .aikefu-wx-close{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:50%;background:#f5f4fa;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.aikefu-wx-pop .aikefu-wx-close svg{width:14px;height:14px;fill:#666;}
/* 移动端全屏 */
@media (max-width:768px){
    .aikefu-win{right:0;bottom:0;width:100%;height:100vh;max-height:100vh;border-radius:0;}
    .aikefu-mask{background:rgba(0,0,0,.5);}
    .aikefu-msg .aikefu-bubble{max-width:80%;}
    .aikefu-input-area{position:sticky;bottom:0;}
}