.wpcb-wrap{
    position: fixed;
    right: var(--wpcb-right, 20px);
    bottom: var(--wpcb-bottom, 20px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--wpcb-gap, 10px);
    z-index: 99999;
}

.wpcb-btn{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--wpcb-size, 50px);
    height: var(--wpcb-size, 50px);
    border-radius: 50%;
    color: var(--wpcb-icon-color, #fff);
    text-decoration: none;
    box-shadow: 0 4px 12px rgba(0,0,0,0.18);
    transition: transform .2s ease, box-shadow .2s ease;
    overflow: visible;
}

.wpcb-btn:hover{
    transform: scale(1.08);
    box-shadow: 0 6px 18px rgba(0,0,0,0.25);
}

.wpcb-btn:focus{
    outline: 2px solid rgba(255,255,255,0.6);
    outline-offset: 2px;
}

.wpcb-phone    { background: var(--wpcb-color-phone,    #2ecc71); }
.wpcb-zalo     { background: var(--wpcb-color-zalo,     #0068ff); }
.wpcb-facebook { background: var(--wpcb-color-facebook, #1877f2); }

.wpcb-icon{
    display: inline-flex;
    width: var(--wpcb-icon, 28px);
    height: var(--wpcb-icon, 28px);
    color: var(--wpcb-icon-color, #fff);
}

.wpcb-icon svg{
    width: 100%;
    height: 100%;
    display: block;
}

.wpcb-pulse{
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: inherit;
    opacity: .6;
    z-index: -1;
    animation: wpcb-pulse 1.8s ease-out infinite;
}

.wpcb-phone    .wpcb-pulse{ background: var(--wpcb-color-phone,    #2ecc71); }
.wpcb-zalo     .wpcb-pulse{ background: var(--wpcb-color-zalo,     #0068ff); }
.wpcb-facebook .wpcb-pulse{ background: var(--wpcb-color-facebook, #1877f2); }

@keyframes wpcb-pulse{
    0%   { transform: scale(1);   opacity: .6; }
    100% { transform: scale(1.6); opacity: 0;  }
}

@media (max-width: 767px){
    .wpcb-hide-mobile{ display: none !important; }
}
@media (min-width: 768px){
    .wpcb-hide-pc{ display: none !important; }
}

@media (prefers-reduced-motion: reduce){
    .wpcb-pulse{ animation: none; }
    .wpcb-btn:hover{ transform: none; }
}
