/* Desktop only. Everything is scoped; the existing mobile/header UI is untouched. */
.aj-social-rail { display: none; }
@media (min-width: 1024px) and (hover: hover) and (pointer: fine) {
    .aj-social-rail:not([hidden]) {
        --aj-rail-width: 68px;
        --aj-rail-inset: 16px;
        display: block;
        position: fixed;
        inset: 0 0 0 auto;
        width: 310px;
        height: 100%;
        overflow: hidden;
        pointer-events: none;
        z-index: 95;
        font-family: inherit;
        font-size: 13px;
        line-height: 1.4;
        color: #101d35;
        isolation: isolate;
    }
    .aj-social-rail *, .aj-social-rail *::before, .aj-social-rail *::after { box-sizing: border-box; }
    .aj-social-rail .aj-social-rail__body {
        position: absolute;
        top: 50%;
        right: var(--aj-rail-inset);
        width: var(--aj-rail-width);
        transform: translate3d(0, -50%, 0);
        /* Owner explicitly requested this small slide, including in their reduced-motion browser.
           Scope the exception to this 84px rail movement; never alter site/OS settings. */
        transition: transform 400ms cubic-bezier(.22, 1, .36, 1) !important;
        pointer-events: auto;
    }
    .aj-social-rail.is-collapsed .aj-social-rail__body {
        transform: translate3d(calc(100% + var(--aj-rail-inset)), -50%, 0);
    }
    .aj-social-rail__panel {
        width: 100%;
        padding: 12px 11px;
        border: 1px solid #d7e0ed;
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 3px 12px rgb(16 29 53 / 9%);
    }
    .aj-social-rail__links {
        display: flex;
        flex-direction: column;
        gap: 14px;
        margin: 0;
        padding: 0;
    }
    .aj-social-rail__link {
        position: relative;
        flex: 0 0 44px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        margin: 0;
        padding: 0;
        border: 0;
        border-radius: 8px;
        text-decoration: none;
        opacity: 1;
        box-shadow: 0 1px 3px rgb(16 29 53 / 7%);
        transition: transform 160ms ease;
    }
    .aj-social-rail__link--telegram { background: #00a9df; }
    .aj-social-rail__link--vk { background: #0077ff; }
    .aj-social-rail__link--youtube { background: #ff1621; }
    .aj-social-rail__link--rutube { background: #101b35; }
    .aj-social-rail__link--max { background: #fff; }
    .aj-social-rail__link--ok { background: #ff8200; }
    .aj-social-rail__logo {
        display: block;
        width: 30px;
        height: 30px;
        margin: 0;
        object-fit: contain;
        border: 0;
        border-radius: 0;
    }
    .aj-social-rail__link--telegram .aj-social-rail__logo,
    .aj-social-rail__link--youtube .aj-social-rail__logo,
    .aj-social-rail__link--ok .aj-social-rail__logo { filter: brightness(0) invert(1); width: 27px; height: 27px; }
    .aj-social-rail__link--max .aj-social-rail__logo { width: 44px; height: 44px; border-radius: 8px; }
    .aj-social-rail__link--vk .aj-social-rail__logo { width: 44px; height: 44px; border-radius: 8px; }
    .aj-social-rail__link--rutube .aj-social-rail__logo { width: 30px; height: 30px; }
    .aj-social-rail__tooltip {
        position: absolute;
        top: 50%;
        right: calc(100% + 17px);
        width: 184px;
        margin: 0;
        padding: 10px 12px;
        border: 1px solid #d7e0ed;
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 3px 12px rgb(16 29 53 / 9%);
        visibility: hidden;
        opacity: 0;
        transform: translate3d(5px, -50%, 0);
        transition: opacity 160ms ease, transform 160ms ease, visibility 160ms;
        pointer-events: none;
        text-align: left;
        color: #5b6d89;
        white-space: normal;
    }
    .aj-social-rail__tooltip strong { display: block; margin: 0 0 3px; font-size: 13px; font-weight: 600; color: #101d35; }
    .aj-social-rail__tooltip > span { display: block; font-size: 13px; line-height: 1.4; }
    .aj-social-rail__link:hover,
    .aj-social-rail__link:focus-visible { transform: translateX(-2px); }
    .aj-social-rail__link:hover .aj-social-rail__tooltip,
    .aj-social-rail__link:focus-visible .aj-social-rail__tooltip {
        visibility: visible;
        opacity: 1;
        transform: translate3d(0, -50%, 0);
    }
    .aj-social-rail__toggle {
        position: absolute;
        top: 50%;
        left: -23px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 24px;
        height: 36px;
        margin: 0;
        padding: 0;
        border: 1px solid #d7e0ed;
        border-right: 0;
        border-radius: 10px 0 0 10px;
        background: #fff;
        box-shadow: -4px 2px 8px rgb(16 29 53 / 7%);
        color: #1842fb;
        cursor: pointer;
        transform: translateY(-50%);
        -webkit-appearance: none;
        appearance: none;
    }
    .aj-social-rail__toggle::before { content: ""; position: absolute; inset: -4px 0 -4px -8px; }
    .aj-social-rail__chevron {
        display: block;
        width: 15px;
        height: 15px;
        background: #1842fb;
        -webkit-mask: url("chevron-right.svg") center / contain no-repeat;
        mask: url("chevron-right.svg") center / contain no-repeat;
        transition: transform 220ms ease;
    }
    .aj-social-rail.is-collapsed .aj-social-rail__chevron { transform: rotate(180deg); }
    .aj-social-rail__link:focus-visible, .aj-social-rail__toggle:focus-visible { outline: 2px solid #1842fb; outline-offset: 3px; }
    /* Pointer clicks must not get the browser's default black focus ring.
       Keep the blue focus-visible indicator for keyboard navigation. */
    .aj-social-rail__toggle:focus:not(:focus-visible) { outline: none; }
    .aj-social-rail.is-collapsed .aj-social-rail__tooltip { visibility: hidden; opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
    .aj-social-rail__chevron, .aj-social-rail__link, .aj-social-rail__tooltip { transition: none !important; }
}
