.qing-whatsapp-float {
    --qing-wa-x: 28px;
    --qing-wa-bottom: 118px;
    --qing-wa-size: 56px;
    --qing-wa-mobile-x: 16px;
    --qing-wa-mobile-bottom: 24px;
    --qing-wa-mobile-size: 48px;
    --qing-wa-bg: #8a6d3b;
    --qing-wa-icon: #fff;
    position: fixed;
    z-index: 9990;
    bottom: var(--qing-wa-bottom);
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--qing-wa-size);
    height: var(--qing-wa-size);
    border: 0;
    border-radius: 50%;
    background: var(--qing-wa-bg);
    color: var(--qing-wa-icon);
    text-decoration: none !important;
    box-shadow: 0 10px 28px rgba(25, 20, 15, .2);
    transition: transform .25s ease, background-color .25s ease, color .25s ease, box-shadow .25s ease;
}

.qing-whatsapp-float--right { right: var(--qing-wa-x); }
.qing-whatsapp-float--left { left: var(--qing-wa-x); }

.qing-whatsapp-float:hover,
.qing-whatsapp-float:focus-visible {
    background: var(--qing-wa-bg);
    color: var(--qing-wa-icon);
    transform: translateY(-3px);
    box-shadow: 0 14px 32px rgba(25, 20, 15, .28);
}

.qing-whatsapp-float:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 3px;
}

.qing-whatsapp-float__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60%;
    height: 60%;
}

.qing-whatsapp-float__icon svg,
.qing-whatsapp-float__custom-icon {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

@media (max-width: 767px) {
    .qing-whatsapp-float {
        right: auto;
        bottom: calc(var(--qing-wa-mobile-bottom) + env(safe-area-inset-bottom, 0px));
        width: var(--qing-wa-mobile-size);
        height: var(--qing-wa-mobile-size);
    }

    .qing-whatsapp-float--right { right: calc(var(--qing-wa-mobile-x) + env(safe-area-inset-right, 0px)); left: auto; }
    .qing-whatsapp-float--left { right: auto; left: calc(var(--qing-wa-mobile-x) + env(safe-area-inset-left, 0px)); }
}

@media (prefers-reduced-motion: reduce) {
    .qing-whatsapp-float { transition: none; }
}
