/**
 * Chat Renderer Engine v0.9.1 — единые правила для всех чатов
 */

:root {
  --cre-channel-service-pill-bg: rgba(91, 98, 112, 0.78);
  --cre-channel-service-pill-bg-night: rgba(43, 58, 74, 0.88);
}

#connect-thread.cre-thread[data-chat-type] {
  --bubble-in: #ffffff;
  --bubble-out: #effdde;
  --chat-bg: #e7ebf0;
  --text-fg: #000000;
  --meta-color: #a0a0a0;
  --meta-out: #527e52;
  --ticks-read: #527e52;
  --ticks-delivered: #9ca89c;
  --sender-name: #2a6ea8;
  --line-ui: #dfe5eb;
  --bubble-pad-meta: 55px;
  --reaction-bg-in: #e8ecf0;
  --reaction-bg-out: #d4ebc8;
}

/* —— Shell —— */
#connect-thread.cre-thread[data-chat-type] .connect-thread__head {
  min-height: 56px;
  padding: 6px 12px;
  border-bottom: 1px solid var(--line-ui);
  background: #fff;
}

#connect-thread.cre-thread[data-chat-type] .connect-composer {
  padding: 0;
  border-top: 1px solid var(--line-ui);
  background: #fff;
}

#connect-thread.cre-thread .connect-thread__composer-dock {
  padding: 0;
}

#connect-thread.cre-thread .connect-composer__row {
  gap: 0;
  margin: 0;
  border-radius: 0;
  background: #fff;
}

#connect-thread.cre-thread .connect-composer__input {
  border: none;
  border-radius: 0;
  box-shadow: none;
}

#connect-thread.cre-thread .connect-composer__input:focus {
  border: none;
  box-shadow: none;
}

#connect-thread.cre-thread .connect-composer__attach-outside,
#connect-thread.cre-thread .connect-composer__attach-hover-wrap {
  margin: 0;
}

/* —— Лента сообщений (перекрывает .connect-messages gradient/gap) —— */
.messages-container,
#thread-messages.messages-container,
#connect-thread .messages-container,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] {
  --chat-bg: #e7ebf0;
  --bubble-in: #ffffff;
  --bubble-out: #effdde;
  --text-fg: #000000;
  --meta-color: #a0a0a0;
  --meta-out: #527e52;
  --ticks-read: #527e52;
  --ticks-delivered: #9ca89c;
  --sender-name: #2a6ea8;
  --bubble-pad-meta: 55px;
  --reaction-bg-in: #e8ecf0;
  --reaction-bg-out: #d4ebc8;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 6px 8px 10px;
  overflow-x: hidden;
  overflow-y: auto;
  flex: 1;
  min-height: 0;
  background: var(--chat-bg) !important;
  background-image: none !important;
  transition: none;
}

/* ═══════════════════════════════════════
   Строка
   ═══════════════════════════════════════ */

.message-wrapper {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Склейка внутри блока одного автора */
.message-wrapper.message-wrapper--first,
.message-wrapper.message-wrapper--mid {
  margin-bottom: 4px;
}

/* Конец блока / другой автор дальше */
.message-wrapper.message-wrapper--last,
.message-wrapper.message-wrapper--solo {
  margin-bottom: 12px;
}

/* Реакции под медиа/эмодзи — резерв места, чтобы соседнее сообщение не перекрывало */
.message-wrapper:has(> .message-content-block > .message-media-rxn-strip),
.message-wrapper:has(> .message-content-block > .message-rxn-stack > .message-media-rxn-strip),
.message-wrapper:has(> .message-content-block > .cre-group-media-stack .message-media-rxn-strip) {
  margin-bottom: 16px;
}

.message-wrapper.message-wrapper--last:has(> .message-content-block > .message-media-rxn-strip),
.message-wrapper.message-wrapper--solo:has(> .message-content-block > .message-media-rxn-strip),
.message-wrapper.message-wrapper--last:has(> .message-content-block > .message-rxn-stack > .message-media-rxn-strip),
.message-wrapper.message-wrapper--solo:has(> .message-content-block > .message-rxn-stack > .message-media-rxn-strip),
.message-wrapper.message-wrapper--last:has(> .message-content-block > .cre-group-media-stack .message-media-rxn-strip),
.message-wrapper.message-wrapper--solo:has(> .message-content-block > .cre-group-media-stack .message-media-rxn-strip) {
  margin-bottom: 18px;
}

/* Режим выбора (ПКМ «Выбрать») — CRE */
.connect-messages--select-mode .message-wrapper--selectable {
  position: relative;
  width: 100%;
  max-width: 100%;
  padding-left: 30px;
  padding-right: 0;
  box-sizing: border-box;
}

.connect-messages--select-mode .message-wrapper--selectable > .connect-msg__select-toggle {
  display: inline-flex;
  position: absolute;
  left: 0;
  top: 50%;
  flex: none;
  width: 22px;
  height: 22px;
  margin: 0;
  transform: translateY(-50%);
  align-self: auto;
  order: 0;
}

.connect-messages--select-mode .message-wrapper--selectable > .message-content-block {
  flex: 0 0 auto;
}

.connect-messages--select-mode .message-wrapper--selectable .connect-msg__wrap {
  max-width: 100%;
}

.connect-messages--select-mode .message-wrapper--channel-post.message-wrapper--selectable {
  align-items: flex-end;
}

.connect-messages--select-mode .message-wrapper--channel-post.message-wrapper--selectable > .connect-msg__select-toggle {
  top: auto;
  bottom: 0;
  transform: none;
}

.connect-messages--select-mode .message-wrapper--system.message-wrapper--selectable {
  justify-content: flex-start;
}

.connect-messages--select-mode .message-wrapper--selected .message-bubble,
.connect-messages--select-mode .message-wrapper--selected .message-system {
  position: relative;
  overflow: hidden;
}

.connect-messages--select-mode .message-wrapper--selected .message-bubble::after,
.connect-messages--select-mode .message-wrapper--selected .message-system::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(70, 130, 190, 0.4);
  pointer-events: none;
  z-index: 2;
  border-radius: inherit;
}

/* Переход к закреплённому (CRE): серая вспышка строки, без бордера */
.message-wrapper.message-wrapper--flash-pin {
  box-shadow: none !important;
  outline: none !important;
  animation: cre-message-flash-pin 1.4s ease-out 1;
  border-radius: 10px;
}

/* Удаление сообщения: только opacity + transform (без смены высоты — стабильный layout). */
@keyframes messageExit {
  0% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  100% {
    opacity: 0;
    transform: translateY(-6px) scale(0.94);
  }
}

.message-wrapper.message-wrapper--exit {
  animation: messageExit 0.26s cubic-bezier(0.34, 1.2, 0.64, 1) forwards;
  pointer-events: none;
  transform-origin: center bottom;
  backface-visibility: hidden;
}

@keyframes messageEnter {
  0% {
    opacity: 0;
    transform: translateY(8px) scale(0.94);
  }
  70% {
    opacity: 1;
    transform: translateY(-1px) scale(1.02);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.message-wrapper.message-wrapper--enter {
  animation: messageEnter 0.26s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
  transform-origin: center bottom;
  backface-visibility: hidden;
  will-change: transform, opacity;
}

/* Отправка своего сообщения: только opacity — без сдвига layout/скролла. */
@keyframes messageEnterSubtle {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.message-wrapper.message-wrapper--enter-subtle {
  animation: messageEnterSubtle 0.16s ease-out forwards;
  will-change: opacity;
}

@media (prefers-reduced-motion: reduce) {
  .message-wrapper.message-wrapper--exit {
    animation: none !important;
    opacity: 0;
    will-change: auto;
    transform: none;
  }

  .message-wrapper.message-wrapper--enter,
  .message-wrapper.message-wrapper--enter-subtle {
    animation: none !important;
    opacity: 1;
    will-change: auto;
    transform: none;
  }
}

@keyframes cre-message-flash-pin {
  0% {
    background-color: rgba(0, 0, 0, 0);
  }
  18% {
    background-color: rgba(0, 0, 0, 0.08);
  }
  36% {
    background-color: rgba(0, 0, 0, 0);
  }
  54% {
    background-color: rgba(0, 0, 0, 0.06);
  }
  72% {
    background-color: rgba(0, 0, 0, 0);
  }
  100% {
    background-color: rgba(0, 0, 0, 0);
  }
}

.message-wrapper:first-child {
  margin-top: 4px;
}

.message-wrapper--system {
  justify-content: center;
  margin: 10px 0;
}

.message-avatar {
  width: 35px;
  height: 35px;
  border-radius: 50%;
  margin-right: 12px;
  flex-shrink: 0;
  object-fit: cover;
  align-self: flex-end;
}

.message-avatar--placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #c5cdd6;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}

.avatar-spacer {
  width: 35px;
  height: 35px;
  margin-right: 12px;
  flex-shrink: 0;
}

.message-content-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 65%;
  min-width: min-content;
}

.message-content-block:has(> .cre-group-media-stack) {
  min-width: 0;
}

.message-content-block:has(> .message-bubble.message-bubble--has-reply) {
  min-width: 0;
  width: fit-content;
  max-width: 65%;
}

/* Комментарий к пересылке — отдельный пузырь сверху, пересланное — снизу */
.message-content-block--forward-pair {
  gap: 3px;
}

.message-bubble.message-bubble--forward-comment-top:not(.has-reactions):not(.media-only):not(.has-media-caption):not(
    .message-bubble--audio
  ):not(.message-bubble--link-preview-msg):not(.message-bubble--text-flow) {
  min-width: 80px;
  padding: 6px 55px 6px 10px;
}

.message-bubble.message-bubble--forward-comment-top.tail::before,
.message-bubble.message-bubble--forward-comment-top.tail::after {
  display: none;
}

.message-bubble.message-bubble--forward-comment-top.is-edited:not(.has-reactions):not(.media-only):not(
    .message-bubble--audio
  ):not(.message-bubble--link-preview-msg):not(.message-bubble--text-flow) {
  padding-right: 85px !important;
}

/* Имя над media-only (вне пузыря, как в TG) */
.message-content-block > .message-sender-line--above {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  max-width: 400px;
  min-height: 18px;
  margin: 0 0 3px 2px;
  padding-right: 6px;
  box-sizing: border-box;
}

.message-content-block > .message-sender-line--above .message-sender-name {
  flex: 0 1 auto;
  min-width: 0;
  font-size: 14px;
  line-height: 1.15;
  font-weight: 600;
  color: #2f5ea8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-content-block > .message-sender-line--above .message-sender-tag {
  flex: 0 0 auto;
  margin-left: auto;
  font-size: 13px;
  line-height: 1.1;
  color: #5f7fa7;
  max-width: 46%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.message-content-block > .message-sender-line--above .message-sender-tag--admin {
  color: #1f8f4c;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(46, 183, 101, 0.2);
}

.message-content-block > .message-sender-line--above .message-sender-tag--owner {
  color: #6d3fd6;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(122, 92, 255, 0.2);
}

.message-content-block > .message-sender-line--above.message-sender-line--channel {
  margin-bottom: 2px;
}

.message-content-block > .message-sender-line--above .message-sender-name.message-sender-name--channel {
  color: #6d4dc8;
  font-weight: 400;
}

.message-bubble.message-bubble--has-sender {
  display: inline-flex;
  flex-direction: column;
  align-items: stretch;
}

.message-bubble--has-sender .message-sender-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  min-height: 18px;
  margin: 0 0 4px;
  padding-right: 6px;
  box-sizing: border-box;
  flex-shrink: 0;
}

.message-bubble--has-sender .message-sender-name {
  flex: 0 1 auto;
  min-width: 0;
  font-size: 14px;
  line-height: 1.15;
  font-weight: 600;
  color: #2f5ea8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-bubble--has-sender .message-sender-tag {
  flex: 0 0 auto;
  margin-left: auto;
  font-size: 13px;
  line-height: 1.1;
  color: #5f7fa7;
  max-width: 46%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.message-bubble--has-sender .message-sender-tag--admin {
  color: #1f8f4c;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(46, 183, 101, 0.2);
}

.message-bubble--has-sender .message-sender-tag--owner {
  color: #6d3fd6;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(122, 92, 255, 0.2);
}

.message-bubble--has-sender .message-sender-line--channel {
  margin-bottom: 2px;
}

.message-bubble--has-sender .message-sender-name.message-sender-name--channel {
  color: #6d4dc8;
  font-weight: 400;
}

/* ═══════════════════════════════════════
   Баббл
   ═══════════════════════════════════════ */

.message-bubble {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  width: fit-content;
  max-width: 100%;
  margin-bottom: 6px;
  font-size: 14px;
  line-height: 1.35;
  color: var(--text-fg);
  border: none;
  box-shadow: none;
  border-radius: 12px;
  overflow: visible;
}

/* Текст + время в одном потоке (без резерва под absolute-мету) */
.message-bubble.message-bubble--text-flow:not(.media-only):not(.has-media-caption):not(.has-reactions):not(
    .message-bubble--audio
  ):not(.message-bubble--link-preview-msg):not(.message-bubble--lone-emoji) {
  display: inline-flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
  padding: 6px 10px;
}

.message-bubble.message-bubble--text-flow .message-bubble__text-flow {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 0 6px;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.message-bubble.message-bubble--text-flow .message-bubble__text-flow > .message-text {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  white-space: pre-wrap;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.message-bubble.message-bubble--text-flow .message-bubble__text-flow > .message-meta:not(.media-badge) {
  position: static;
  flex: 0 0 auto;
  align-self: flex-end;
  margin: 0 0 0 auto;
}

/* Только текст без реакций — legacy absolute-мета (ссылки, медиа и т.п.) */
.message-bubble:not(.media-only):not(.has-media-caption):not(.has-reactions):not(.message-bubble--audio):not(
    .message-bubble--link-preview-msg
  ):not(.message-bubble--has-reply  ):not(.message-bubble--has-forward):not(.message-bubble--text-flow):not(
    .connect-msg__bubble--channel-discuss-text-compact
  ):not(.connect-msg__bubble--has-channel-discuss) {
  min-width: 80px;
  padding: 6px 55px 6px 10px;
  transition: padding-right 0.2s ease;
}

.message-bubble:not(.media-only):not(.has-media-caption):not(.has-reactions):not(.message-bubble--audio):not(
    .message-bubble--link-preview-msg
  ):not(.message-bubble--has-reply):not(.message-bubble--has-forward):not(.message-bubble--text-flow).is-edited {
  padding-right: 85px;
}

/* С реакциями: время в footer на одной строке с реакциями, footer у нижнего края */
.message-bubble.has-reactions:not(.media-only):not(.has-media-caption):not(.message-bubble--lone-emoji) {
  display: inline-flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 80px;
  padding: 6px 10px 4px 10px;
}

.message-bubble.has-reactions:not(.media-only):not(.has-media-caption):not(.message-bubble--lone-emoji)
  > .message-bubble__text-flow {
  display: block;
  width: 100%;
  min-width: 0;
  flex: 0 1 auto;
}

.message-bubble.has-reactions:not(.media-only):not(.has-media-caption):not(.message-bubble--lone-emoji)
  > .message-bubble__footer {
  margin-top: auto;
  flex-shrink: 0;
}

.message-bubble.has-media-caption.has-reactions {
  padding: 0;
  min-width: 0;
}

.message-bubble.has-media-caption.has-reactions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  overflow: hidden;
}

.message-bubble.has-media-caption.has-reactions .message-bubble__footer {
  flex-shrink: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 2px 8px 6px;
  border-radius: 0 0 12px 12px;
}

.incoming .message-bubble.has-media-caption.has-reactions .message-bubble__footer,
.message-wrapper.other-message .message-bubble.has-media-caption.has-reactions .message-bubble__footer {
  background-color: var(--bubble-in);
}

.outgoing .message-bubble.has-media-caption.has-reactions .message-bubble__footer,
.message-wrapper.my-message .message-bubble.has-media-caption.has-reactions .message-bubble__footer {
  background-color: var(--bubble-out);
}

/* Медиа без подписи + реакции: кадр без цветной подложки, реакции в полоске снизу */
.message-bubble.media-only.has-reactions {
  margin-bottom: 2px;
  background: transparent !important;
}

.incoming .message-bubble.media-only.has-reactions,
.message-wrapper.other-message .message-bubble.media-only.has-reactions,
.outgoing .message-bubble.media-only.has-reactions,
.message-wrapper.my-message .message-bubble.media-only.has-reactions,
.incoming .message-bubble.media-only.has-reactions.tail,
.outgoing .message-bubble.media-only.has-reactions.tail {
  background-color: transparent !important;
}

.message-bubble.media-only.has-reactions > .message-bubble__footer {
  display: none !important;
}

.message-content-block > .message-rxn-stack {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  max-width: 100%;
  vertical-align: top;
  position: relative;
  flex-shrink: 0;
}

.message-rxn-stack > .message-bubble.media-only,
.message-rxn-stack > .message-bubble.message-bubble--lone-emoji {
  margin-bottom: 0;
}

.message-rxn-stack > .message-media-rxn-strip {
  margin: 0 0 10px;
}

.message-media-rxn-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 6px;
  width: fit-content;
  max-width: 100%;
  margin: 4px 0 12px;
  padding: 0;
  background: transparent;
  box-shadow: none;
  box-sizing: border-box;
  position: static;
  flex-shrink: 0;
  align-self: flex-start;
}

.cre-group-media-stack > .message-rxn-stack > .message-media-rxn-strip,
.message-content-block > .message-rxn-stack > .message-media-rxn-strip {
  width: fit-content;
  align-self: flex-start;
}

.message-media-rxn-strip .message-reactions {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
  margin: 0;
  pointer-events: auto;
}

.message-bubble__footer > .message-meta:not(.media-badge) {
  position: static !important;
  right: auto !important;
  bottom: auto !important;
}

.incoming .message-bubble,
.message-wrapper.other-message .message-bubble {
  background-color: var(--bubble-in);
}

.outgoing .message-bubble,
.message-wrapper.my-message .message-bubble {
  background-color: var(--bubble-out);
}

/* —— Хвостик слева (все сообщения; лента только flex-start) —— */

.message-bubble.tail {
  border-bottom-left-radius: 0 !important;
}

.message-bubble.tail::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -9px;
  width: 11px;
  height: 14px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'><path d='M11 14V0C10.5 3.5 8 7.5 0 14H11Z' fill='%23EFFDDE'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left bottom;
  pointer-events: none;
  z-index: 0;
}

.incoming .message-bubble.tail::before {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'><path d='M11 14V0C10.5 3.5 8 7.5 0 14H11Z' fill='%23FFFFFF'/></svg>");
}

/* Медиа с подписью: скос угла под хвост */
.message-bubble.has-media-caption.tail .message-media {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 12px;
}

.message-bubble.media-only.has-reactions.tail::before {
  display: none;
}

.message-bubble.media-only.has-reactions .message-media {
  border-radius: 12px;
}

.message-text {
  display: block;
  font-size: 15px;
  line-height: 1.4;
  color: var(--text-fg);
  word-break: break-word;
  white-space: pre-wrap;
}

.message-caption-block {
  position: relative;
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 6px 55px 6px 10px;
  transition: padding-right 0.2s ease;
}

.message-bubble.is-edited .message-caption-block {
  padding-right: 85px;
}

.message-bubble.has-media-caption.has-reactions .message-caption-block {
  padding: 6px 10px 2px 10px;
}

.message-caption {
  display: block;
  font-size: 14px;
  line-height: 1.35;
  color: var(--text-fg);
  word-break: break-word;
  white-space: pre-wrap;
}

/* Время в углу, если нет footer с реакциями */
.message-bubble .message-meta:not(.media-badge) {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin: 0;
  font-size: 11px;
  line-height: 1.1;
  color: #a0a0a0;
  user-select: none;
  white-space: nowrap;
  z-index: 2;
}

.message-bubble .message-meta:not(.media-badge) {
  position: absolute;
  right: 8px;
  bottom: 5px;
}

.incoming .message-bubble .message-meta:not(.media-badge),
.message-wrapper.other-message .message-bubble .message-meta:not(.media-badge) {
  color: #a0a0a0;
}

.outgoing .message-bubble .message-meta:not(.media-badge),
.message-wrapper.my-message .message-bubble .message-meta:not(.media-badge) {
  color: #527e52;
}

.message-meta .edited-label {
  margin-right: 3px;
  font-size: 10px;
  opacity: 0.8;
}

.message-meta .edited-label.cre-edited-label--in {
  animation: cre-edited-label-in 0.22s ease;
}

@keyframes cre-edited-label-in {
  from {
    opacity: 0;
    transform: translateX(5px);
  }
  to {
    opacity: 0.8;
    transform: translateX(0);
  }
}

.message-meta .time {
  font-variant-numeric: tabular-nums;
}

.message-meta .ticks {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  margin-left: 4px;
  font-size: 14px;
  letter-spacing: -3px;
  line-height: 1;
  color: var(--ticks-delivered);
}

.message-meta .ticks.ticks--read {
  color: var(--ticks-read);
}

.outgoing .message-bubble .message-meta .ticks,
.message-wrapper.my-message .message-bubble .message-meta .ticks {
  margin-left: 5px;
}

.message-views {
  display: inline-flex;
  align-items: center;
  gap: 2px;
}

/* ═══════════════════════════════════════
   Реакции (внутри баббла, строка под текстом — как в TG)
   ═══════════════════════════════════════ */

.message-bubble__footer {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 6px;
  width: 100%;
  min-height: 22px;
  box-sizing: border-box;
  padding: 2px 0 0;
  margin: 0;
  position: relative;
  z-index: 1;
}

.message-bubble__footer .message-meta:not(.media-badge) {
  position: static;
  right: auto;
  bottom: auto;
  margin: 0 0 0 auto;
  flex-shrink: 0;
  align-self: flex-end;
}

.message-bubble .message-reactions {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
  position: static;
  margin: 0;
  pointer-events: auto;
}

.message-bubble__footer .message-reactions {
  flex: 1 1 auto;
  min-width: 0;
}

/* Медиа без подписи: реакции в footer */
.message-bubble.media-only .message-reactions {
  position: static;
}

/* Появление: только opacity + transform (не scale(0) — иначе дёргается layout чата). */
@keyframes reactionPop {
  0% {
    opacity: 0;
    transform: translateY(4px) scale(0.9);
  }
  70% {
    opacity: 1;
    transform: translateY(-1px) scale(1.05);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* Счётчик: без scale — только лёгкий сдвиг, box размера не меняется. */
@keyframes reactionCountBump {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  45% {
    opacity: 0.92;
    transform: translateY(-2px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.reaction-badge {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin: 0;
  border: 2px solid transparent;
  border-radius: 20px;
  padding: 1px 5px 1px 4px;
  font-size: 12px;
  line-height: 1;
  cursor: pointer;
  user-select: none;
  background-color: var(--bubble-out);
  color: inherit;
  box-shadow: none;
  font-family: inherit;
  transform-origin: center center;
  backface-visibility: hidden;
}

.reaction-badge--enter {
  animation: reactionPop 0.22s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
  will-change: transform, opacity;
}

.reaction-badge .count.reaction-count--bump {
  display: inline-block;
  transform-origin: center center;
  animation: reactionCountBump 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
  will-change: transform, opacity;
}

.reaction-badge__faces.reaction-count--bump {
  transform-origin: center center;
  animation: reactionCountBump 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
  will-change: transform, opacity;
}

@media (prefers-reduced-motion: reduce) {
  .reaction-badge--enter,
  .reaction-badge .count.reaction-count--bump,
  .reaction-badge__faces.reaction-count--bump {
    animation: none !important;
    will-change: auto;
    transform: none;
    opacity: 1;
  }
}

.incoming .message-bubble .reaction-badge,
.message-wrapper.other-message .message-bubble .reaction-badge {
  background-color: var(--reaction-bg-in);
  border-color: var(--reaction-bg-in);
}

.incoming .message-media-rxn-strip .reaction-badge,
.message-wrapper.other-message .message-media-rxn-strip .reaction-badge {
  background-color: #d0d7df;
  border: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
}

.outgoing .message-bubble .reaction-badge,
.message-wrapper.my-message .message-bubble .reaction-badge,
.outgoing .message-media-rxn-strip .reaction-badge,
.message-wrapper.my-message .message-media-rxn-strip .reaction-badge {
  background-color: var(--reaction-bg-out);
  border-color: var(--reaction-bg-out);
}

.outgoing .message-media-rxn-strip .reaction-badge,
.message-wrapper.my-message .message-media-rxn-strip .reaction-badge {
  border: none;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}

.reaction-badge.my-reaction {
  background-color: inherit;
  border-color: inherit;
}

.incoming .message-bubble .reaction-badge.my-reaction,
.message-wrapper.other-message .message-bubble .reaction-badge.my-reaction {
  background-color: var(--reaction-bg-in);
  border-color: var(--reaction-bg-in);
}

.incoming .message-media-rxn-strip .reaction-badge.my-reaction,
.message-wrapper.other-message .message-media-rxn-strip .reaction-badge.my-reaction {
  background-color: #d0d7df;
  border: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
}

.outgoing .message-bubble .reaction-badge.my-reaction,
.message-wrapper.my-message .message-bubble .reaction-badge.my-reaction,
.outgoing .message-media-rxn-strip .reaction-badge.my-reaction,
.message-wrapper.my-message .message-media-rxn-strip .reaction-badge.my-reaction {
  background-color: var(--reaction-bg-out);
  border-color: var(--reaction-bg-out);
}

.reaction-badge .emoji {
  font-size: 1.02em;
  line-height: 1;
}

.reaction-badge__faces {
  display: inline-flex;
  align-items: center;
  margin-left: 2px;
}

.reaction-badge__face {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 1.5px solid var(--reaction-bg-out);
  margin-left: -5px;
  background: #d8dee6;
}

.incoming .message-bubble .reaction-badge__face,
.message-wrapper.other-message .message-bubble .reaction-badge__face {
  border-color: var(--reaction-bg-in);
}

.incoming .message-media-rxn-strip .reaction-badge__face,
.message-wrapper.other-message .message-media-rxn-strip .reaction-badge__face {
  border-color: #d0d7df;
}

.outgoing .message-bubble .reaction-badge__face,
.message-wrapper.my-message .message-bubble .reaction-badge__face,
.outgoing .message-media-rxn-strip .reaction-badge__face,
.message-wrapper.my-message .message-media-rxn-strip .reaction-badge__face {
  border-color: var(--reaction-bg-out);
}

.reaction-badge__face--initials {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 8px;
  font-weight: 600;
  color: #fff;
  background: #9eb0c0;
}

.reaction-badge__faces .reaction-badge__face:first-child,
.reaction-badge__faces .reaction-badge__face--initials:first-child {
  margin-left: 0;
}

.reaction-badge .count {
  font-size: 11px;
  margin-left: 2px;
  color: #657684;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}

/* ═══════════════════════════════════════
   Медиа
   ═══════════════════════════════════════ */

/* Группа: шапка + фото в одном стеке (ширина как в ЛС — max 300px) */
.cre-group-media-stack {
  display: inline-flex;
  flex-direction: column;
  align-items: stretch;
  width: fit-content;
  max-width: min(300px, 100%);
  min-width: 0;
  flex-shrink: 0;
  box-sizing: border-box;
  position: relative;
}

/* Медиа с подписью — прежняя ширина пузыря (400px), не 300 как у голого фото */
.cre-group-media-stack.cre-group-media-stack--captioned {
  max-width: min(400px, 100%);
}

.cre-group-media-stack > .cre-group-media-card__header {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  min-width: 0;
  min-height: 38px;
  box-sizing: border-box;
  padding: 9px 12px 16px;
  margin: 0;
  border-radius: 12px 12px 0 0;
  border: none;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  background-color: var(--bubble-in);
}

/* Медиа чуть заходит под шапку — ровные верхние углы карточки */
.cre-group-media-stack > .message-rxn-stack,
.cre-group-media-stack > .message-bubble.media-only,
.cre-group-media-stack > .message-bubble.has-media-caption {
  position: relative;
  z-index: 1;
  margin-top: -10px;
}

.incoming .cre-group-media-stack > .cre-group-media-card__header,
.message-wrapper.other-message .cre-group-media-stack > .cre-group-media-card__header {
  background-color: var(--bubble-in);
}

.cre-group-media-stack > .message-rxn-stack {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  gap: 4px;
}

.cre-group-media-stack > .message-bubble.media-only,
.cre-group-media-stack > .message-rxn-stack > .message-bubble.media-only,
.cre-group-media-stack > .message-bubble.has-media-caption,
.cre-group-media-stack > .message-rxn-stack > .message-bubble.has-media-caption {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
  background-color: var(--bubble-in);
  border-radius: 0 0 12px 12px;
  overflow: visible;
}

.incoming .cre-group-media-stack > .message-bubble.has-media-caption,
.message-wrapper.other-message .cre-group-media-stack > .message-bubble.has-media-caption,
.incoming .cre-group-media-stack > .message-rxn-stack > .message-bubble.has-media-caption,
.message-wrapper.other-message .cre-group-media-stack > .message-rxn-stack > .message-bubble.has-media-caption {
  background-color: var(--bubble-in);
}

.outgoing .cre-group-media-stack > .message-bubble.has-media-caption,
.message-wrapper.my-message .cre-group-media-stack > .message-bubble.has-media-caption,
.outgoing .cre-group-media-stack > .message-rxn-stack > .message-bubble.has-media-caption,
.message-wrapper.my-message .cre-group-media-stack > .message-rxn-stack > .message-bubble.has-media-caption {
  background-color: var(--bubble-out);
}

.cre-group-media-stack > .message-bubble.has-media-caption.tail {
  border-bottom-left-radius: 0 !important;
}

.cre-group-media-stack > .message-bubble.has-media-caption.tail .message-caption-block {
  border-bottom-left-radius: 0;
}

.cre-group-media-stack .message-media-wrap,
.cre-group-media-stack .message-media {
  width: 100%;
  max-width: 100%;
}

.cre-group-media-stack > .message-bubble.media-only .message-media,
.cre-group-media-stack > .message-rxn-stack > .message-bubble.media-only .message-media {
  max-height: min(560px, 78vh);
  object-fit: cover;
}

.cre-group-media-stack--captioned .message-media {
  max-height: min(480px, 78vh);
  object-fit: contain;
  background: #000;
}

.cre-group-media-stack > .cre-group-media-card__header .message-sender-name {
  flex: 0 1 auto;
  min-width: 0;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 600;
  color: #2f5ea8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cre-group-media-stack > .cre-group-media-card__header .message-sender-tag {
  flex: 0 0 auto;
  margin-left: auto;
  font-size: 13px;
  line-height: 1.1;
  color: #5f7fa7;
  max-width: 46%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cre-group-media-stack > .cre-group-media-card__header .message-sender-tag--admin {
  color: #1f8f4c;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(46, 183, 101, 0.2);
}

.cre-group-media-stack > .cre-group-media-card__header .message-sender-tag--owner {
  color: #6d3fd6;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(122, 92, 255, 0.2);
}

.cre-group-media-stack > .cre-group-media-card__header .message-sender-name.message-sender-name--channel {
  color: #6d4dc8;
  font-weight: 400;
}

/* Фото/видео без подписи: прозрачная оболочка, кадр со скруглением */
.message-bubble.media-only,
.message-bubble.media-only.message-bubble--bare-media {
  padding: 0;
  min-width: 0;
  max-width: 400px;
  width: auto;
  line-height: 0;
  overflow: visible;
  background: transparent !important;
  box-shadow: none;
}

/* Фото/видео без подписи: без хвоста (как bare-media в legacy) */
.message-bubble.media-only.tail::before,
.message-bubble.media-only.tail::after,
.message-bubble.media-only.message-bubble--bare-media.tail::before,
.message-bubble.media-only.message-bubble--bare-media.tail::after {
  display: none !important;
}

.message-bubble.media-only > .message-media-wrap,
.message-bubble.media-only .message-media {
  border-radius: 12px;
}

.cre-group-media-stack > .message-bubble.media-only > .message-media-wrap,
.cre-group-media-stack > .message-bubble.media-only .message-media,
.cre-group-media-stack > .message-rxn-stack > .message-bubble.media-only > .message-media-wrap,
.cre-group-media-stack > .message-rxn-stack > .message-bubble.media-only .message-media {
  border-radius: 0 0 12px 12px;
}

.cre-group-media-stack > .message-bubble.has-media-caption > .message-media-wrap,
.cre-group-media-stack > .message-bubble.has-media-caption .message-media,
.cre-group-media-stack > .message-rxn-stack > .message-bubble.has-media-caption > .message-media-wrap,
.cre-group-media-stack > .message-rxn-stack > .message-bubble.has-media-caption .message-media {
  border-radius: 0;
  max-width: 100%;
  width: 100%;
}

.cre-group-media-stack > .message-bubble.has-media-caption.tail .message-media,
.cre-group-media-stack > .message-bubble.has-media-caption.tail > .message-media-wrap {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.cre-group-media-stack > .message-bubble.has-media-caption .message-caption-block {
  padding: 6px 55px 6px 10px;
  background: inherit;
}

.cre-group-media-stack > .message-bubble.has-media-caption.is-edited .message-caption-block {
  padding-right: 85px;
}

.outgoing .cre-group-media-stack:not(.cre-group-media-stack--channel-post) > .cre-group-media-card__header,
.message-wrapper.my-message
  .cre-group-media-stack:not(.cre-group-media-stack--channel-post)
  > .cre-group-media-card__header {
  background-color: var(--bubble-out);
}

.message-media-wrap {
  display: block;
  position: relative;
  width: 100%;
  max-width: 400px;
  line-height: 0;
  border-radius: 12px;
  overflow: hidden;
}

.message-media {
  display: block;
  width: 100%;
  max-width: 400px;
  max-height: 480px;
  height: auto;
  object-fit: cover;
  background: #d8dee6;
  border-radius: 12px;
  vertical-align: top;
}

.message-bubble.has-media-caption {
  padding: 0;
  min-width: 0;
  width: auto;
  max-width: 400px;
  overflow: visible;
}

.message-bubble.has-media-caption.tail {
  overflow: visible;
}

.message-bubble.has-media-caption .message-media {
  border-radius: 14px 14px 0 0;
  max-width: 100%;
}


.message-meta.media-badge,
.message-bubble.message-bubble--lone-emoji > .message-meta.connect-msg__meta,
.message-bubble.message-bubble--lone-emoji > .message-meta.connect-msg__meta--out {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 1px;
}

.message-meta.media-badge {
  position: absolute;
  right: 8px;
  bottom: 8px;
  float: none;
  margin: 0;
  z-index: 10;
  padding: 2px 5px;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.4);
  color: #fff;
}

.message-meta.media-badge .message-meta__overlay-row,
.message-bubble.message-bubble--lone-emoji > .message-meta .message-meta__overlay-row {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 4px;
  line-height: 1.1;
}

.message-meta.media-badge .message-views {
  margin: 0;
  line-height: 1.1;
}

.message-meta.media-badge .edited-label--reserved,
.message-bubble.message-bubble--lone-emoji > .message-meta .edited-label--reserved {
  display: none;
  width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.message-meta.media-badge .time,
.message-meta.media-badge .ticks {
  color: #fff;
}

.message-meta.media-badge .ticks--read {
  color: #8fd4ff;
}

/* Фото/видео без подписи: время и галочки на кадре — при наведении; с реакциями всегда видны */
.message-bubble.media-only:not(.has-reactions) > .message-meta.media-badge {
  opacity: 0;
  transition: opacity 0.16s ease;
  pointer-events: none;
}

.message-bubble.media-only.has-reactions > .message-meta.media-badge {
  opacity: 1;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine) {
  .message-bubble.media-only:not(.has-reactions):has(.message-media-wrap:hover) > .message-meta.media-badge,
  .message-bubble.media-only:not(.has-reactions):has(.message-media:hover) > .message-meta.media-badge,
  .message-bubble.media-only:not(.has-reactions):hover > .message-meta.media-badge {
    opacity: 1;
  }
}

.message-bubble.media-only:not(.has-reactions):focus-within > .message-meta.media-badge,
.message-bubble.media-only:not(.has-reactions):has(.message-media-wrap:focus-within) > .message-meta.media-badge {
  opacity: 1;
}

@media (hover: none) {
  .message-bubble.media-only:not(.has-reactions) > .message-meta.media-badge {
    opacity: 1;
  }
}

.message-media--video {
  pointer-events: none;
}

.message-media-wrap[role="button"] {
  cursor: pointer;
}

.message-media__play {
  display: none !important;
}

.message-media__play::after {
  content: "";
  position: absolute;
  left: 19px;
  top: 14px;
  border: 10px solid transparent;
  border-left: 16px solid #fff;
}

/* —— System / empty —— */
.message-system {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 88%;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.14);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  box-sizing: border-box;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-system {
  background: var(--cre-channel-service-pill-bg);
  color: #ffffff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.12);
}

body.theme-night :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-system {
  background: var(--cre-channel-service-pill-bg-night);
}

.message-wrapper--system.message-wrapper--enter,
.message-wrapper--system.message-wrapper--enter-subtle {
  animation: messageEnterSubtle 0.22s ease-out forwards;
  will-change: opacity;
}

.cre-empty {
  display: flex;
  justify-content: center;
  padding: 20px;
}

.cre-empty__text {
  margin: 0;
  font-size: 14px;
  color: var(--meta-color);
}

#connect-thread.cre-thread[data-chat-type] .connect-thread-day-divider,
#connect-thread.cre-thread[data-chat-type] .cre-day-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 10px 0;
  padding: 0;
  line-height: 0;
}

#connect-thread.cre-thread[data-chat-type] .connect-thread-day-divider__label,
#connect-thread.cre-thread[data-chat-type] .cre-day-divider span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.14);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  box-sizing: border-box;
}

#connect-thread.cre-thread[data-chat-type="channel"] .connect-thread-day-divider__label,
#connect-thread.cre-thread[data-chat-type="channel"] .cre-day-divider span {
  background: var(--cre-channel-service-pill-bg);
  color: #ffffff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.12);
}

body.theme-night
  #connect-thread.cre-thread[data-chat-type="channel"]
  .connect-thread-day-divider__label,
body.theme-night #connect-thread.cre-thread[data-chat-type="channel"] .cre-day-divider span {
  background: var(--cre-channel-service-pill-bg-night);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-thread-day-divider__label,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .cre-day-divider span {
  background: var(--cre-channel-service-pill-bg);
  color: #ffffff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.12);
}

body.theme-night :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-thread-day-divider__label,
body.theme-night :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .cre-day-divider span {
  background: var(--cre-channel-service-pill-bg-night);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper + .connect-thread-day-divider,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper + .cre-day-divider,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-thread-day-divider + .message-wrapper,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .cre-day-divider + .message-wrapper {
  margin-top: 0;
}

.cre-channel-banner {
  padding: 12px 16px;
  border-top: 1px solid var(--line-ui);
  background: #fff;
}

#connect-thread.cre-thread--readonly #connect-composer-main-row {
  display: none !important;
}

#connect-thread.cre-thread--composer .cre-channel-banner,
#connect-thread.cre-thread--composer #cre-channel-readonly-banner {
  display: none !important;
}

/* Скрыть legacy-строки .connect-msg, но не CRE .message-wrapper с модификатором поста канала */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] > .connect-msg {
  display: none !important;
}

.message-wrapper.message-wrapper--channel-post {
  display: flex;
}

/* Посты канала: слева отступ −60% (35+12 → 14+5) */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post > .connect-msg__channel-avatar-slot.avatar-spacer,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post > .avatar-spacer.connect-msg__channel-avatar-slot {
  display: block !important;
  flex: 0 0 14px;
  width: 14px;
  height: 35px;
  margin-right: 5px;
  align-self: flex-end;
  visibility: hidden;
  pointer-events: none;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post.message-wrapper--channel-author-profile > .message-avatar,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post.message-wrapper--channel-author-profile > .message-avatar--placeholder {
  display: block !important;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  margin-right: 8px;
  align-self: flex-end;
  visibility: visible;
  pointer-events: auto;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post.message-wrapper--channel-author-profile > .message-avatar img {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
}

/* Hover-мета на голом фото/видео: белый текст (CRE перебивал --meta-out зелёным) */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post
  .connect-msg__meta.connect-msg__meta--media-overlay,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__meta--channel-bare-media-hover {
  color: rgba(248, 250, 252, 0.96) !important;
  background: rgba(15, 23, 42, 0.78) !important;
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.35);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__meta--media-overlay
  .time,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__meta--media-overlay
  .connect-msg__channel-views,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__meta--media-overlay
  .connect-msg__edited {
  color: inherit !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__meta--media-overlay
  .connect-msg__channel-views__eye {
  stroke: currentColor !important;
  opacity: 0.92;
}

/* Голое фото/видео: время/просмотры только при hover (CRE) */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--bare-media
  .connect-msg__media-stack
  > .connect-msg__media-frame
  > .connect-msg__meta,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--bare-media
  .connect-msg__media-stack
  > .connect-msg__media-frame
  > .message-meta,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--bare-media
  .connect-msg__media-stack
  .connect-msg__meta--media-overlay {
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.16s ease, visibility 0.16s ease;
  pointer-events: none;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--bare-media
  .connect-msg__meta--channel-bare-media-hover {
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.16s ease, visibility 0.16s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine) {
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
    .message-wrapper--channel-post
    .connect-msg__bubble--channel-post
    .connect-msg__media-stack
    > .connect-msg__media-frame:hover
    > .connect-msg__meta,
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
    .message-wrapper--channel-post
    .connect-msg__bubble--channel-post
    .connect-msg__media-stack
    > .connect-msg__media-frame:hover
    > .message-meta,
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
    .message-wrapper--channel-post
    .connect-msg__bubble--channel-post
    .connect-msg__media-stack
    > .connect-msg__media-frame:hover
    .connect-msg__meta--media-overlay,
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
    .message-wrapper--channel-post
    .connect-msg__bubble--channel-post
    .connect-msg__media-stack
    > .connect-msg__media-frame:hover
    .connect-msg__meta--channel-bare-media-hover {
    opacity: 1 !important;
    visibility: visible !important;
  }
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post
  .connect-msg__media-stack
  > .connect-msg__media-frame:focus-within
  .connect-msg__meta--media-overlay,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post
  .connect-msg__media-stack
  > .connect-msg__media-frame:focus-within
  .connect-msg__meta--channel-bare-media-hover {
  opacity: 1 !important;
  visibility: visible !important;
}

@media (hover: none) {
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
    .message-wrapper--channel-post
    .connect-msg__bubble--channel-post.connect-msg__bubble--bare-media
    .connect-msg__media-stack
    .connect-msg__meta--media-overlay,
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
    .message-wrapper--channel-post
    .connect-msg__bubble--channel-post
    .connect-msg__meta--channel-bare-media-hover {
    opacity: 1 !important;
    visibility: visible !important;
  }
}

/* Реакции под карточкой: [карточка + share] в одной строке, реакции — ниже (absolute) */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg--channel-post
  .connect-msg__bubble-aside:not(.connect-msg__bubble-aside--channel-lone-emoji) {
  flex-direction: column;
  align-items: flex-start;
  flex-wrap: nowrap;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-external-rxn--empty {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg--channel-post .connect-msg__bubble-aside {
  flex-wrap: nowrap;
  position: relative;
  box-sizing: border-box;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg--channel-post
  .connect-msg__bubble-aside:has(.connect-msg__bubble--image-media),
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg--channel-post
  .connect-msg__bubble-aside:has(.connect-msg__bubble--video-media),
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg--channel-post
  .connect-msg__bubble-aside:has(.connect-msg__bubble--audio) {
  padding-bottom: 0;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-external-rxn {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  width: 100%;
  max-width: calc(100% - 42px);
  margin-top: 8px;
  position: static;
  box-sizing: border-box;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg__bubble-aside:not(:has(.connect-msg__channel-share-btn))
  > .connect-msg__channel-external-rxn {
  max-width: 100%;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg__bubble-aside:has(.connect-msg__bubble--has-channel-discuss)
  > .connect-msg__channel-external-rxn {
  margin-top: 0;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post {
  margin-bottom: 22px;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post:has(.connect-msg__channel-external-rxn) {
  margin-bottom: 22px;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-post-head {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 10px;
  width: max-content;
  max-width: 100%;
  min-width: 0;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg--channel-post .connect-msg__bubble-aside > .connect-msg__channel-share-btn,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg--channel-post .connect-msg__channel-post-head > .connect-msg__channel-share-btn {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  margin: 0 0 6px 4px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: var(--cre-channel-service-pill-bg);
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.12);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg--channel-post .connect-msg__channel-share-btn img {
  display: block;
  width: 18px;
  height: 18px;
  object-fit: contain;
  filter: brightness(0) invert(1);
  opacity: 0.96;
}

body.theme-night
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg--channel-post
  .connect-msg__channel-share-btn {
  background: var(--cre-channel-service-pill-bg-night);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  > .connect-msg__channel-discuss-meta-above {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  width: 100%;
  margin: 0;
  padding: 0 2px 1px;
  box-sizing: border-box;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  > .connect-msg__channel-discuss-meta-above
  > .message-meta {
  margin: 0 !important;
  width: auto !important;
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  color: rgba(100, 116, 139, 0.96) !important;
  line-height: 1.1;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  > .connect-msg__channel-discuss-meta-above
  > .message-meta,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  > .connect-msg__channel-discuss-meta-above
  > .message-meta {
  color: rgba(100, 116, 139, 0.96) !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  > .connect-msg__channel-discuss-footer {
  width: 100%;
  margin-top: 0;
  padding-top: 0;
  border-top: 1px solid rgba(15, 23, 42, 0.12);
  box-sizing: border-box;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--audio
  > .connect-msg__channel-discuss-footer {
  margin-top: 6px;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--audio
  > .connect-msg__channel-discuss-meta-above {
  margin-top: 2px;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.message-bubble--audio
  > .connect-msg-audio-bottom,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--audio
  > .connect-msg-audio-bottom,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-discuss-footer
  > .message-meta,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-discuss-footer
  > .connect-msg__meta {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-discuss-row
  > .message-meta,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-discuss-row
  > .connect-msg__meta {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss:not(.connect-msg__bubble--audio)
  > .connect-msg__channel-discuss-meta-above {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  > .connect-msg__channel-discuss-footer
  > .connect-msg__channel-discuss-row {
  border-top: none !important;
  padding-top: 2px !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--audio
  > .connect-msg-audio-bottom:empty {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg__channel-post-head
  > .connect-msg__bubble.connect-msg__bubble--channel-post,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg__channel-post-head
  > .message-bubble.connect-msg__bubble--channel-post {
  width: max-content;
  max-width: min(100%, 420px);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-meta-row {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0 2px 1px;
  box-sizing: border-box;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-meta-row > .connect-msg__channel-text-rxn-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 4px;
  flex: 1 1 auto;
  min-width: 0;
  min-height: 28px;
  padding: 0;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-meta-row > .connect-msg__channel-text-rxn-meta {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  flex: 0 0 auto;
  margin-left: auto;
  padding: 0;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-meta-row > .connect-msg__channel-text-rxn-meta > .message-meta {
  margin: 0 !important;
  width: auto !important;
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  position: static !important;
  right: auto !important;
  bottom: auto !important;
  color: rgba(100, 116, 139, 0.96) !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__channel-text-rxn-meta-row
  > .connect-msg__channel-text-rxn-meta
  > .message-meta,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__channel-text-rxn-meta-row
  > .connect-msg__channel-text-rxn-meta
  > .message-meta {
  color: rgba(100, 116, 139, 0.96) !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-meta-row > .connect-msg__channel-text-rxn-meta > .message-meta .time,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-meta-row > .connect-msg__channel-text-rxn-meta > .message-meta .connect-msg__channel-views__num {
  color: inherit !important;
}

/* Текстовый пост с обсуждением (не compact): мета под текстом; compact — inline в text-flow */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss:not(.connect-msg__bubble--audio):not(
    .message-bubble--link-preview-msg
  ):not(.connect-msg__bubble--channel-discuss-text-compact)
  .message-bubble__text-flow
  > .message-meta,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss:not(.connect-msg__bubble--audio):not(
    .message-bubble--link-preview-msg
  ):not(.connect-msg__bubble--channel-discuss-text-compact)
  .message-bubble__text-flow
  > .connect-msg__meta {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss:not(.connect-msg__bubble--audio):not(
    .message-bubble--link-preview-msg
  ):not(.connect-msg__bubble--channel-discuss-text-compact)
  > .message-text.connect-msg__text {
  display: block;
  width: auto;
  max-width: 100%;
  box-sizing: border-box;
  white-space: pre-wrap;
  word-break: break-word;
  overflow-wrap: anywhere;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss:not(.connect-msg__bubble--audio):not(
    .message-bubble--link-preview-msg
  ):not(.connect-msg__bubble--channel-discuss-text-compact)
  > .connect-msg__channel-text-rxn-meta-row {
  margin-top: 2px;
  justify-content: flex-end;
}

/* Текст + «Прокомментировать»: время/просмотры на одной строке с текстом, у серой линии справа */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-discuss-text-compact.message-bubble--text-flow
  .message-bubble__text-flow {
  width: 100%;
  max-width: 100%;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-discuss-text-compact
  > .connect-msg__channel-discuss-row {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  order: 2;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-discuss-text-compact.message-bubble--has-sender
  > .message-sender-line,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-discuss-text-compact.message-bubble--has-sender
  > .connect-msg__sender-line {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
}

/* Ссылка в посте канала: мета под цитатой, у серой линии (не внутри карточки превью) */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.message-bubble--link-preview-msg.connect-msg__bubble--has-channel-discuss {
  padding-bottom: 6px !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.message-bubble--link-preview-msg.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-text-rxn-meta-row
  > .connect-msg__channel-text-rxn-meta
  > .message-meta {
  position: static !important;
  right: auto !important;
  bottom: auto !important;
  z-index: auto !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.message-bubble--link-preview-msg.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-text-rxn-meta-row {
  margin-top: 6px;
  padding: 0 2px 0;
  justify-content: flex-end;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.message-bubble--link-preview-msg.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-text-rxn-meta-row:has(> .connect-msg__channel-text-rxn-row) {
  justify-content: space-between;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.message-bubble--link-preview-msg.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-text-rxn-meta-row
  > .connect-msg__channel-text-rxn-meta {
  padding: 0;
  margin: 0 0 0 auto;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.message-bubble--link-preview-msg.connect-msg__bubble--has-channel-discuss
  > .message-meta:not(.media-badge) {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  width: 100%;
  max-width: 100%;
  padding: 2px 2px 0;
  box-sizing: border-box;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-row > .connect-msg__reaction-strip {
  position: static !important;
  margin: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__channel-text-rxn-row
  .connect-msg__reaction-pill,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__channel-text-rxn-row
  .connect-msg__reaction-pill {
  background: rgba(255, 255, 255, 0.28);
  color: #1a202c;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-post-meta-footer {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  margin: 0;
  padding: 0 2px 2px;
  box-sizing: border-box;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-post-meta-footer > .message-meta {
  margin: 0 !important;
  width: auto !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-external-rxn .connect-msg__reaction-pill__faces,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-row .connect-msg__reaction-pill__faces {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-external-rxn .connect-msg__reaction-pill__count,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-row .connect-msg__reaction-pill__count {
  display: inline;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-external-rxn > .connect-msg__reaction-strip {
  position: static !important;
  margin: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-external-rxn .connect-msg__reaction-pill,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-text-rxn-row .connect-msg__reaction-pill {
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
  min-height: 26px;
  background: #ffffff;
  color: #0f172a;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.12);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__channel-external-rxn
  .connect-msg__reaction-pill,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__channel-external-rxn
  .connect-msg__reaction-pill {
  background: #ffffff;
  color: #0f172a;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"].connect-messages--dm-bubble-pilot {
  background: var(--chat-bg) !important;
  background-image: none !important;
  background-attachment: scroll !important;
}

body.theme-night .messages-container {
  --chat-bg: #0f1419;
  --bubble-in: #182533;
  --bubble-out: #2b5278;
  --text-fg: #f0f4f8;
}

body.theme-night .message-bubble.tail::before {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'><path d='M11 14V0C10.5 3.5 8 7.5 0 14H11Z' fill='%232B5278'/></svg>");
}

body.theme-night .incoming .message-bubble.tail::before {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'><path d='M11 14V0C10.5 3.5 8 7.5 0 14H11Z' fill='%23182533'/></svg>");
}

.message-bubble.message-bubble--audio .connect-msg-audio-label {
  color: #000000;
}

/* Аудио в CRE */
.message-bubble.message-bubble--audio {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0;
  min-width: min(100%, 240px);
  max-width: 320px;
  padding: 6px 10px 6px;
  width: fit-content;
}

.message-bubble.message-bubble--audio > .connect-msg-audio-block {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.message-wrapper.other-message .message-bubble--audio .connect-msg-audio-play {
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, 0.18) 0%, transparent 45%),
    linear-gradient(145deg, #1e293b 0%, #0f172a 48%, #334155 100%);
}

.message-wrapper.my-message .message-bubble--audio .connect-msg-audio-play {
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, 0.22) 0%, transparent 42%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.38) 0%, rgba(255, 255, 255, 0.1) 55%, rgba(15, 23, 42, 0.35) 100%);
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.2),
    0 2px 10px rgba(0, 0, 0, 0.15);
}

.message-bubble.message-bubble--audio .connect-msg-audio-play {
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  color: #fff;
  overflow: hidden;
}

.message-bubble.message-bubble--audio .connect-msg-audio-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

/* Длительность трека — под названием, серым как время отправки справа */
.message-bubble.message-bubble--audio .connect-msg-audio-body .connect-msg-audio-time {
  display: block;
  margin-top: 2px;
  font-size: 13px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  line-height: 1.25;
  color: var(--meta-color);
}

.incoming .message-bubble.message-bubble--audio .connect-msg-audio-body .connect-msg-audio-time,
.message-wrapper.other-message .message-bubble.message-bubble--audio .connect-msg-audio-body .connect-msg-audio-time {
  color: var(--meta-color);
}

.outgoing .message-bubble.message-bubble--audio .connect-msg-audio-body .connect-msg-audio-time,
.message-wrapper.my-message .message-bubble.message-bubble--audio .connect-msg-audio-body .connect-msg-audio-time {
  color: var(--meta-out);
}

/* Время отправки — справа внизу, на уровне длительности трека (без отдельной строки) */
.message-bubble.message-bubble--audio > .connect-msg-audio-bottom {
  position: absolute;
  right: 8px;
  bottom: 5px;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  line-height: 1.1;
  z-index: 2;
  pointer-events: none;
}

.message-bubble.message-bubble--audio > .connect-msg-audio-bottom .message-meta:not(.media-badge) {
  position: static;
  flex: 0 0 auto;
  margin: 0;
  padding: 0;
  width: auto;
  line-height: 1.1;
}

.message-bubble.message-bubble--audio.has-reactions > .connect-msg-audio-bottom .message-meta:not(.media-badge) {
  width: auto;
}

.message-bubble.message-bubble--audio.has-reactions > .message-bubble__footer {
  flex-shrink: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 2px 8px 4px;
  margin: 0;
}

.outgoing .message-bubble.message-bubble--audio.tail::before,
.message-wrapper.my-message .message-bubble.message-bubble--audio.tail::before {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'><path d='M11 14V0C10.5 3.5 8 7.5 0 14H11Z' fill='%23EFFDDE'/></svg>");
}

.incoming .message-bubble.message-bubble--audio.tail::before,
.message-wrapper.other-message .message-bubble.message-bubble--audio.tail::before {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'><path d='M11 14V0C10.5 3.5 8 7.5 0 14H11Z' fill='%23FFFFFF'/></svg>");
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .message-bubble.message-bubble--audio.connect-msg__bubble--channel-post.tail::before {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'><path d='M11 14V0C10.5 3.5 8 7.5 0 14H11Z' fill='%23FFFFFF'/></svg>") !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--out,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--in {
  background: #ffffff !important;
  background-color: #ffffff !important;
  --bubble-out-bg: #ffffff !important;
  --bubble-in-bg: #ffffff !important;
}

/* ═══════════════════════════════════════
   Ссылки в тексте и превью (Telegram-style)
   ═══════════════════════════════════════ */

.message-text .cre-msg__text-link {
  color: #1d4ed8;
  font-weight: 500;
  text-decoration: none;
  text-underline-offset: 2px;
}

.outgoing .message-bubble .cre-msg__text-link,
.message-wrapper.my-message .message-bubble .cre-msg__text-link {
  color: #1e6b1e;
}

.incoming .message-bubble .cre-msg__text-link,
.message-wrapper.other-message .message-bubble .cre-msg__text-link {
  color: #1d4ed8;
}

.message-text .cre-msg__text-link:hover,
.message-text .cre-msg__text-link:focus-visible {
  text-decoration: underline !important;
  text-decoration-line: underline !important;
}

.message-bubble.message-bubble--link-preview-msg {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  align-content: stretch;
  flex-wrap: nowrap;
  gap: 8px;
  width: 100%;
  min-width: min(280px, 100%);
  max-width: min(420px, 100%);
  padding: 6px 10px 26px;
  box-sizing: border-box;
}

.message-bubble.message-bubble--link-preview-msg.has-reactions {
  padding: 6px 10px 4px;
}

.message-bubble.message-bubble--link-preview-msg .message-text--bubble-url {
  display: block;
  margin: 0;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 500;
  word-break: break-word;
  text-decoration: none;
  text-underline-offset: 2px;
  color: #1d4ed8;
}

.outgoing .message-bubble.message-bubble--link-preview-msg .message-text--bubble-url,
.message-wrapper.my-message .message-bubble.message-bubble--link-preview-msg .message-text--bubble-url {
  color: #1e6b1e;
}

.message-bubble.message-bubble--link-preview-msg a.message-text--bubble-url:hover,
.message-bubble.message-bubble--link-preview-msg a.message-text--bubble-url:focus-visible {
  text-decoration: underline !important;
  text-decoration-line: underline !important;
}

.message-bubble.message-bubble--link-preview-msg .message-link-caption-below {
  display: block;
  margin: 0;
  white-space: pre-wrap;
  word-break: break-word;
}

.message-bubble.message-bubble--link-preview-msg:not(.has-reactions) .message-meta:not(.media-badge) {
  position: absolute;
  right: 8px;
  bottom: 5px;
  z-index: 3;
  gap: 4px;
}

.message-bubble.message-bubble--link-preview-msg .message-meta .connect-msg__ticks {
  margin-left: 5px;
}

.message-bubble.message-bubble--link-preview-msg.has-reactions .message-meta:not(.media-badge) {
  position: static;
}

.message-bubble.message-bubble--link-preview-msg .connect-msg-link-preview {
  flex: 0 0 auto;
  width: 100%;
  max-width: 100%;
  margin: 0;
}

/* —— Карточка превью —— */
.message-bubble .connect-msg-link-preview {
  display: flex;
  align-items: stretch;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 10px;
  text-decoration: none !important;
  color: inherit;
  background: rgba(0, 0, 0, 0.04);
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-sizing: border-box;
}

.outgoing .message-bubble .connect-msg-link-preview,
.message-wrapper.my-message .message-bubble .connect-msg-link-preview {
  background: rgba(0, 0, 0, 0.06);
  border-color: rgba(0, 0, 0, 0.08);
}

.message-bubble .connect-msg-link-preview:hover {
  filter: brightness(0.98);
}

.message-bubble .connect-msg-link-preview__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
  justify-content: center;
  padding-top: 2px;
  box-sizing: border-box;
}

.message-bubble .connect-msg-link-preview__body > .connect-msg-link-preview__site:first-child {
  margin-top: 2px;
}

.message-bubble .connect-msg-link-preview__site {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  color: #16a34a;
}

.outgoing .message-bubble .connect-msg-link-preview__site,
.message-wrapper.my-message .message-bubble .connect-msg-link-preview__site {
  color: #15803d;
}

.message-bubble .connect-msg-link-preview__title {
  font-size: 14px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  word-break: break-word;
}

.outgoing .message-bubble .connect-msg-link-preview__title,
.message-wrapper.my-message .message-bubble .connect-msg-link-preview__title {
  color: #0f172a;
}

.message-bubble .connect-msg-link-preview__desc {
  font-size: 12px;
  color: #64748b;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  word-break: break-word;
}

.message-bubble .connect-msg-link-preview__host {
  font-size: 11px;
  color: #94a3b8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-bubble .connect-msg-link-preview__img {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  object-fit: cover;
  background: #fff;
}

.message-bubble .connect-msg-link-preview.connect-msg-link-preview--rich {
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 0;
  overflow: hidden;
}

.message-bubble .connect-msg-link-preview--rich .connect-msg-link-preview__text-stack {
  display: flex;
  flex-direction: column;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
}

.message-bubble .connect-msg-link-preview--rich .connect-msg-link-preview__media {
  display: block;
  width: 100%;
  flex-shrink: 0;
  max-height: 260px;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  line-height: 0;
  background: rgba(0, 0, 0, 0.06);
}

.message-bubble .connect-msg-link-preview--rich .connect-msg-link-preview__img--hero {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
}

/* —— YouTube —— */
.message-bubble .connect-msg-link-preview.connect-msg-link-preview--youtube {
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  padding: 0;
  border: none;
  background: transparent;
  cursor: default;
}

.message-bubble .connect-msg-link-preview.connect-msg-link-preview--youtube:hover {
  filter: none;
}

.message-bubble .connect-msg-link-preview-yt__text {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 6px 8px 4px 10px;
  border-left: 3px solid #4fae4e;
  min-width: 0;
  box-sizing: border-box;
}

.outgoing .message-bubble .connect-msg-link-preview-yt__text,
.message-wrapper.my-message .message-bubble .connect-msg-link-preview-yt__text {
  border-left-color: #4fae4e;
}

.message-bubble .connect-msg-link-preview-yt__site {
  font-size: 13px;
  font-weight: 600;
  color: #16a34a;
  line-height: 1.2;
}

.message-bubble .connect-msg-link-preview-yt__title {
  font-size: 14px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  word-break: break-word;
}

.message-bubble .connect-msg-link-preview-yt__desc {
  font-size: 12px;
  color: #64748b;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  word-break: break-word;
}

.message-bubble .connect-msg-link-preview-yt__desc .cre-msg__text-link {
  font-size: inherit;
}

.message-bubble .connect-msg-link-preview-yt__host {
  font-size: 11px;
  color: #94a3b8;
  text-decoration: none;
  align-self: flex-start;
  margin-top: 2px;
}

.message-bubble .connect-msg-link-preview-yt__host:hover {
  text-decoration: underline;
}

.message-bubble .connect-msg-link-preview-yt__stage {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 10px;
  overflow: hidden;
  background: #0f172a;
}

.message-bubble .connect-msg-link-preview-yt__thumb {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.message-bubble .connect-msg-link-preview-yt__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.28);
  transition: background 0.15s ease;
  cursor: pointer;
}

.message-bubble .connect-msg-link-preview-yt__overlay:hover {
  background: rgba(0, 0, 0, 0.38);
}

.message-bubble .connect-msg-link-preview-yt__play {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 68px;
  height: 68px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  color: #fff;
  background: rgba(0, 0, 0, 0.55);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35);
  transition: transform 0.12s ease, background 0.12s ease;
}

.message-bubble .connect-msg-link-preview-yt__play:hover {
  transform: scale(1.06);
  background: rgba(0, 0, 0, 0.72);
}

.message-bubble .connect-msg-link-preview-yt__play svg {
  margin-left: 4px;
}

/* ═══════════════════════════════════════
   Цитата ответа (reply)
   ═══════════════════════════════════════ */

.message-bubble.message-bubble--has-reply {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  width: fit-content;
  max-width: 100%;
  min-width: 0;
}

.message-bubble.message-bubble--has-reply:not(.has-reactions):not(.media-only):not(.has-media-caption):not(
    .message-bubble--audio
  ):not(.message-bubble--link-preview-msg):not(.message-bubble--text-flow) {
  min-width: 80px;
  padding: 6px 55px 6px 10px;
}

.message-bubble.message-bubble--has-reply.is-edited:not(.has-reactions):not(.media-only):not(.has-media-caption):not(
    .message-bubble--audio
  ):not(.message-bubble--link-preview-msg):not(.message-bubble--text-flow) {
  padding-right: 85px !important;
}

.message-bubble.message-bubble--has-reply.message-bubble--text-flow:not(.has-reactions):not(.media-only):not(
    .has-media-caption
  ):not(.message-bubble--audio):not(.message-bubble--link-preview-msg) {
  position: relative;
  padding: 6px 10px;
  min-width: 0;
  width: fit-content;
  max-width: min(280px, 100%);
}

.message-bubble.message-bubble--has-reply.message-bubble--text-flow.is-edited:not(.has-reactions):not(
    .media-only
  ):not(.has-media-caption):not(.message-bubble--audio):not(.message-bubble--link-preview-msg) {
  padding: 6px 10px;
}

/* legacy .connect-msg__quote { margin:-2px 0 4px } — в CRE отступ сверху даёт padding пузыря */
.message-bubble.message-bubble--has-reply > .connect-msg__quote {
  width: auto;
  max-width: min(240px, 100%);
  flex: 0 0 auto;
  flex-basis: auto;
  align-self: flex-start;
  box-sizing: border-box;
  margin: 0 0 6px;
}

.message-bubble.message-bubble--has-reply > .message-bubble__text-flow,
.message-bubble.message-bubble--has-reply > .message-text,
.message-bubble.message-bubble--has-reply > .message-caption {
  align-self: flex-start;
  max-width: 100%;
}

/* Исходящие на светло-зелёном фоне CRE — не белый текст legacy */
.outgoing .message-bubble .connect-msg__quote--out,
.message-wrapper.my-message .message-bubble .connect-msg__quote--out {
  background: rgba(0, 0, 0, 0.05);
}

.outgoing .message-bubble .connect-msg__quote--out .connect-msg__quote-bar,
.message-wrapper.my-message .message-bubble .connect-msg__quote--out .connect-msg__quote-bar {
  background: #16a34a;
}

.outgoing .message-bubble .connect-msg__quote--out .connect-msg__quote-name,
.message-wrapper.my-message .message-bubble .connect-msg__quote--out .connect-msg__quote-name {
  color: #16a34a;
}

.message-bubble .connect-msg__quote .connect-msg__quote-snippet {
  color: #1a202c;
  min-height: 1.2em;
  max-width: min(240px, 100%);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.message-bubble.message-bubble--has-reply.message-bubble--text-flow .message-bubble__text-flow {
  display: block;
  width: auto;
  max-width: 100%;
  min-width: 0;
  padding-right: 50px;
  box-sizing: border-box;
}

.message-bubble.message-bubble--has-reply.message-bubble--text-flow.is-edited
  .message-bubble__text-flow {
  padding-right: 64px;
}

.message-bubble.message-bubble--has-reply.message-bubble--text-flow
  .message-bubble__text-flow
  > .message-meta:not(.media-badge) {
  position: absolute;
  right: 8px;
  bottom: 5px;
  margin: 0;
}

.message-bubble .connect-msg__quote .connect-msg__quote-snippet .emoji {
  font-size: 1.15em;
  vertical-align: -0.2em;
}

.outgoing .message-bubble .connect-msg__quote--out .connect-msg__quote-snippet,
.message-wrapper.my-message .message-bubble .connect-msg__quote--out .connect-msg__quote-snippet,
.incoming .message-bubble .connect-msg__quote--in .connect-msg__quote-snippet,
.message-wrapper.other-message .message-bubble .connect-msg__quote--in .connect-msg__quote-snippet {
  color: #1a202c;
}

.outgoing .message-bubble .connect-msg__quote--out .connect-msg__quote-snippet-link,
.message-wrapper.my-message .message-bubble .connect-msg__quote--out .connect-msg__quote-snippet-link {
  color: #2563eb;
}

/* ═══════════════════════════════════════
   Пересланное сообщение
   ═══════════════════════════════════════ */

.message-bubble.message-bubble--has-forward {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  width: fit-content;
  max-width: 100%;
}

.message-bubble.message-bubble--has-forward:not(.has-reactions):not(.media-only):not(.has-media-caption):not(
    .message-bubble--audio
  ):not(.message-bubble--link-preview-msg):not(.message-bubble--has-reply):not(.message-bubble--text-flow) {
  min-width: 80px;
  padding: 6px 55px 6px 10px;
}

.message-bubble.message-bubble--has-forward.is-edited:not(.has-reactions):not(.media-only):not(.has-media-caption):not(
    .message-bubble--audio
  ):not(.message-bubble--link-preview-msg):not(.message-bubble--has-reply):not(.message-bubble--text-flow) {
  padding-right: 85px !important;
}

.message-bubble.message-bubble--has-forward.message-bubble--has-reply:not(.has-reactions):not(.media-only):not(
    .message-bubble--audio
  ):not(.message-bubble--link-preview-msg):not(.message-bubble--text-flow) {
  padding: 6px 55px 6px 10px;
}

.message-bubble.message-bubble--has-forward.message-bubble--has-reply.is-edited:not(.has-reactions):not(
    .media-only
  ):not(.message-bubble--audio):not(.message-bubble--link-preview-msg):not(.message-bubble--text-flow) {
  padding-right: 85px !important;
}

/* legacy width:100% не растягивает пузырь */
.message-bubble.message-bubble--has-forward > .connect-msg__forward {
  width: auto;
  max-width: min(320px, 100%);
  flex: 0 0 auto;
  flex-basis: auto;
  align-self: flex-start;
}

.outgoing .message-bubble .connect-msg__forward--out .connect-msg__forward-label,
.message-wrapper.my-message .message-bubble .connect-msg__forward--out .connect-msg__forward-label {
  color: #527e52;
}

.outgoing .message-bubble .connect-msg__forward--out .connect-msg__forward-name,
.message-wrapper.my-message .message-bubble .connect-msg__forward--out .connect-msg__forward-name {
  color: #16a34a;
}

.outgoing .message-bubble .connect-msg__forward--out .connect-msg__forward-body,
.message-wrapper.my-message .message-bubble .connect-msg__forward--out .connect-msg__forward-body {
  color: #1a202c;
}

.outgoing .message-bubble .connect-msg__forward-comment,
.message-wrapper.my-message .message-bubble .connect-msg__forward-comment {
  color: #1a202c;
}

/* ═══════════════════════════════════════
   Посты канала (CRE)
   ═══════════════════════════════════════ */

.message-bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col,
.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col {
  display: inline-flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  align-content: stretch !important;
  gap: 0 !important;
}

.message-bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .connect-msg__channel-text-rxn-meta-row,
.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .connect-msg__channel-text-rxn-meta-row {
  order: 1;
  flex: 0 0 auto;
  width: 100%;
  max-width: 100%;
}

.message-bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .connect-msg__channel-text-rxn-row,
.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .connect-msg__channel-text-rxn-row {
  order: 1;
  flex: 0 0 auto;
  width: 100%;
  max-width: 100%;
}

.message-bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .connect-msg__channel-discuss-row,
.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .connect-msg__channel-discuss-row {
  order: 2;
  flex: 0 0 auto;
  width: 100%;
  max-width: 100%;
}

.message-bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col.connect-msg__bubble--has-channel-discuss:not(
    .connect-msg__bubble--audio
  ):not(.connect-msg__bubble--image-media):not(.connect-msg__bubble--video-media):not(.message-bubble--link-preview-msg),
.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col.connect-msg__bubble--has-channel-discuss:not(
    .connect-msg__bubble--audio
  ):not(.connect-msg__bubble--image-media):not(.connect-msg__bubble--video-media):not(.message-bubble--link-preview-msg),
.message-bubble.connect-msg__bubble--channel-discuss-text-compact,
.connect-msg__bubble.connect-msg__bubble--channel-discuss-text-compact {
  align-items: flex-start !important;
  align-content: flex-start !important;
  width: max-content !important;
  max-width: min(100%, 320px) !important;
  min-width: min(100%, 236px) !important;
  padding: 5px 9px 7px !important;
}

.message-bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col.connect-msg__bubble--has-channel-discuss:not(
    .connect-msg__bubble--audio
  ):not(.connect-msg__bubble--image-media):not(.connect-msg__bubble--video-media):not(.message-bubble--link-preview-msg)
  > .connect-msg__sender-line,
.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col.connect-msg__bubble--has-channel-discuss:not(
    .connect-msg__bubble--audio
  ):not(.connect-msg__bubble--image-media):not(.connect-msg__bubble--video-media):not(.message-bubble--link-preview-msg)
  > .message-sender-line,
.message-bubble.connect-msg__bubble--channel-discuss-text-compact > .connect-msg__sender-line,
.connect-msg__bubble.connect-msg__bubble--channel-discuss-text-compact > .message-sender-line,
.message-bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col.connect-msg__bubble--has-channel-discuss:not(
    .connect-msg__bubble--audio
  ):not(.connect-msg__bubble--image-media):not(.connect-msg__bubble--video-media):not(.message-bubble--link-preview-msg)
  > .message-text.connect-msg__text,
.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col.connect-msg__bubble--has-channel-discuss:not(
    .connect-msg__bubble--audio
  ):not(.connect-msg__bubble--image-media):not(.connect-msg__bubble--video-media):not(.message-bubble--link-preview-msg)
  > .message-text.connect-msg__text,
.message-bubble.connect-msg__bubble--channel-discuss-text-compact > .message-text.connect-msg__text,
.connect-msg__bubble.connect-msg__bubble--channel-discuss-text-compact > .message-text.connect-msg__text {
  align-self: flex-start !important;
  width: auto !important;
  max-width: 100% !important;
  flex: 0 0 auto !important;
}

.message-bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .connect-msg__channel-post-meta-footer,
.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .connect-msg__channel-post-meta-footer {
  order: 3;
  flex: 0 0 auto;
  width: 100%;
  max-width: 100%;
}

.message-bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .message-bubble__footer,
.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .message-bubble__footer {
  order: 1;
  flex: 0 0 auto;
  width: 100%;
  max-width: 100%;
  margin-top: 4px;
}

.message-bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .connect-msg__channel-post-rxn-footer,
.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-post-layout-col
  > .connect-msg__channel-post-rxn-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 6px 10px;
  padding: 4px 2px 2px;
  box-sizing: border-box;
}

/* Посты канала (CRE): единый белый фон — в канале нет in/out */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post {
  --bubble-out: #ffffff;
  --bubble-in: #ffffff;
  --bubble-out-bg: #ffffff;
  --bubble-in-bg: #ffffff;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post:not(.connect-msg__bubble--channel-lone-emoji),
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post .connect-msg__bubble.connect-msg__bubble--channel-post:not(.connect-msg__bubble--channel-lone-emoji),
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post.my-message .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post:not(.connect-msg__bubble--channel-lone-emoji),
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post.outgoing .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post:not(.connect-msg__bubble--channel-lone-emoji) {
  background-color: #ffffff !important;
  background: #ffffff !important;
  --bubble-out-bg: #ffffff !important;
  --bubble-in-bg: #ffffff !important;
  box-shadow: 0 1px 0.5px rgba(0, 0, 0, 0.08);
}

/* Хвост: CRE .message-bubble.tail::before конфликтует с connect-msg — оставляем legacy SVG */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.tail::before {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble.connect-msg__bubble--channel-post.tail:not(.connect-msg__bubble--stacked):not(
    .connect-msg__bubble--image-media
  ):not(.connect-msg__bubble--video-media):not(.connect-msg__bubble--channel-lone-emoji):not(
    .message-bubble--audio
  ):not(.connect-msg__bubble--audio)::before,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.tail:not(.connect-msg__bubble--stacked):not(
    .connect-msg__bubble--image-media
  ):not(.connect-msg__bubble--video-media):not(.connect-msg__bubble--channel-lone-emoji):not(
    .message-bubble--audio
  ):not(.connect-msg__bubble--audio)::before {
  display: block !important;
  background-color: transparent !important;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 16'%3e%3cpath d='M7 0C7 0 3 13 0 16H7V0Z' fill='%23ffffff'/%3e%3c/svg%3e") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  left: -6px !important;
  bottom: 0 !important;
  width: 7px !important;
  height: 16px !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .message-bubble.message-bubble--audio.connect-msg__bubble--channel-post.tail::before,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--audio.tail::before {
  display: block !important;
  background-color: transparent !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'><path d='M11 14V0C10.5 3.5 8 7.5 0 14H11Z' fill='%23FFFFFF'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  left: -6px !important;
  bottom: 0 !important;
  width: 11px !important;
  height: 14px !important;
}

body.theme-night
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble.connect-msg__bubble--channel-post.tail:not(.connect-msg__bubble--stacked):not(
    .connect-msg__bubble--image-media
  ):not(.connect-msg__bubble--video-media):not(.connect-msg__bubble--channel-lone-emoji):not(
    .message-bubble--audio
  ):not(.connect-msg__bubble--audio)::before,
body.theme-night
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.tail:not(.connect-msg__bubble--stacked):not(
    .connect-msg__bubble--image-media
  ):not(.connect-msg__bubble--video-media):not(.connect-msg__bubble--channel-lone-emoji):not(
    .message-bubble--audio
  ):not(.connect-msg__bubble--audio)::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 16'%3e%3cpath d='M7 0C7 0 3 13 0 16H7V0Z' fill='%23ffffff'/%3e%3c/svg%3e") !important;
}

/* Фото/видео без подписи + «Прокомментировать»: хвост у карточки (как у текста/аудио) */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble.connect-msg__bubble--channel-post.tail.connect-msg__bubble--bare-media.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--image-media::before,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble.connect-msg__bubble--channel-post.tail.connect-msg__bubble--bare-media.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--video-media::before {
  display: block !important;
  background-color: transparent !important;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 16'%3e%3cpath d='M7 0C7 0 3 13 0 16H7V0Z' fill='%23ffffff'/%3e%3c/svg%3e") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  left: -6px !important;
  bottom: 0 !important;
  width: 7px !important;
  height: 16px !important;
}

body.theme-night
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble.connect-msg__bubble--channel-post.tail.connect-msg__bubble--bare-media.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--image-media::before,
body.theme-night
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble.connect-msg__bubble--channel-post.tail.connect-msg__bubble--bare-media.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--video-media::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 16'%3e%3cpath d='M7 0C7 0 3 13 0 16H7V0Z' fill='%23ffffff'/%3e%3c/svg%3e") !important;
}

/* Фото/видео: контейнер прозрачный, полоски — зелёные */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--image-media,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--video-media,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--image-media,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--video-media {
  background: transparent !important;
  background-color: transparent !important;
  --bubble-out-bg: transparent !important;
  --bubble-in-bg: transparent !important;
  box-shadow: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--image-media
  > .connect-msg__sender-line--channel,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--video-media
  > .connect-msg__sender-line--channel,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--image-media
  > .message-sender-line--channel,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--video-media
  > .message-sender-line--channel,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--image-media
  > .connect-msg__sender-line--channel,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--video-media
  > .connect-msg__sender-line--channel {
  background: #ffffff !important;
  background-color: #ffffff !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--image-media
  .connect-msg__channel-discuss-row,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--video-media
  .connect-msg__channel-discuss-row,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--image-media
  .connect-msg__channel-discuss-row,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--video-media
  .connect-msg__channel-discuss-row {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border-top-color: rgba(15, 23, 42, 0.08);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--bare-media.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--image-media
  > .connect-msg__media-stack
  > .connect-msg__media-frame,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--bare-media.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--video-media
  > .connect-msg__media-stack
  > .connect-msg__media-frame,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--bare-media.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--image-media
  > .connect-msg__media-stack
  > .connect-msg__media-frame,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--bare-media.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--video-media
  > .connect-msg__media-stack
  > .connect-msg__media-frame,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--media-with-caption.connect-msg__bubble--image-media
  > .connect-msg__media-stack
  > .connect-msg__media-frame,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--media-with-caption.connect-msg__bubble--video-media
  > .connect-msg__media-stack
  > .connect-msg__media-frame,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--media-with-caption.connect-msg__bubble--image-media
  > .connect-msg__media-stack
  > .connect-msg__media-frame,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--media-with-caption.connect-msg__bubble--video-media
  > .connect-msg__media-stack
  > .connect-msg__media-frame {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--media-with-caption.connect-msg__bubble--image-media
  .connect-msg__media-caption-bar,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--media-with-caption.connect-msg__bubble--video-media
  .connect-msg__media-caption-bar,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--media-with-caption.connect-msg__bubble--image-media
  .connect-msg__media-caption-bar,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--media-with-caption.connect-msg__bubble--video-media
  .connect-msg__media-caption-bar {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #1a202c;
}

/* «Прокомментировать»: chevron сразу после текста, не на мету */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post .connect-msg__channel-discuss-row {
  justify-content: flex-start !important;
  gap: 2px !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post .connect-msg__channel-discuss-main {
  flex: 0 1 auto !important;
  max-width: none !important;
  min-width: 0;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post .connect-msg__channel-discuss-label--action {
  flex: 0 1 auto;
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .message-content-block,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__wrap,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble-aside {
  width: max-content;
  max-width: 100%;
}

/* Текстовый пост с обсуждением: ширина по контенту, без legacy padding 55px под absolute-мету */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-discuss-text-compact,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss:not(.connect-msg__bubble--audio):not(
    .connect-msg__bubble--image-media
  ):not(.connect-msg__bubble--video-media):not(.message-bubble--link-preview-msg) {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
  width: max-content !important;
  max-width: min(100%, 320px) !important;
  min-width: min(100%, 236px) !important;
  padding: 5px 9px 7px !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-discuss-text-compact
  > .connect-msg__channel-discuss-row,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss:not(.connect-msg__bubble--audio):not(
    .connect-msg__bubble--image-media
  ):not(.connect-msg__bubble--video-media):not(.message-bubble--link-preview-msg)
  > .connect-msg__channel-discuss-row {
  width: calc(100% + 18px) !important;
  margin: 8px -9px 0 !important;
  padding: 9px 9px 6px !important;
  box-sizing: border-box;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .message-wrapper--channel-post .connect-msg__channel-discuss-chev {
  margin-left: 2px !important;
  flex-shrink: 0 !important;
}

/* Реакции на фото/видео с обсуждением: полоска внутри зелёной карточки + мета справа */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-media-rxn-footer,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-media-rxn-footer {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 6px 12px 8px;
  background: #ffffff !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__channel-media-rxn-footer
  > .connect-msg__reaction-strip {
  position: static !important;
  margin: 0 !important;
  width: auto !important;
  max-width: calc(100% - 72px) !important;
  flex: 0 1 auto;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__channel-media-rxn-footer
  > .connect-msg__meta {
  margin: 0 0 0 auto !important;
  flex: 0 0 auto;
  width: auto !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__channel-media-rxn-footer
  .connect-msg__reaction-pill,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__channel-media-rxn-footer
  .connect-msg__reaction-pill {
  background: rgba(255, 255, 255, 0.28);
  color: #1a202c;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--bare-media
  .connect-msg__channel-media-rxn-footer,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-post.connect-msg__bubble--has-channel-discuss.connect-msg__bubble--bare-media
  .connect-msg__channel-media-rxn-footer {
  border-radius: 0 0 12px 12px;
}

/* Одиночное крупное эмодзи в канале — без пузыря и названия, бар как в TG */
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__bubble-aside--channel-lone-emoji {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: fit-content;
  max-width: 100%;
  gap: 0;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-lone-emoji-row {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 0;
  width: fit-content;
  max-width: 100%;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-lone-emoji-row > .connect-msg__meta--channel-lone-emoji-row {
  flex: 0 0 auto;
  position: static;
  margin: 0 0 2px 18px;
  padding: 6px 8px;
  border-radius: 10px;
  background: rgba(91, 98, 112, 0.78);
  color: rgba(248, 250, 252, 0.96);
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.2);
  opacity: 1 !important;
  pointer-events: none;
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 6px;
  font-size: 12px;
  line-height: 1.1;
  white-space: nowrap;
  align-self: flex-end;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-lone-emoji-row > .connect-msg__channel-lone-emoji-bar__comment {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  margin: 0 0 0 36px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: var(--cre-channel-service-pill-bg);
  color: #ffffff;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.12);
}

body.theme-night
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg__channel-lone-emoji-row
  > .connect-msg__channel-lone-emoji-bar__comment {
  background: var(--cre-channel-service-pill-bg-night);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-lone-emoji-row > .connect-msg__channel-lone-emoji-bar__comment-img {
  display: block;
  width: 22px;
  height: 22px;
  object-fit: contain;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-lone-emoji-row > .connect-msg__channel-lone-emoji-bar__comment:hover {
  filter: brightness(1.06);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-lone-emoji-row > .connect-msg__channel-lone-emoji-bar__comment-svg {
  display: none;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.other-message
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.other-message
  .connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 2px 0 4px !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  --bubble-out-bg: transparent !important;
  --bubble-in-bg: transparent !important;
  position: relative;
  width: fit-content;
  max-width: 100%;
  align-self: flex-start;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-lone-emoji::before,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-lone-emoji::after,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .message-bubble.connect-msg__bubble--channel-lone-emoji.tail::before,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-lone-emoji::before,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .connect-msg__bubble--channel-lone-emoji::after,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .message-bubble.connect-msg__bubble--channel-lone-emoji.tail::before,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-lone-emoji::before,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .connect-msg__bubble--channel-lone-emoji::after,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .message-bubble.connect-msg__bubble--channel-lone-emoji.tail::before {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji.has-reactions,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.my-message
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji.has-reactions,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-wrapper--channel-post.outgoing
  .message-bubble.connect-msg__bubble.connect-msg__bubble--channel-post.connect-msg__bubble--channel-lone-emoji.has-reactions {
  margin-bottom: 0 !important;
  padding-bottom: 4px !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg__meta--channel-lone-emoji-row
  .message-meta__overlay-row {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__meta--channel-lone-emoji-row .connect-msg__channel-views {
  display: inline-flex;
  align-items: center;
  gap: 3px;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__meta--channel-lone-emoji-row .time,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__meta--channel-lone-emoji-row .connect-msg__channel-views__num,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__meta--channel-lone-emoji-row .message-views {
  color: rgba(248, 250, 252, 0.96);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__meta--channel-lone-emoji-row .connect-msg__channel-views__eye {
  stroke: rgba(248, 250, 252, 0.96);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-bubble.connect-msg__bubble--channel-lone-emoji
  > .connect-msg__meta--channel-lone-emoji-float,
:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .message-bubble.connect-msg__bubble--channel-lone-emoji.has-reactions
  > .connect-msg__meta--channel-lone-emoji-float {
  display: none !important;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg__meta--channel-lone-emoji-float
  .message-meta__overlay-row {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
}

body.theme-night
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg__meta--channel-lone-emoji-row {
  background: rgba(43, 58, 74, 0.88);
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-lone-emoji-bar {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
  width: fit-content;
  max-width: 100%;
  margin-top: 4px;
  padding-right: 0;
  box-sizing: border-box;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-lone-emoji-bar__rxn {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  flex: 0 1 auto;
  min-width: 0;
}

:is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"] .connect-msg__channel-lone-emoji-bar__rxn .connect-msg__reaction-pill {
  background: #ffffff;
  color: #0f172a;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.12);
}

body.theme-night
  :is(#thread-messages, #discussion-overlay-pin, #discussion-overlay-messages, #channel-submission-overlay-messages)[data-cre-engine="1"]
  .connect-msg__meta--channel-lone-emoji-float {
  background: rgba(43, 58, 74, 0.88);
}

/* Закреплённый пост в обсуждении — тот же CRE-вид, что в ленте канала */
#discussion-overlay-pin[data-cre-engine="1"] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 10px 14px 12px;
  background: transparent;
  box-sizing: border-box;
}

#discussion-overlay-pin[data-cre-engine="1"] .message-wrapper--channel-post {
  margin-bottom: 0;
  max-width: none;
  width: fit-content;
}

#discussion-overlay-pin[data-cre-engine="1"] .message-wrapper--channel-post .message-content-block {
  max-width: none;
  width: fit-content;
}

#discussion-overlay-messages[data-cre-engine="1"] {
  display: flex;
  flex-direction: column;
  gap: 0;
  box-sizing: border-box;
}

#discussion-overlay-messages[data-cre-engine="1"] .message-wrapper {
  max-width: 100%;
}

#discussion-overlay-pin[data-cre-engine="1"] .connect-msg__channel-discuss-row {
  display: none !important;
}

/* Pin в обсуждении: link-preview — мета под цитатой, как в ленте канала */
#discussion-overlay-pin[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.message-bubble--link-preview-msg.connect-msg__bubble--has-channel-discuss
  > .message-meta:not(.media-badge) {
  display: none !important;
}

#discussion-overlay-pin[data-cre-engine="1"]
  .message-wrapper--channel-post
  .connect-msg__bubble--channel-post.message-bubble--link-preview-msg.connect-msg__bubble--has-channel-discuss
  .connect-msg__channel-text-rxn-meta-row {
  margin-top: 6px;
  padding: 0 2px 0;
  justify-content: flex-end;
}

#discussion-overlay-pin[data-cre-engine="1"] .connect-msg__channel-share-btn {
  display: none !important;
}

#discussion-overlay-pin[data-cre-engine="1"] .connect-msg__channel-external-rxn {
  max-width: 100%;
}

/* Обсуждение: pin и комментарии — один фон, без flex-роста (не двигает pin вниз) */
#discussion-overlay-pin[data-cre-engine="1"],
#discussion-overlay-messages[data-cre-engine="1"] {
  flex: none !important;
  flex-grow: 0 !important;
  overflow: visible !important;
  overflow-y: visible !important;
  min-height: 0 !important;
  background: transparent !important;
  background-image: none !important;
  padding: 0 !important;
}

/* —— Mobile shell: лента на всю ширину (без 50/50 split) —— */
@media (max-width: 720px) {
  #connect-thread.cre-thread .connect-thread__split {
    grid-template-columns: minmax(0, 1fr);
  }

  #connect-thread.cre-thread .connect-thread__split-pane--side {
    display: none;
  }
}
