/* Dark mode overrides for Lexxy editor */
.dark lexxy-editor,
.dark :root {
  --lexxy-color-ink: oklch(95% 0 0);
  --lexxy-color-ink-medium: oklch(70% 0 0);
  --lexxy-color-ink-light: oklch(50% 0 0);
  --lexxy-color-ink-lighter: oklch(35% 0 0);
  --lexxy-color-ink-lightest: oklch(25% 0 0);
  --lexxy-color-ink-inverted: oklch(15% 0 0);

  --lexxy-color-canvas: oklch(20% 0 0);
  --lexxy-color-text: oklch(95% 0 0);
  --lexxy-color-text-subtle: oklch(70% 0 0);

  --lexxy-color-accent-dark: oklch(70% 0.15 260);
  --lexxy-color-accent-medium: oklch(60% 0.15 258);
  --lexxy-color-accent-light: oklch(30% 0.05 254);
  --lexxy-color-accent-lightest: oklch(25% 0.03 254);

  --lexxy-color-selected: oklch(30% 0.05 254);
  --lexxy-color-selected-hover: oklch(35% 0.08 254);
  --lexxy-color-code-bg: oklch(18% 0 0);

  /* Code syntax highlighting for dark mode */
  --lexxy-color-code-token-att: #ff7b72;
  --lexxy-color-code-token-comment: #8b949e;
  --lexxy-color-code-token-function: #d2a8ff;
  --lexxy-color-code-token-operator: #ff7b72;
  --lexxy-color-code-token-property: #79c0ff;
  --lexxy-color-code-token-punctuation: #c9d1d9;
  --lexxy-color-code-token-selector: #7ee787;
  --lexxy-color-code-token-variable: #ffa657;

  /* Table colors */
  --lexxy-color-table-header-bg: oklch(25% 0 0);
  --lexxy-color-table-cell-border: oklch(35% 0 0);
}

/* Ensure the editor content area has proper colors */
.dark .lexxy-editor__content {
  color: var(--lexxy-color-text);
}

/* Fix dropdown menus in dark mode */
.dark .lexxy-editor__toolbar-dropdown summary ~ * {
  background-color: oklch(25% 0 0);
  border-color: oklch(40% 0 0);
}

.dark .lexxy-editor__toolbar-dropdown button {
  color: oklch(90% 0 0);
}

/* Fix code language picker in dark mode */
.dark lexxy-code-language-picker select {
  background-color: oklch(20% 0 0);
  border-color: oklch(35% 0 0);
  color: oklch(90% 0 0);
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m12 19.5c-.7 0-1.3-.3-1.7-.8l-9.8-11.1c-.7-.8-.6-1.9.2-2.6.8-.6 1.9-.6 2.5.2l8.6 9.8c0 .1.2.1.4 0l8.6-9.8c.7-.8 1.8-.9 2.6-.2s.9 1.8.2 2.6l-9.8 11.1c-.4.5-1.1.8-1.7.8z' fill='%23fff'/%3E%3C/svg%3E");
}

/* Prompt menu dark mode */
.dark .lexxy-prompt-menu {
  background-color: oklch(25% 0 0);
  color: oklch(90% 0 0);
}

.dark .lexxy-prompt-menu__item:hover {
  background-color: oklch(30% 0 0);
}

.dark .lexxy-prompt-menu__item[aria-selected] {
  background-color: oklch(35% 0.05 254);
}

/* Dark mode for rendered Action Text / Lexxy content */
.dark .trix-content,
.dark .lexxy-content,
.dark [class*="action-text"] {
  color: oklch(90% 0 0);
}

.dark .trix-content blockquote,
.dark .lexxy-content blockquote {
  border-color: oklch(50% 0 0);
}

.dark .trix-content pre,
.dark .lexxy-content pre {
  background-color: oklch(18% 0 0);
  color: oklch(90% 0 0);
}

.dark .trix-content code,
.dark .lexxy-content code {
  background-color: oklch(25% 0 0);
  color: oklch(85% 0 0);
}

.dark .trix-content a,
.dark .lexxy-content a {
  color: oklch(70% 0.15 260);
}

.dark .trix-content .attachment--file,
.dark .lexxy-content .attachment--file {
  color: oklch(90% 0 0);
  border-color: oklch(40% 0 0);
  background-color: oklch(25% 0 0);
}

.dark .trix-content .attachment__caption,
.dark .lexxy-content .attachment__caption {
  color: oklch(70% 0 0);
}
