.messenger-welcome-bubble {
    position: absolute;
    bottom: calc(100% + 0.75rem);
    width: min(18rem, calc(100vw - 3rem));
    background: #fff;
    color: #0f172a;
    border: 1px solid #e2e8f0;
    border-radius: 1rem;
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.16);
    padding: 0.875rem 2.25rem 0.875rem 0.875rem;
    font-size: 0.875rem;
    line-height: 1.45;
    cursor: pointer;
    animation: messenger-welcome-in 0.25s ease;
    z-index: 1;
}

.messenger-launcher-root.is-side-right .messenger-welcome-bubble {
    right: 0;
    left: auto;
}

.messenger-launcher-root.is-side-left .messenger-welcome-bubble {
    left: 0;
    right: auto;
}

.messenger-welcome-bubble::after {
    content: '';
    position: absolute;
    bottom: -0.45rem;
    width: 0.75rem;
    height: 0.75rem;
    background: #fff;
    border-right: 1px solid #e2e8f0;
    border-bottom: 1px solid #e2e8f0;
    transform: rotate(45deg);
}

.messenger-launcher-root.is-side-right .messenger-welcome-bubble::after {
    right: 1.25rem;
}

.messenger-launcher-root.is-side-left .messenger-welcome-bubble::after {
    left: 1.25rem;
}

.messenger-welcome-close {
    position: absolute;
    top: 0.4rem;
    right: 0.45rem;
    width: 1.5rem;
    height: 1.5rem;
    border: none;
    border-radius: 999px;
    background: transparent;
    color: #64748b;
    font-size: 1.1rem;
    line-height: 1;
    cursor: pointer;
}

.messenger-welcome-close:hover {
    background: #f1f5f9;
    color: #0f172a;
}

@keyframes messenger-welcome-in {
    from {
        opacity: 0;
        transform: translateY(0.35rem);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 640px) {
    .messenger-welcome-bubble {
        width: min(16rem, calc(100vw - 2.5rem));
    }
}
