/* Basic editor styles */
.tiptap > *:first-child {
  margin-top: 0;
}

.ProseMirror {
  min-height: 100vh;
  width: 100%;
}

.ProseMirror:focus {
  outline: none;
}

.tiptap ul li p,
.tiptap ol li p {
  margin: 0.75rem 0;
}

.tiptap ul,
.tiptap ol {
  margin-left: 1rem;
  padding: 0.25rem;
}

.tiptap ul {
  list-style-type: disc;
}

.tiptap ol {
  list-style-type: decimal;
}

/* Heading styles */
.tiptap h1,
.tiptap h2,
.tiptap h3,
.tiptap h4,
.tiptap h5,
.tiptap h6 {
  margin: 0.5rem 0;
  line-height: 1.1;
  text-wrap: pretty;
}

.tiptap h1,
.tiptap h2 {
  margin: 1rem 0;
  font-size: 2.25rem; /* Equivalent to text-4xl */
}

.tiptap h3 {
  font-size: 1.875rem; /* Equivalent to text-3xl */
}

.tiptap h4 {
  font-size: 1.5rem; /* Equivalent to text-2xl */
}

.tiptap h5 {
  font-size: 1.25rem; /* Equivalent to text-xl */
}

.tiptap h6 {
  font-size: 1.125rem; /* Equivalent to text-lg */
}

.tiptap blockquote {
  @apply m-4 border-l-4 border-border pl-4;
  /* border-left: 1rem solid var(--primary);
  padding-left: 1rem; */
}

.tiptap hr {
  @apply border-border;
  /* border-color: var(--border); */
  margin: 0.25rem 0;
}

::selection {
  background-color: #5abbf7;
}

.menu-bar button {
  transition-duration: 0s;
}

img {
  @apply rounded-md;
}

/* Task List */
ul[data-type="taskList"] li {
  @apply m-0 my-3 flex items-center;
}

ul[data-type="taskList"] li p {
  @apply m-0 my-0 flex items-center;
}

ul[data-type="taskList"] li > label input[type="checkbox"] {
  @apply size-4 border border-border bg-muted;
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
  cursor: pointer;
  position: relative;

  display: grid;
  border-radius: 0.25rem;
  place-content: center;
}
/* ul[data-type="taskList"] li > label input[type="checkbox"]:hover {
  background-color: #000;
}
ul[data-type="taskList"] li > label input[type="checkbox"]:active {
  background-color: #000;
} */
ul[data-type="taskList"] li > label input[type="checkbox"]::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  transform: scale(0);
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em;
  transform-origin: center;
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}
ul[data-type="taskList"] li > label input[type="checkbox"]:checked::before {
  transform: scale(1);
}
ul[data-type="taskList"] li[data-checked="true"] > div > p {
  @apply text-foreground/75;
  text-decoration: line-through;
  text-decoration-thickness: 2px;
}

.ProseMirror:not(.dragging) .ProseMirror-selectednode {
  outline: none !important;
  background-color: var(--novel-highlight-blue);
  transition: background-color 0.2s;
  box-shadow: none;
}
.drag-handle {
  position: fixed;
  opacity: 1;
  transition: opacity ease-in 0.2s;
  border-radius: 0.25rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' style='fill: rgba(0, 0, 0, 0.5)'%3E%3Cpath d='M3,2 C2.44771525,2 2,1.55228475 2,1 C2,0.44771525 2.44771525,0 3,0 C3.55228475,0 4,0.44771525 4,1 C4,1.55228475 3.55228475,2 3,2 Z M3,6 C2.44771525,6 2,5.55228475 2,5 C2,4.44771525 2.44771525,4 3,4 C3.55228475,4 4,4.44771525 4,5 C4,5.55228475 3.55228475,6 3,6 Z M3,10 C2.44771525,10 2,9.55228475 2,9 C2,8.44771525 2.44771525,8 3,8 C3.55228475,8 4,8.44771525 4,9 C4,9.55228475 3.55228475,10 3,10 Z M7,2 C6.44771525,2 6,1.55228475 6,1 C6,0.44771525 6.44771525,0 7,0 C7.55228475,0 8,0.44771525 8,1 C8,1.55228475 7.55228475,2 7,2 Z M7,6 C6.44771525,6 6,5.55228475 6,5 C6,4.44771525 6.44771525,4 7,4 C7.55228475,4 8,4.44771525 8,5 C8,5.55228475 7.55228475,6 7,6 Z M7,10 C6.44771525,10 6,9.55228475 6,9 C6,8.44771525 6.44771525,8 7,8 C7.55228475,8 8,8.44771525 8,9 C8,9.55228475 7.55228475,10 7,10 Z'%3E%3C/path%3E%3C/svg%3E");
  background-size: calc(0.5em + 0.375rem) calc(0.5em + 0.375rem);
  background-repeat: no-repeat;
  background-position: center;
  width: 1.2rem;
  height: 1.5rem;
  z-index: 50;
  cursor: grab;
}
.drag-handle:hover {
  background-color: var(--novel-stone-100);
  transition: background-color 0.2s;
}
.drag-handle:active {
  background-color: var(--novel-stone-200);
  transition: background-color 0.2s;
  cursor: grabbing;
}
.drag-handle.hide {
  opacity: 0;
  pointer-events: none;
}
@media screen and (max-width: 600px) {
  .drag-handle {
    display: none;
    pointer-events: none;
  }
}
.dark .drag-handle {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' style='fill: rgba(255, 255, 255, 0.5)'%3E%3Cpath d='M3,2 C2.44771525,2 2,1.55228475 2,1 C2,0.44771525 2.44771525,0 3,0 C3.55228475,0 4,0.44771525 4,1 C4,1.55228475 3.55228475,2 3,2 Z M3,6 C2.44771525,6 2,5.55228475 2,5 C2,4.44771525 2.44771525,4 3,4 C3.55228475,4 4,4.44771525 4,5 C4,5.55228475 3.55228475,6 3,6 Z M3,10 C2.44771525,10 2,9.55228475 2,9 C2,8.44771525 2.44771525,8 3,8 C3.55228475,8 4,8.44771525 4,9 C4,9.55228475 3.55228475,10 3,10 Z M7,2 C6.44771525,2 6,1.55228475 6,1 C6,0.44771525 6.44771525,0 7,0 C7.55228475,0 8,0.44771525 8,1 C8,1.55228475 7.55228475,2 7,2 Z M7,6 C6.44771525,6 6,5.55228475 6,5 C6,4.44771525 6.44771525,4 7,4 C7.55228475,4 8,4.44771525 8,5 C8,5.55228475 7.55228475,6 7,6 Z M7,10 C6.44771525,10 6,9.55228475 6,9 C6,8.44771525 6.44771525,8 7,8 C7.55228475,8 8,8.44771525 8,9 C8,9.55228475 7.55228475,10 7,10 Z'%3E%3C/path%3E%3C/svg%3E");
}
