@charset "UTF-8";
:root {
  --green-100:rgba(177, 212, 212, 1);
  --fontfamilyPfamily: ZillaSlab_regular;
  --fontfamilySfamily:HostGrotesk_regular;
}

@font-face {
  font-family: HostGrotesk_regular;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Regular.ttf");
}
@font-face {
  font-family: HostGrotesk_light;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Light.ttf");
}
@font-face {
  font-family: HostGrotesk_italic;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Italic.ttf");
}
@font-face {
  font-family: ZillaSlab_regular;
  src: url("../../../../fonts/zilla_slab/font-files/ZillaSlab-Regular.ttf");
}
:root {
  --green-100:rgba(177, 212, 212, 1);
  --fontfamilyPfamily: ZillaSlab_regular;
  --fontfamilySfamily:HostGrotesk_regular;
}

@font-face {
  font-family: HostGrotesk_regular;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Regular.ttf");
}
@font-face {
  font-family: HostGrotesk_light;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Light.ttf");
}
@font-face {
  font-family: HostGrotesk_italic;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Italic.ttf");
}
@font-face {
  font-family: ZillaSlab_regular;
  src: url("../../../../fonts/zilla_slab/font-files/ZillaSlab-Regular.ttf");
}
:root {
  --green-100:rgba(177, 212, 212, 1);
  --fontfamilyPfamily: ZillaSlab_regular;
  --fontfamilySfamily:HostGrotesk_regular;
}

@font-face {
  font-family: HostGrotesk_regular;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Regular.ttf");
}
@font-face {
  font-family: HostGrotesk_light;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Light.ttf");
}
@font-face {
  font-family: HostGrotesk_italic;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Italic.ttf");
}
@font-face {
  font-family: ZillaSlab_regular;
  src: url("../../../../fonts/zilla_slab/font-files/ZillaSlab-Regular.ttf");
}
:root {
  --green-100:rgba(177, 212, 212, 1);
  --fontfamilyPfamily: ZillaSlab_regular;
  --fontfamilySfamily:HostGrotesk_regular;
}

@font-face {
  font-family: HostGrotesk_regular;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Regular.ttf");
}
@font-face {
  font-family: HostGrotesk_light;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Light.ttf");
}
@font-face {
  font-family: HostGrotesk_italic;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Italic.ttf");
}
@font-face {
  font-family: ZillaSlab_regular;
  src: url("../../../../fonts/zilla_slab/font-files/ZillaSlab-Regular.ttf");
}
:root {
  --green-100:rgba(177, 212, 212, 1);
  --fontfamilyPfamily: ZillaSlab_regular;
  --fontfamilySfamily:HostGrotesk_regular;
}

@font-face {
  font-family: HostGrotesk_regular;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Regular.ttf");
}
@font-face {
  font-family: HostGrotesk_light;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Light.ttf");
}
@font-face {
  font-family: HostGrotesk_italic;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Italic.ttf");
}
@font-face {
  font-family: ZillaSlab_regular;
  src: url("../../../../fonts/zilla_slab/font-files/ZillaSlab-Regular.ttf");
}
:root {
  --green-100:rgba(177, 212, 212, 1);
  --fontfamilyPfamily: ZillaSlab_regular;
  --fontfamilySfamily:HostGrotesk_regular;
}

@font-face {
  font-family: HostGrotesk_regular;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Regular.ttf");
}
@font-face {
  font-family: HostGrotesk_light;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Light.ttf");
}
@font-face {
  font-family: HostGrotesk_italic;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Italic.ttf");
}
@font-face {
  font-family: ZillaSlab_regular;
  src: url("../../../../fonts/zilla_slab/font-files/ZillaSlab-Regular.ttf");
}
:root {
  --green-100:rgba(177, 212, 212, 1);
  --fontfamilyPfamily: ZillaSlab_regular;
  --fontfamilySfamily:HostGrotesk_regular;
}

@font-face {
  font-family: HostGrotesk_regular;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Regular.ttf");
}
@font-face {
  font-family: HostGrotesk_light;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Light.ttf");
}
@font-face {
  font-family: HostGrotesk_italic;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Italic.ttf");
}
@font-face {
  font-family: ZillaSlab_regular;
  src: url("../../../../fonts/zilla_slab/font-files/ZillaSlab-Regular.ttf");
}
:root {
  --green-100:rgba(177, 212, 212, 1);
  --fontfamilyPfamily: ZillaSlab_regular;
  --fontfamilySfamily:HostGrotesk_regular;
}

@font-face {
  font-family: HostGrotesk_regular;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Regular.ttf");
}
@font-face {
  font-family: HostGrotesk_light;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Light.ttf");
}
@font-face {
  font-family: HostGrotesk_italic;
  src: url("../../../../fonts/host_grotesk/font-files/HostGrotesk-Italic.ttf");
}
@font-face {
  font-family: ZillaSlab_regular;
  src: url("../../../../fonts/zilla_slab/font-files/ZillaSlab-Regular.ttf");
}
.body-container {
  height: 100%;
  width: 100%;
  background-color: #015252;
  overflow: hidden !important;
}

.guest-msg .row-content {
  padding: 0;
  justify-content: end;
}

#kagoo-app {
  height: 100vh;
  overflow-y: hidden;
}

.chat-container {
  height: 78.1371281vh;
  padding-bottom: 24px;
  margin-top: 66px;
  max-width: 521px;
  margin-left: auto;
  margin-right: auto;
}

#laoder_msge {
  width: 1rem;
}

.chat-screen {
  background-color: #FFFFFF;
  height: 100%;
  border-radius: 0px 0px 20px 20px;
  padding: 0px 4px 12px 4px;
  width: 100%;
  box-shadow: 0px 20px 40px 0px rgba(24, 112, 176, 0.08);
  overflow-y: auto;
  overflow-x: hidden;
  position: relative;
  display: flex;
  flex-direction: column;
  position: relative;
}

#chat_body:last-child {
  padding-bottom: 0;
}

#chat_body::-webkit-scrollbar {
  width: 0.5rem; /* Largeur de la barre de scroll */
  background: transparent;
}

#chat_body::-webkit-scrollbar-thumb {
  background-color: #DEDEE2; /* Couleur du curseur */
  border-radius: 0.25rem;
}

#chat_body::-webkit-scrollbar-track {
  background-color: #FBFBFD; /* Couleur de l'arrière-plan du tube */
  border-radius: 0.25rem;
}

#chat_body::-webkit-scrollbar-thumb:hover {
  background-color: #C9C9CE;
}

#chat_body {
  overflow-y: auto;
  max-height: 100%;
  flex: 1 1 auto; /* prend tout l'espace restant */
}

.screen-chat-footer {
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: start;
  gap: 12px;
  padding: 8px;
  width: 100%;
  max-height: 121px;
}

.chat-message {
  padding: 1.5vh 0.75rem;
  border-radius: 0.25rem;
  box-shadow: 0px 4px 4px 0px rgba(120, 120, 120, 0.0588235294);
  max-width: 26.75rem;
  height: -moz-fit-content;
  height: fit-content;
}

#nextBtn:hover {
  color: #FFFFFF;
}

.chat-message p, .chat-message .content-message-guest {
  font-family: "HostGrotesk_regular";
  font-size: 14px;
  line-height: 120%;
  font-weight: 400 !important;
  font-style: normal !important;
  letter-spacing: 0;
  vertical-align: middle;
  margin: 0px !important;
}

.goo-message {
  background-color: #026969;
  border-radius: 0.32rem 1rem 1rem 1rem;
  color: #FFFFFF;
}
.goo-message p {
  color: #FFFFFF;
}

.user-message {
  background-color: #F4F4F7;
  border-radius: 1rem 0.32rem 1rem 1rem;
}
.user-message p {
  color: #434348;
}
.user-message p a {
  text-decoration: none;
  color: #027373;
}
.user-message p a:hover {
  text-decoration: none;
  color: #358F8F;
}

.row-message {
  width: 100%;
  display: flex;
}

.chat-profil {
  display: flex;
  justify-content: center;
}

#icon_check {
  color: black;
}

.btn-chat {
  padding: 0.75rem 3rem;
  border-radius: 20px;
  color: #FFFFFF;
  height: 2.5rem;
  border: 0px;
  border-color: none;
}

.btn-chat:disabled {
  background-color: #DEDEE2;
  color: #A2A3A8;
  outline: none;
  cursor: not-allowed;
}

.btn-chat:disabled:hover {
  background-color: #DEDEE2;
}

.btn-chat:disabled:focus {
  background-color: #DEDEE2;
}

.btn-chat:focus, .btn-chat:focus-visible, .btn-chat:focus-within {
  background-color: #026969;
  outline: none;
}

.btn-chat:hover {
  background-color: #358F8F;
  outline: none;
}

@media screen and (max-width: 768px) {
  body .body-container {
    background-color: #FFFFFF;
  }
  body .body-container .chat-container {
    margin-top: 0px;
    max-width: 100%;
    position: relative;
    margin-left: auto;
    padding-bottom: 0;
    height: 98vh;
    overflow-y: hidden;
    margin-right: auto;
  }
  body .body-container .chat-container .chat-body {
    position: relative;
    top: 0;
    left: 0;
  }
  body .body-container .chat-container .screen-chat-footer {
    position: absolute;
    bottom: 0;
    left: 0;
  }
  body .body-container .chat-container .form-chat {
    min-height: -moz-fit-content;
    min-height: fit-content;
  }
  body .body-container .content-wrapper {
    width: 100%;
    margin: 0;
  }
}
.message-goo {
  display: flex;
}

.btn-container button {
  width: -moz-fit-content;
  width: fit-content;
}

.btn-container {
  padding-top: 1rem;
  padding-bottom: 1.5rem;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  height: -moz-fit-content;
  height: fit-content;
  border-top: 1px solid #B4E2E2;
}

.form-chat {
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: start;
  gap: 20px;
  margin: 0;
  padding: 16px 12px;
  width: 100%;
  min-height: 105px;
  max-height: 260px;
  border-radius: 20px;
  border: 1px solid #EDEDF2;
  background-color: #fff;
  box-sizing: border-box;
}

.chat-input-wrapper {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  height: 100%;
}

.goo-input {
  font-family: "HostGrotesk_regular";
  font-size: 16px;
  line-height: 136%;
  font-weight: 400 !important;
  font-style: normal !important;
  letter-spacing: 0;
  vertical-align: middle;
  margin: 0px !important;
  flex: 1; /* prend tout l'espace disponible */
  min-height: 24px; /* hauteur minimale d'une ligne */
  max-height: 180px; /* évite qu'il ne prenne tout l'espace */
  padding: 0;
  border: none;
  resize: none; /* pas de redimensionnement manuel */
  background: transparent;
  overflow-y: auto; /* scroll seulement si nécessaire */
}
.goo-input:focus, .goo-input:focus-within, .goo-input:focus-visible {
  outline: none;
  border: none;
  box-shadow: none;
}
.goo-input::-webkit-scrollbar {
  width: 0.25rem !important;
}
.goo-input::-webkit-scrollbar-track {
  background: #FBFBFD;
  border-radius: 0.25rem;
}
.goo-input::-webkit-scrollbar-thumb {
  background: #DEDEE2;
  border-radius: 0.25rem;
}
.goo-input::-webkit-scrollbar-thumb:hover {
  background: rgb(201, 201, 206);
}

#body_form .px-4pr {
  padding: 1rem 2rem;
}

.chat-profil {
  height: 1.25rem;
  width: 1.25rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #FFFFFF;
  box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.2196078431);
  border-radius: 50%;
}

.px-4pr {
  padding-left: 4%;
  padding-right: 4%;
  width: 100%;
}

.chat-body {
  padding-left: 8px;
  padding-right: 8px;
  padding-top: 12px;
  max-height: calc(100% - 121px);
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: start;
  gap: 16px;
  overflow-y: auto;
  overflow-x: hidden;
}

/* Pour cacher les flèches sur les champs input de type nombre */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.chat-bbody::-webkit-scrollbar {
  width: 0.75rem; /* Width of the scrollbar */
}

.chat-bbody::-webkit-scrollbar-track {
  background: #FBFBFD; /* Color of the track */
  border-radius: 0.25rem; /* Rounded corners */
}

.chat-bbody::-webkit-scrollbar-thumb {
  background: #DEDEE2; /* Color of the scrollbar thumb */
  border-radius: 0.25rem; /* Rounded corners */
}

.chat-bbody::-webkit-scrollbar-thumb:hover {
  background: #C9C9CE; /* Color of the scrollbar thumb on hover */
}

@keyframes slideUp {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(-30%);
    opacity: 1;
  }
}
.slide-in {
  animation: slideUp 0.6s ease-out;
}

@keyframes popupEffect {
  0% {
    transform: scale(0.8);
    opacity: 0;
    padding: 20px; /* Augmente temporairement */
  }
  100% {
    transform: scale(1);
    opacity: 1;
    padding: 1.5vh 0.9375vw !important; /* Revient à la normale */
  }
}
.type-text-input {
  width: 58.97%;
}

.col-goo-message {
  max-width: 94.8453608%;
}

.row-content-loader {
  width: -moz-fit-content;
  width: fit-content;
}

.row-content-loader, .row-content {
  display: flex;
  justify-content: start;
  gap: 8px;
}

.color-gray-700 {
  color: #C9C9CE;
}

.guest-msg {
  width: 100%;
  justify-content: end;
  gap: 0.875rem;
}

.row-content-guest {
  display: flex;
  justify-content: end;
  gap: 0.875rem;
  padding-left: 3.75rem;
}

.chat-profil.user_ {
  overflow: hidden;
  padding: 3px 2px 0px 2px;
  box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.2196078431);
  border-radius: 50%;
  background-color: #DAFAFB;
}

.px-4pr .label-field {
  font-weight: 400;
  font-size: 0.875rem;
}

/* Animation de pop à l'affichage - Version corrigée */
/* Animation de pop à l'affichage - Version parfaitement adaptée */
.chat-message.user-message, .goo-message {
  transform-origin: left center;
  animation: messagePopIn 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
  overflow: hidden;
  /* Conserve le padding original */
  box-shadow: 0px 4px 4px 0px rgba(120, 120, 120, 0.0588235294);
  width: -moz-fit-content;
  width: fit-content;
}

@keyframes messagePopIn {
  0% {
    transform: scale(0.95);
    opacity: 0;
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0.75rem; /* Maintient le padding horizontal */
    padding-right: 0.75rem;
  }
  50% {
    transform: scale(1.05);
    opacity: 1;
    max-height: 500px;
    padding-top: 1.5vh; /* Rétablit le padding vertical */
    padding-bottom: 1.5vh;
  }
  100% {
    transform: scale(1);
    opacity: 1;
    max-height: none;
    /* Rétablit TOUS les paddings exactement comme dans la version originale */
    padding: 1.5vh 0.75rem;
  }
}
/* Le reste de vos styles d'animation... */
.chat-message.user-message, .goo-message p,
.chat-message.user-message, .goo-message .content-message-guest {
  animation: contentFadeIn 0.4s ease-out both;
  animation-delay: 0.2s;
}

.content-message-guest ul {
  list-style: none;
  padding-left: 0;
}

.user-message, .goo-message .font-italic.color-orange-500 {
  animation: itemFadeIn 0.3s ease-out both;
  animation-delay: calc(0.3s + var(--item-index) * 0.1s);
  display: inline-block;
}

@keyframes contentFadeIn {
  from {
    opacity: 0;
    transform: translateY(5px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes itemFadeIn {
  from {
    opacity: 0;
    transform: translateX(-10px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
/* Version réduite pour les préférences d'accessibilité */
@media (prefers-reduced-motion: reduce) {
  .chat-message.user-message, .goo-message,
  .chat-message.user-message, .goo-message p,
  .chat-message.user-message, .goo-message .content-message-guest,
  .chat-message.user-message, .goo-message .font-italic.color-orange-500 {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    max-height: none !important;
  }
}
/* Styles pour les listes à puces dans les messages */
.chat-message ul.chat-list {
  margin: 8px 0;
  padding-left: 20px;
  list-style-type: none;
}

.chat-message ul.chat-list li {
  margin: 6px 0;
  padding-left: 15px;
  position: relative;
  line-height: 1.5;
  color: #FFFFFF;
}

.text-orange-500 {
  color: #f25f29 !important;
}

.bg-orange-500 {
  background-color: #f25f29 !important;
}

.chat-message ul.chat-list li:before {
  content: "•";
  position: absolute;
  left: 0;
  color: #027373;
  font-weight: bold;
  font-size: 1.2em;
}

/* Variante avec tiret */
.chat-message ul.chat-list.dash-style li:before {
  content: "–";
}

/* Espacement entre les paragraphes et les listes */
.chat-message p + ul.chat-list,
.chat-message ul.chat-list + p {
  margin-top: 10px;
}

/* Styles pour les listes de modules */
.chat-list {
  margin: 10px 0;
  padding-left: 20px;
  list-style-type: none;
}

.chat-list li {
  position: relative;
  padding-left: 15px;
  margin-bottom: 8px;
  line-height: 1.5;
}

.chat-list li:before {
  content: "•";
  position: absolute;
  left: 0;
  font-weight: bold;
}

/* Liste spéciale pour les modules avec couleur orange */
.chat-list.module-list li {
  color: #f25f29; /* orange-500 */
  font-weight: 500;
}

.chat-list.module-list li:before {
  color: #f25f29; /* orange-500 */
}

/* Classe utilitaire pour texte orange */
.text-orange-500 {
  color: #f25f29 !important;
}

/* Container de fin de conversation */
.end-conversation-container {
  padding: 20px 15px;
  background-color: #f9fafb;
  border-radius: 8px;
  margin: 10px 0;
}

.end-conversation-container p {
  margin-bottom: 15px;
  color: #374151;
  font-weight: 500;
}

/* Styles pour les boutons de fin */
.end-conversation-container .btn-chat {
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 600;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
  display: inline-block;
  min-width: 180px;
}

.end-conversation-container .btn-chat:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.end-conversation-container .bg-green-500 {
  background-color: #10b981;
  color: white;
}

.end-conversation-container .bg-green-500:hover {
  background-color: #059669;
}

.end-conversation-container .bg-gray-500 {
  background-color: #6b7280;
  color: white;
}

.end-conversation-container .bg-gray-500:hover {
  background-color: #4b5563;
}

/* Gap entre les boutons */
.gap-3 {
  gap: 15px;
}

/* Responsive pour mobile */
@media (max-width: 576px) {
  .end-conversation-container .btn-chat {
    min-width: 100%;
    margin-bottom: 10px;
  }
  .end-conversation-container .d-flex {
    flex-direction: column;
  }
}
.btn-primary-medium-orange-500 {
  /*  
      example de valeur de color lors de son utilisation :
      $colors: (
          default: #007bff,
          hover: #0056b3,
          focus: #80bdff,
          disabled: #c0c0c0
      );
  */
  gap: 8px;
  display: flex;
  align-items: center;
  cursor: pointer;
  padding: 12px 16px;
  min-width: -moz-fit-content;
  min-width: fit-content;
  height: 2.25rem;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "HostGrotesk_regular";
  font-size: 14px;
  line-height: 100%;
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: 0;
  vertical-align: middle;
  margin: 0px !important;
  border-radius: 5px;
  text-decoration: none;
  background-color: #f25f29;
  border: none;
  color: #FFFFFF;
  text-decoration: none;
}
.btn-primary-medium-orange-500:hover {
  color: #FFFFFF;
  background-color: #F57F54;
  text-decoration: none;
}
.btn-primary-medium-orange-500:focus, .btn-primary-medium-orange-500:focus-within {
  background-color: #DC5625;
  color: #FFFFFF;
  box-shadow: none !important;
  outline: none;
}
.btn-primary-medium-orange-500:disabled, .btn-primary-medium-orange-500:disabled:hover {
  background-color: #F4F4F7;
  border: 1.5px solid #F4F4F7;
  color: rgb(201, 201, 206) !important;
  cursor: not-allowed;
}

.btn-medium-green-500 {
  /*  
      example de valeur de color lors de son utilisation :
      $colors: (
          default: #007bff,
          hover: #0056b3,
          focus: #80bdff,
          disabled: #c0c0c0
      );
  */
  gap: 8px;
  display: flex;
  align-items: center;
  cursor: pointer;
  padding: 12px 16px;
  min-width: -moz-fit-content;
  min-width: fit-content;
  height: 2.25rem;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "HostGrotesk_regular";
  font-size: 14px;
  line-height: 100%;
  font-weight: 500 !important;
  font-style: normal !important;
  letter-spacing: 0;
  vertical-align: middle;
  margin: 0px !important;
  border-radius: 5px;
  text-decoration: none;
  background-color: #027373;
  border: none;
  color: #FFFFFF;
  text-decoration: none;
}
.btn-medium-green-500:hover {
  color: #FFFFFF;
  background-color: #358F8F;
  text-decoration: none;
}
.btn-medium-green-500:focus, .btn-medium-green-500:focus-within {
  background-color: #026969;
  color: #FFFFFF;
  box-shadow: none !important;
  outline: none;
}
.btn-medium-green-500:disabled, .btn-medium-green-500:disabled:hover {
  background-color: #F4F4F7;
  border: 1.5px solid #F4F4F7;
  color: rgb(201, 201, 206) !important;
  cursor: not-allowed;
}/*# sourceMappingURL=chat.css.map */