.chat-widget {
  position: fixed;
  bottom: 30px;
  right: 40px;
  z-index: 1000;
}

.chat-icon {
  width: 60px;
  height: 60px;
  background-color: #28a745;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 3px 8px rgba(0,0,0,0.2);
  transition: background-color 0.3s;
}

/** close icon **/
.chat-icon2{
  display: flex;
  width: 30px;
  height: 30px;
  position:absolute;
  top:33px;
  right:5px;
  justify-content: center;
   align-items: center;
  cursor: pointer;
  background-color: #ffffff;
  border-radius: 50%;
}
/** download icon **/
.chat-icon3{
  display: flex;
  width: 30px;
  height: 30px;
  position:absolute;
  top:33px;
  right:45px;
  justify-content: center;
   align-items: center;
  cursor: pointer;
  background-color: #ffffff;
  border-radius: 50%;
}
/** copy icon **/
.chat-icon4{
  display: flex;
  width: 30px;
  height: 30px;
  position:absolute;
  top:33px;
  right:85px;
  justify-content: center;
   align-items: center;
  cursor: pointer;
  background-color: #ffffff;
  border-radius: 50%;
}


.chat-window {
  display: none;
  width: 45vi;
  height:75vh;
  background-color: #ffffff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  flex-direction: column;
  overflow: hidden;
  margin-top: 10px;
}

.chat-window.mobile {
  width: 90vw;
  height: 70vh;
}

.chat-header {
  background-color: #f8f9fa;
  padding: 12px;
  border-bottom: 1px solid #e9ecef;
  font-size: 16px;
  font-weight: bold;
}

.message-area {
  flex: 1;
  padding: 15px;
  overflow-y: auto;
  background-color: #fefefe;
}

.input-area {
  display: flex;
  padding: 10px;
  background-color: #ffffff;
  border-top: 1px solid #e9ecef;
}

.input-field {
  flex: 1;
  padding: 10px;
  border: 1px solid #ced4da;
  border-radius: 8px;
  margin-right: 10px;
  font-size: 14px;
  margin-bottom:0px;
}

.send-button {
  padding: 10px 16px;
  background-color: #28a745;
  color: #fff;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  font-size: 18px;
  width:100px;
  transition: background-color 0.3s;
}

.message {
  margin-bottom: 12px;
  padding: 10px;
  border-radius: 8px;
  max-width: 80%;
  line-height: 1.4;
  font-size: 16px;
}

.message h1, .message h2{
  font-size:18px !important;
}
.message ul{
  margin-bottom:10px;
}
.message ul li{
  margin-left:16px;
}

.user-message {
  background-color:rgba(54, 179, 73, .9);
  color: #fff;
  margin-left: auto;
  text-align: right;
}

.bot-message {
  background-color: #ececec;
  color: #333;
  margin-right: auto;
}

.thinking-dots {
  display: inline-block;
  width: 40px;
  height: 10px;
  text-align: center;
}

.thinking-dots span {
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #555;
  border-radius: 50%;
  margin: 0 2px;
  animation: bounce 0.6s infinite alternate;
}

.thinking-dots span:nth-child(2) {
  animation-delay: 0.2s;
}

.thinking-dots span:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes bounce {
  to {
    transform: translateY(-6px);
  }
}
