/**
 * Solid Medya — Sayfa başına dön (marka uyumlu, mobil nav üstü)
 */
:root {
    --sm-btt-size: 48px;
    --sm-btt-gold: #ffbc00;
    --sm-btt-gold-hover: #ffd54f;
    --sm-btt-bg: rgba(10, 10, 12, 0.9);
    --sm-btt-bg-hover: rgba(16, 16, 18, 0.96);
    --sm-btt-border: rgba(255, 188, 0, 0.3);
    --sm-btt-border-hover: rgba(255, 188, 0, 0.55);
    --sm-btt-shadow: 0 10px 28px rgba(0, 0, 0, 0.42);
    --sm-btt-shadow-hover: 0 14px 34px rgba(0, 0, 0, 0.52), 0 0 18px rgba(255, 188, 0, 0.14);
    --sm-btt-bottom-desktop: 28px;
    --sm-btt-bottom-mobile: calc(102px + env(safe-area-inset-bottom, 0px));
    --sm-btt-right-desktop: 40px;
    --sm-btt-right-mobile: max(16px, env(safe-area-inset-right, 16px));
    --sm-btt-z: 998;
}

.back-to-top-wrapper {
    position: fixed;
    right: var(--sm-btt-right-desktop);
    bottom: var(--sm-btt-bottom-desktop);
    width: var(--sm-btt-size);
    height: var(--sm-btt-size);
    display: block;
    border-radius: 50%;
    z-index: var(--sm-btt-z);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    cursor: pointer;
    transform: translateY(10px) scale(0.94);
    transition:
        opacity 0.28s ease,
        visibility 0.28s ease,
        transform 0.28s cubic-bezier(0.2, 1, 0.3, 1);
    -webkit-tap-highlight-color: transparent;
}

.back-to-top-wrapper.back-to-top-btn-show {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}

.back-to-top-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-width: var(--sm-btt-size);
    min-height: var(--sm-btt-size);
    padding: 0;
    margin: 0;
    border: 1.5px solid var(--sm-btt-border);
    border-radius: 50%;
    color: var(--sm-btt-gold);
    background: var(--sm-btt-bg);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: var(--sm-btt-shadow);
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    touch-action: manipulation;
    line-height: 1;
    text-align: center;
    transition:
        transform 0.22s ease,
        border-color 0.22s ease,
        color 0.22s ease,
        box-shadow 0.22s ease,
        background-color 0.22s ease;
}

.back-to-top-btn__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 17px;
    line-height: 1;
    pointer-events: none;
}

.back-to-top-btn__icon .fa-solid {
    display: block;
    line-height: 1;
}

.back-to-top-btn:hover,
.back-to-top-btn:focus-visible {
    transform: translateY(-3px);
    color: var(--sm-btt-gold-hover);
    border-color: var(--sm-btt-border-hover);
    background: var(--sm-btt-bg-hover);
    box-shadow: var(--sm-btt-shadow-hover);
    outline: none;
}

.back-to-top-btn:focus-visible {
    box-shadow: var(--sm-btt-shadow-hover), 0 0 0 3px rgba(255, 188, 0, 0.32);
}

.back-to-top-btn:active {
    transform: translateY(-1px) scale(0.97);
}

@media (max-width: 767px) {
    .back-to-top-wrapper {
        right: var(--sm-btt-right-mobile);
        bottom: var(--sm-btt-bottom-mobile);
        z-index: 997;
    }
}

@media (prefers-reduced-motion: reduce) {
    .back-to-top-wrapper {
        transition: opacity 0.15s ease, visibility 0.15s ease;
        transform: none;
    }

    .back-to-top-wrapper.back-to-top-btn-show {
        transform: none;
    }

    .back-to-top-btn {
        transition: border-color 0.15s ease, color 0.15s ease, background-color 0.15s ease;
    }

    .back-to-top-btn:hover,
    .back-to-top-btn:focus-visible,
    .back-to-top-btn:active {
        transform: none;
    }
}
