.messaging-page .messaging-shell,
.messaging-page .conversation-panel { min-height: 0; }
.messaging-page .conversation-panel { overflow: hidden; }
.messaging-page .message-timeline { min-height: 0; flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; }
.messaging-page .message-compose {
  flex: 0 0 auto;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end;
  gap: 12px;
  padding: 14px 20px !important;
}
.messaging-page .message-compose .message-text {
  display: grid;
  grid-column: 1;
  gap: 5px;
  width: 100% !important;
  min-width: 0;
  margin: 0;
}
.messaging-page .message-compose textarea {
  display: block;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  resize: none !important;
  overflow-y: auto;
  margin: 0 !important;
}
.messaging-page .message-compose > div {
  grid-column: 2;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: max-content;
}
.messaging-page .message-compose > div button { align-self: end; }
@media (max-width: 620px) {
  .messaging-page .message-compose { grid-template-columns: minmax(0, 1fr) !important; }
  .messaging-page .message-compose .message-text,
  .messaging-page .message-compose > div { grid-column: 1; }
  .messaging-page .message-compose > div { justify-content: space-between; }
}
