/* ============================================
   PRISM - Syntax Highlighting
   Night Owl theme by Sarah Drasner
   ============================================ */

/* Code title styles */
.remark-code-title {
  border-top-left-radius: 0.375rem;
  border-top-right-radius: 0.375rem;
  background-color: #374151;
  padding: 0.75rem 1.25rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 0.875rem;
  font-weight: 700;
  color: #e5e7eb;
}

.dark .remark-code-title {
  background-color: #1f2937;
}

.remark-code-title + div > pre {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

/* Code block styles */
.code-highlight {
  float: left;
  min-width: 100%;
}

.code-line {
  display: block;
  margin-left: -1rem;
  margin-right: -1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  border-left: 4px solid transparent;
}

.code-line.inserted {
  background-color: rgba(16, 185, 129, 0.2);
}

.code-line.deleted {
  background-color: rgba(239, 68, 68, 0.2);
}

.highlight-line {
  margin-left: -1rem;
  margin-right: -1rem;
  border-left: 4px solid #10b981;
  background-color: rgba(55, 65, 81, 0.5);
}

.line-number::before {
  margin-left: -0.5rem;
  margin-right: 1rem;
  display: inline-block;
  width: 1rem;
  text-align: right;
  color: #9ca3af;
  content: attr(line);
}

/* Token styles - Night Owl Theme */
.token.comment,
.token.prolog,
.token.cdata {
  color: rgb(99, 119, 119);
  font-style: italic;
}

.token.punctuation {
  color: rgb(199, 146, 234);
}

.namespace {
  color: rgb(178, 204, 214);
}

.token.deleted {
  color: rgba(239, 83, 80, 0.56);
  font-style: italic;
}

.token.symbol,
.token.property {
  color: rgb(128, 203, 196);
}

.token.tag,
.token.operator,
.token.keyword {
  color: rgb(127, 219, 202);
}

.token.boolean {
  color: rgb(255, 88, 116);
}

.token.number {
  color: rgb(247, 140, 108);
}

.token.constant,
.token.function,
.token.builtin,
.token.char {
  color: rgb(130, 170, 255);
}

.token.selector,
.token.doctype {
  color: rgb(199, 146, 234);
  font-style: italic;
}

.token.attr-name,
.token.inserted {
  color: rgb(173, 219, 103);
  font-style: italic;
}

.token.string,
.token.url,
.token.entity,
.language-css .token.string,
.style .token.string {
  color: rgb(173, 219, 103);
}

.token.class-name,
.token.atrule,
.token.attr-value {
  color: rgb(255, 203, 139);
}

.token.regex,
.token.important,
.token.variable {
  color: rgb(214, 222, 235);
}

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

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

.token.table {
  display: inline;
}
