/* All frontend selectors are scoped to .swb2-root to avoid theme/plugin leakage. */
.swb2-root{font-family:inherit;line-height:normal;max-width:100%}
.swb2-root[hidden]{display:none!important}
.swb2-root,.swb2-root *{box-sizing:border-box}
.swb2-root.swb2-slot{display:flex;max-width:100%}
.swb2-root.swb2-align-left{justify-content:flex-start}
.swb2-root.swb2-align-center{justify-content:center}
.swb2-root.swb2-align-right{justify-content:flex-end}
.swb2-root.swb2-context-floating{position:fixed;display:flex;width:auto;max-width:calc(100vw - 16px);margin:0;padding:0;line-height:normal}

.swb2-root .swb2-link{
    --swb-bg:#e4e4e4;--swb-hover-bg:#d8d8d8;--swb-text:#777;--swb-hover-text:#555;
    --swb-secondary:#667085;--swb-icon:#fff;--swb-hover-icon:#fff;--swb-icon-bg:#25d366;
    --swb-border:#25d366;--swb-cta-bg:#fff;--swb-cta-text:#555;--swb-font:13px;
    --swb-mobile-font:12px;--swb-secondary-font:12px;--swb-icon-size:32px;
    --swb-mobile-icon-size:28px;--swb-avatar-size:70px;--swb-mobile-avatar-size:54px;
    --swb-radius:25px;--swb-border-size:0px;--swb-overlap:12px;--swb-pad-x:12px;
    --swb-pad-y:0px;--swb-mobile-pad-x:10px;--swb-mobile-pad-y:0px;
    --swb-desktop-width:auto;--swb-tablet-width:auto;--swb-mobile-width:auto;
    --swb-max-width:420px;--swb-desktop-height:auto;--swb-mobile-height:auto;--swb-shadow:none;
    position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
    gap:8px!important;width:var(--swb-desktop-width);min-width:0;max-width:min(var(--swb-max-width),calc(100vw - 20px));
    min-height:0;height:var(--swb-desktop-height);margin:0!important;padding:var(--swb-pad-y) var(--swb-pad-x);
    color:var(--swb-text)!important;background:var(--swb-bg);border:var(--swb-border-size) solid var(--swb-border);
    border-radius:var(--swb-radius);box-shadow:var(--swb-shadow);font-family:inherit!important;font-size:var(--swb-font)!important;
    font-style:normal!important;font-weight:400;line-height:1.35!important;letter-spacing:normal!important;text-align:left!important;
    text-decoration:none!important;text-transform:none!important;vertical-align:middle;cursor:pointer;overflow:visible;
    transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
    -webkit-tap-highlight-color:transparent
}
.swb2-root[data-swb-device="tablet"] .swb2-link{width:var(--swb-tablet-width)}
.swb2-root[data-swb-mobile="1"] .swb2-link{width:var(--swb-mobile-width);height:var(--swb-mobile-height);padding:var(--swb-mobile-pad-y) var(--swb-mobile-pad-x);font-size:var(--swb-mobile-font)!important}
.swb2-root .swb2-link:hover,.swb2-root .swb2-link:focus{color:var(--swb-hover-text)!important;background-color:var(--swb-hover-bg);text-decoration:none!important}
.swb2-root .swb2-link:focus-visible{outline:3px solid rgba(37,211,102,.3)!important;outline-offset:3px}
.swb2-root .swb2-link.swb2-no-wrap .swb2-main-text,.swb2-root .swb2-link.swb2-no-wrap .swb2-separate-cta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.swb2-root .swb2-link.swb2-wrap-text .swb2-main-text,.swb2-root .swb2-link.swb2-wrap-text .swb2-separate-cta{white-space:normal;overflow-wrap:anywhere}
.swb2-root .swb2-copy{display:flex;min-width:0;max-width:100%;flex-direction:column;align-items:flex-start;justify-content:center;line-height:1.25}
.swb2-root .swb2-main-text{display:block;min-width:0;max-width:100%;color:inherit!important;font:inherit!important;line-height:inherit!important}
.swb2-root .swb2-secondary-text{display:block;margin-top:3px;color:var(--swb-secondary)!important;font-family:inherit!important;font-size:var(--swb-secondary-font)!important;font-weight:400!important;line-height:1.25!important}
.swb2-root .swb2-icon-wrap{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto;width:var(--swb-icon-size);height:var(--swb-icon-size);margin:0;padding:0;color:var(--swb-icon);line-height:0!important}
.swb2-root[data-swb-mobile="1"] .swb2-icon-wrap{width:var(--swb-mobile-icon-size);height:var(--swb-mobile-icon-size)}
.swb2-root .swb2-icon-svg{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;color:inherit;fill:currentColor}
.swb2-root .swb2-profile-image{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;object-fit:cover!important}

/* Style 1: compact theme-like button. */
.swb2-root .swb2-style-1{gap:6px;padding:calc(var(--swb-pad-y) + 5px) calc(var(--swb-pad-x) + 7px);border-radius:var(--swb-radius);font-weight:600}
.swb2-root[data-swb-mobile="1"] .swb2-style-1{padding:calc(var(--swb-mobile-pad-y) + 5px) calc(var(--swb-mobile-pad-x) + 7px)}
.swb2-root .swb2-style-1 .swb2-icon-wrap{width:min(var(--swb-icon-size),22px);height:min(var(--swb-icon-size),22px)}

/* Styles 2/3/3.1/7: an icon plus a separate CTA bubble, as in Click to Chat. */
.swb2-root .swb2-style-2,.swb2-root .swb2-style-3,.swb2-root .swb2-style-3-1,.swb2-root .swb2-style-7{
    width:auto;height:auto;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;gap:10px;overflow:visible
}
.swb2-root .swb2-style-2:hover,.swb2-root .swb2-style-3:hover,.swb2-root .swb2-style-3-1:hover,.swb2-root .swb2-style-7:hover,
.swb2-root .swb2-style-2:focus,.swb2-root .swb2-style-3:focus,.swb2-root .swb2-style-3-1:focus,.swb2-root .swb2-style-7:focus{background:transparent;color:inherit!important}
.swb2-root .swb2-style-2 .swb2-icon-wrap,.swb2-root .swb2-style-3 .swb2-icon-wrap{
    color:var(--swb-icon);background:var(--swb-icon-bg);border-radius:50%;box-shadow:var(--swb-shadow)
}
.swb2-root .swb2-style-2 .swb2-icon-wrap{border-radius:12px}
.swb2-root .swb2-style-3-1 .swb2-icon-wrap{padding:10px;color:var(--swb-icon);background:var(--swb-icon-bg);border-radius:50%;box-shadow:var(--swb-shadow)}
.swb2-root .swb2-style-3-1 .swb2-icon-svg{width:calc(100% - 2px)!important;height:calc(100% - 2px)!important}
.swb2-root .swb2-style-7 .swb2-icon-wrap{padding:8px;color:var(--swb-icon);background:var(--swb-icon-bg);border:var(--swb-border-size) solid var(--swb-border);border-radius:50%;box-shadow:var(--swb-shadow)}
.swb2-root .swb2-separate-cta{
    display:inline-block;order:initial;max-width:min(var(--swb-max-width),calc(100vw - var(--swb-icon-size) - 42px));
    padding:3px 16px;color:var(--swb-cta-text)!important;background:var(--swb-cta-bg);border-radius:10px;
    box-shadow:0 1px 4px rgba(0,0,0,.10);font-family:inherit!important;font-size:var(--swb-font)!important;line-height:1.6!important
}
.swb2-root[data-swb-mobile="1"] .swb2-separate-cta{max-width:calc(100vw - var(--swb-mobile-icon-size) - 38px);padding:3px 12px;font-size:var(--swb-mobile-font)!important}
.swb2-root .swb2-cta-hover .swb2-separate-cta{display:none}
.swb2-root .swb2-cta-hover:hover .swb2-separate-cta,.swb2-root .swb2-cta-hover:focus .swb2-separate-cta,.swb2-root .swb2-cta-hover:focus-within .swb2-separate-cta{display:inline-block}
.swb2-root .swb2-cta-hide .swb2-separate-cta{display:none}
.swb2-root .swb2-style-2:hover .swb2-icon-wrap,.swb2-root .swb2-style-3:hover .swb2-icon-wrap,.swb2-root .swb2-style-3-1:hover .swb2-icon-wrap,.swb2-root .swb2-style-7:hover .swb2-icon-wrap{background:var(--swb-hover-bg);color:var(--swb-hover-icon)}

/* Style 4: compact chip matching the supplied screenshot/Click to Chat dimensions. */
.swb2-root .swb2-style-4{
    width:var(--swb-desktop-width);min-height:var(--swb-icon-size);height:var(--swb-desktop-height);
    justify-content:center;gap:0;padding:var(--swb-pad-y) var(--swb-pad-x);background:var(--swb-bg);
    color:var(--swb-text)!important;border-radius:var(--swb-radius);font-size:var(--swb-font)!important;
    font-weight:400;line-height:var(--swb-icon-size)!important;box-shadow:var(--swb-shadow);overflow:visible
}
.swb2-root[data-swb-device="tablet"] .swb2-style-4{width:var(--swb-tablet-width)}
.swb2-root[data-swb-mobile="1"] .swb2-style-4{
    width:var(--swb-mobile-width);min-height:var(--swb-mobile-icon-size);height:var(--swb-mobile-height);
    padding:var(--swb-mobile-pad-y) var(--swb-mobile-pad-x);font-size:var(--swb-mobile-font)!important;line-height:var(--swb-mobile-icon-size)!important
}
.swb2-root .swb2-style-4 .swb2-icon-wrap{
    order:0;margin:0 8px 0 calc(var(--swb-overlap) * -1);padding:0;color:inherit;
    background:transparent!important;border:0!important;border-radius:0;box-shadow:none!important;overflow:visible
}
.swb2-root .swb2-style-4 .swb2-icon-svg-logo{
    display:block!important;width:100%!important;height:100%!important;overflow:visible!important;filter:drop-shadow(0 1px 1px rgba(0,0,0,.14))
}
.swb2-root .swb2-style-4.swb2-icon-right .swb2-icon-wrap{order:1;margin:0 calc(var(--swb-overlap) * -1) 0 8px}
.swb2-root .swb2-style-4 .swb2-main-text{line-height:1.25!important}
.swb2-root .swb2-style-4:hover{background:var(--swb-hover-bg);color:var(--swb-hover-text)!important;transform:none}
.swb2-root .swb2-style-4:hover .swb2-icon-wrap{background:transparent!important;color:inherit}

/* Style 5: image/content card. */
.swb2-root .swb2-style-5{width:var(--swb-desktop-width);min-width:min(280px,calc(100vw - 20px));padding:0;gap:0;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}
.swb2-root[data-swb-device="tablet"] .swb2-style-5{width:var(--swb-tablet-width)}
.swb2-root[data-swb-mobile="1"] .swb2-style-5{width:var(--swb-mobile-width);min-width:0}
.swb2-root .swb2-style-5 .swb2-icon-wrap{z-index:1;width:var(--swb-avatar-size);height:var(--swb-avatar-size);padding:5px;color:var(--swb-icon);background:var(--swb-icon-bg);border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.12)}
.swb2-root[data-swb-mobile="1"] .swb2-style-5 .swb2-icon-wrap{width:var(--swb-mobile-avatar-size);height:var(--swb-mobile-avatar-size)}
.swb2-root .swb2-style-5 .swb2-copy{min-height:var(--swb-avatar-size);min-width:180px;max-width:calc(var(--swb-max-width) - var(--swb-avatar-size));margin-left:-8px;padding:8px 18px 8px 22px;background:var(--swb-bg);border:1px solid var(--swb-border);border-radius:0 var(--swb-radius) var(--swb-radius) 0;box-shadow:var(--swb-shadow)}
.swb2-root .swb2-style-5.swb2-icon-right .swb2-icon-wrap{order:1}
.swb2-root .swb2-style-5.swb2-icon-right .swb2-copy{margin-right:-8px;margin-left:0;padding:8px 22px 8px 18px;border-radius:var(--swb-radius) 0 0 var(--swb-radius)}
.swb2-root[data-swb-mobile="1"] .swb2-style-5 .swb2-copy{min-height:var(--swb-mobile-avatar-size);max-width:calc(100vw - var(--swb-mobile-avatar-size) - 28px);padding:7px 12px 7px 18px}
.swb2-root .swb2-style-5:hover{background:transparent;color:inherit!important}
.swb2-root .swb2-style-5:hover .swb2-copy{background:var(--swb-hover-bg);color:var(--swb-hover-text)!important}

/* Style 6: plain text. */
.swb2-root .swb2-style-6{width:auto;height:auto;min-height:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;color:var(--swb-text)!important;text-decoration:underline!important;text-underline-offset:2px}
.swb2-root .swb2-style-6:hover{background:transparent;color:var(--swb-hover-text)!important}

/* Style 7.1: rounded icon/text pill. */
.swb2-root .swb2-style-7-1{width:var(--swb-desktop-width);padding:calc(var(--swb-pad-y) + 5px) calc(var(--swb-pad-x) + 5px);gap:7px;background:var(--swb-bg);border-radius:var(--swb-radius);font-weight:600}
.swb2-root[data-swb-device="tablet"] .swb2-style-7-1{width:var(--swb-tablet-width)}
.swb2-root[data-swb-mobile="1"] .swb2-style-7-1{width:var(--swb-mobile-width);padding:calc(var(--swb-mobile-pad-y) + 5px) calc(var(--swb-mobile-pad-x) + 5px)}
.swb2-root .swb2-style-7-1 .swb2-icon-wrap{padding:5px;color:var(--swb-icon);background:var(--swb-icon-bg);border-radius:50%}
.swb2-root .swb2-style-7-1:hover .swb2-icon-wrap{color:var(--swb-hover-icon)}

/* Style 8: material button dimensions and shadow. */
.swb2-root .swb2-style-8{width:var(--swb-desktop-width);min-height:36px;padding:0 2rem;gap:15px;background:var(--swb-bg);border-radius:4px;box-shadow:0 2px 2px rgba(0,0,0,.14),0 1px 5px rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2);font-weight:500;letter-spacing:.5px}
.swb2-root[data-swb-device="tablet"] .swb2-style-8{width:var(--swb-tablet-width)}
.swb2-root[data-swb-mobile="1"] .swb2-style-8{width:var(--swb-mobile-width);min-height:34px;padding:0 1.25rem;gap:10px}
.swb2-root .swb2-style-8 .swb2-icon-wrap{width:min(var(--swb-icon-size),24px);height:min(var(--swb-icon-size),24px)}
.swb2-root .swb2-style-8:hover{box-shadow:0 3px 3px rgba(7,6,6,.14),0 1px 7px rgba(0,0,0,.12),0 3px 1px -1px rgba(0,0,0,.2)}

/* Greeting panel with the retained WhatsApp pattern. */
.swb2-root .swb2-greeting{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:var(--swb-desktop-width);min-width:min(260px,calc(100vw - 20px));padding:14px;gap:10px;background:#efeae2;color:#17211d!important;border:1px solid #ddd6ca;border-radius:var(--swb-radius);box-shadow:var(--swb-shadow);text-align:left!important}
.swb2-root[data-swb-device="tablet"] .swb2-greeting{width:var(--swb-tablet-width)}
.swb2-root[data-swb-mobile="1"] .swb2-greeting{width:var(--swb-mobile-width);min-width:0;padding:12px}
.swb2-root .swb2-greeting.swb2-use-pattern{background-image:linear-gradient(rgba(239,234,226,.91),rgba(239,234,226,.91)),var(--swb-pattern);background-repeat:repeat;background-size:auto,420px auto}
.swb2-root .swb2-greeting:hover{background-color:#e7e1d8;color:#17211d!important}
.swb2-root .swb2-greeting-header{display:flex;align-items:center;gap:7px;color:#128c7e;font-size:12px;font-weight:700}
.swb2-root .swb2-greeting-header .swb2-icon-wrap{width:22px;height:22px;color:#25d366;background:transparent}
.swb2-root .swb2-greeting-bubble{position:relative;display:flex;align-self:flex-start;flex-direction:column;max-width:94%;padding:9px 11px;background:#fff;border-radius:3px 10px 10px 10px;box-shadow:0 1px 2px rgba(0,0,0,.11)}
.swb2-root .swb2-greeting-bubble:before{content:"";position:absolute;left:-7px;top:0;border-top:8px solid #fff;border-left:8px solid transparent}
.swb2-root .swb2-greeting-cta{display:block;width:100%;padding:8px 12px;color:#fff!important;background:var(--swb-icon-bg);border-radius:max(4px,calc(var(--swb-radius) / 2));font-weight:700;text-align:center}

/* User-uploaded complete design. */
.swb2-root .swb2-custom{display:inline-block!important;width:var(--swb-desktop-width);height:auto;padding:0;background:transparent!important;border:0;border-radius:0;box-shadow:none;line-height:0!important;overflow:visible}
.swb2-root[data-swb-device="tablet"] .swb2-custom{width:var(--swb-tablet-width)}
.swb2-root[data-swb-mobile="1"] .swb2-custom{width:var(--swb-mobile-width)}
.swb2-root .swb2-custom-image{display:block!important;width:100%!important;height:auto!important;max-width:min(var(--swb-max-width),calc(100vw - 20px))!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:var(--swb-radius)!important;box-shadow:var(--swb-shadow);object-fit:contain!important}
.swb2-root .swb2-custom-missing{min-width:220px;min-height:64px;padding:12px!important;background:#f6f7f7!important;color:#50575e!important;border:2px dashed #a7aaad!important;border-radius:8px!important;text-align:center!important}

/* Keep icon/text order explicit without touching unrelated theme elements. */
.swb2-root .swb2-icon-right .swb2-icon-wrap{order:2}
.swb2-root .swb2-icon-right .swb2-copy,.swb2-root .swb2-icon-right>.swb2-main-text{order:1}

@media (hover:none){.swb2-root .swb2-cta-hover .swb2-separate-cta{display:none}}
@media (prefers-reduced-motion:reduce){.swb2-root .swb2-link{transition:none}}
