
    .widget {
      position: fixed;
      bottom: 0px;
      right: 30px;
      z-index: 999999999 !important;
      width: 450px;
      height: 747px;
    }
    .widget #chat-button {
      position: absolute;
      z-index: 99;
      bottom: 30px;
      right: 0;
      border: none;
      background: linear-gradient(135deg, #040098, #0700FE);
      box-shadow: rgba(0, 77, 255, 0.5) 0px 4px 24px;
      height: 60px;
      width: 60px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 20px;
      cursor: pointer;
      transition: all 0.3s ease-in-out;
      outline: none;
    }
    .widget #chat-button svg {
      width: 30px;
      height: 30px;
      fill: #fff;
    }
    .widget #chat-button svg path {
      fill: #fff;
    }
    .widget #chat-button > * {
      display: none;
    }
    .widget #chat-button .before {
      display: block;
    }
    .widget #chat-button:hover {
      background: #fff;
      transform: scale(1.2);
    }
    .widget #chat-button:hover > * {
      display: none;
    }
    .widget #chat-button:hover .after {
      display: block;
    }
    .widget #chat-button:hover svg {
      fill: rgb(0, 77, 255);
    }
    .widget #chat-button:hover svg path {
      fill: rgb(0, 77, 255);
    }
    .widget #chat-button.active > * {
      display: none;
    }
    .widget #chat-button.active .active {
      display: block;
    }
    .widget #chat-button.active .active svg {
      margin-left: 4px;
      margin-bottom: 1px;
    }
    .widget #chat-button.active:hover > * {
      display: none;
    }
    .widget #chat-button.active:hover .active {
      display: block;
    }
    .widget .chat-screen {
      width: 0;
      box-shadow: rgba(0, 18, 46, 0.16) 0px 8px 36px 0px;
      max-height: calc(100% - 47px);
      display: flex;
      flex-direction: column;
      position: absolute;
      bottom: 10px;
      border-radius: 16px;
      overflow: hidden;
      right: 26px;
      height: 100%;
      transition: all 0.3s ease-in-out;
      opacity: 0;
    }
    .widget .chat-screen.active {
      width: 372px;
      opacity: 1;
    }
    .widget .chat-screen .header {
      display: flex;
      align-items: center;
      color: rgb(255, 255, 255);
      background: linear-gradient(135deg, #040098 0%, #0700FE 100%);
      padding: 24px 28px;
      justify-content: space-between;
    }
    .widget .chat-screen .header .left {
      display: flex;
      align-items: center;
      gap: 10px;
      font-size: 22px;
    }
    .widget .chat-screen .header .left .person {
      width: 60px;
      height: 60px;
      overflow: hidden;
      border-radius: 50%;
    }
    .widget .chat-screen .header .left .greeting img {
      margin-top: -8px;
      width: 25px;
    }
    .widget .chat-screen .header .right {
      cursor: pointer;
    }
    .widget .chat-screen .header .right svg {
      width: 35px;
      height: 35px;
    }
    .widget .chat-screen .header .right svg path {
      stroke: #fff;
    }
    .widget .chat-screen .offline-message {
      background: linear-gradient(135deg, #040098 0%, #0700FE 100%);
      padding: 14px 28px 20px;
      color: #fff;
      position: relative;
    }
    .widget .chat-screen .offline-message .online {
      position: relative;
      padding-left: 20px;
    }
    .widget .chat-screen .offline-message .online:before {
      content: "";
      display: block;
      width: 8px;
      height: 8px;
      position: absolute;
      top: calc(50% - 4px);
      background: rgb(88, 183, 67);
      border-radius: 50%;
      left: 0px;
    }
    .widget .chat-screen .offline-message:after {
      content: "";
      position: absolute;
      width: calc(100% + 10px);
      bottom: -8px;
      left: -5px;
      border-image-source: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNzIgMTUiPgogIDxwYXRoIGQ9Ik0zNDkuOCAxLjRDMzM0LjUuNCAzMTguNSAwIDMwMiAwaC0yLjVjLTkuMSAwLTE4LjQuMS0yNy44LjQtMzQuNSAxLTY4LjMgMy0xMDIuMyA0LjctMTQgLjUtMjggMS4yLTQxLjUgMS42Qzg0IDcuNyA0MS42IDUuMyAwIDIuMnY4LjRjNDEuNiAzIDg0IDUuMyAxMjguMiA0LjEgMTMuNS0uNCAyNy41LTEuMSA0MS41LTEuNiAzMy45LTEuNyA2Ny44LTMuNiAxMDIuMy00LjcgOS40LS4zIDE4LjctLjQgMjcuOC0uNGgyLjVjMTYuNSAwIDMyLjQuNCA0Ny44IDEuNCA4LjQuMyAxNS42LjcgMjIgMS4yVjIuMmMtNi41LS41LTEzLjgtLjUtMjIuMy0uOHoiIGZpbGw9IiNmZmYiLz4KPC9zdmc+Cg==);
      border-image-slice: 0 0 100%;
      border-image-width: 0 0 15px;
      border-image-repeat: stretch;
      border-width: 0px 0px 15px;
      border-bottom-style: solid;
      border-color: initial;
      border-top-style: initial;
      border-left-style: initial;
      border-right-style: initial;
    }
    .widget .chat-screen .conversation {
      padding: 20px 28px 0;
      width: 100%;
      height: 457px;
      overflow: hidden auto;
      background: rgb(255, 255, 255);
      transition: all 0.3s ease 0s;
      max-height: 457px;
      min-height: 160px;
      flex: 0 1 auto;
    }
    .widget .chat-screen .conversation .message-recieved {
      color: rgb(6, 19, 43);
      background: rgb(240, 242, 247);
      padding: 10px 16px;
      border-radius: 20px;
      margin: 2px 0px;
      font-size: 15px;
      line-height: 20px;
      overflow-wrap: break-word;
      display: inline-block;
      max-width: 85%;
      position: relative;
      transition: margin 0.28s ease-in-out 0s;
      margin: 10px 0;
    }
    .widget .chat-screen .conversation .message-recieved a {
      color: rgb(6, 19, 43);
      text-decoration: underline;
    }
    .widget .chat-screen .conversation .message-sent {
      background: linear-gradient(135deg, #040098, #0700FE);
      color: rgb(255, 255, 255);
      max-width: 85%;
      font-size: 15px;
      line-height: 20px;
      border-radius: 20px;
      padding: 10px 16px;
      font-size: 15px;
      line-height: 20px;
      margin: 10px 0 10px auto;
      overflow-wrap: break-word;
      transition: margin 0.28s ease-in-out 0s;
    }
    .widget .chat-screen .conversation .message-sent a {
      color: #fff;
      text-decoration: underline;
    }
    .widget .chat-screen .conversation .message-sent .reply {
      display: block;
      border-bottom: 1px solid #ccc;
      color: #ccc;
      padding: 5px 10px;
      background-color: rgba(255, 255, 255, 0.35);
      border-radius: 4px 4px 0 0;
      margin-bottom: 10px;
    }
    .widget .chat-screen .conversation .message-sent .reply * {
      font-style: italic;
    }
    .widget .chat-screen .footer {
      padding: 0px 28px 20px;
    }
    .widget .chat-screen .footer .file-attachment {
      border-radius: 8px 8px 0 0;
      background-color: rgb(192, 209, 252);
      color: #040098;
      padding: 10px 28px;
      position: relative;
      display: none;
    }
    .widget .chat-screen .footer .file-attachment.active {
      display: block;
    }
    .widget .chat-screen .footer .file-attachment p {
      margin: 0;
      display: flex;
      align-items: center;
      justify-content: start;
      max-width: 80%;
      overflow-wrap: anywhere;
      gap: 10px;
      line-height: 1.2em;
    }
    .widget .chat-screen .footer .file-attachment .delete {
      background-color: rgb(233, 0, 0);
      width: 30px;
      height: 30px;
      position: absolute;
      right: 20px;
      top: 0;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 0 0 4px 4px;
      font-size: 15px;
      transition: all 0.3s ease-in-out;
      cursor: pointer;
    }
    .widget .chat-screen .footer .file-attachment .delete:hover {
      width: 45px;
    }
    .widget .chat-screen .footer .inputs textarea {
      border: none;
      border-top: 1px solid #ccc;
      outline: 0px;
      resize: none;
      width: 100%;
      padding: 20px 0px 14px;
    }
    .widget .chat-screen .footer .inputs .bottom input {
      width: 0;
      height: 0;
      visibility: hidden;
    }
    .widget .chat-screen .footer .inputs .bottom svg {
      cursor: pointer;
      width: 25px;
      height: 25px;
    }
    .widget .chat-screen .footer .inputs .bottom svg path {
      fill: #949494;
    }
    .messages__item--typing {
        will-change: transform;
        width: auto;
        border-top-right-radius: 20px;
        border-top-left-radius: 20px;
        border-bottom-right-radius: 20px;
        padding: 15px 20px;
        display: table;
        margin-right: auto;
        position: relative;
        animation: 2s bulge infinite ease-out;
    }
    .messages__item--typing::before,
    .messages__item--typing::after {
          content: '';
          position: absolute;
          bottom: -2px;
          left: -2px;
          height: 10px;
          width: 10px;
          border-radius: 50%;
    }
    .messages__item--typing::after {
          height: 10px;
          width: 10px;
          left: -10px;
          bottom: -10px;
    }
    span.messages__dot {
        height: 8px;
        width: 8px;
        float: left;
        margin: 0 1px;
        background-color: #9E9EA1;
        display: block;
        border-radius: 50%;
        opacity: 0.4;
        animation: 1s blink infinite;
    }
    .chat-menu {
        position: absolute;
        background-color: #ffffff;
        box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2);
        z-index: 1;
        right: 0;
        margin-top: 5px;
        border-radius: 4px;
        border: 1px solid #ddd;
        min-width: 240px;
    }
    .chat-menu ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }
    .chat-menu ul li {
        padding: 10px 20px;
        cursor: pointer;
        color: #333;
        white-space: nowrap;
    }
    .chat-menu ul li:hover {
        background-color: #f5f5f5;
    }
    .chat-menu ul li:not(:last-child) {
        border-bottom: 1px solid #ddd;
    }
    .right {
        position: relative;
    }
    @media (max-width: 430px) {
      .widget {
        right: 10px;
      }
      .widget .chat-screen.active {
        width: 320px;
      }
    }
    @media (max-height: 745px) {
      .widget {
        height: 600px;
      }
    }
    