/* Islency floating social bar — fixed right edge, above mobile bottom nav */

:root {
    --islency-floating-social-size: 1.875rem;
    --islency-floating-social-gap: 0.26rem;
    --islency-floating-social-right: 10px;
}

body.o_theme_islency_nova .s_islency_floating_social {
    position: fixed;
    right: var(--islency-floating-social-right);
    bottom: calc(0.825rem + var(--islency-safe-bottom, env(safe-area-inset-bottom, 0px)));
    z-index: 1035;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--islency-floating-social-gap);
    pointer-events: none;
}

@media (max-width: 991.98px) {
    body.o_theme_islency_nova:has(.s_islency_mobile_bar) .s_islency_floating_social {
        bottom: calc(
            var(--islency-mobile-bar-clearance, calc(
                var(--islency-mobile-bar-height, 3.65rem)
                + var(--islency-safe-bottom, env(safe-area-inset-bottom, 0px))
            ))
            + 0.41rem
        );
    }

    /* PDP sticky buy row sits above the mobile bar — keep socials above it. */
    body.o_theme_islency_nova:has(#wrap.o_wsale_product_page):has(.s_islency_mobile_bar) .s_islency_floating_social {
        bottom: calc(
            var(--islency-mobile-bar-clearance, calc(
                var(--islency-mobile-bar-height, 3.65rem)
                + var(--islency-safe-bottom, env(safe-area-inset-bottom, 0px))
            ))
            + var(--islency-pdp-cta-h, 2.25rem)
            + 1.55rem
        );
    }

    body.o_theme_islency_nova .s_islency_floating_social_links {
        max-height: none;
        opacity: 1;
        transform: none;
    }
}

body.o_theme_islency_nova .s_islency_floating_social_links {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--islency-floating-social-gap);
    overflow: hidden;
    max-height: 20rem;
    opacity: 1;
    transform: translateY(0);
    transition:
        max-height 0.25s ease,
        opacity 0.2s ease,
        transform 0.2s ease;
}

body.o_theme_islency_nova .s_islency_floating_social--collapsed .s_islency_floating_social_links {
    max-height: 0;
    opacity: 0;
    transform: translateY(0.26rem);
    pointer-events: none;
}

body.o_theme_islency_nova .s_islency_floating_social_btn {
    pointer-events: auto;
    width: var(--islency-floating-social-size);
    height: var(--islency-floating-social-size);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    padding: 0;
    border-radius: 0.26rem;
    color: #fff;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(18, 74, 110, 0.22);
    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease,
        opacity 0.2s ease,
        visibility 0.2s ease;
    cursor: pointer;
    font: inherit;
}

body.o_theme_islency_nova .s_islency_floating_social_btn:hover,
body.o_theme_islency_nova .s_islency_floating_social_btn:focus-visible {
    color: #fff;
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(18, 74, 110, 0.3);
}

body.o_theme_islency_nova .s_islency_floating_social_btn--whatsapp {
    background: #25d366;
}

body.o_theme_islency_nova .s_islency_floating_social_btn--facebook {
    background: #1877f2;
}

body.o_theme_islency_nova .s_islency_floating_social_btn--instagram {
    background: linear-gradient(
        135deg,
        #f09433 0%,
        #e6683c 25%,
        #dc2743 50%,
        #cc2366 75%,
        #bc1888 100%
    );
}

body.o_theme_islency_nova .s_islency_floating_social_btn--toggle {
    background: #124a6e;
}

body.o_theme_islency_nova .s_islency_floating_social_btn--scroll-top {
    background: #0d3a57;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

body.o_theme_islency_nova .s_islency_floating_social_btn--scroll-top-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

body.o_theme_islency_nova .s_islency_floating_social_toggle_icon--collapsed {
    display: none;
}

body.o_theme_islency_nova .s_islency_floating_social--collapsed .s_islency_floating_social_toggle_icon--expanded {
    display: none;
}

body.o_theme_islency_nova .s_islency_floating_social--collapsed .s_islency_floating_social_toggle_icon--collapsed {
    display: inline-block;
}

body.o_theme_islency_nova .s_islency_floating_social_btn .fa {
    font-size: 0.7125rem;
    line-height: 1;
}

@media (prefers-reduced-motion: reduce) {
    body.o_theme_islency_nova .s_islency_floating_social_btn,
    body.o_theme_islency_nova .s_islency_floating_social_links {
        transition: none;
    }
}

/* After .s_islency_floating_social_btn { display: inline-flex } so hide wins. */
@media (max-width: 991.98px) {
    body.o_theme_islency_nova .s_islency_floating_social_btn.s_islency_floating_social_btn--facebook,
    body.o_theme_islency_nova .s_islency_floating_social_btn.s_islency_floating_social_btn--instagram,
    body.o_theme_islency_nova .s_islency_floating_social_btn.s_islency_floating_social_btn--toggle {
        display: none;
    }
}
