.chatbot-container {
  --chat-image-size: 40px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  height: 100%;
  /*padding-top: 45px;*/
  position: relative;

  .messages-container {
    display: flex;
    justify-content: start;
    flex-grow: 1;
    flex-direction: column;
    row-gap: 30px;
    min-height: 250px;
    overflow-y: auto;
    position: relative;
    padding: 10px;

    .bubble {
      position: relative;
      padding: 1em;
      border-radius: 2.5em;
      max-width: calc(100% - 75px);
    }

    .bubble.answer {
      align-self: start;
      background-color: var(--bs-gray-200);
      color: var(--bs-black);
      margin-left: calc(var(--chat-image-size) + 3px);
      border-top-left-radius: 0.6em;
      padding: 1.2em 1.0em 1.2em 1.5em;
      text-align: left;

      .timestamp {
        position: absolute;
        top: -24px;
        left: 138px;
        font-size: 11px;
        color: var(--bs-gray);
        white-space: nowrap;
      }
    }

    .bubble.answer::after {
      content: '';
      background: var(--bot-image);
      width: var(--chat-image-size);
      height: auto;
      aspect-ratio: 1;
      display: block;
      position: absolute;
      background-size: 75%;
      background-position: center;
      background-repeat: no-repeat;
      left: calc((-1 * var(--chat-image-size)) - 5px);
      top: 5px;
    }

    /*
    .bubble.answer::before {
      position: absolute;
      content: "Octala Chatbot";
      font-size: 14px;
      font-weight: bold;
      top: -28px;
      left: 28px;
      color: black;
      white-space: nowrap;
    }
    */

    .bubble.inquiry {
      background-color: var(--octala-color-1);
      color: white;
      align-self: end;
      margin-right: calc(var(--chat-image-size) + 8px);
      border-top-right-radius: 0.6em;
      padding: 1.2em 1.5em 1.2em 1.0em;
      text-align: right;
    }

    .bubble.inquiry::after {
      content: '';
      background: var(--user-image);
      width: var(--chat-image-size);
      height: auto;
      aspect-ratio: 1;
      display: block;
      position: absolute;
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat;
      border-radius: 50%;
      border: 1px solid var(--bs-border-color);
      right: calc((-1 * var(--chat-image-size)) - 5px);
      top: 0;
    }

    /*
    .bubble.inquiry::before {
      position: absolute;
      content: "You";
      font-size: 14px;
      font-weight: bold;
      top: -28px;
      right: 0px;
      color: black;
      white-space: nowrap;
    }
    */

    .bubble.suggestion::before {
      position: absolute;
      content: "💡 Here's what you can ask me";
      top: -28px;
      left: 0px;
      font-size: 1em;
      font-weight: bold;
      color: var(--bs-black);
    }

    .bubble.suggestion {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      padding:0;
      row-gap: 10px;
      column-gap: 10px;
      align-items: stretch;
      justify-content: start;
      margin-left: 45px;
      margin-top: 10px;

      > a {
        width: calc( 50% - 10px );
        padding: 10px;
        background-color: var(--bs-white);
        border: 1px solid var(--bs-gray-400);
        border-radius: 10px;
        color: var(--bs-black);
        text-decoration: none;
      }
    }
  }

  .composer-container {
    display: flex;
    background-color: var(--theme-bg-color);
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: center;
    position: relative;
    box-shadow: 0px -3px 5px 0px var(--shadow-color);
    column-gap: 8px;
    padding: 10px 15px;

    .character-counter-control {
      position: absolute;
      display: flex;
      align-items: center;
      aspect-ratio: 1;
      z-index: 2;
      border-radius: 50%;
      border: 1px solid var(--bs-border-color);
      padding: 2px;
      font-size: 0.8em;
      left: calc(1em + 15px);
    }

    .composer-input-control {
      height: 100%;
      resize: none;
      border: 1px solid var(--bs-border-color);
      border-radius: 10px;
      padding: 0.8em 1.5em 0.8em calc(1.5em + 25px);
      max-height: 3.4em;
      flex-grow: 1;
      flex-shrink: 1;
    }

    .send-input-control {
      width: 60px;
    }
  }
}

/*
.chatbot-container:before {
  content: '';
  background: var(--bot-image);
  background-size: 80%;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  left: 8px;
  top: 22.5px;
  width: 30px;
  height: auto;
  aspect-ratio: 1;
  transform: translateY(-50%);
  z-index: 2;
}

.chatbot-container:after {
  content: 'Octala AI';
  position: absolute;
  top: 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: start;
  padding-left: 44px;
  font-size: 1.3em;
  font-weight: bold;
  color: #fff;
  background-color: var(--octala-color-1);
  height: 45px;
  width: 100%;
  min-width: 250px;
}
*/

@media (max-width: 575px) {
  .chatbot-container {
    /*height: calc(100vh - (72px + var(--offset-top, 10px) + var(--offset-bottom, 10px))); 72px is for the mobile menu for RiseCRM */
  }
}