.donation_right_bar {
    position: relative;
    background: var(--field-bg);
    color: var(--text-color);
    border-top-right-radius: 18px;
    border-bottom-right-radius: 18px;
    width: 100px !important;
    font-family: var(--font-sans);
    font-weight: 600;
    font-size: 12px;
    z-index: 100;
    padding-right: 3em;
    padding-left: 3em;

    .div_img_size {
        background: var(--field-bg);
        height: var(--pushka-img-box-size);
        width: var(--pushka-img-box-size);
        border-radius: 50%;
        border: 0 !important;
        box-shadow:
            12px 14px 28px color-mix(in srgb, var(--shadow-dark) 72%, transparent),
            -10px -10px 22px color-mix(in srgb, var(--white-fixed) 95%, transparent),
            0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent),
            inset 2px 2px 4px color-mix(in srgb, var(--white-fixed) 80%, transparent),
            inset -3px -3px 6px color-mix(in srgb, var(--shadow-inset) 70%, transparent);
        transition: box-shadow 0.2s ease, transform 0.2s ease;
    }

    a:hover .div_img_size,
    a:focus .div_img_size {
        transform: translateY(-2px);
        box-shadow:
            14px 18px 32px color-mix(in srgb, var(--shadow-dark) 78%, transparent),
            -12px -12px 24px color-mix(in srgb, var(--white-fixed) 98%, transparent),
            0 0 0 3px color-mix(in srgb, var(--accent) 40%, transparent),
            inset 2px 2px 4px color-mix(in srgb, var(--white-fixed) 85%, transparent),
            inset -3px -3px 6px color-mix(in srgb, var(--shadow-inset) 65%, transparent);
    }

    a:active .div_img_size {
        transform: translateY(1px);
        box-shadow:
            inset 8px 8px 16px color-mix(in srgb, var(--shadow-dark) 38%, transparent),
            inset -6px -6px 12px color-mix(in srgb, var(--white-fixed) 75%, transparent),
            0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent);
    }

    @media (max-width: 767px) {
        display: none;
    }
}

.pushka-station-brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    color: var(--text-color);

    .pushka-station-brand__wordmark {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.12em;
        line-height: 1;
    }

    .pushka-station-brand__line {
        display: block;
    }

    .pushka-station-brand__line--primary {
        font-family: var(--font-sans);
        font-size: 0.98rem;
        font-weight: 700;
        letter-spacing: 0.02em;
        color: var(--accent-darkest);
    }

    .pushka-station-brand__line--secondary {
        font-family: var(--font-sans);
        font-size: 0.58rem;
        font-weight: 600;
        letter-spacing: 0.22em;
        text-transform: uppercase;
        color: var(--text-muted);
    }
}

.pushka-station-brand--rail {
    padding: 1.1rem 0 0.35rem;
}

.pushka-station-brand--panel {
    align-items: flex-start;
    text-align: left;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;

    .pushka-station-brand__wordmark {
        flex-direction: row;
        align-items: baseline;
        gap: 0.35em;
    }

    .pushka-station-brand__line--primary,
    .pushka-station-brand__line--secondary {
        font-size: 1.25rem;
        font-weight: 700;
        letter-spacing: 0.02em;
        text-transform: none;
        color: var(--accent-darkest);
    }
}

.member-pushka-station--focus {
    z-index: 1040;

    .member-pushka-campaign--dimmed {
        opacity: 0.38;
        filter: blur(3.5px) saturate(0.7);
        pointer-events: none;
        transform: scale(0.94);
    }

    .member-pushka-campaign--active {
        z-index: 4;
        transform: scale(1.04);

        .div_img_size {
            box-shadow:
                16px 20px 36px color-mix(in srgb, var(--shadow-dark) 80%, transparent),
                -12px -12px 24px color-mix(in srgb, var(--white-fixed) 98%, transparent),
                0 0 0 3px color-mix(in srgb, var(--accent) 48%, transparent),
                inset 2px 2px 4px color-mix(in srgb, var(--white-fixed) 85%, transparent),
                inset -3px -3px 6px color-mix(in srgb, var(--shadow-inset) 65%, transparent);
        }
    }
}

.member-pushka-campaign {
    transition: filter 0.28s ease, opacity 0.28s ease, transform 0.28s ease;

    @media (prefers-reduced-motion: reduce) {
        transition: none;
    }
}

.member-pushka-campaign__item {
    position: relative;
    display: inline-block;
}

.member-pushka-campaign__trigger {
    display: block;
    position: relative;
    z-index: 1;
}

.member-pushka-campaign__close {
    position: absolute;
    top: -6px;
    right: -6px;
    z-index: 3;
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 50%;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--text-on-accent);
    background: var(--accent);
    box-shadow:
        0 6px 14px color-mix(in srgb, var(--shadow-dark) 55%, transparent),
        0 0 0 2px var(--field-bg);
    transition: transform 0.18s ease, background 0.18s ease;

    &[hidden] {
        display: none !important;
    }

    i {
        font-size: 13px;
        line-height: 1;
    }

    &:hover,
    &:focus-visible {
        transform: scale(1.06);
        background: var(--accent-darkest);
        outline: none;
    }

    &:active {
        transform: scale(0.96);
    }

    @media (prefers-reduced-motion: reduce) {
        transition: none;
    }
}

.donate-circle {
    --donate-circle-raised-shadow:
        5px 6px 12px color-mix(in srgb, var(--shadow-dark) 34%, transparent),
        -4px -4px 10px color-mix(in srgb, var(--white-fixed) 56%, transparent),
        inset 1px 1px 2px color-mix(in srgb, var(--white-fixed) 64%, transparent),
        inset -2px -2px 4px color-mix(in srgb, var(--shadow-inset) 28%, transparent);
    --press-feedback-focus-shadow: var(--donate-circle-raised-shadow);
    --press-feedback-active-radius: 50%;
    --press-feedback-active-scale: 0.97;
    --press-feedback-active-shadow:
        inset 4px 5px 9px color-mix(in srgb, var(--shadow-dark) 26%, transparent),
        inset -3px -3px 7px color-mix(in srgb, var(--white-fixed) 58%, transparent);
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: 0;
    border-radius: 50%;
    background: color-mix(in srgb, var(--field-bg) 92%, var(--accent) 8%);
    color: var(--accent-darkest);
    font-family: var(--font-sans);
    font-size: clamp(1rem, 1.25vw, 1.12rem);
    font-weight: 700;
    letter-spacing: -0.035em;
    margin: 0 auto;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    position: relative;
    z-index: 5;
    height: var(--pushka-img-box-size);
    width: var(--pushka-img-box-size);
    cursor: pointer;
    box-shadow: var(--donate-circle-raised-shadow);
    transition:
        var(--press-feedback-transition),
        color 180ms ease;

    &:hover,
    &:focus-visible {
        background: color-mix(in srgb, var(--field-bg) 86%, var(--accent) 14%);
        color: var(--accent-darkest);
    }

    &:active {
        background: color-mix(in srgb, var(--field-bg) 84%, var(--accent) 16%);
        color: var(--accent-darkest);
    }
}

.donate-circle__currency {
    position: relative;
    z-index: 1;
    font-size: 0.62em;
    font-weight: 700;
    opacity: 0.68;
    transform: translateY(-0.34em);
}

.donate-circle__value {
    position: relative;
    z-index: 1;
    line-height: 1;
}

.donate-circle--opening {
    -webkit-animation: donate-circle-open 0.34s cubic-bezier(0.22, 1, 0.36, 1) both;
            animation: donate-circle-open 0.34s cubic-bezier(0.22, 1, 0.36, 1) both;

    @media (prefers-reduced-motion: reduce) {
        -webkit-animation: none;
                animation: none;
    }
}

.donate-circle--closing {
    -webkit-animation: donate-circle-close 0.26s cubic-bezier(0.4, 0, 0.2, 1) both;
            animation: donate-circle-close 0.26s cubic-bezier(0.4, 0, 0.2, 1) both;

    @media (prefers-reduced-motion: reduce) {
        -webkit-animation: none;
                animation: none;
    }
}

@-webkit-keyframes donate-circle-open {
    from {
        opacity: 0;
        transform: translateX(-14px) scale(0.86);
    }

    to {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
}

@keyframes donate-circle-open {
    from {
        opacity: 0;
        transform: translateX(-14px) scale(0.86);
    }

    to {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
}

@-webkit-keyframes donate-circle-close {
    from {
        opacity: 1;
        transform: translateX(0) scale(1);
    }

    to {
        opacity: 0;
        transform: translateX(-10px) scale(0.9);
    }
}

@keyframes donate-circle-close {
    from {
        opacity: 1;
        transform: translateX(0) scale(1);
    }

    to {
        opacity: 0;
        transform: translateX(-10px) scale(0.9);
    }
}

.overlay.chrome-blur-backdrop {
    width: 0;
    height: auto;
    overflow-x: hidden;
    z-index: 1020;

    &.overlay--open,
    &.chrome-blur-backdrop--open {
        width: 100%;
    }
}

.overlay a {
    padding: 8px;
    text-decoration: none;
    font-size: 36px;
    color: var(--gray-500);
    display: block;
    transition: color 0.3s ease;

    @media screen and (max-height: 450px) {
        font-size: 20px;
    }
}

@media (max-width: 767px) {
    .pushka_mobile_from_bottom {
        bottom: 40px;
    }

    .member-home-layout--mobile-pushka .member-index-menu-grid-stage--home {
        padding-bottom: calc(20px + 88px + 64px + 16px + env(safe-area-inset-bottom, 0px));
    }
}

.member-mobile-pushka {
    @media (min-width: 768px) {
        display: none;
    }

    @media (max-width: 767px) {
        position: fixed;
        left: 12px;
        bottom: calc(88px + env(safe-area-inset-bottom, 0px));
        z-index: 1040;
    }
}

@media (max-width: 767px) {
    .member-mobile-pushka__toggle {
        position: relative;
        z-index: 1;
        width: 64px;
        height: 64px;
        border: 0;
        background: var(--accent);
        box-shadow:
            0 12px 28px color-mix(in srgb, var(--shadow-dark) 82%, transparent),
            inset 0 1px 0 color-mix(in srgb, var(--field-bg) 42%, transparent);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        cursor: pointer;

        i {
            font-size: 28px;
            line-height: 1;
            color: var(--text-on-accent);
            text-shadow: 0 1px 6px color-mix(in srgb, var(--shadow-dark) 68%, transparent);
        }
    }

    .member-mobile-pushka--open .member-mobile-pushka__toggle {
        transform: translateY(1px) scale(0.98);
        box-shadow:
            0 16px 34px color-mix(in srgb, var(--shadow-dark) 86%, transparent),
            inset 0 1px 0 color-mix(in srgb, var(--field-bg) 48%, transparent);
    }

    .member-mobile-pushka__panel {
        position: absolute;
        left: 0;
        bottom: calc(100% + 10px);
        z-index: 1;
        width: min(300px, calc(100vw - 24px));
        border: 1px solid var(--field-border);
        border-radius: 18px;
        background: var(--field-bg);
        box-shadow: 0 20px 44px var(--shadow-modal);
        padding: 14px;
        display: none;
        flex-direction: column;
        gap: 12px;

        > * {
            position: relative;
            z-index: 1;
        }

        @media (max-width: 380px) {
            width: min(280px, calc(100vw - 20px));
            padding: 12px;
            gap: 10px;
        }
    }

    .member-mobile-pushka--open .member-mobile-pushka__panel {
        display: flex;
    }

    .member-mobile-pushka__title {
        margin: 0;
    }

    .member-mobile-pushka__charities {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px 8px;

        @media (max-width: 380px) {
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 8px 6px;
        }
    }

    .member-mobile-pushka__charities--focus .member-mobile-pushka__charity-wrap--dimmed {
        opacity: 0.34;
        filter: blur(3px) saturate(0.65);
        pointer-events: none;
        transform: scale(0.92);
    }

    .member-mobile-pushka__charities--focus .member-mobile-pushka__charity-wrap--selected {
        z-index: 1;
        transform: scale(1.06);
    }

    .member-mobile-pushka__charity-wrap {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: filter 0.24s ease, opacity 0.24s ease, transform 0.24s ease;

        @media (prefers-reduced-motion: reduce) {
            transition: none;
        }
    }

    .member-mobile-pushka__charity {
        width: 100%;
        border: 0;
        border-radius: 50%;
        aspect-ratio: 1 / 1;
        background: var(--field-bg);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        opacity: 0.7;
        box-shadow:
            10px 12px 24px color-mix(in srgb, var(--shadow-dark) 70%, transparent),
            -8px -8px 18px color-mix(in srgb, var(--white-fixed) 94%, transparent),
            inset 2px 2px 4px color-mix(in srgb, var(--white-fixed) 78%, transparent),
            inset -3px -3px 6px color-mix(in srgb, var(--shadow-inset) 68%, transparent);
        transition: opacity 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;

        img {
            max-width: 78%;
            max-height: 78%;
        }

        &:active {
            transform: translateY(1px);
            box-shadow:
                inset 8px 8px 16px color-mix(in srgb, var(--shadow-dark) 36%, transparent),
                inset -6px -6px 12px color-mix(in srgb, var(--white-fixed) 72%, transparent);
        }
    }

    .member-mobile-pushka__charity--selected {
        opacity: 1;
        transform: translateY(-2px);
        box-shadow:
            12px 16px 28px color-mix(in srgb, var(--shadow-dark) 76%, transparent),
            -10px -10px 20px color-mix(in srgb, var(--white-fixed) 96%, transparent),
            0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent),
            inset 2px 2px 4px color-mix(in srgb, var(--white-fixed) 82%, transparent),
            inset -3px -3px 6px color-mix(in srgb, var(--shadow-inset) 62%, transparent);
    }

    .member-mobile-pushka__charity-close {
        position: absolute;
        top: -4px;
        right: -2px;
        z-index: 2;
        width: 26px;
        height: 26px;
        border: 0;
        border-radius: 50%;
        padding: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        color: var(--text-on-accent);
        background: var(--accent);
        box-shadow:
            0 4px 10px color-mix(in srgb, var(--shadow-dark) 50%, transparent),
            0 0 0 2px var(--field-bg);
        transition: transform 0.18s ease;

        &[hidden] {
            display: none !important;
        }

        i {
            font-size: 12px;
            line-height: 1;
        }

        &:active {
            transform: scale(0.94);
        }

        @media (prefers-reduced-motion: reduce) {
            transition: none;
        }

        @media (max-width: 380px) {
            width: 24px;
            height: 24px;
            top: -3px;
            right: -1px;
        }
    }

    .member-mobile-pushka__amounts {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    .member-mobile-pushka__amount {
        min-width: 70px;
        height: 44px;
        border-radius: 999px;
        border: 1px solid color-mix(in srgb, var(--accent-shadow-medium) 70%, transparent);
        background: var(--white-fixed);
        color: var(--accent-darkest);
        font-family: var(--font-sans);
        font-size: 16px;
        font-weight: 700;
        display: none;
        align-items: center;
        justify-content: center;
        padding: 0 14px;

        @media (max-width: 380px) {
            min-width: 64px;
            height: 42px;
            font-size: 15px;
            padding: 0 12px;
        }
    }

    .member-mobile-pushka__amount--visible {
        display: inline-flex;
    }

    .member-mobile-pushka--open .member-mobile-pushka__amount--visible {
        -webkit-animation: member-mobile-pushka-amount-open 0.22s ease-out both;
                animation: member-mobile-pushka-amount-open 0.22s ease-out both;

        &:nth-of-type(2) {
            -webkit-animation-delay: 0.04s;
                    animation-delay: 0.04s;
        }

        &:nth-of-type(3) {
            -webkit-animation-delay: 0.08s;
                    animation-delay: 0.08s;
        }

        @media (prefers-reduced-motion: reduce) {
            -webkit-animation: none;
                    animation: none;
        }
    }

    .member-mobile-pushka__amount--selected {
        border-color: var(--accent);
        color: var(--text-on-accent);
        background: var(--accent);
    }

    .member-mobile-pushka__proceed {
        width: 100%;
        height: 48px;
        border-radius: 12px;
        border: 1px solid transparent;
        background: var(--accent);
        color: var(--text-on-accent);
        font-family: var(--font-sans);
        font-size: 16px;
        font-weight: 700;
        padding: 0 14px;
        transition: opacity 0.2s ease;

        &:disabled {
            opacity: 0.45;
        }

        &:not(:disabled):active {
            opacity: 0.86;
        }
    }
}

@-webkit-keyframes member-mobile-pushka-amount-open {
    from {
        opacity: 0;
        transform: translateY(8px) scale(0.96);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes member-mobile-pushka-amount-open {
    from {
        opacity: 0;
        transform: translateY(8px) scale(0.96);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

