/* ============================================================
   VC Smart Solutions — Vannessa assistant widget
   Fully self-contained; namespaced with .vcw- to avoid collisions.
   ============================================================ */
.vcw-launcher{position:fixed;right:24px;bottom:24px;z-index:9999;display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#0066FF,#00D2FF);border:none;cursor:pointer;box-shadow:0 16px 32px -10px rgba(23,92,211,.55);color:#fff;border-radius:999px;padding:8px 22px 8px 8px;font-weight:700;font-size:14.5px;font-family:'Inter','Roboto',sans-serif;}
.vcw-launcher .vcw-ring{position:absolute;inset:-6px;border-radius:999px;border:2px solid rgba(0,210,255,.45);animation:vcw-pulse 2.6s ease-out infinite;pointer-events:none;}
@keyframes vcw-pulse{0%{transform:scale(.9);opacity:.9;}100%{transform:scale(1.15);opacity:0;}}
.vcw-launcher .vcw-photo{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.7);position:relative;flex:0 0 auto;}
.vcw-launcher .vcw-status-dot{position:absolute;left:29px;top:29px;width:11px;height:11px;border-radius:50%;background:#4CE07A;border:2px solid #0B1B3D;z-index:2;}
.vcw-launcher .vcw-badge{position:absolute;top:-6px;right:-6px;background:#25D366;color:#04361E;font-size:11px;font-weight:800;width:21px;height:21px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #fff;}

.vcw-panel{position:fixed;right:24px;bottom:94px;z-index:9999;width:372px;max-width:calc(100vw - 32px);height:min(560px,74vh);background:#fff;border-radius:20px;box-shadow:0 30px 70px -18px rgba(0,0,0,.4);border:1px solid #DDE4F0;display:flex;flex-direction:column;overflow:hidden;transform:translateY(18px) scale(.96);opacity:0;pointer-events:none;transition:opacity .25s cubic-bezier(.2,.9,.3,1.3), transform .25s cubic-bezier(.2,.9,.3,1.3);font-family:'Inter','Roboto',sans-serif;}
.vcw-panel.vcw-open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}
.vcw-head{background:linear-gradient(135deg,#0B1B3D,#123a7a);color:#fff;padding:16px 18px;display:flex;align-items:center;gap:12px;flex:0 0 auto;}
.vcw-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.5);flex:0 0 auto;}
.vcw-head-text{flex:1;min-width:0;}
.vcw-head strong{display:block;font-size:14.5px;}
.vcw-head small{opacity:.85;font-size:12px;display:flex;align-items:center;gap:5px;}
.vcw-head small::before{content:"";width:7px;height:7px;border-radius:50%;background:#4CE07A;display:inline-block;flex:0 0 auto;}
.vcw-lang{display:flex;gap:6px;padding:8px 14px;border-bottom:1px solid #DDE4F0;background:#F3F6FB;}
.vcw-lang button{flex:1;border:1px solid #DDE4F0;background:#fff;color:#4E5A70;font-weight:700;font-size:12px;padding:6px;border-radius:8px;cursor:pointer;}
.vcw-lang button.vcw-active{background:#0B1B3D;border-color:#0B1B3D;color:#fff;}
.vcw-close{background:rgba(255,255,255,.12);border:none;color:#fff;cursor:pointer;padding:6px;border-radius:8px;display:flex;flex:0 0 auto;}
.vcw-close:hover{background:rgba(255,255,255,.22);}
.vcw-body{flex:1;min-height:0;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:#F3F6FB;}
.vcw-row{display:flex;align-items:flex-end;gap:8px;align-self:flex-start;max-width:92%;opacity:0;transform:translateY(10px) scale(.98);animation:vcw-msg-in .35s ease forwards;}
.vcw-row .vcw-mini-avatar{width:26px;height:26px;border-radius:50%;object-fit:cover;flex:0 0 auto;}
.vcw-msg{padding:11px 14px;border-radius:14px;font-size:14px;line-height:1.55;margin:0;}
.vcw-msg.vcw-bot{background:#fff;border:1px solid #DDE4F0;border-top-left-radius:4px;color:#0E1526;}
.vcw-msg.vcw-user{background:#0066FF;color:#fff;border-top-right-radius:4px;align-self:flex-end;font-weight:600;max-width:80%;opacity:0;transform:translateY(10px) scale(.98);animation:vcw-msg-in .3s ease forwards;}
@keyframes vcw-msg-in{to{opacity:1;transform:none;}}
.vcw-typing{display:flex;align-items:center;gap:8px;align-self:flex-start;opacity:0;animation:vcw-msg-in .25s ease forwards;}
.vcw-typing .vcw-mini-avatar{width:26px;height:26px;border-radius:50%;object-fit:cover;flex:0 0 auto;}
.vcw-typing-bubble{background:#fff;border:1px solid #DDE4F0;border-top-left-radius:4px;border-radius:14px;padding:12px 16px;display:flex;gap:4px;align-items:center;}
.vcw-typing-bubble span{width:6px;height:6px;border-radius:50%;background:#8793A8;animation:vcw-bounce 1.1s ease-in-out infinite;}
.vcw-typing-bubble span:nth-child(2){animation-delay:.15s;}
.vcw-typing-bubble span:nth-child(3){animation-delay:.3s;}
@keyframes vcw-bounce{0%,60%,100%{transform:translateY(0);opacity:.5;}30%{transform:translateY(-5px);opacity:1;}}
.vcw-chip-label{font-size:12px;font-weight:700;color:#8793A8;text-transform:uppercase;letter-spacing:.05em;margin-top:4px;opacity:0;animation:vcw-msg-in .3s ease forwards;}
.vcw-chip{display:block;width:100%;border:1px solid #DDE4F0;background:#fff;color:#0E1526;font-size:13.5px;font-weight:600;padding:11px 14px;border-radius:12px;cursor:pointer;text-align:left;transition:border-color .15s, color .15s, transform .15s;opacity:0;transform:translateY(8px);animation:vcw-msg-in .35s ease forwards;font-family:'Inter','Roboto',sans-serif;}
.vcw-chip:hover{border-color:#0066FF;color:#0066FF;transform:translateY(-2px);}
.vcw-footer{padding:12px 16px 16px;border-top:1px solid #DDE4F0;flex:0 0 auto;background:#fff;}
.vcw-cta{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;background:#25D366;color:#04361E;font-weight:800;font-size:14px;padding:12px;border-radius:12px;text-decoration:none;box-shadow:0 10px 20px -8px rgba(37,211,102,.5);transition:background .15s;}
.vcw-cta svg{width:18px;height:18px;fill:currentColor;}
.vcw-cta:hover{background:#33e076;}

@media (max-width:560px){
  .vcw-panel{right:10px;left:10px;width:auto;bottom:88px;}
  .vcw-launcher{right:14px;bottom:14px;}
}
