
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

:root {
--margin: 1rem;
--box-max-width: 375px;
--theme-color: #39c0ed;
}

.bot-wrapper {
display: flex;
justify-content: right;
align-items: end;
width: max-content;
height: max-content;
position: fixed;
bottom: 0;
right: 0;
padding: 0 1rem;
z-index: 10000;
}

.bot-content {
display: flex;
align-items: end;
flex-direction: column;
gap: 1rem;
}

.bot-start-btn {
background: var(--theme-color);
color: #fff;
outline: 0;
border: none;
padding: 0.8rem;
width: 50px;
height: 50px;
border-radius: 100%;
margin-right: var(--margin);
margin-bottom: var(--margin);
}

#botBox {
margin-right: var(--margin);
width: 100%;
max-width: var(--box-max-width);
display: none;
margin: 0;
}

#botBox.show__chat {
display: block;
}

#botBox .form-outline .form-control ~ .form-notch div {
pointer-events: none;
border: 1px solid;
border-color: #eee;
box-sizing: border-box;
background: transparent;
}

#botBox .form-outline .form-control ~ .form-notch .form-notch-leading {
left: 0;
top: 0;
height: 100%;
border-right: none;
border-radius: 0.65rem 0 0 0.65rem;
}

#botBox .form-outline .form-control ~ .form-notch .form-notch-middle {
flex: 0 0 auto;
max-width: calc(100% - 1rem);
height: 100%;
border-right: none;
border-left: none;
}

#botBox .form-outline .form-control ~ .form-notch .form-notch-trailing {
flex-grow: 1;
height: 100%;
border-left: none;
border-radius: 0 0.65rem 0.65rem 0;
}

#botBox .form-outline .form-control:focus ~ .form-notch .form-notch-leading {
border-top: 0.125rem solid #39c0ed;
border-bottom: 0.125rem solid #39c0ed;
border-left: 0.125rem solid #39c0ed;
}

#botBox .form-outline .form-control:focus ~ .form-notch .form-notch-leading,
#botBox .form-outline .form-control.active ~ .form-notch .form-notch-leading {
border-right: none;
transition: all 0.2s linear;
}

#botBox .form-outline .form-control:focus ~ .form-notch .form-notch-middle {
border-bottom: 0.125rem solid;
border-color: #39c0ed;
}

#botBox .form-outline .form-control:focus ~ .form-notch .form-notch-middle,
#botBox .form-outline .form-control.active ~ .form-notch .form-notch-middle {
border-top: none;
border-right: none;
border-left: none;
transition: all 0.2s linear;
}

#botBox .form-outline .form-control:focus ~ .form-notch .form-notch-trailing {
border-top: 0.125rem solid #39c0ed;
border-bottom: 0.125rem solid #39c0ed;
border-right: 0.125rem solid #39c0ed;
}

#botBox .form-outline .form-control:focus ~ .form-notch .form-notch-trailing,
#botBox .form-outline .form-control.active ~ .form-notch .form-notch-trailing {
border-left: none;
transition: all 0.2s linear;
}

#botBox .form-outline .form-control:focus ~ .form-label {
color: #39c0ed;
}

#botBox .form-outline .form-control ~ .form-label {
color: #bfbfbf;
}

#botBox .fa,
#botBox .fa-brands,
#botBox .fa-duotone,
#botBox .fa-light,
#botBox .fa-regular,
#botBox .fa-solid,
#botBox .fa-thin,
#botBox .fab,
#botBox .fad,
#botBox .fal,
#botBox .far,
#botBox .fas,
#botBox .fat {
cursor: pointer;
}

#botBox .card-body {
padding: 0 !important;
}

#botBox .bot-box-conversation {
max-height: 350px;
overflow-y: auto;
padding: 0.5rem 0.5rem 0 0.5rem;
}

#botBox .writing-area {
padding: 1.5rem;
}