/* Mobile scroll-to-top button (client & consultant pages) */
body[data-role="Client"] .mobile-scroll-to-top,
body[data-role="Consultant"] .mobile-scroll-to-top {
    display: none !important;
    position: fixed;
    right: 1rem;
    bottom: calc(1.25rem + env(safe-area-inset-bottom, 0px));
    width: 48px;
    height: 48px;
    border: none;
    border-radius: 50%;
    background: #14899a;
    color: #fff;
    z-index: 1090;
    box-shadow: 0 4px 14px rgba(20, 137, 154, 0.35);
    align-items: center;
    justify-content: center;
    padding: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(12px);
    transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease;
    cursor: pointer;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

body[data-role="Client"] .mobile-scroll-to-top i,
body[data-role="Consultant"] .mobile-scroll-to-top i {
    font-size: 1.35rem;
    line-height: 1;
    pointer-events: none;
}

body[data-role="Client"].has-mobile-scroll-top .mobile-scroll-to-top,
body[data-role="Consultant"].has-mobile-scroll-top .mobile-scroll-to-top {
    display: inline-flex !important;
}

body[data-role="Client"].has-mobile-scroll-top .mobile-scroll-to-top.is-visible,
body[data-role="Consultant"].has-mobile-scroll-top .mobile-scroll-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

body[data-role="Client"].has-mobile-scroll-top .mobile-scroll-to-top.is-visible:active,
body[data-role="Consultant"].has-mobile-scroll-top .mobile-scroll-to-top.is-visible:active {
    transform: translateY(0) scale(0.96);
}

@media (min-width: 768px) {
    body[data-role="Client"] .mobile-scroll-to-top,
    body[data-role="Consultant"] .mobile-scroll-to-top,
    body[data-role="Client"].has-mobile-scroll-top .mobile-scroll-to-top,
    body[data-role="Consultant"].has-mobile-scroll-top .mobile-scroll-to-top {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}
