// =============================================================================
// @domternal/theme - Main Entry
// =============================================================================.

// 1.
@use 'variables';

// 2.
@use 'prosemirror';

// 3.
@use 'base';

// 3b. The hidden attribute, restored for everything this theme styles. Ordering
// does not matter (the rule is !important) but it sits beside the wrapper it
// most often applies to.
@use 'hidden';

// 4.
@use 'content';

// 4b.
@use 'syntax';

// 5.
@use 'toolbar';
@use 'color-palette';

// 6.
@use 'bubble-menu';
@use 'floating-menu';
@use 'link-popover';
@use 'block-handle';
@use 'slash-command';
@use 'context-menu';

// 7.
@use 'placeholder';
@use 'task-list';
@use 'mention';
@use 'image';
@use 'details';
@use 'math';
@use 'invisible-chars';
@use 'emoji-picker';
@use 'table-controls';
@use 'block-colors';
// MUST follow block-colors: the inline override depends on cascade ordering
// to win over the block-level [data-bg-color] padding rule.
@use 'inline-colors';
@use 'toc';

// 8.
@use 'notion-mode';

// 9.
@use 'themes/light';
@use 'themes/dark';

// 10. Paper. Last, so it can override anything above it: `@media print` adds
// no specificity of its own, only source order.
@use 'print';

// 11.
@media (prefers-reduced-motion: reduce) {
  .dm-emoji-picker,
  .dm-emoji-suggestion,
  .dm-mention-suggestion,
  .dm-toolbar-dropdown-panel,
  .dm-table-controls-dropdown,
  .dm-table-cell-toolbar {
    animation: none;
  }

  .dm-editor .ProseMirror-gapcursor::after {
    animation: none;
  }

  .dm-bubble-menu[data-show],
  .dm-floating-menu,
  .dm-link-popover,
  .dm-image-popover,
  .dm-toolbar-button,
  .dm-toolbar-dropdown-item,
  .dm-color-palette-reset,
  .dm-color-swatch,
  .dm-emoji-picker-tab,
  .dm-emoji-swatch,
  .dm-emoji-suggestion-item,
  .dm-mention-suggestion-item,
  .dm-table-col-handle,
  .dm-table-row-handle,
  .dm-table-cell-handle,
  .dm-table-cell-toolbar-btn,
  .dm-table-controls-dropdown > button,
  .dm-table-align-item,
  .dm-image-popover-btn,
  .dm-link-popover-btn,
  .dm-block-handle,
  .dm-block-handle-btn,
  .dm-block-color-swatch,
  .dm-slash-command-item,
  .dm-block-context-menu-item,
  .dm-editor .ProseMirror div[data-type="details"] > button[type="button"]::before {
    transition: none;
    transform: none;
  }
}
