   Módulo: chat_mobile_keyboard.css
   Escopo: teclado mobile, área visível e reserva real para mensagens.
*/

@media (max-width: 760px) {
  :root {
    --lia-mobile-visual-height-2c: 100dvh;
    --lia-mobile-layout-height-2c: 100dvh;
    --lia-mobile-keyboard-offset-2c: 0px;
    --lia-mobile-current-composer-height-2c: var(--lia-mobile-composer-height-2b, 60px);
    --lia-mobile-message-bottom-reserve-2c: calc(var(--lia-mobile-current-composer-height-2c) + 14px);
  }

  html,
  body {
    height: var(--lia-mobile-visual-height-2c) !important;
    min-height: var(--lia-mobile-visual-height-2c) !important;
    max-height: var(--lia-mobile-visual-height-2c) !important;
    overflow: hidden !important;
  }

  body.lia-chat-page,
  .lia-shell,
  .lia-desktop-frame,
  .lia-chat-workspace,
  .lia-chat-card {
    height: var(--lia-mobile-visual-height-2c) !important;
    min-height: var(--lia-mobile-visual-height-2c) !important;
    max-height: var(--lia-mobile-visual-height-2c) !important;
    overflow: hidden !important;
  }

  .lia-chat-workspace,
  .lia-chat-card {
    display: flex !important;
    flex-direction: column !important;
  }

  .lia-chat-header {
    flex: 0 0 auto !important;
    position: relative !important;
    z-index: 5 !important;
  }

  .lia-messages {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    scroll-padding-bottom: var(--lia-mobile-message-bottom-reserve-2c) !important;
    padding-bottom: 14px !important;
    box-sizing: border-box !important;
  }

  .lia-composer {
    flex: 0 0 var(--lia-mobile-composer-height-2b, 60px) !important;
    height: var(--lia-mobile-composer-height-2b, 60px) !important;
    min-height: var(--lia-mobile-composer-height-2b, 60px) !important;
    position: relative !important;
    bottom: auto !important;
    z-index: 6 !important;
  }

  body.lia-mobile-2c-active .lia-chat-card {
    display: flex !important;
    flex-direction: column !important;
  }

  body.lia-mobile-2c-keyboard-open .lia-chat-card,
  body.lia-mobile-2c-input-focused .lia-chat-card {
    height: var(--lia-mobile-visual-height-2c) !important;
    min-height: var(--lia-mobile-visual-height-2c) !important;
    max-height: var(--lia-mobile-visual-height-2c) !important;
  }

  body.lia-mobile-2c-keyboard-open .lia-messages,
  body.lia-mobile-2c-input-focused .lia-messages {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    padding-bottom: 14px !important;
    scroll-padding-bottom: var(--lia-mobile-message-bottom-reserve-2c) !important;
    scroll-behavior: auto !important;
  }

  body.lia-mobile-2c-keyboard-open .lia-composer,
  body.lia-mobile-2c-input-focused .lia-composer {
    flex-basis: var(--lia-mobile-composer-height-2b, 60px) !important;
    height: var(--lia-mobile-composer-height-2b, 60px) !important;
    min-height: var(--lia-mobile-composer-height-2b, 60px) !important;
    transform: none !important;
  }

  body.lia-mobile-2c-keyboard-open .lia-message-row:last-child,
  body.lia-mobile-2c-input-focused .lia-message-row:last-child {
    scroll-margin-bottom: var(--lia-mobile-message-bottom-reserve-2c) !important;
  }
}

@media (max-width: 420px) {
  :root {
    --lia-mobile-message-bottom-reserve-2c: calc(var(--lia-mobile-current-composer-height-2c) + 12px);
  }

  .lia-messages {
    padding-bottom: 12px !important;
  }

  body.lia-mobile-2c-keyboard-open .lia-messages,
  body.lia-mobile-2c-input-focused .lia-messages {
    padding-bottom: 12px !important;
  }
}
