/* Custom vibrant JSON highlighting for light mode */
.highlight {
  background-color: #f6f8fa;
  border-radius: 0.5rem;
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Consolas, "Liberation Mono", Menlo, monospace;
}

.highlight pre {
  margin: 0;
  padding: 0;
  background: transparent;
  overflow-x: auto;
  white-space: pre;
}

/* Light mode JSON highlighting */
.highlight .p { color: #24292f; } /* Punctuation (braces, brackets, commas) */
.highlight .s2, .highlight .s1 { color: #0969da; font-weight: 500; } /* String keys and values - blue */
.highlight .mi, .highlight .mf { color: #8250df; font-weight: 600; } /* Numbers - purple */
.highlight .kc { color: #cf222e; font-weight: 600; } /* Constants (true, false, null) - red */
.highlight .err { background: none; color: #24292f; } /* Remove error styling */
.highlight .w { color: #24292f; } /* Whitespace */

/* Dark mode JSON highlighting */
@media (prefers-color-scheme: dark) {
  .highlight {
    background-color: #161b22 !important;
    color: #e6edf3 !important;
  }

  .highlight pre {
    background-color: #161b22 !important;
  }

  .highlight .p { color: #79c0ff !important; } /* Punctuation - bright blue */
  .highlight .nl { color: #ffa657 !important; font-weight: 600; } /* JSON property keys - bright orange */
  .highlight .s2, .highlight .s1, .highlight .s { color: #a5d6ff !important; font-weight: 500; } /* String values - light blue */
  .highlight .mi, .highlight .mf { color: #d2a8ff !important; font-weight: 600; } /* Numbers - purple */
  .highlight .kc { color: #ff7b72 !important; font-weight: 600; } /* Constants (true, false, null) - red */
  .highlight .err { background: none !important; color: #e6edf3 !important; } /* Remove error styling */
  .highlight .w { color: #e6edf3 !important; background: none !important; } /* Whitespace - remove any background */
  
  /* JSON-specific enhancements for dark mode */
  .highlight .nt { color: #ffa657 !important; font-weight: 600; } /* Property names - bright orange */
  .highlight .na { color: #ffa657 !important; font-weight: 600; } /* Attribute names - bright orange */
  .highlight .nb { color: #79c0ff !important; } /* Built-ins */
  .highlight .nc { color: #f79000 !important; } /* Class names - orange */
  
  /* Catch-all for any string tokens that might be missed */
  .highlight .sb, .highlight .sc, .highlight .sd, .highlight .sh, .highlight .si, .highlight .sx, .highlight .sr, .highlight .ss { color: #ffa657 !important; font-weight: 600; }
}

/* Enhanced visibility */
.highlight .s2::before, .highlight .s1::before {
  content: none; /* Ensure no extra content */
}

/* JSON-specific enhancements for light mode */
.highlight .nt { color: #0969da; font-weight: 600; } /* Property names in light mode */
.highlight .nl { color: #0969da; font-weight: 600; } /* JSON property keys in light mode */