/* GM Contact Widget — стилі кнопки-пузиря зв'язку для gmvaporizers (бренд: фіолет #5A4FD0, шрифт Jura). Форк vp-contact-widget.css. */
#vpcw{position:fixed;right:20px;bottom:24px;left:auto !important;width:max-content !important;max-width:none !important;z-index:99990;font-family:Jura,Arial,Helvetica,sans-serif}
#vpcw *{box-sizing:border-box}
.vpcw-fab{width:60px;height:60px;border-radius:50%;border:none;cursor:pointer;background:#3E9B7A;color:#fff;display:grid;place-items:center;box-shadow:0 10px 26px -6px rgba(62,155,122,.55);transition:transform .18s,box-shadow .18s;position:relative;padding:0}
.vpcw-fab:hover{transform:translateY(-2px) scale(1.04)}
.vpcw-fab:focus-visible{outline:3px solid #fff;outline-offset:3px}
.vpcw-fab svg{width:27px;height:27px;transition:opacity .16s,transform .2s}
.vpcw-fab .vpcw-close{position:absolute;opacity:0;transform:rotate(-30deg) scale(.6)}
#vpcw.is-open .vpcw-chat{opacity:0;transform:rotate(30deg) scale(.6)}
#vpcw.is-open .vpcw-close{opacity:1;transform:none}
#vpcw.is-open .vpcw-fab{background:#2F2E2E}
.vpcw-fab .vpcw-chat{position:relative;z-index:1}
.vpcw-fab .vpcw-close{z-index:1}
.vpcw-dot{position:absolute;top:2px;right:2px;width:13px;height:13px;border-radius:50%;background:#2BE45C;box-shadow:0 0 4px rgba(43,228,92,.06);z-index:3}
.vpcw-fab::after{z-index:0}
#vpcw.is-open .vpcw-dot{opacity:0}
@media (prefers-reduced-motion:no-preference){
.vpcw-fab::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #3E9B7A;animation:vpcwPulse 4.5s ease-out 2s infinite}
#vpcw.is-open .vpcw-fab::after{display:none}}
@keyframes vpcwPulse{0%{transform:scale(1);opacity:.5}16%{transform:scale(1.85);opacity:0}100%{transform:scale(1.85);opacity:0}}
.vpcw-panel{position:absolute;bottom:74px;right:0;width:312px;background:#fff;color:#2F2E2E;border-radius:18px;box-shadow:0 18px 50px -18px rgba(20,16,45,.4);overflow:hidden;transform:translateY(12px) scale(.97);opacity:0;transform-origin:bottom right;pointer-events:none;transition:opacity .2s,transform .2s;border:1px solid #ece9f6}
#vpcw.is-open .vpcw-panel{opacity:1;transform:none;pointer-events:auto}
.vpcw-head{background:#2F2E2E;color:#fff;padding:16px 16px 15px;position:relative}
.vpcw-wm{font-weight:800;letter-spacing:.24em;font-size:13px}
.vpcw-st{display:flex;align-items:center;gap:7px;font-size:12.5px;color:#cfcbda;margin-top:5px}
.vpcw-st i{width:8px;height:8px;border-radius:50%;background:#2BE45C;box-shadow:0 0 0 3px rgba(43,228,92,.32),0 0 7px rgba(43,228,92,.7)}
.vpcw-pclose{position:absolute;top:12px;right:12px;width:30px;height:30px;border:none;border-radius:8px;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;font-size:17px;display:grid;place-items:center;padding:0}
.vpcw-pclose:hover{background:rgba(255,255,255,.22)}
.vpcw-sub{padding:13px 16px 4px;font-size:13px;color:#6b6577}
.vpcw-chans{padding:6px 10px 12px;display:flex;flex-direction:column}
.vpcw-ch{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:none;background:transparent;cursor:pointer;padding:11px 10px;border-radius:12px;color:#2F2E2E;transition:background .14s;text-decoration:none}
.vpcw-ch:hover{background:#F4F1FE}
.vpcw-ch:focus-visible{outline:2px solid #5A4FD0;outline-offset:1px}
.vpcw-ic{width:42px;height:42px;border-radius:12px;flex:none;display:grid;place-items:center;color:#fff}
.vpcw-ic svg{width:22px;height:22px}
.vpcw-tx{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}
.vpcw-tx b{font-size:14.5px;font-weight:700}
.vpcw-tx small{font-size:12.5px;color:#8b8598}
.vpcw-arw{width:16px;height:16px;color:#c7c2d4;flex:none}
.vpcw-foot{border-top:1px solid #efedf6;padding:10px 16px 13px;font-size:12px;color:#8b8598;display:flex;align-items:center;gap:6px}
.vpcw-foot svg{width:13px;height:13px}
.vpcw-ch[data-k="phone"]{order:4}
@media (max-width:768px){
#vpcw{right:16px;bottom:16px}
.vpcw-fab{width:56px;height:56px}
.vpcw-panel{position:fixed;inset:0;width:auto;border:none;border-radius:0;transform:translateY(100%);display:flex;flex-direction:column;z-index:100000}
#vpcw.is-open .vpcw-panel{transform:none}
#vpcw.is-open .vpcw-fab{opacity:0;pointer-events:none;transform:scale(.6)}
.vpcw-sub{padding-top:16px}
.vpcw-chans{flex:1;justify-content:center;padding:6px 14px 14px}
.vpcw-ch{padding:14px 12px}
.vpcw-ic{width:46px;height:46px}
.vpcw-foot{margin-top:auto}
.vpcw-ch[data-k="phone"]{order:-1}
}
