.vcw-btn{position:fixed;bottom:18px;z-index:2147483647}
.vcw-btn.right{right:18px}.vcw-btn.left{left:18px}
.vcw-fab{width:54px;height:54px;border-radius:999px;border:none;color:#fff;font-weight:700;font-size:24px;line-height:1;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.25)}
.vcw-panel{position:fixed;bottom:84px;width:340px;max-width:calc(100vw - 36px);height:460px;max-height:calc(100vh - 120px);
  border-radius:16px;overflow:hidden;background:#0b1228;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 36px rgba(0,0,0,.35);
  z-index:2147483647;display:none;flex-direction:column}
.vcw-panel.right{right:18px}.vcw-panel.left{left:18px}
.vcw-head{padding:12px 12px;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:space-between}
.vcw-head .x{background:transparent;border:none;color:#fff;font-size:18px;cursor:pointer}
.vcw-head .edit{margin-left:auto;margin-right:8px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);color:#fff;font-size:13px;line-height:1;cursor:pointer;border-radius:10px;padding:6px 8px}
.vcw-head .edit:hover{filter:brightness(1.05)}
.vcw-msgs{flex:1;padding:12px;overflow:auto;background:#081026}
.vcw-b{max-width:82%;padding:9px 10px;border-radius:14px;margin:8px 0;white-space:pre-wrap;word-break:break-word;color:#e8ecff;font-family:system-ui,Segoe UI,Arial;font-size:14px}
.vcw-b.visitor{background:#17224a;border:1px solid #2a3a73}
.vcw-b.operator{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);margin-left:auto}
.vcw-meta{font-size:11px;color:rgba(255,255,255,.6);margin-top:4px}
.vcw-comp{display:flex;gap:8px;padding:10px;border-top:1px solid rgba(255,255,255,.12);background:#0b1228;align-items:center}
.vcw-comp textarea{flex:1;min-width:0;resize:none;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:#081026;color:#e8ecff;padding:10px 10px;height:44px;font-family:system-ui,Segoe UI,Arial}
.vcw-comp button{border:none;border-radius:12px;color:#fff;font-weight:700;padding:0 14px;cursor:pointer}


/* Attach icon */
.vcw-attach{flex:0 0 44px;width:44px;min-width:44px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:#081026;color:#e8ecff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.vcw-attach:disabled{opacity:.6;cursor:not-allowed}
.vcw-attach:hover{background:#0d1a3a}

/* Images inside bubbles */
.vcw-img{display:block;max-width:240px;width:100%;height:auto;border-radius:12px}


/* Pre-chat profile overlay */
.vcw-prechat{
  position:absolute;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:14px;
  background:rgba(8,16,38,.92);
  z-index:5;
}
.vcw-precard{
  width:100%;
  max-width:320px;
  background:#0b1228;
  border:1px solid rgba(255,255,255,.16);
  border-radius:16px;
  padding:14px;
  color:#e8ecff;
  box-shadow:0 18px 36px rgba(0,0,0,.35);
}
.vcw-pretitle{font-weight:800;font-size:16px;margin-bottom:6px}
.vcw-prehint{font-size:12px;opacity:.75;margin-bottom:10px;line-height:1.35}
.vcw-prelabel{display:block;font-size:12px;opacity:.75;margin:8px 0 4px}
.vcw-prein,.vcw-presel{
  width:100%;
  height:40px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:#081026;
  color:#e8ecff;
  padding:0 10px;
  outline:none;
}
.vcw-prebtn{
  margin-top:12px;
  width:100%;
  height:42px;
  border-radius:12px;
  border:none;
  font-weight:800;
  cursor:pointer;
  background:rgba(255,255,255,.12);
  color:#fff;
}


/* Lightbox */
.vcw-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:2147483647;display:none;align-items:center;justify-content:center;padding:14px}
.vcw-lightbox.show{display:flex}
.vcw-lb-inner{position:relative;width:min(92vw,980px);max-height:82vh;background:#0b1228;border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:10px}
.vcw-lb-close{position:absolute;top:6px;right:10px;width:34px;height:34px;border-radius:12px;border:none;background:rgba(255,255,255,.10);color:#fff;font-size:22px;cursor:pointer}
.vcw-lb-img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain;border-radius:12px}

.vcw-file{position:absolute !important;left:-9999px !important;width:1px !important;height:1px !important;opacity:0 !important;pointer-events:none !important}

.vcw-filelink{display:inline-block;color:#e8ecff;text-decoration:underline;word-break:break-word}

/* prechat layout override */
.vcw-prechat-card{display:flex;flex-direction:column;gap:10px}
.vcw-prechat-input{box-sizing:border-box;width:100%}


/* subtle "vibrate" when closed */
/*.vcw-btn.vcw-closed .vcw-fab{*/
/*  animation: vcw-shake 6s infinite;*/
/*}*/
/*.vcw-btn.vcw-closed .vcw-fab:hover{*/
/*  animation-play-state: paused;*/
/*}*/
/*@keyframes vcw-shake{*/
/*  0%, 78%, 100% { transform: translate3d(0,0,0) rotate(0deg); }*/
/*  80% { transform: translate3d(-1px, 0, 0) rotate(-1deg); }*/
/*  82% { transform: translate3d(2px, 0, 0) rotate(1deg); }*/
/*  84% { transform: translate3d(-2px, 0, 0) rotate(-1deg); }*/
/*  86% { transform: translate3d(2px, 0, 0) rotate(1deg); }*/
/*  88% { transform: translate3d(-1px, 0, 0) rotate(0deg); }*/
/*}*/


/* bigger icon */
.vcw-fab { font-size: 24px; line-height: 1; }

/* vibration only when closed */
.vcw-fab.vcw-closed {
  animation: vcw-shake 3.5s infinite;
}

@keyframes vcw-shake {
  0%, 92%, 100% { transform: translate3d(0,0,0); }
  93% { transform: translate3d(-1px, 0, 0); }
  94% { transform: translate3d(2px, 0, 0); }
  95% { transform: translate3d(-2px, 0, 0); }
  96% { transform: translate3d(2px, 0, 0); }
  97% { transform: translate3d(-1px, 0, 0); }
  98% { transform: translate3d(1px, 0, 0); }
}