/**
 * Room Talk — message bubbles, ticks, bubble menus
 */

.lms-room-talk-bubble {
  max-width: min(80%, 36rem);
  border-radius: 1.75rem;
  padding: 0.55rem 0.9rem;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  color: #111827;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
html[data-theme="dark"] .lms-room-talk-bubble {
  background: #262b36;
  border-color: #374151;
  color: #f3f4f6;
}
.lms-room-talk-msg-row--mine .lms-room-talk-bubble {
  background: #ffffff;
  border-color: #e5e7eb;
}
.lms-room-talk-bubble__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.2rem;
}
.lms-room-talk-bubble__name {
  font-size: 0.75rem;
  font-weight: 600;
  color: #6b7280;
}
.lms-room-talk-bubble__footer {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 0.35rem;
}
.lms-room-talk-bubble__footer.is-mine {
  justify-content: flex-end;
}
.lms-room-talk-bubble__time {
  font-size: 0.6875rem;
  color: #6b7280;
  font-style: normal;
  white-space: nowrap;
}
.lms-room-talk-ticks-slot {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}
.lms-room-talk-ticks {
  display: inline-flex;
  align-items: center;
  line-height: 1;
  flex-shrink: 0;
}
.lms-room-talk-tick {
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1;
}
.lms-room-talk-ticks--sent {
  color: #6b7280;
}
.lms-room-talk-ticks--delivered {
  color: #6b7280;
}
.lms-room-talk-ticks--delivered .lms-room-talk-tick + .lms-room-talk-tick {
  margin-inline-start: -0.28rem;
}
.lms-room-talk-ticks--read {
  color: var(--cui-accent);
}
.lms-room-talk-ticks--read .lms-room-talk-tick + .lms-room-talk-tick {
  margin-inline-start: -0.28rem;
}
.lms-room-talk-bubble__body {
  font-size: 1rem;
  line-height: 1.5;
  white-space: pre-wrap;
  word-break: break-word;
  unicode-bidi: plaintext;
}
.lms-room-talk-bubble[dir="rtl"],
.lms-room-talk-bubble[dir="rtl"] .lms-room-talk-bubble__body {
  text-align: right;
}
.lms-room-talk-bubble[dir="ltr"],
.lms-room-talk-bubble[dir="ltr"] .lms-room-talk-bubble__body {
  text-align: left;
}
.lms-room-talk-bubble[dir="auto"] .lms-room-talk-bubble__body {
  text-align: start;
}
.lms-room-talk-pinned [dir="rtl"] {
  text-align: right;
}
.lms-room-talk-pinned [dir="ltr"] {
  text-align: left;
}
.lms-warshah-composer__input[dir="rtl"] {
  text-align: right;
}
.lms-warshah-composer__input[dir="ltr"] {
  text-align: left;
}
.lms-room-talk-bubble__pin {
  margin-left: 0.35rem;
  color: #d97706;
  font-size: 0.65rem;
}
.lms-room-talk-bubble-wrap {
  position: relative;
  max-width: min(80%, 36rem);
}
.lms-room-talk-bubble-wrap .lms-room-talk-bubble {
  max-width: none;
  width: 100%;
}
.lms-room-talk-bubble-wrap:has(.lms-room-talk-msg-menu-btn) .lms-room-talk-bubble {
  padding-top: 0.7rem;
}
.lms-room-talk-msg-row--mine .lms-room-talk-bubble-wrap {
  margin-left: auto;
}
/* ⋯ on the inner edge of each bubble (toward chat center) */
.lms-room-talk-msg-menu-btn {
  position: absolute;
  top: 0.15rem;
  left: auto;
  right: 0.1rem;
  z-index: 3;
  width: 1.65rem;
  height: 1.65rem;
  min-width: 1.65rem;
  min-height: 1.65rem;
  font-size: 0.75rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
}
.lms-room-talk-msg-row--mine .lms-room-talk-msg-menu-btn {
  right: auto;
  left: 0.1rem;
}
@media (hover: hover) {
  .lms-room-talk-msg-row:hover .lms-room-talk-msg-menu-btn,
  .lms-room-talk-msg-row.is-menu-open .lms-room-talk-msg-menu-btn {
    opacity: 1;
    pointer-events: auto;
  }
}
@media (hover: none) {
  .lms-room-talk-msg-menu-btn {
    opacity: 0.9;
    pointer-events: auto;
  }
}
/* Dropdown opens inward (toward middle of chat), not off the screen edge */
.lms-room-talk-msg-menu.lms-page-actions-menu {
  position: absolute;
  top: 0;
  left: 100%;
  right: auto;
  margin-left: 0.35rem;
  z-index: 30;
  min-width: 12rem;
}
.lms-room-talk-msg-row--mine .lms-room-talk-msg-menu.lms-page-actions-menu {
  left: auto;
  right: 100%;
  margin-left: 0;
  margin-right: 0.35rem;
}
