:root {
  --prism-background: #f8fafc;
  --prism-border: #e2e8f0;
  --prism-foreground: #0f172a;
  --prism-inline-background: #e2e8f0;
}

code[class*='language-'],
pre[class*='language-'] {
  color: var(--prism-foreground);
  background: transparent;
  font-family: 'JetBrains Mono', 'Fira Code', 'SFMono-Regular', Menlo, Monaco, Consolas,
    'Liberation Mono', 'Courier New', monospace;
  font-size: 0.9rem;
  text-shadow: none;
  direction: ltr;
  text-align: left;
  word-spacing: normal;
  word-break: normal;
  line-height: 1.6;
  tab-size: 2;
  hyphens: none;
}

pre[class*='language-'] {
  padding: 1.25rem 1.5rem;
  margin: 0;
  overflow: auto;
  border-radius: 0.75rem;
  background-color: var(--prism-background);
  box-shadow: inset 0 0 0 1px var(--prism-border);
}

:not(pre) > code[class*='language-'] {
  padding: 0.15rem 0.35rem;
  border-radius: 0.35rem;
  background-color: var(--prism-inline-background);
  white-space: normal;
}

.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
  color: #94a3b8;
  font-style: italic;
}

.token.punctuation {
  color: #64748b;
}

.token.property,
.token.tag,
.token.constant,
.token.symbol,
.token.deleted {
  color: #dc2626;
}

.token.boolean,
.token.number {
  color: #b45309;
}

.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
  color: #15803d;
}

.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string,
.token.variable {
  color: #7c3aed;
}

.token.atrule,
.token.attr-value,
.token.keyword {
  color: #1d4ed8;
}

.token.function,
.token.class-name {
  color: #c026d3;
}

.token.regex,
.token.important {
  color: #b91c1c;
}

.token.bold,
.token.important {
  font-weight: 600;
}

.token.italic {
  font-style: italic;
}

.token.entity {
  cursor: help;
}

pre[class*='language-']::-webkit-scrollbar {
  height: 0.6rem;
}

pre[class*='language-']::-webkit-scrollbar-track {
  background: transparent;
}

pre[class*='language-']::-webkit-scrollbar-thumb {
  background: rgba(148, 163, 184, 0.6);
  border-radius: 999px;
}
