/* Code block styling for light and dark modes */

/* Light mode (default) */
pre {
  background-color: #f6f8fa;
  border: 1px solid #e1e4e8;
  border-radius: 6px;
  padding: 16px;
  overflow-x: auto;
  margin: 1em 0;
}

pre code {
  background-color: transparent;
  color: #24292e;
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
  font-size: 0.875rem;
  line-height: 1.45;
}

code {
  background-color: rgba(175, 184, 193, 0.2);
  padding: 0.2em 0.4em;
  border-radius: 3px;
  font-size: 0.875em;
  color: #24292e;
}

/* Dark mode */
.dark pre {
  background-color: #161b22;
  border: 1px solid #30363d;
  color: #c9d1d9;
}

.dark pre code {
  color: #c9d1d9;
  background-color: transparent;
}

.dark code {
  background-color: rgba(110, 118, 129, 0.4);
  color: #c9d1d9;
}

/* Syntax highlighting colors for dark mode */
.dark .language-ruby .keyword,
.dark .language-javascript .keyword,
.dark .language-bash .keyword {
  color: #ff7b72;
}

.dark .language-ruby .string,
.dark .language-javascript .string,
.dark .language-bash .string {
  color: #a5d6ff;
}

.dark .language-ruby .comment,
.dark .language-javascript .comment,
.dark .language-bash .comment {
  color: #8b949e;
  font-style: italic;
}

.dark .language-ruby .function,
.dark .language-javascript .function {
  color: #d2a8ff;
}

.dark .language-ruby .number,
.dark .language-javascript .number {
  color: #79c0ff;
}

/* Light mode syntax highlighting */
.language-ruby .keyword,
.language-javascript .keyword,
.language-bash .keyword {
  color: #d73a49;
}

.language-ruby .string,
.language-javascript .string,
.language-bash .string {
  color: #032f62;
}

.language-ruby .comment,
.language-javascript .comment,
.language-bash .comment {
  color: #6a737d;
  font-style: italic;
}

.language-ruby .function,
.language-javascript .function {
  color: #6f42c1;
}

.language-ruby .number,
.language-javascript .number {
  color: #005cc5;
}

/* ActionText content specific */
.trix-content pre {
  background-color: #f6f8fa;
  border: 1px solid #e1e4e8;
  border-radius: 6px;
  padding: 16px;
  overflow-x: auto;
}

.dark .trix-content pre {
  background-color: #161b22;
  border: 1px solid #30363d;
  color: #c9d1d9;
}

.trix-content code {
  background-color: rgba(175, 184, 193, 0.2);
  padding: 0.2em 0.4em;
  border-radius: 3px;
  font-size: 0.875em;
  color: #24292e;
}

.dark .trix-content code {
  background-color: rgba(110, 118, 129, 0.4);
  color: #c9d1d9;
}

/* Prose class overrides for dark mode */
.dark .prose pre {
  background-color: #161b22 !important;
  color: #c9d1d9 !important;
}

.dark .prose code {
  color: #c9d1d9 !important;
}

.dark .prose pre code {
  color: #c9d1d9 !important;
}