/* Tiptap's own core stylesheet, extracted verbatim from the shipped
   django-prose-editor bundle (@tiptap/core, src/style.ts — reachable via
   static/django_prose_editor/editor.js.map).

   Why a copy exists at all: Tiptap injects these rules at runtime as an
   inline <style>, and `style-src-elem` blocks that under an enforcing CSP.
   The editor still loads, so the failure is invisible — until you notice
   that consecutive spaces collapse while typing, because `white-space:
   pre-wrap` below is the only thing that sets it.

   base_site.html therefore ships an EMPTY nonced <style data-tiptap-style>:
   Tiptap's createStyleTag() looks for exactly that selector first and
   returns early when it finds one, so nothing un-nonced is ever created.
   This file supplies the rules that the suppressed injection would have.

   Do not edit. TiptapCoreStyleTests re-extracts the string from the bundle
   on every test run and fails when the two drift, which is the signal to
   regenerate this file after a django-prose-editor upgrade. */

.ProseMirror {
  position: relative;
}

.ProseMirror {
  word-wrap: break-word;
  white-space: pre-wrap;
  white-space: break-spaces;
  -webkit-font-variant-ligatures: none;
  font-variant-ligatures: none;
  font-feature-settings: "liga" 0; /* the above doesn't seem to work in Edge */
}

.ProseMirror [contenteditable="false"] {
  white-space: normal;
}

.ProseMirror [contenteditable="false"] [contenteditable="true"] {
  white-space: pre-wrap;
}

.ProseMirror pre {
  white-space: pre-wrap;
}

img.ProseMirror-separator {
  display: inline !important;
  border: none !important;
  margin: 0 !important;
  width: 0 !important;
  height: 0 !important;
}

.ProseMirror-gapcursor {
  display: none;
  pointer-events: none;
  position: absolute;
  margin: 0;
}

.ProseMirror-gapcursor:after {
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  width: 20px;
  border-top: 1px solid black;
  animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;
}

@keyframes ProseMirror-cursor-blink {
  to {
    visibility: hidden;
  }
}

.ProseMirror-hideselection *::selection {
  background: transparent;
}

.ProseMirror-hideselection *::-moz-selection {
  background: transparent;
}

.ProseMirror-hideselection * {
  caret-color: transparent;
}

.ProseMirror-focused .ProseMirror-gapcursor {
  display: block;
}
