/* Fix mobile/desktop send-message bar: markup uses textarea.setemoj, not .typing-section/input */
.giantpulse-main .message-input {
  z-index: 1050 !important;
  background-color: #fff !important;
  box-sizing: border-box !important;
}

.chat-content .message-input .emojis-main,
.message-input form.emojis-main,
.message-input .emojis-main.wrap {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  gap: 8px !important;
  justify-content: flex-start !important;
  margin: 0 !important;
}

.message-input .emojis-main textarea.setemoj,
.message-input .emojis-main .setemoj,
.message-input textarea.setemoj {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  min-height: 40px !important;
  height: auto !important;
  max-height: 120px !important;
  border: 1px solid #e5e8e9 !important;
  border-radius: 21px !important;
  padding: 8px 14px !important;
  margin: 0 !important;
  background: #fff !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  color: #333 !important;
  resize: none !important;
  box-sizing: border-box !important;
  overflow-y: auto !important;
}

.message-input .emojis-main .icon-btn,
.message-input .emojis-main button.icon-btn {
  flex: 0 0 auto !important;
  min-width: 34px !important;
  min-height: 34px !important;
}

/* Keep chat list above the fixed composer */
.contact-chat {
  padding-bottom: 96px !important;
  box-sizing: border-box !important;
}

@media (max-width: 800px) {
  .giantpulse-main .message-input,
  .giantpulse-container .giantpulse-main .message-input,
  .sidebar-toggle .main-nav.on ~ .giantpulse-main .message-input,
  .sidebar-toggle .main-nav:not(.on) ~ .giantpulse-main.small-sidebar .message-input {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    margin: 0 !important;
    border-radius: 0 !important;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom, 0px)) !important;
    box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.08) !important;
  }

  .contact-chat {
    height: calc(100dvh - 130px) !important;
    max-height: calc(100dvh - 130px) !important;
    padding-bottom: 110px !important;
    margin-top: 60px !important;
  }

  .message-input .emojis-main textarea.setemoj,
  .message-input .emojis-main .setemoj,
  .message-input textarea.setemoj {
    font-size: 16px !important; /* avoid iOS zoom */
  }
}

@media (max-width: 480px) {
  .giantpulse-container .giantpulse-main .message-input {
    width: 100% !important;
    bottom: 0 !important;
    margin: 0 !important;
  }
}

body.dark .giantpulse-main .message-input,
.dark .giantpulse-container .giantpulse-main .message-input {
  background-color: rgba(var(--dark), 1) !important;
}

body.dark .message-input .emojis-main textarea.setemoj,
.dark .message-input textarea.setemoj {
  background: rgba(var(--dark), 1) !important;
  border-color: #333 !important;
  color: #fff !important;
}
