/* Import Google font - Poppins */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap');
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}
body {
  background: #E3F2FD;
}

.chatbot {
  position: fixed;
  right: 40px;
  bottom: 100px;
  width: 500px;
  opacity: 1;
  pointer-events: auto;
  overflow: hidden;
  background: #fff;
  border-radius: 15px;
  /*border: 1px solid red;*/
  box-shadow: 0 0 128px 0 rgba(0, 0, 0, 0.1),
              0 32px 64px -48px rgba(0, 0, 0, 0.5);
}
.chatbot .header {
  background: #7baaca;
  background: linear-gradient(to right, rgb(123, 170, 202), rgb(50, 55, 65), rgb(33, 33, 78));
  text-align: center;
  position: relative;
  display: flex;
  align-items: center;
  border-bottom: 1px solid black;
  /*border: 1px solid blue;*/
}
.chatbot .header .nav-logo {
  height: 78px;
  width: 98px;
}
.chatbot .header h2 {
  color: #fff;
  font-size: 1.4rem;
}
.chatbot .header span {
  position: absolute;
  right: 20px;
  top: 50%;
  color: #fff;
  font-size: 2.0rem;
  cursor: pointer;
  /*display: none;*/
  transform: translateY(-50%);
}
.chatbot .chatbox {
  height: 660px;
  overflow-y: auto;
  padding: 30px 20px 100px;
  /*border: 1px solid green;*/
}
.chatbox .chat {
  display: flex;
}
.chatbox .incoming span {
  height: 32px;
  width: 32px;
  color: #fff;
  align-self: flex-end;
  background: #7baaca;
  text-align: center;
  line-height: 32px;
  border-radius: 4px;
  margin: 0 10px 7px 0;
}
/*.chatbox .incoming .avatar {
  height: 36px;
  width: 36px;
  align-self: flex-end;
  text-align: center;
  line-height: 36px;
  margin: 0 10px 7px 0;
}*/
.chatbox .outgoing {
  margin: 20px 0;
  justify-content: flex-end;
}
.chatbox .chat div {
  color: #fff;
  max-width: 78%; /* was 75% */
  white-space: pre-wrap;
  font-size: 1.0rem; /* was 0.95 */
  line-height: 26px; /* new entry */
  padding: 12px 14px;
  border-radius: 10px 10px 0 10px;
  background: #7baaca;
}
.chatbox .chat div.error {
  color: #721c24;
  background: #f8d7da;
}
.chatbox .chat div.error #restart-link {
  color: #721c24;
  background: #f8d7da;
  text-decoration: underline;
  cursor: pointer;
  height: auto;
  width: auto;
  line-height: normal;
  margin: 0;
  padding: 0;
}
.chatbox .incoming div {
  color: #000;
  background: #f2f2f2;
  border-radius: 10px 10px 10px 0;
}
.chatbox .welcome p {
  padding: 10px;
  font-size: 1.0rem; /* new entry */
}
.chatbox .welcome-img {
  height: 210px;
  width: 100px;
  margin-bottom: 20px;
}
.chatbox .incoming div hr {
  margin-top: 8px;
  margin-bottom: 8px;
}
.chatbox .incoming div span.caution {
  color: #000000;
  background: #fbe704;
  vertical-align: middle;
  border-radius: 4px;
  border: 1px solid #000000;
}
.chatbot .chat-input {
  position: absolute;
  bottom: 0;
  width: 100%;
  display: flex;
  gap: 5px;
  background: #fff;
  padding: 5px 20px 20px;
  /*border: 1px solid orange;*/
  border-top: 1px solid #ccc;
}
.chat-input textarea {
  height: 60px;
  width: 100%;
  border: none;
  outline: none;
  max-height: 180px;
  font-size: 1.0rem;
  resize: none;
  padding: 12px 15px 12px 5px;
}
.chat-input span {
  align-self: flex-end;
  height: 55px;
  line-height: 55px;
  color: #7baaca;
  font-size: 1.875rem; /* was 1.6 */
  cursor: pointer;
  visibility: hidden;
}
.chat-input textarea:valid ~ span {
  visibility: visible;
}


@media(max-width: 580px), (max-height: 820px) {
  .chatbot {
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    border-radius: 0;
  }
  .chatbot .chatbox {
    height: calc(100% - 160px);
    padding: 30px 20px 50px;
  }
  .chatbot header span {
    display: block;
  }
  
}
