pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}
img.ProseMirror-selectednode {
  outline: 3px solid blue;
}

.tip-tap-wysiwyg-editor-container .ProseMirror {
  overflow: auto;
}

.tip-tap-wysiwyg-editor-container::after, .tip-tap-wysiwyg-editor-container ProseMirror::after {
  content: "";
  display: table;
  clear: both;
}

.prose {
  :where(strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
    color: unset;
  }
}

/* Link styling */
.tip-tap-wysiwyg-editor-container a {
  cursor: pointer;
  text-decoration: underline;
  color: #3b82f6; /* blue-500 */
  transition: color 0.2s ease;
}

.tip-tap-wysiwyg-editor-container a:hover {
  color: #2563eb; /* blue-600 */
}

.dark .tip-tap-wysiwyg-editor-container a {
  color: #60a5fa; /* blue-400 */
}

.dark .tip-tap-wysiwyg-editor-container a:hover {
  color: #93c5fd; /* blue-300 */
}

/* Image upload states */
.tip-tap-wysiwyg-editor-container img.uploading-image {
  opacity: 0.6;
  filter: blur(1px);
  border: 2px dashed #3b82f6;
  border-radius: 4px;
  animation: pulse 2s infinite;
}

.tip-tap-wysiwyg-editor-container img.upload-error {
  opacity: 0.8;
  border: 2px solid #ef4444;
  border-radius: 4px;
  background-color: #fef2f2;
}

.dark .tip-tap-wysiwyg-editor-container img.upload-error {
  background-color: oklch(0.22 0.06 25);
}

@keyframes pulse {
  0%, 100% {
    opacity: 0.6;
  }
  50% {
    opacity: 0.8;
  }
}
