@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.0/css/all.min.css);
table, div, code, pre {
  box-sizing: border-box;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: %textSize%;
  /* Factor in viewport width to keep longer lines readable: */
  line-height: calc(1.1em + 0.45vw);
}
html, body {
  margin: 0;
  overflow-x: hidden;
}
h1, h2, h3, h4, h5, h6 {
  line-height: normal;
}
p {
  /* overflow: hidden; */
  margin: 0 0 1em 0;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	margin: 1em 0;
	width: 100%;
	word-break: initial;
	display: block;
	width: 100%;
	overflow-x: auto;
}
table th {
  padding: .3em .5em .4em;
  text-align: left;
  border: 0.5px solid hwb(0 75% 25%);
  /* background-color: hsl(38, 55%, 90%); */
  /* vertical-align: bottom; */
  word-break: initial;
}
table td {
  padding: .4em .5em .4em .4em;
  border: 0.5px solid hwb(0 75% 25%);
  /* border-width: 2em; */
  /* border-style: none; */
  /* vertical-align: top; */
}
/* table tr:nth-child(2n) {
  background-color: hsl(38, 55%, 93%);
} */

p:last-child {
  margin: 0;
}
code, pre {
  /* text-indent: 20pt; */
  font-family: Menlo, Courier, Monaco, 'Andale Mono', monospace;
  font-size: %codeSize%;

  width: 100%;
  padding: 2.5pt 7.5pt;
  border-radius: 2.5pt;
  background-color: hwb(0 100% 0% / 0.6);
  border: 0.5px solid hwb(0 75% 25%);
  overflow-x: auto;
}
code {
  /* padding: 2pt 3pt; */
  padding: 0.09vw 2.4pt;
}
pre {
  white-space: pre-wrap;
  word-break: break-word;
  padding: 5.5pt 7.5pt;
}
pre > code {
  background-color: unset;
  border-radius: unset;
  padding: unset;
  border: unset;
}
.chat {
  display: flex;
  width: 100%;
  height: 100%;
}
.chat .messages {
  display: flex;
  flex-flow: column;
  width: 100%;
  height: 100%;
}
.chat .messages .date {
  margin: 0 auto;
  padding: 4pt 0;
  font-size: %dateSize%;
  color: #888;
  text-align: center;
  max-width: 100%;
  width: 100%;
  -webkit-user-select: none;
}
.chat .messages .date:first-child {
  padding-top: 12pt;
}
.chat .messages .message {
  /* padding: 8pt; */
  display: flex;
  max-width: 75%;
  min-width: 25%;
  margin: 0 auto;
  /* margin-top: 4pt; */
  /* margin-bottom: 4pt; */
  /* About half the height of a single-line bubble: */
  /* border-radius: 16pt; */
  word-break: break-word;
}
.chat .messages .message.user {
  padding: 4pt 3pt;
  /* align: right; */
  margin-right: 3vw;
  /* color: white; */
  background-color: hwb(0 94% 6%);
  /* text-shadow: 0 0 4px hwb(195 0% 45% / 0.382); */
  border-radius: 12pt;
}
.chat .messages .message.assistant {
  /* align: left; */
  margin-left: 3vw;
  margin-right: 6vw;
  max-width: 100%;
  /* background-color: hwb(0 91% 9%); */
  padding: 8pt 0;
  border-radius: 0;
}
.chat .messages .message .details {
  flex: 1;
  width: 100%;
}
.chat .messages .message .details .text {
  padding: 2pt 7pt;
}
.chat .messages .message .details .tool_infos {
  padding: 2pt 7pt 7pt 7pt;
}
.chat .messages .message .details .tool_infos p {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
	margin: 0 0 2pt 0;
}
div.image {
  line-height: 0;
  margin: 7pt 7pt 1.4em 7pt;
  border-radius: 3pt;
  overflow: hidden;
}
.chat .messages .message .details img {
  max-width: 100%;
  height: auto !important;
}

.chat .messages .message.assistant .text .blink {
  animation: blink 1s infinite;
}

@keyframes blink {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.pulse-dots {
	display: inline-flex;
	gap: 3pt;
}
.pulse-dot {
	width: 6pt;
	height: 6pt;
	background: #52B4E5;
	border-radius: 50%;
	animation: dotPulsating 1.4s infinite ease-in-out both;
}
.pulse-dot:nth-child(1) { animation-delay: -0.32s; }
.pulse-dot:nth-child(2) { animation-delay: -0.16s; }
.pulse-dot:nth-child(3) { animation-delay: 0; }
  
@keyframes dotPulsating {
	0%, 80%, 100% {
		transform: scale(0.8);
		opacity: 0.5;
	}
	40% {
		transform: scale(1.2);
		opacity: 1;
	}
}

.loading-dots {
	font-size: 1.2rem;
	color: #667eea;
	font-weight: 600;
}
.loading-dots::after {
	content: '';
	animation: dotsLoading 1.5s steps(4, end) infinite;
}

@keyframes dotsLoading {
	0% { content: ''; }
	25% { content: '.'; }
	50% { content: '..'; }
	75% { content: '...'; }
	100% { content: ''; }
}
        
@media (min-width: 800pt) {
    .chat .messages .message.user {
        max-width: 600pt;
    }
    .chat .messages .message.assistant {
        max-width: 800pt;
    }
}
@media (prefers-color-scheme: dark) {
	:root {
		color-scheme: dark;
	}
	pre, code {
        background-color: hwb(0 0% 100% / 0.2);
        border: 0.5px solid hwb(0 35% 65%);
    }
	.chat .messages .date {
	  color: #777;
	}
    a:link, a:visited, a:active {
        color: hsl(218, 100%, 72%);
    }
	.chat .messages .message.user {
	    background-color: hwb(0 35% 65%);
	}
	table {
		background-color: hwb(0 0% 100% / 0.2);
	}
	table th, table td {
		border: 0.5px solid hwb(0 32% 68%);
	}
}
