/* Heading level differentiation */
.assistant-article h1 {
  font-size: 2em;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  font-weight: bold;
}

.assistant-article h2 {
  font-size: 1.75em;
  margin-top: 1.4em;
  margin-bottom: 0.5em;
  font-weight: bold;
}

.assistant-article h3 {
  font-size: 1.5em;
  margin-top: 1.3em;
  margin-bottom: 0.5em;
  font-weight: bold;
}

.assistant-article h4 {
  font-size: 1.25em;
  margin-top: 1.2em;
  margin-bottom: 0.5em;
  font-weight: bold;
}

.assistant-article h5 {
  font-size: 1em;
  margin-top: 1.1em;
  margin-bottom: 0.5em;
  font-weight: bold;
}

.assistant-article h6 {
  font-size: 0.85em;
  margin-top: 1em;
  margin-bottom: 0.5em;
  font-weight: bold;
  text-transform: uppercase;
}

/* Nested lists */
.assistant-article ul,
.assistant-article ol {
  margin-left: 1.5em;
  margin-bottom: 1em;
}

.assistant-article ul ul,
.assistant-article ol ul,
.assistant-article ul ol,
.assistant-article ol ol {
  margin-left: 1.5em;
  margin-bottom: 0;
}

.assistant-article ul {
  list-style-type: disc;
}

.assistant-article ul ul {
  list-style-type: circle;
}

.assistant-article ul ul ul {
  list-style-type: square;
}

/* Blockquotes */
.assistant-article blockquote {
  background-color: #f7f7f7;
  border-left: 4px solid #ccc;
  margin: 1em 0;
  padding: 0.5em 1em;
  font-style: italic;
  color: #555;
}

/* Code blocks */
.assistant-article pre {
  background-color: #2d2d2e;
  color: #abb2bf;
  padding: 1em;
  overflow-x: auto;
  border-radius: 5px;
  margin-bottom: 1em;
}

/* Color img with class copy-code-button white */
button.copy-code-button img {
  filter: brightness(0) saturate(100%) invert(1); /* Makes the image white */
}

.assistant-article pre code {
  background: none;
  padding: 0;
  color: inherit;
  font-size: 0.95em;
}

/* Inline code */
.assistant-article code {
  background-color: #f1f1f1;
  padding: 0.2em 0.4em;
  font-family: monospace;
  font-size: 0.95em;
  border-radius: 4px;
}

/* Syntax highlighting overrides */
.hljs-comment,
.hljs-quote {
  color: #5c6370;
  font-style: italic;
}

/* Tables */
.assistant-article table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1em;
}

.assistant-article th,
.assistant-article td {
  border: 1px solid #ddd;
  padding: 0.5em;
}

.assistant-article th {
  background-color: #f2f2f2;
  font-weight: bold;
}

/* Images */
.assistant-article img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 1em 0;
}

/* Links */
.assistant-article a {
  color: var(--primary-color);
  text-decoration: underline;
}

.assistant-article a:hover {
  text-decoration: none;
}

/* Paragraphs */
.assistant-article p {
  margin-bottom: 1em;
}

/* Horizontal Rules */
.assistant-article hr {
  border: none;
  border-top: 1px solid #ccc;
  margin: 2em 0;
}
