
.te-scroll-top{
    position:fixed;

    right:22px;
    bottom:22px;

    z-index:9990;

    width:48px;
    height:48px;

    display:grid;
    place-items:center;

    padding:0;

    border:1px solid rgba(0,125,150,.14);
    border-radius:15px;

    background:rgba(255,255,255,.96);
    color:#0a869f;

    box-shadow:
        0 12px 35px rgba(14,47,61,.16),
        0 3px 10px rgba(14,47,61,.08);

    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);

    opacity:0;
    visibility:hidden;

    transform:translateY(12px) scale(.94);

    pointer-events:none;

    transition:
        opacity .2s ease,
        visibility .2s ease,
        transform .2s ease,
        background .2s ease,
        color .2s ease,
        box-shadow .2s ease;

    cursor:pointer;
}

.te-scroll-top.is-visible{
    opacity:1;
    visibility:visible;

    transform:translateY(0) scale(1);

    pointer-events:auto;
}

.te-scroll-top:hover,
.te-scroll-top:focus-visible{
    background:#078ea8;
    color:#fff;

    box-shadow:
        0 14px 38px rgba(7,142,168,.24),
        0 4px 12px rgba(14,47,61,.1);
}

.te-scroll-top:focus-visible{
    outline:3px solid rgba(7,142,168,.22);
    outline-offset:3px;
}

.te-scroll-top svg{
    width:23px;
    height:23px;
}

/*
 * Mobil:
 * PWA alt kartıyla çakışmasın.
 */
@media(max-width:767px){
    .te-scroll-top{
        right:12px;
        bottom:max(14px,env(safe-area-inset-bottom));

        width:44px;
        height:44px;

        border-radius:13px;
    }

    body:has(.te-pwa-prompt.is-visible) .te-scroll-top{
        bottom:170px;
    }
}

@media(max-width:420px){
    .te-scroll-top{
        right:10px;

        width:42px;
        height:42px;
    }

    .te-scroll-top svg{
        width:21px;
        height:21px;
    }
}

@media(prefers-reduced-motion:reduce){
    .te-scroll-top{
        transition:none;
    }
}
