/**
 * FZ Group — tombol mengambang (chat + back-to-top) sejajar & desain seragam
 */

:root {
    --fz-fab-size: 52px;
    --fz-fab-gap: 12px;
    --fz-fab-inset-x: 1.25rem;
    --fz-fab-inset-y: 1.25rem;
    --fz-fab-bg: linear-gradient(145deg, #ff8c2a 0%, #f97316 100%);
    --fz-fab-bg-hover: linear-gradient(145deg, #ff9f47 0%, #ea580c 100%);
    --fz-fab-shadow: 0 8px 26px rgba(249, 115, 22, 0.45);
    --fz-fab-shadow-hover: 0 10px 32px rgba(249, 115, 22, 0.55);
    --fz-fab-ring: 2px solid rgba(255, 255, 255, 0.95);
}

/* ── Live chat launcher ── */
#fz-chat-root .fz-chat-launcher {
    right: var(--fz-fab-inset-x);
    bottom: var(--fz-fab-inset-y);
    width: var(--fz-fab-size);
    height: var(--fz-fab-size);
    background: var(--fz-fab-bg);
    box-shadow: var(--fz-fab-shadow);
    border: var(--fz-fab-ring);
}

#fz-chat-root .fz-chat-launcher:hover {
    background: var(--fz-fab-bg-hover);
    box-shadow: var(--fz-fab-shadow-hover);
}

#fz-chat-root .fz-chat-launcher.is-open {
    background: #1a1d27;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

#fz-chat-root .fz-chat-panel {
    right: var(--fz-fab-inset-x);
    bottom: calc(var(--fz-fab-inset-y) + var(--fz-fab-size) + var(--fz-fab-gap));
}

/* ── Corporate: tombol scroll Boltu ── */
body.fz-corporate-page .scroll-top {
    right: var(--fz-fab-inset-x);
    bottom: calc(var(--fz-fab-inset-y) + var(--fz-fab-size) + var(--fz-fab-gap));
    width: var(--fz-fab-size);
    height: var(--fz-fab-size);
    min-width: var(--fz-fab-size);
    min-height: var(--fz-fab-size);
    padding: 0;
    margin: 0;
    border: var(--fz-fab-ring);
    border-radius: 50%;
    line-height: 1;
    font-size: 1.125rem;
    text-align: center;
    align-items: center;
    justify-content: center;
    background: var(--fz-fab-bg) !important;
    background-image: var(--fz-fab-bg) !important;
    box-shadow: var(--fz-fab-shadow);
    z-index: 100008;
    transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

body.fz-corporate-page .scroll-top:hover {
    background: var(--fz-fab-bg-hover) !important;
    background-image: var(--fz-fab-bg-hover) !important;
    box-shadow: var(--fz-fab-shadow-hover);
    transform: translateY(-2px);
}

/* jQuery fadeIn memakai display:block — pakai flex agar ikon center */
body.fz-corporate-page .scroll-top[style*="display: block"],
body.fz-corporate-page .scroll-top[style*="display:block"] {
    display: flex !important;
}

body.fz-corporate-page .scroll-top::after {
    display: none;
}

/* ── Halaman layout: rn-progress-parent (back to top) ── */
body:has(#fz-chat-root) .rn-progress-parent {
    right: var(--fz-fab-inset-x);
    bottom: calc(var(--fz-fab-inset-y) + var(--fz-fab-size) + var(--fz-fab-gap));
    width: var(--fz-fab-size);
    height: var(--fz-fab-size);
    box-shadow: var(--fz-fab-shadow);
    background: var(--fz-fab-bg);
    box-shadow: var(--fz-fab-shadow);
}

body:has(#fz-chat-root) .rn-progress-parent:hover {
    box-shadow: var(--fz-fab-shadow-hover);
}

body:has(#fz-chat-root) .rn-progress-parent svg.rn-back-circle {
    display: none;
}

body:has(#fz-chat-root) .rn-progress-parent::after,
body:has(#fz-chat-root) .rn-progress-parent::before {
    width: var(--fz-fab-size);
    height: var(--fz-fab-size);
    line-height: var(--fz-fab-size);
    color: #fff;
}

body:has(#fz-chat-root) .rn-progress-parent::before {
    display: none;
}

body:has(#fz-chat-panel:not([hidden])) .scroll-top,
body.fz-corporate-page:has(#fz-chat-panel:not([hidden])) .scroll-top {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

@media (max-width: 575px) {
    :root {
        --fz-fab-size: 50px;
        --fz-fab-inset-x: 1rem;
        --fz-fab-inset-y: 1rem;
        --fz-fab-gap: 10px;
    }
}
