@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:#dce1e3;
}
.show-chatbot .chatbot {
   border-radius: 1.5rem;
}
.chatbot-logo {
    width: 40px; /* Adjust the size as needed */
    height: 40px;
    margin-right: 10px;
  }
  .chatbot-logo  span{
    background:white;
    margin-top:20px;
}
/*chatbot toggler*/
.chatbot-toggler{
    position:fixed;
    right:40px;
    bottom:40px;
    height:55px;
    width:55px;
    color:#fff;
    border:none;
    display:flex;
    transition:all 0.2s ease;
    align-items:center;
    justify-content:center;
    outline:none;
    cursor:pointer;
    /* background:#009fe8; */
    background: #00224e;
    border-radius:50%;
}
/*chatbot toggler rotation at 90deg*/

.show-chatbot .chatbot-toggler{
    transform:rotate(90deg);
}
.chatbot-toggler span{
    position:absolute;
}
.show-chatbot .chatbot-toggler span:first-child,.chatbot-toggler span:last-child{
    opacity:0;
}
.show-chatbot .chatbot-toggler span:last-child{
    opacity:1;
}
/*chatbot properies*/
.chatbot{
    position:fixed;
    right:40px;
    bottom:100px;
    opacity:0;
    height:auto;
    width:420px;
    /* max-height:90vh;  */
    transform:scale(0.5);
    pointer-events:none;
    background:#f9f2f2;
    overflow:hidden;
    transform-origin:bottom right;
    border-radius:15x;
    box-shadow:0 0 128px rgba(0,0,0,0.1),
               0 32px 64px -48px rgba(0,0,0,0.5);
    transition: all 0.1s ease;
}
.show-chatbot .chatbot{
    transform:scale(1);
    opacity:1;
    pointer-events:auto;
}
.chatbot header{
    background:#00224e;
    padding:20px 10px;
    position:relative;
    display:flex;
    align-items:center;
    gap:10px;
}
/*chatbot header close button*/
.chatbot header .close-btn2{
    position:absolute;
    right:20px;
    top:50%;
    font-size:1.8rem;
    color:#fff;
    cursor:pointer;
    transform:translateY(-50%);
    display:none;
}
/*logo of the chatbot*/
.chatbot-logo{
   padding-right:10px;
}
.close-btn1
{
    font-size:2.3rem;

}
/*h2 element the chatbot header*/
.chatbot header h2{
    color:#fff;
    font-size:2rem;
    padding-top: 25px;
    padding-left: 11px;
    
}
.chatbot .chatbox{
    /* max-height:50%; */
    max-height:470px;
    overflow-y:auto;
    padding:30px 20px 100px;
}
.chatbot .chat{
    display:flex;
}
.chatbox .incoming span{
    height:32px;
    width:32px;
    color:#fff;
    /* background:#009fe8; */
    align-self:flex-end;
    text-align:center;
    border-radius:8px;
    line-height:32px;
    margin: 0px 10px 7px 0;
}
/*outgoing message box of the chatbot*/
.chatbox .outgoing{
    justify-content:flex-end;
    margin: 20px 0px;

}
.loader1 {
    border: 4px solid rgba(255, 255, 255, 0.3);
    border-top: 4px solid #007bff; /* Primary color */
    border-radius: 50%;
    width: 24px;
    height: 24px;
    animation: spin 1s linear infinite;
    margin: 0 auto;
 }

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
} */ */
.loader {
    border: 16px solid #f3f3f3; /* Light grey */
    border-top: 16px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 120px;
    height: 120px;
    animation: spin 2s linear infinite;
  }
  
  @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg);}
     }
.chatbox .chat p{
    color:#fff;
    font-size:0.95rem;
    white-space:pre-wrap;
    padding:12px;
    max-width:75%;
    background:#00224e;
    border-radius: 10px 10px 0 10px;
}
/*error message of the chatbot*/
.chatbox .chat p.error{
    color:#721c24;
    background:#f8d7da;
}
/*chatbot incoming paragraph design*/
.chatbox .incoming p{
    color:#000;
    background:#deecf3;
    border-radius:10px 10px 10px 0;
    display:block;
}
/*input box of the chatbot*/
.chatbot .chat-input{
    position:absolute;
    bottom:0;
    width:100%;
    display:flex;
    gap: 5px;
    background:#fff;
    padding: 5px 20px;
    border-top:1px solid #ccc;
}
/*chatbot input area*/
.chat-input textarea{
   outline:none;
   border:none;
   width:100%;
   height:55px;
   max-height:200px;
   padding: 16px 15px 16px 0;
   resize:none;
   font-size:0.95rem;  
}
.chat-input button{
  align-self:flex-end;
  height:55px;
  line-height:55px;
  color:#00224e;
  font-size:1.35rem;
  cursor:pointer;
  visibility:hidden;
  border:none;
  background-color: white;
}
.chat-input textarea:valid ~button{
    visibility:visible;
}
.schedule-call-btn {
    display: inline-block;
    margin-top: 10px; /* Space between the message and the button */
    padding: 10px 20px;
    background-color: #00224e; /* Button background color */
    color: white; /* Text color */
    border: 1px solid #00224e; /* Remove border */
    border-radius: 5px; /* Rounded corners */
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.3s ease; /* Smooth hover effect */
}

.schedule-call-btn:hover {
    background-color: #45a049; /* Darker green on hover */
}
.inbutton {
    gap:20px;
    max-width: 400px;
    width:320px;
    display: flex-1;
    justify-content: space-around;
    margin:20px;
    margin-top: 10px;
    padding: 10px 0;
}

.inbutton button {
    background-color: #fff; /* Change to match the chatbot color scheme */
    color: #00224e; /* White text */
    border:1px #00224e; /* Remove borders */
    border-radius: 5px; /* Rounded corners */
    padding: 3px 8px; /* Slightly increased padding */
    cursor: pointer; /* Pointer cursor on hover */
    transition: background-color 0.3s, transform 0.1s; /* Smooth transition */
    flex: 1; /* Equal width */
    margin: 5px;/* Spacing between buttons */
    font-size: 0.90rem; /* Font size */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.inbutton button:hover {
    background-color: #00224e;
    color: white; /* Darker green on hover */
}

.inbutton button:active {
/* Even darker green on click */
    transform: translateY(1px); /* Slight press effect */
}
/*responsive design of the chatbot*/
.form-container {
    position: relative;
    padding: 20px;
    height:450px;
    background-color: #f9f2f2; /* Match with chatbot background */
    border-top: 1px solid #ccc; /* Light border above the form */
    border-radius:none; /* Rounded corners for the form container */
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    max-height:600px;
    overflow-y: auto; /* Subtle shadow for depth */
}

.form-container form {
    display: flex;
    flex-direction: column; /* Stack labels and inputs vertically */
    gap: 10px; /* Space between inputs */
}

.form-container label {
    font-weight: bold; /* Make labels bold */
    color: #333; /* Darker text for better readability */
}

.form-container input {
    padding: 12px; /* Padding for inputs */
    border: 1px solid #ccc; /* Light border */
    border-radius: 5px; /* Rounded corners */
    outline: none; /* Remove outline */
    transition: border-color 0.3s; /* Smooth border color transition */
}

.form-container input:focus {
    border-color: #009fe8; /* Highlight border on focus */
}

.form-container button {
    background-color:#00224e; /* Button background color */
    color: white; /* Button text color */
    border: none; /* Remove border */
    border-radius: 5px; /* Rounded corners */
    padding: 10px; /* Padding for button */
    cursor: pointer; /* Pointer cursor on hover */
    transition: background-color 0.3s; /* Smooth transition */
    font-size: 1rem; /* Font size */
}

.form-container button:hover {
    background-color: #00224e; /* Darker blue on hover */
}

.form-close-btn {
    position: absolute;
    background-color: #f9f2f2;
    top: 10px;
    right: 10px;
    background: none;
    border: none;
    font-size: 20px;
    cursor: pointer;
    color: #333;
}

.form-close-btn:hover {
    color: red;
}
@media(max-width: 490px){
    .chatbot{
        right:0;
        bottom:0;
        width:100%;
        height:100%;
        border-radius:0;
    }
    .chatbot .chatbox{
        max-height:80vh;
        height: auto; /* Ensure dynamic height for small screens */
        overflow-y: auto; /* Allow scrolling */
        padding: 20px;
    }
    .chatbot header .close-btn2{
        display:block;
    }
    .form-container {
        padding: 15px; /* Adjust padding for smaller screens */
    }

    .form-container input,
    .form-container button {
        font-size: 0.9rem; /* Slightly smaller font size */
    }
}
.schedule-meeting-btn {
    background-color:white; /* Primary color */
    color: #00224e ; /* Text color */
    border: none; /* Remove default border */
    border-radius: 5px; /* Rounded corners */
    padding: 10px 15px; /* Top/bottom and left/right padding */
    font-size: 16px; /* Font size */
    cursor: pointer; /* Pointer cursor on hover */
    transition: background-color 0.3s ease; /* Smooth background color change */
    margin-top: 10px; 
    padding-left:20px/* Space above the button */
}

.schedule-meeting-btn:hover {
    background-color: #00224e ; 
    color: white;
    /* Darker shade on hover */
}

.schedule-meeting-btn:focus {
    outline: none; /* Remove outline on focus */
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.5); /* Custom focus outline */
}
.sidebar-container::-webkit-scrollbar {
    width: 5px;
    border-radius: 21px;
    height: 1px;
  }
  
  .sidebar-container::-webkit-scrollbar-track {
    background: #18202f !important;
  }
  
  .sidebar-container::-webkit-scrollbar-thumb {
    border-radius: 20px;
    background: linear-gradient(89.99deg, #3a47ab 0.01%, #4a56db 98.9%) !important;
  }

  .sidebar-container::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(89.99deg, #3a47ab 0.01%, #4a56db 98.9%) !important;
  }


  .dots-container {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
  }
  
  .dot {
    height: 20px;
    width: 20px;
    margin-right: 10px;
    border-radius: 10px;
    background-color: #b3d4fc;
    animation: pulse 1.5s infinite ease-in-out;
  }
  
  .dot:last-child {
    margin-right: 0;
  }
  
  .dot:nth-child(1) {
    animation-delay: -0.3s;
  }
  
  .dot:nth-child(2) {
    animation-delay: -0.1s;
  }
  
  .dot:nth-child(3) {
    animation-delay: 0.1s;
  }
  
  @keyframes pulse {
    0% {
      transform: scale(0.8);
      background-color: #b3d4fc;
      box-shadow: 0 0 0 0 rgba(178, 212, 252, 0.7);
    }
  
    50% {
      transform: scale(1.2);
      background-color: #6793fb;
      box-shadow: 0 0 0 10px rgba(178, 212, 252, 0);
    }
  
    100% {
      transform: scale(0.8);
      background-color: #b3d4fc;
      box-shadow: 0 0 0 0 rgba(178, 212, 252, 0.7);
    }
  }
  #reset-btn {
    position: absolute;
    top: 30px;
    right: 10px;
    padding: 8px 16px;
    font-size: 14px;
    margin-top: 21px;
    color: #fff;
    background-color: #00224e; /* Red button color */
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-weight: 500;
    transition: background-color 0.3s;
}

#reset-btn:hover {
    background-color: #003466; /* Darker blue on hover */
    transform: scale(1.05); /* Slight scale effect for hover */
}

#reset-btn:focus {
    outline: none; /* Remove default focus outline */
    box-shadow: 0 0 0 3px rgba(0, 34, 78, 0.5); /* Custom focus outline with blue shade */
}