.root { --base-bottom-pos: 6rem; --translate-x: 0; --translate-y: 4.5rem; position: absolute; bottom: var(--base-bottom-pos); right: max(1rem, env(safe-area-inset-right)); opacity: 0; transform: translate(var(--translate-x), var(--translate-y)); transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.2s ease; z-index: var(--z-scroll-down-button); pointer-events: none; .hidden { opacity: 0; pointer-events: none; } .reactions { transition: 0.2s ease opacity, 0.25s cubic-bezier(0.34, 1.56, 0.64, 1) transform; } .transform-down { transform: translateY(4rem); } .unread { pointer-events: none; } :global(body.no-page-transitions) & { --translate-y: 0 !important; transition: opacity 0.15s; } @media (min-width: 1276px) { --translate-x: 0; transition: transform var(--layer-transition), opacity 0.2s ease; :global(body.no-page-transitions) &, :global(body.no-right-column-animations) & { transition: none !important; } :global(body:not(.no-right-column-animations) #Main.right-column-open) & { transition: transform var(--layer-transition), opacity 0.2s ease; } :global(#Main.right-column-open) & { --translate-x: calc(-1 * var(--right-column-width)); } } @media (max-width: 600px) { right: 0.5rem; bottom: 4.5rem; :global(body:not(.keyboard-visible)) & { bottom: calc(4.5rem + env(safe-area-inset-bottom)); } } &.revealed { --translate-y: 0; opacity: 1; .unread { pointer-events: auto; } &.no-composer.no-extra-shift { --translate-y: 4rem; } } &.hide-scroll-down { --translate-y: 4rem; .unread { opacity: 0; pointer-events: none; } } @media (max-width: 600px) { body.is-symbol-menu-open & { bottom: calc(var(--base-bottom-pos) + var(--symbol-menu-height)); } } }