/* helvetica-neue  */
@font-face {
  font-family: "HelveticaNeue";
  src: url("../font/helvetica-neue/HelveticaNeueThin.otf") format("opentype");
  font-weight: 100;
  font-style: normal;
}

@font-face {
  font-family: "HelveticaNeue";
  src: url("../font/helvetica-neue/HelveticaNeueUltraLight.otf")
    format("opentype");
  font-weight: 200;
  font-style: normal;
}

@font-face {
  font-family: "HelveticaNeue";
  src: url("../font/helvetica-neue/HelveticaNeueLight.otf") format("opentype");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: "HelveticaNeue";
  src: url("../font/helvetica-neue/HelveticaNeueRoman.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "HelveticaNeue";
  src: url("../font/helvetica-neue/HelveticaNeueMedium.otf") format("opentype");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: "HelveticaNeue";
  src: url("../font/helvetica-neue/HelveticaNeueBold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: "HelveticaNeue";
  src: url("../font/helvetica-neue/HelveticaNeueHeavy.otf") format("opentype");
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: "HelveticaNeue";
  src: url("../font/helvetica-neue/HelveticaNeueBlack.otf") format("opentype");
  font-weight: 900;
  font-style: normal;
}

/* HELVETICA */
@font-face {
  font-family: "Helvetica";
  src: url("../font/helvetica/Helvetica.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Helvetica";
  src: url("../font/helvetica/Helvetica-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}

/* INTER */
@font-face {
  font-family: 'Inter';
  src: url('../font/inter/Inter_18pt-Thin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: url('../font/inter/Inter_18pt-ExtraLight.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: url('../font/inter/Inter_18pt-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: url('../font/inter/Inter_18pt-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: url('../font/inter/Inter_18pt-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: url('../font/inter/Inter_18pt-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: url('../font/inter/Inter_18pt-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: url('../font/inter/Inter_18pt-ExtraBold.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: url('../font/inter/Inter_18pt-Black.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
}


body {
  background-color: #fafafa;
  font-family: "HelveticaNeue";
  letter-spacing: 0.1px;
  margin: 0;
  color: #111928;
}

/* Keep only JavaScript-dependent and complex component classes */

/* JavaScript-dependent dot state for navigation */
.dot-container.checked .dot {
  background-color: transparent;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 13 13' fill='none'><path d='M11.9163 6.00151V6.49984C11.9157 7.66791 11.5374 8.80446 10.8381 9.74C10.1387 10.6755 9.15562 11.3599 8.03549 11.6911C6.91537 12.0223 5.71819 11.9825 4.62251 11.5777C3.52684 11.1729 2.59136 10.4248 1.95561 9.44492C1.31986 8.46503 1.01789 7.30588 1.09475 6.14035C1.1716 4.97482 1.62316 3.86536 2.38208 2.97743C3.14099 2.0895 4.1666 1.47068 5.30594 1.21326C6.44529 0.955838 7.63732 1.07361 8.70426 1.54901' stroke='%2300A877' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'/><path d='M11.9167 2.16699L6.5 7.58908L4.875 5.96408' stroke='%2300A877' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
}
/* Message styling - keep for JavaScript functionality and testing */
.bot-msg {
  background: #edf6ff;
  padding: 10px 14px;
  border-radius: 8px;
  overflow: hidden;
  color: #203e7e;
  line-height: 150%;
  margin-top: 10px;
  max-width: 450px;
  width: fit-content;
  margin-right: 20px;
}

.error-msg {
  line-height: 150%;
  margin-top: 10px;
  max-width: 450px;
  width: fit-content;
}

.success-msg {
  background: #def7ec;
  padding: 10px 14px;
  border-radius: 8px;
  overflow: hidden;
  color: #00a877;
  line-height: 150%;
  margin-top: 10px;
  max-width: 450px;
  width: fit-content;
}

.client-msg {
  background: #f8f8f8;
  padding: 10px 14px;
  border-radius: 8px;
  overflow: hidden;
  color: #282828;
  line-height: 150%;
  margin-top: 10px;
  max-width: calc(466px - 16px);
  width: fit-content;
  margin-left: 20px;
}
/* Editor specific styling */
.ck-editor__editable {
  min-height: 180px;
}



/* MEDIA QUERY */
/*== 1367px ==*/
@media (min-width: 1367px) {
  .container {
    max-width: 1399px !important;
    width: 100%;
  }
}

/*== 1280px ==*/
@media (max-width: 1280px) {
  .your-name {
    margin: 28px 0 28px;
  }
  .canvas-box {
    max-height: 344px;
    padding: 16px;
  }
}

/*== 1441px ==*/
@media (max-width: 1441px) {
  h1,
  .h1 {
    font-size: 30px;
  }

  p,
  .p {
    font-size: 13px;
    line-height: 18px;
  }
}

/*== 1024px ==*/
@media (max-width: 1024px) {
  h1,
  .h1 {
    font-size: 28px;
  }
  p,
  .p {
    font-size: 13px;
    line-height: 18px;
  }
}

/*== 768px ==*/
@media (max-width: 768px) {
  h1,
  .h1 {
    font-size: 25px;
  }

}

/*== 500px ==*/
@media (max-width: 500px) {
  h1,
  .h1 {
    font-size: 22px;
  }

  .your-name {
    margin: 22px 0 22px;
  }
}

/* Streaming animations */
@keyframes bounce {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}

.animate-bounce {
  animation: bounce 1.4s infinite ease-in-out both;
}

.streaming-indicator {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.streaming-indicator:not([style*="display: none"]) {
  opacity: 1;
}

/* Send button positioning */
.send-btn {
  position: absolute;
  right: 0;
  bottom: 0;
  margin: 0.75rem;
}

@media (min-width: 640px) {
  .send-btn {
    margin: 0.5rem;
  }
}

@media (min-width: 1024px) {
  .send-btn {
    margin: 0.75rem;
  }
}

@media (min-width: 1280px) {
  .send-btn {
    margin: 3rem;
  }
}
