@domternal/theme 0.7.1 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- .dm-editor{--dm-bg: #ffffff;--dm-text: #1a1a1a;--dm-muted: #999999;--dm-surface: #f8f9fa;--dm-border-color: #e5e7eb;--dm-hover: rgba(0, 0, 0, 0.04);--dm-active: rgba(0, 0, 0, 0.1);--dm-accent: #2563eb;--dm-accent-hover: #1d4ed8;--dm-accent-surface: rgba(37, 99, 235, 0.1);--dm-focus-color: rgba(66, 133, 244, 0.3);--dm-selection: rgba(66, 133, 244, 0.2);--dm-scrollbar-thumb: rgba(0, 0, 0, 0.18);--dm-scrollbar-thumb-hover: rgba(0, 0, 0, 0.28);--dm-z-handle: 25;--dm-z-popover: 50;--dm-block-handle-gutter: 3rem;--dm-block-handle-left: -0.5rem;--dm-block-inline-padding: 0.375rem;--dm-block-children-indent: 1.5rem;--dm-popover-shadow: 0 10px 25px rgba(0, 0, 0, 0.08), 0 4px 10px rgba(0, 0, 0, 0.04);--dm-code-surface: #f0f0f0;--dm-code-color: inherit;--dm-block-bg-gray: #f1f1ef;--dm-block-bg-brown: #f3eeee;--dm-block-bg-orange: #f8ecdf;--dm-block-bg-yellow: #faf3dd;--dm-block-bg-green: #eef3ed;--dm-block-bg-blue: #e9f3f7;--dm-block-bg-purple: #f6f3f8;--dm-block-bg-pink: #f9f2f5;--dm-block-bg-red: #faecec;--dm-block-text-gray: #787774;--dm-block-text-brown: #976d57;--dm-block-text-orange: #cc782f;--dm-block-text-yellow: #c29343;--dm-block-text-green: #548164;--dm-block-text-blue: #487ca5;--dm-block-text-purple: #8a67ab;--dm-block-text-pink: #b35488;--dm-block-text-red: #c4554d;--dm-block-selected-halo: rgba(112, 207, 248, 0.25);--dm-block-context-active-bg: rgba(55, 53, 47, 0.06);--dm-editor-bg: var(--dm-bg);--dm-editor-text: var(--dm-text);--dm-editor-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;--dm-editor-font-size: 1rem;--dm-editor-line-height: 1.6;--dm-editor-padding: 1rem;--dm-editor-border: 1px solid var(--dm-border-color);--dm-editor-border-radius: 0.75rem;--dm-editor-focus-ring: none;--dm-editor-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02);--dm-placeholder-color: var(--dm-muted);--dm-link-color: var(--dm-accent);--dm-link-hover-color: var(--dm-accent-hover);--dm-code-bg: var(--dm-code-surface);--dm-code-text: var(--dm-code-color);--dm-code-font: "SF Mono", "Fira Code", Consolas, "Liberation Mono", Menlo, monospace;--dm-code-border-radius: 0.25rem;--dm-code-block-bg: var(--dm-code-surface);--dm-code-block-text: var(--dm-text);--dm-syntax-keyword: #c72031;--dm-syntax-entity: #6f42c1;--dm-syntax-constant: #005cc5;--dm-syntax-string: #032f62;--dm-syntax-variable: #d35400;--dm-syntax-comment: #57606a;--dm-syntax-tag: #22863a;--dm-syntax-addition: #22863a;--dm-syntax-addition-bg: #f0fff4;--dm-syntax-deletion: #b31d28;--dm-syntax-deletion-bg: #ffeef0;--dm-blockquote-border: 3px solid #6a6a6a;--dm-blockquote-color: #6a6a6a;--dm-hr-color: var(--dm-border-color);--dm-table-border: 1px solid var(--dm-border-color);--dm-table-header-bg: var(--dm-surface);--dm-table-selected-bg: rgba(66, 133, 244, 0.15);--dm-mention-bg: var(--dm-accent-surface);--dm-mention-color: var(--dm-accent);--dm-mention-border-radius: 0.25rem;--dm-highlight-bg: #fff3cd;--dm-details-border: 1px solid var(--dm-border-color);--dm-details-bg: var(--dm-surface);--dm-details-summary-font-weight: 600;--dm-task-checkbox-left: -1.15em;--dm-task-checkbox-top: 0.45em}.dm-toolbar{--dm-toolbar-bg: var(--dm-bg, #ffffff);--dm-toolbar-border: none;--dm-toolbar-padding: 0.375rem 0.5rem;--dm-toolbar-gap: 0.125rem;--dm-toolbar-border-radius: 0.75rem 0.75rem 0 0;--dm-button-size: 2rem;--dm-button-border-radius: 0.375rem;--dm-button-color: var(--dm-text, #374151);--dm-button-hover-bg: var(--dm-hover, rgba(0, 0, 0, 0.04));--dm-button-active-bg: var(--dm-accent-surface, rgba(37, 99, 235, 0.1));--dm-button-active-color: var(--dm-accent, #2563eb);--dm-button-disabled-opacity: 0.35;--dm-separator-color: var(--dm-border-color, #e5e7eb);--dm-separator-margin: 0.375rem}:root{--dm-toc-tick-h1-width: 18px;--dm-toc-tick-h2-width: 12px;--dm-toc-tick-h3-width: 8px;--dm-toc-tick-h4-width: 6px;--dm-toc-tick-h5-width: 5px;--dm-toc-tick-h6-width: 4px;--dm-toc-tick-height: 2px;--dm-toc-tick-radius: 1px;--dm-toc-tick-gap: 10px;--dm-toc-tick-color: rgba(55, 53, 47, 0.4);--dm-toc-tick-hover-color: rgba(55, 53, 47, 0.7);--dm-toc-tick-active-color: rgba(55, 53, 47, 0.95);--dm-toc-padding-block: 12px;--dm-toc-padding-inline: 8px;--dm-toc-right-offset: 24px;--dm-toc-z-index: 10;--dm-toc-editor-top: 1rem;--dm-toc-page-offset: 8px;--dm-toc-card-viewport-margin: 16px;--dm-toc-card-bg: rgba(255, 255, 255, 0.98);--dm-toc-card-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);--dm-toc-card-radius: 6px;--dm-toc-card-border: 1px solid rgba(0, 0, 0, 0.06);--dm-toc-card-min-width: 180px;--dm-toc-card-max-width: 260px;--dm-toc-card-padding-block: 6px;--dm-toc-card-offset: 8px;--dm-toc-card-transition: 180ms;--dm-toc-row-padding-block: 4px;--dm-toc-row-padding-inline-start: 12px;--dm-toc-row-padding-inline-end: 16px;--dm-toc-row-indent: 14px;--dm-toc-row-color: rgba(55, 53, 47, 0.7);--dm-toc-row-hover-bg: rgba(0, 0, 0, 0.04);--dm-toc-row-active-color: rgba(55, 53, 47, 0.95);--dm-toc-row-active-weight: 600;--dm-toc-row-font-size: 13px;--dm-toc-row-line-height: 1.4;--dm-toc-block-bg: rgba(0, 0, 0, 0.02);--dm-toc-block-border: 1px solid rgba(0, 0, 0, 0.08);--dm-toc-block-radius: 6px;--dm-toc-block-padding-block: 12px;--dm-toc-block-padding-inline: 16px;--dm-toc-block-margin-block: 1rem;--dm-toc-block-empty-color: rgba(55, 53, 47, 0.5);--dm-toc-block-empty-font-style: italic;--dm-toc-block-link-color: rgba(55, 53, 47, 0.8);--dm-toc-block-link-hover-color: rgba(55, 53, 47, 1);--dm-toc-block-link-hover-bg: rgba(0, 0, 0, 0.04);--dm-toc-block-link-active-color: rgba(55, 53, 47, 0.95);--dm-toc-block-link-active-weight: 600;--dm-toc-block-link-padding-block: 4px;--dm-toc-block-link-padding-inline: 8px;--dm-toc-block-link-indent: 16px;--dm-toc-block-link-radius: 3px;--dm-toc-block-link-font-size: 0.9375rem;--dm-toc-block-link-line-height: 1.5}.dm-editor .ProseMirror{position:relative;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;outline:none}.dm-editor .ProseMirror pre{white-space:pre-wrap}.dm-editor .ProseMirror li{position:relative}.ProseMirror-hideselection *::selection{background:rgba(0,0,0,0)}.ProseMirror-hideselection *::-moz-selection{background:rgba(0,0,0,0)}.ProseMirror-hideselection{caret-color:rgba(0,0,0,0)}.ProseMirror [draggable][contenteditable=false]{user-select:text}.dm-editor .ProseMirror-selectednode{outline:2px solid var(--dm-accent, #2563eb)}.dm-editor li.ProseMirror-selectednode{outline:none}.dm-editor li.ProseMirror-selectednode::after{content:"";position:absolute;left:-32px;right:-2px;top:-2px;bottom:-2px;border:2px solid var(--dm-accent, #2563eb);pointer-events:none}img.ProseMirror-separator{display:inline !important;border:none !important;margin:0 !important}.dm-editor .ProseMirror-gapcursor{display:none;pointer-events:none;position:absolute}.dm-editor .ProseMirror-gapcursor::after{content:"";display:block;position:absolute;top:-2px;width:20px;border-top:1px solid var(--dm-editor-text, #1a1a1a);animation:ProseMirror-cursor-blink 1.1s steps(2, start) infinite}@keyframes ProseMirror-cursor-blink{to{visibility:hidden}}.dm-editor .ProseMirror-focused .ProseMirror-gapcursor{display:block}.dm-editor .tableWrapper{overflow-x:auto}.dm-editor table{border-collapse:collapse;table-layout:fixed;width:100%;overflow:hidden}.dm-editor td,.dm-editor th{vertical-align:top;box-sizing:border-box;position:relative}.dm-editor .column-resize-handle{position:absolute;right:-1.5px;top:0;bottom:0;width:2px;z-index:20;background-color:var(--dm-accent, #2563eb);pointer-events:none}.dm-editor .dm-mouse-drag .column-resize-handle{display:none}.dm-editor .ProseMirror.resize-cursor{cursor:ew-resize;cursor:col-resize}.dm-editor .ProseMirror.resize-cursor.dm-mouse-drag{cursor:auto}.dm-editor .selectedCell::after{z-index:2;position:absolute;content:"";left:0;right:0;top:0;bottom:0;background:var(--dm-table-selected-bg, rgba(66, 133, 244, 0.15));pointer-events:none}.dm-editor .selectedCell::selection,.dm-editor .selectedCell *::selection{background:rgba(0,0,0,0) !important;color:inherit !important}.dm-editor{display:block;position:relative;box-sizing:border-box;background:var(--dm-editor-bg);color:var(--dm-editor-text);font-family:var(--dm-editor-font-family);font-size:var(--dm-editor-font-size);line-height:var(--dm-editor-line-height);border:var(--dm-editor-border);border-radius:var(--dm-editor-border-radius);box-shadow:var(--dm-editor-shadow, none);overflow:hidden;color-scheme:var(--dm-color-scheme, light)}.dm-editor .ProseMirror{padding:var(--dm-editor-padding);min-height:6rem}.dm-editor .ProseMirror:focus-visible{outline:none}.dm-editor:focus-within{box-shadow:var(--dm-editor-focus-ring, var(--dm-editor-shadow, none))}.dm-editor .ProseMirror ::selection{background:var(--dm-selection)}.dm-toolbar+.dm-editor{border-top-left-radius:0;border-top-right-radius:0;border-top:none}@keyframes dm-fade-in{from{opacity:0}to{opacity:1}}.dm-editor .ProseMirror :where(p,h1,h2,h3,h4,h5,h6){padding-inline:var(--dm-block-inline-padding)}.dm-editor .ProseMirror h1,.dm-editor .ProseMirror h2,.dm-editor .ProseMirror h3,.dm-editor .ProseMirror h4,.dm-editor .ProseMirror h5,.dm-editor .ProseMirror h6{line-height:1.25}.dm-editor .ProseMirror h3{font-size:1.25em}.dm-editor .ProseMirror h4{font-size:1.1em}.dm-editor .ProseMirror h6{font-size:.9em;color:var(--dm-muted, #666)}.dm-editor .ProseMirror code{background:var(--dm-code-bg);color:var(--dm-code-text);font-family:var(--dm-code-font);font-size:.875em;padding:.15em .35em;border:1px solid var(--dm-border-color);border-radius:var(--dm-code-border-radius)}.dm-editor .ProseMirror pre{background:var(--dm-code-block-bg);color:var(--dm-code-block-text);font-family:var(--dm-code-font);font-size:.875em;padding:1em;border-radius:.375rem;overflow-x:auto;margin:.75em 0}.dm-editor .ProseMirror pre code{background:none;color:inherit;padding:0;border:none;border-radius:0;font-size:inherit}.dm-editor .ProseMirror blockquote{border-left:var(--dm-blockquote-border);color:var(--dm-blockquote-color);margin:.5em 0;padding:.1em var(--dm-block-inline-padding) .1em .8em}.dm-editor .ProseMirror ul,.dm-editor .ProseMirror ol{margin:.75em 0;padding-left:1.5em;padding-right:var(--dm-block-inline-padding)}.dm-editor .ProseMirror ul:not([data-type=taskList]) li,.dm-editor .ProseMirror ol li{margin:.25em 0}.dm-editor .ProseMirror ul:not([data-type=taskList]) li>p,.dm-editor .ProseMirror ol li>p{margin:.1em 0;padding-inline:.3em 0}.dm-editor .ProseMirror ul:not([data-type=taskList]) li>:not(p:first-child):not(ul):not(ol),.dm-editor .ProseMirror ol li>:not(p:first-child):not(ul):not(ol){margin-inline-start:var(--dm-block-children-indent, 1.5rem);margin-top:.25rem}.dm-editor .ProseMirror hr{border:none;border-top:2px solid var(--dm-hr-color);margin:1.5em 0}.dm-editor .ProseMirror a{color:var(--dm-link-color)}.dm-editor .ProseMirror a:hover{color:var(--dm-link-hover-color)}.dm-editor .ProseMirror mark{color:inherit}.dm-editor .ProseMirror img{max-width:100%;height:auto;display:block;margin:.75em 0}.dm-editor .ProseMirror img.ProseMirror-selectednode{outline:2px solid var(--dm-accent, #2563eb)}.dm-editor .ProseMirror table{border:var(--dm-table-border);margin:.75em 0;font-size:.9375rem;line-height:1.5}.dm-editor .ProseMirror table td,.dm-editor .ProseMirror table th{border:var(--dm-table-border);padding:.375em .625em;min-width:100px}.dm-editor .ProseMirror table th{background:var(--dm-table-header-bg);font-weight:600;text-align:left}.dm-editor .ProseMirror table td>p,.dm-editor .ProseMirror table th>p{margin:0}.dm-editor .ProseMirror pre code .hljs-doctag,.dm-editor .ProseMirror pre code .hljs-keyword,.dm-editor .ProseMirror pre code .hljs-meta .hljs-keyword,.dm-editor .ProseMirror pre code .hljs-template-tag,.dm-editor .ProseMirror pre code .hljs-template-variable,.dm-editor .ProseMirror pre code .hljs-type,.dm-editor .ProseMirror pre code .hljs-variable.language_{color:var(--dm-syntax-keyword)}.dm-editor .ProseMirror pre code .hljs-title,.dm-editor .ProseMirror pre code .hljs-title.class_,.dm-editor .ProseMirror pre code .hljs-title.class_.inherited__,.dm-editor .ProseMirror pre code .hljs-title.function_{color:var(--dm-syntax-entity)}.dm-editor .ProseMirror pre code .hljs-attr,.dm-editor .ProseMirror pre code .hljs-attribute,.dm-editor .ProseMirror pre code .hljs-literal,.dm-editor .ProseMirror pre code .hljs-meta,.dm-editor .ProseMirror pre code .hljs-number,.dm-editor .ProseMirror pre code .hljs-operator,.dm-editor .ProseMirror pre code .hljs-variable,.dm-editor .ProseMirror pre code .hljs-selector-attr,.dm-editor .ProseMirror pre code .hljs-selector-class,.dm-editor .ProseMirror pre code .hljs-selector-id{color:var(--dm-syntax-constant)}.dm-editor .ProseMirror pre code .hljs-regexp,.dm-editor .ProseMirror pre code .hljs-string,.dm-editor .ProseMirror pre code .hljs-meta .hljs-string{color:var(--dm-syntax-string)}.dm-editor .ProseMirror pre code .hljs-built_in,.dm-editor .ProseMirror pre code .hljs-symbol{color:var(--dm-syntax-variable)}.dm-editor .ProseMirror pre code .hljs-comment,.dm-editor .ProseMirror pre code .hljs-code,.dm-editor .ProseMirror pre code .hljs-formula{color:var(--dm-syntax-comment)}.dm-editor .ProseMirror pre code .hljs-name,.dm-editor .ProseMirror pre code .hljs-quote,.dm-editor .ProseMirror pre code .hljs-selector-tag,.dm-editor .ProseMirror pre code .hljs-selector-pseudo{color:var(--dm-syntax-tag)}.dm-editor .ProseMirror pre code .hljs-section{color:var(--dm-syntax-constant);font-weight:bold}.dm-editor .ProseMirror pre code .hljs-bullet{color:var(--dm-syntax-tag)}.dm-editor .ProseMirror pre code .hljs-addition{color:var(--dm-syntax-addition);background-color:var(--dm-syntax-addition-bg)}.dm-editor .ProseMirror pre code .hljs-deletion{color:var(--dm-syntax-deletion);background-color:var(--dm-syntax-deletion-bg)}.dm-editor .ProseMirror pre code .hljs-emphasis{font-style:italic}.dm-editor .ProseMirror pre code .hljs-strong{font-weight:bold}.dm-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:var(--dm-toolbar-justify, flex-start);gap:var(--dm-toolbar-gap);padding:var(--dm-toolbar-padding);background:var(--dm-toolbar-bg);border:1px solid var(--dm-border-color, #e5e7eb);border-bottom:1px solid var(--dm-border-color, #e5e7eb);border-radius:var(--dm-toolbar-border-radius);box-shadow:var(--dm-editor-shadow, none)}.dm-toolbar-group{display:flex;align-items:center;gap:var(--dm-toolbar-gap)}.dm-toolbar-button{display:inline-flex;align-items:center;justify-content:center;width:var(--dm-button-size);height:var(--dm-button-size);padding:0;border:none;border-radius:var(--dm-button-border-radius);background:rgba(0,0,0,0);color:var(--dm-button-color);cursor:pointer;transition:background-color .15s,color .15s;font-size:.875rem;line-height:1}.dm-toolbar-button:hover{background:var(--dm-button-hover-bg)}.dm-toolbar-button--active{background:var(--dm-button-active-bg);color:var(--dm-button-active-color)}.dm-toolbar-button[aria-expanded=true]{background:var(--dm-button-hover-bg)}.dm-toolbar-button--disabled,.dm-toolbar-button:disabled{opacity:var(--dm-button-disabled-opacity);cursor:not-allowed;pointer-events:none}.dm-toolbar-button:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-toolbar-button svg{width:1.125rem;height:1.125rem}.dm-toolbar-dropdown-trigger{position:relative;width:auto;padding:0 .375rem;gap:.125rem}.dm-toolbar-dropdown-trigger[aria-expanded=true]{background:var(--dm-button-hover-bg)}.dm-toolbar-color-indicator{position:absolute;bottom:.15rem;left:.25rem;width:1.375rem;height:.3rem;border-radius:2px}.dm-toolbar-trigger-label{display:inline-block;vertical-align:middle;text-align:center;font-size:.8125rem;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:2.5rem}.dm-toolbar-trigger-label svg{width:1.125rem;height:1.125rem}[data-dropdown=fontFamily] .dm-toolbar-trigger-label{width:5rem}.dm-toolbar-button .dm-dropdown-caret{width:.625rem;height:.625rem;flex-shrink:0}.dm-toolbar-dropdown-wrapper{position:relative}.dm-toolbar-dropdown-panel{position:absolute;z-index:50;display:flex;flex-direction:column;gap:.125rem;min-width:8rem;padding:.25rem;background:var(--dm-bg, #fff);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.5rem;box-shadow:0 4px 16px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.04);animation:dm-fade-in .2s ease}.dm-toolbar-dropdown-panel.dm-color-palette{padding:.5rem;border-radius:.75rem}.dm-toolbar-dropdown-panel[data-display-mode=icon]{min-width:0}.dm-toolbar-dropdown-panel[data-display-mode=icon] .dm-toolbar-dropdown-item{width:auto;padding:.375rem;justify-content:center}.dm-toolbar-dropdown-panel[data-display-mode=text]{min-width:0}.dm-toolbar-dropdown-panel[data-display-mode=text] .dm-toolbar-dropdown-item{gap:0}.dm-toolbar-dropdown-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.375rem .5rem;border:none;border-radius:var(--dm-button-border-radius);background:rgba(0,0,0,0);color:var(--dm-button-color);cursor:pointer;font-size:.8125rem;line-height:1.4;text-align:left;white-space:nowrap;transition:background-color .15s}.dm-toolbar-dropdown-item:hover{background:var(--dm-button-hover-bg)}.dm-toolbar-dropdown-item--active{color:var(--dm-button-active-color);background:var(--dm-button-active-bg)}.dm-toolbar-dropdown-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-toolbar-dropdown-item svg{width:1rem;height:1rem;flex-shrink:0}.dm-toolbar-separator{width:1px;height:1.25rem;background:var(--dm-separator-color);margin:0 var(--dm-separator-margin)}.dm-color-palette{display:grid;grid-template-columns:repeat(var(--dm-palette-columns, 10), 1fr);gap:.375rem;padding:.375rem;min-width:auto;width:max-content}.dm-color-palette-reset{grid-column:1/-1;display:flex;align-items:center;gap:.375rem;width:100%;padding:.375rem .5rem;margin-bottom:.375rem;border:none;border-radius:.375rem;background:rgba(0,0,0,0);color:var(--dm-button-color, #1a1a1a);cursor:pointer;font-size:.8125rem;line-height:1.4;text-align:left;white-space:nowrap;transition:background-color .15s}.dm-color-palette-reset:hover{background:var(--dm-button-hover-bg, rgba(0, 0, 0, 0.06))}.dm-color-palette-reset:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-color-palette-reset svg{width:.875rem;height:.875rem;flex-shrink:0}.dm-color-swatch{position:relative;width:1.5rem;height:1.5rem;padding:0;border:1px solid rgba(0,0,0,.06);border-radius:50%;cursor:pointer;transition:transform .1s,box-shadow .1s}.dm-color-swatch:hover{transform:scale(1.15);z-index:1;box-shadow:0 0 0 2px var(--dm-toolbar-bg, #f8f9fa),0 0 0 3px var(--dm-accent, #2563eb)}.dm-color-swatch:focus-visible{box-shadow:0 0 0 2px var(--dm-toolbar-bg, #f8f9fa),0 0 0 3px var(--dm-accent, #2563eb)}.dm-color-swatch--active{box-shadow:0 0 0 2px var(--dm-toolbar-bg, #f8f9fa),0 0 0 3px var(--dm-accent, #2563eb)}.dm-color-swatch--active::after{content:"";position:absolute;inset:0;border-radius:50%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M12 5L6.5 11 4 8.5' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' opacity='0.3'/%3E%3Cpath d='M12 5L6.5 11 4 8.5' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat}.dm-theme-dark .dm-color-swatch,.dm-theme-auto .dm-color-swatch{border-color:hsla(0,0%,100%,.15)}@media(prefers-color-scheme: dark){.dm-theme-auto .dm-color-swatch{border-color:hsla(0,0%,100%,.15)}}.dm-bubble-menu{--dm-toolbar-padding: 0.25rem;--dm-toolbar-gap: 0.125rem;--dm-button-size: 1.75rem;--dm-button-border-radius: 0.25rem;--dm-button-color: var(--dm-text, #1a1a1a);--dm-button-hover-bg: var(--dm-hover, rgba(0, 0, 0, 0.06));--dm-button-active-bg: var(--dm-accent-surface, rgba(37, 99, 235, 0.1));--dm-button-active-color: var(--dm-accent, #2563eb);--dm-button-disabled-opacity: 0.4}.dm-bubble-menu .dm-toolbar-button svg:not(.dm-dropdown-caret){width:1rem;height:1rem}.dm-bubble-menu .dm-toolbar-separator{width:1px;height:1.125rem;background:var(--dm-separator-color, var(--dm-border-color, #e0e0e0));margin:0 .125rem;flex-shrink:0}.dm-bubble-menu{position:absolute;display:flex;align-items:center;gap:var(--dm-toolbar-gap);padding:var(--dm-toolbar-padding);background:var(--dm-bg, #fff);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.5rem;box-shadow:0 4px 16px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.04);visibility:hidden;opacity:0;z-index:50}.dm-bubble-menu[data-show]{visibility:visible;opacity:1;transition:opacity .15s ease}.dm-floating-menu{position:absolute;display:flex;flex-direction:column;gap:.25rem;min-width:16rem;max-height:22rem;overflow-y:auto;padding:.375rem;background:var(--dm-toolbar-bg, var(--dm-bg, #ffffff));border:1px solid var(--dm-border-color, #e5e7eb);border-radius:var(--dm-toolbar-border-radius, 0.5rem);box-shadow:var(--dm-popover-shadow, 0 10px 25px rgba(0, 0, 0, 0.08), 0 4px 10px rgba(0, 0, 0, 0.04));visibility:hidden;opacity:0;transition:opacity .15s ease,visibility .15s;z-index:var(--dm-z-popover, 50);scrollbar-width:thin;scrollbar-color:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18)) rgba(0,0,0,0)}.dm-floating-menu::-webkit-scrollbar{width:6px}.dm-floating-menu::-webkit-scrollbar-track{background:rgba(0,0,0,0);margin:.375rem 0}.dm-floating-menu::-webkit-scrollbar-thumb{background:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18));border-radius:3px;transition:background-color .15s}.dm-floating-menu::-webkit-scrollbar-thumb:hover{background:var(--dm-scrollbar-thumb-hover, rgba(0, 0, 0, 0.28))}.dm-floating-menu[data-show]{visibility:visible;opacity:1}.dm-floating-menu-group-label{padding:.375rem .5rem .125rem;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--dm-muted, #999);user-select:none}.dm-floating-menu-group{display:flex;flex-direction:column;gap:.125rem}.dm-floating-menu-group+.dm-floating-menu-group:not(:has(+.dm-floating-menu-group-label)){margin-top:.25rem}.dm-floating-menu-group-wrapper{display:flex;flex-direction:column}.dm-floating-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.3125rem .5rem;border:none;border-radius:var(--dm-button-border-radius, 0.375rem);background:rgba(0,0,0,0);color:var(--dm-button-color, inherit);text-align:left;font:inherit;cursor:pointer;transition:background-color .12s}.dm-floating-menu-item:hover:not([aria-disabled=true]),.dm-floating-menu-item:focus:not([aria-disabled=true]){background:var(--dm-button-hover-bg, rgba(0, 0, 0, 0.04))}.dm-floating-menu-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-2px}.dm-floating-menu-item[aria-disabled=true],.dm-floating-menu-item:disabled{opacity:var(--dm-button-disabled-opacity, 0.45);cursor:not-allowed}.dm-floating-menu-item-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--dm-editor-text, inherit)}.dm-floating-menu-item-icon svg{width:1.125rem;height:1.125rem}.dm-floating-menu-item-label{flex:1;min-width:0;font-size:.875rem;color:var(--dm-editor-text, inherit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-floating-menu-item-shortcut{flex-shrink:0;padding:.0625rem .375rem;font-family:var(--dm-code-font, ui-monospace, monospace);font-size:.6875rem;color:var(--dm-muted, #999);background:var(--dm-surface, #f8f9fa);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.25rem;user-select:none}.dm-link-popover{position:fixed;display:flex;align-items:center;gap:.25rem;padding:.25rem;background:var(--dm-surface);border:1px solid var(--dm-border-color);border-radius:.25rem;box-shadow:var(--dm-popover-shadow, 0 4px 12px rgba(0, 0, 0, 0.12));font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s;z-index:60}.dm-link-popover[data-show]{visibility:visible;opacity:1}.dm-link-popover-input{border:1px solid var(--dm-border-color);border-radius:.25rem;padding:.25rem .5rem;font-size:.8125rem;font-family:inherit;min-width:14rem;outline:none;background:var(--dm-bg);color:var(--dm-text)}.dm-link-popover-input:focus{border-color:var(--dm-accent)}.dm-link-popover-btn{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:none;border-radius:.25rem;background:rgba(0,0,0,0);color:var(--dm-text);cursor:pointer;transition:background-color .15s,color .15s}.dm-link-popover-btn:hover{background:var(--dm-hover)}.dm-link-popover-btn:focus-visible{outline:2px solid var(--dm-accent);outline-offset:1px}.dm-link-popover-btn svg{width:.875rem;height:.875rem}.dm-link-popover-apply:hover{color:var(--dm-accent)}.dm-link-popover-remove:hover{color:#dc2626}.dm-link-pending{background-color:color-mix(in srgb, var(--dm-accent) 12%, transparent);border-radius:1px}.dm-editor--has-block-handle{overflow:visible}.dm-editor--has-block-handle .ProseMirror{padding-left:var(--dm-block-handle-gutter, 4rem)}.dm-editor--has-block-handle .ProseMirror-selectednode,.dm-editor--has-block-handle .ProseMirror-selectednoderange{position:relative;outline:none}.dm-editor--has-block-handle .ProseMirror-selectednode::before,.dm-editor--has-block-handle .ProseMirror-selectednoderange::before{content:"";position:absolute;inset:-0.25rem;background-color:var(--dm-block-selected-halo, rgba(112, 207, 248, 0.25));border-radius:.25rem;pointer-events:none;z-index:-1}.dm-block-handle{position:absolute;left:var(--dm-block-handle-left, -0.5rem);display:flex;align-items:center;gap:2px;padding:2px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s;z-index:var(--dm-z-handle, 25)}.dm-block-handle[data-show]{opacity:1;visibility:visible;pointer-events:auto}.dm-block-handle-btn{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.5rem;padding:0;border:none;background:rgba(0,0,0,0);color:var(--dm-muted, #999);cursor:pointer;border-radius:3px;transition:background-color .1s,color .1s;user-select:none;-webkit-user-select:none;touch-action:none}.dm-block-handle-btn:hover{background:var(--dm-button-hover-bg, rgba(0, 0, 0, 0.04));color:var(--dm-editor-text, inherit)}.dm-block-handle-btn:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-1px}.dm-block-handle-btn svg{width:1rem;height:1rem;pointer-events:none}.dm-block-handle-drag{cursor:grab}.dm-block-handle-drag:active{cursor:grabbing}.dm-block-handle-plus:hover{color:var(--dm-accent, #2563eb)}.dm-block-drop-indicator{position:absolute;height:2px;background:var(--dm-accent, #2563eb);border-radius:1px;pointer-events:none;z-index:5;display:none;box-shadow:0 0 0 1px rgba(37,99,235,.15);transform:translateY(3px);transition:left 80ms ease-out,width 80ms ease-out,top 80ms ease-out,transform 80ms ease-out}.dm-block-drop-indicator[data-show]{display:block}.dm-block-drop-indicator[data-mode=nested]{height:0;background:rgba(0,0,0,0);border-radius:0;border-top:2px dashed var(--dm-accent, #2563eb);box-shadow:none;transform:translateY(-2px)}.dm-block-handle-dragging .ProseMirror-dropcursor{display:none}.dm-slash-command-menu{position:absolute;display:flex;flex-direction:column;gap:.25rem;min-width:17rem;max-height:22rem;overflow-y:auto;padding:.375rem;background:var(--dm-toolbar-bg, var(--dm-bg, #ffffff));border:1px solid var(--dm-border-color, #e5e7eb);border-radius:var(--dm-toolbar-border-radius, 0.5rem);box-shadow:var(--dm-popover-shadow, 0 10px 25px rgba(0, 0, 0, 0.08), 0 4px 10px rgba(0, 0, 0, 0.04));z-index:var(--dm-z-popover, 50);scrollbar-width:thin;scrollbar-color:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18)) rgba(0,0,0,0)}.dm-slash-command-menu::-webkit-scrollbar{width:6px}.dm-slash-command-menu::-webkit-scrollbar-track{background:rgba(0,0,0,0);margin:.375rem 0}.dm-slash-command-menu::-webkit-scrollbar-thumb{background:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18));border-radius:3px;transition:background-color .15s}.dm-slash-command-menu::-webkit-scrollbar-thumb:hover{background:var(--dm-scrollbar-thumb-hover, rgba(0, 0, 0, 0.28))}.dm-slash-command-query{color:var(--dm-accent, #2563eb)}.dm-slash-command-group-label{padding:.375rem .5rem .125rem;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--dm-muted, #999);user-select:none}.dm-slash-command-group{display:flex;flex-direction:column;gap:.125rem}.dm-slash-command-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.375rem .5rem;border:none;border-radius:var(--dm-button-border-radius, 0.375rem);background:rgba(0,0,0,0);color:var(--dm-editor-text, inherit);text-align:left;font:inherit;cursor:pointer;transition:background-color .1s}.dm-slash-command-item[data-selected]{background:var(--dm-button-hover-bg, rgba(0, 0, 0, 0.04))}.dm-slash-command-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-2px}.dm-slash-command-item-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--dm-editor-text, inherit)}.dm-slash-command-item-icon svg{width:1.125rem;height:1.125rem}.dm-slash-command-item-text{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.25}.dm-slash-command-item-label{font-size:.875rem;font-weight:500;color:var(--dm-editor-text, inherit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-slash-command-item-description{font-size:.75rem;color:var(--dm-muted, #999);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-slash-command-item-shortcut{flex-shrink:0;padding:.0625rem .375rem;font-family:var(--dm-code-font, ui-monospace, monospace);font-size:.6875rem;color:var(--dm-muted, #999);background:var(--dm-surface, #f8f9fa);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.25rem;user-select:none}.dm-slash-command-empty{padding:.5rem .75rem;font-size:.8125rem;color:var(--dm-muted, #999);user-select:none}.dm-block-context-menu{position:absolute;display:none;flex-direction:column;min-width:12rem;max-height:20rem;overflow-y:auto;overscroll-behavior:contain;padding:.25rem;background:var(--dm-toolbar-bg, var(--dm-bg, #ffffff));border:1px solid var(--dm-border-color, #e5e7eb);border-radius:var(--dm-toolbar-border-radius, 0.5rem);box-shadow:var(--dm-popover-shadow, 0 10px 25px rgba(0, 0, 0, 0.08), 0 4px 10px rgba(0, 0, 0, 0.04));z-index:var(--dm-z-popover, 50)}.dm-block-context-menu[data-show]{display:flex}.dm-block-context-menu{scrollbar-width:thin;scrollbar-color:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18)) rgba(0,0,0,0)}.dm-block-context-menu::-webkit-scrollbar{width:6px}.dm-block-context-menu::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.dm-block-context-menu::-webkit-scrollbar-thumb{background:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18));border-radius:3px}.dm-block-context-menu::-webkit-scrollbar-thumb:hover{background:var(--dm-scrollbar-thumb-hover, rgba(0, 0, 0, 0.28))}.dm-block-context-menu-group{display:flex;flex-direction:column;gap:1px}.dm-block-context-menu-group-label{padding:.5rem .5rem .125rem;margin-top:.25rem;border-top:1px solid var(--dm-border-color, #e5e7eb);font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--dm-muted, #999);user-select:none}.dm-block-context-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.3125rem .5rem;border:none;border-radius:var(--dm-button-border-radius, 0.375rem);background:rgba(0,0,0,0);color:var(--dm-editor-text, inherit);text-align:left;font:inherit;font-size:.875rem;cursor:pointer;transition:background-color .1s}.dm-block-context-menu-item:hover,.dm-block-context-menu-item:focus-visible{background:var(--dm-button-hover-bg, rgba(0, 0, 0, 0.04))}.dm-block-context-menu-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-2px}.dm-block-context-menu-item-icon{display:inline-flex;align-items:center;justify-content:center;width:1.125rem;height:1.125rem;flex-shrink:0;color:var(--dm-muted, #999)}.dm-block-context-menu-item-icon svg{width:1rem;height:1rem}.dm-block-context-menu-item-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ProseMirror .dm-block-context-active{background-color:var(--dm-block-context-active-bg, rgba(55, 53, 47, 0.06));border-radius:.25rem;box-shadow:0 0 0 4px var(--dm-block-context-active-bg, rgba(55, 53, 47, 0.06));transition:background-color .12s ease,box-shadow .12s ease}.dm-editor .ProseMirror .is-empty::before{content:attr(data-placeholder);float:left;color:var(--dm-placeholder-color);pointer-events:none;height:0}.dm-editor .ProseMirror ul[data-type=taskList]{list-style:none;padding-left:1.5em}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]{position:relative;margin:.25em 0}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]>label{position:absolute;left:var(--dm-task-checkbox-left, -1.15em);top:var(--dm-task-checkbox-top, 0.45em);display:flex;align-items:center;user-select:none}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]>label input[type=checkbox]{width:1em;height:1em;margin:0;padding:0;cursor:pointer;accent-color:var(--dm-accent, #2563eb)}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]>div>p{margin:.1em 0;padding-inline:.3em 0}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]>div>:not(p:first-child):not(ul):not(ol){margin-inline-start:var(--dm-block-children-indent, 1.5rem);margin-top:.25rem}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem][data-checked=true]>div>p:first-child{text-decoration:line-through;opacity:.6}.dm-editor .ProseMirror .mention{display:inline;background:var(--dm-mention-bg);color:var(--dm-mention-color);border-radius:var(--dm-mention-border-radius);padding:.1em .3em;font-weight:500;font-size:.95em;white-space:nowrap}.dm-editor .ProseMirror .mention-suggestion{text-decoration:underline;text-decoration-color:var(--dm-accent, #2563eb);text-underline-offset:2px}.dm-mention-suggestion{position:absolute;z-index:100;min-width:12rem;max-width:20rem;padding:.25rem;background:var(--dm-surface, #f8f9fa);border:1px solid var(--dm-border-color, #e0e0e0);border-radius:.25rem;box-shadow:0 4px 12px rgba(0,0,0,.12);animation:dm-fade-in .2s ease}.dm-mention-suggestion-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.375rem .5rem;border:none;border-radius:.25rem;background:rgba(0,0,0,0);color:var(--dm-text, #1a1a1a);cursor:pointer;font-size:.8125rem;line-height:1.4;text-align:left;transition:background-color .1s}.dm-mention-suggestion-item:hover,.dm-mention-suggestion-item--selected{background:var(--dm-hover, rgba(0, 0, 0, 0.06))}.dm-mention-suggestion-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-mention-suggestion-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-mention-suggestion-empty{padding:.5rem;text-align:center;color:var(--dm-text, #1a1a1a);opacity:.5;font-size:.8125rem}.dm-editor .ProseMirror img[style*="float: left"],.dm-editor .ProseMirror img[style*="float: right"]{max-width:60%}.dm-editor .ProseMirror .dm-image-resizable{position:relative;display:inline-block;max-width:100%;margin:.75em 0;line-height:0}.dm-editor .ProseMirror .dm-image-resizable img{display:block;max-width:100%;height:auto}.dm-editor .ProseMirror .dm-image-resizable[data-float=left]{float:left;margin:0 1em 1em 0}.dm-editor .ProseMirror .dm-image-resizable[data-float=right]{float:right;margin:0 0 1em 1em}.dm-editor .ProseMirror .dm-image-resizable[data-float=center]{display:block;width:fit-content;margin-left:auto;margin-right:auto}.dm-editor .ProseMirror .dm-image-resizable[data-float=left],.dm-editor .ProseMirror .dm-image-resizable[data-float=right]{max-width:60%;z-index:1}.dm-editor .ProseMirror .dm-image-resizable.ProseMirror-selectednode{outline:2px solid var(--dm-accent, #2563eb)}.dm-editor .ProseMirror .dm-image-resizable.ProseMirror-selectednode .dm-image-handle{display:block}.dm-editor .ProseMirror .dm-image-handle{display:none;position:absolute;width:8px;height:8px;background:var(--dm-accent, #2563eb);border:1px solid #fff;border-radius:1px;z-index:5}.dm-editor .ProseMirror .dm-image-handle-nw{top:-4px;left:-4px;cursor:nw-resize}.dm-editor .ProseMirror .dm-image-handle-ne{top:-4px;right:-4px;cursor:ne-resize}.dm-editor .ProseMirror .dm-image-handle-sw{bottom:-4px;left:-4px;cursor:sw-resize}.dm-editor .ProseMirror .dm-image-handle-se{bottom:-4px;right:-4px;cursor:se-resize}.dm-image-popover{position:fixed;display:flex;align-items:center;gap:.25rem;padding:.25rem;background:var(--dm-surface);border:1px solid var(--dm-border-color);border-radius:.25rem;box-shadow:var(--dm-popover-shadow, 0 4px 12px rgba(0, 0, 0, 0.12));font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s;z-index:60}.dm-image-popover[data-show]{visibility:visible;opacity:1}.dm-image-popover-input{border:1px solid var(--dm-border-color);border-radius:.25rem;padding:.25rem .5rem;font-size:.8125rem;font-family:inherit;min-width:14rem;outline:none;background:var(--dm-bg);color:var(--dm-text)}.dm-image-popover-input:focus{border-color:var(--dm-accent)}.dm-image-popover-btn{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:none;border-radius:.25rem;background:rgba(0,0,0,0);color:var(--dm-text);cursor:pointer;transition:background-color .15s,color .15s}.dm-image-popover-btn:hover{background:var(--dm-hover)}.dm-image-popover-btn:focus-visible{outline:2px solid var(--dm-accent);outline-offset:1px}.dm-image-popover-btn svg{width:.875rem;height:.875rem}.dm-image-popover-apply:hover,.dm-image-popover-browse:hover{color:var(--dm-accent)}.dm-editor.dm-dragover{outline:2px dashed var(--dm-accent);outline-offset:-2px}.dm-editor.dm-dragover::after{content:"";position:absolute;inset:0;background:var(--dm-accent);opacity:.05;pointer-events:none;z-index:10}.dm-editor .ProseMirror div[data-type=details]{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;border:var(--dm-details-border);border-radius:.375rem;margin:.75em 0}.dm-editor .ProseMirror div[data-type=details]>div{display:contents}.dm-editor .ProseMirror div[data-type=details]>button[type=button]{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;align-self:center;margin-right:10px;border:none;background:rgba(0,0,0,0);cursor:pointer;color:var(--dm-muted);border-radius:50%}.dm-editor .ProseMirror div[data-type=details]>button[type=button]::before{content:"";display:block;width:.4em;height:.4em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s ease}.dm-editor .ProseMirror div[data-type=details]>button[type=button]:hover{color:var(--dm-text);background:var(--dm-hover)}.dm-editor .ProseMirror div[data-type=details]>button[type=button]:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-editor .ProseMirror div[data-type=details]::before{content:"";grid-column:1/-1;grid-row:1;background:var(--dm-details-bg);border-radius:.375rem}.dm-editor .ProseMirror div[data-type=details].is-open::before{border-radius:.375rem .375rem 0 0}.dm-editor .ProseMirror div[data-type=details] summary{grid-column:1;grid-row:1;display:block;padding:.5em .5em .5em .75em;font-weight:var(--dm-details-summary-font-weight);min-height:0}.dm-editor .ProseMirror div[data-type=details] summary::-webkit-details-marker{display:none}.dm-editor .ProseMirror div[data-type=details] summary{list-style:none}.dm-editor .ProseMirror div[data-type=details] div[data-details-content]{grid-column:1/-1;grid-row:2;padding:.5em .75em;border-top:var(--dm-details-border)}.dm-editor .ProseMirror div[data-type=details].ProseMirror-selectednode{outline:none}.dm-editor .ProseMirror div[data-type=details].is-open>button[type=button]::before{transform:rotate(45deg)}.dm-editor .ProseMirror .invisible-char{color:var(--dm-invisible-char-color, var(--dm-muted, #999));pointer-events:none;user-select:none}.dm-editor .ProseMirror [data-char=space]{position:relative}.dm-editor .ProseMirror [data-char=space]::after{content:"·";position:absolute;inset:0;text-align:center;color:var(--dm-invisible-char-color, var(--dm-muted, #999));pointer-events:none}.dm-editor .ProseMirror [data-char=nbsp]{position:relative}.dm-editor .ProseMirror [data-char=nbsp]::after{content:"°";position:absolute;inset:0;text-align:center;color:var(--dm-invisible-char-color, var(--dm-muted, #999));pointer-events:none}.dm-emoji-picker{position:absolute;z-index:100;width:20rem;max-height:22rem;display:flex;flex-direction:column;background:var(--dm-surface, #f8f9fa);border:1px solid var(--dm-border-color, #e0e0e0);border-radius:.25rem;box-shadow:0 4px 12px rgba(0,0,0,.12);overflow:hidden;animation:dm-fade-in .2s ease}.dm-emoji-picker-search{flex-shrink:0;padding:.5rem;border-bottom:1px solid var(--dm-border-color, #e0e0e0)}.dm-emoji-picker-search input{width:100%;padding:.375rem .5rem;border:1px solid var(--dm-border-color, #e0e0e0);border-radius:.25rem;background:var(--dm-bg, #ffffff);color:var(--dm-text, #1a1a1a);font-size:.8125rem;outline:none;box-sizing:border-box}.dm-emoji-picker-search input:focus{border-color:var(--dm-accent, #2563eb)}.dm-emoji-picker-search input::placeholder{color:var(--dm-muted, #999999)}.dm-emoji-picker-tabs{display:flex;align-items:center;flex-shrink:0;padding:.375rem .5rem;gap:.1rem;border-bottom:1px solid var(--dm-border-color, #e0e0e0);overflow-x:auto;scrollbar-width:none}.dm-emoji-picker-tabs::-webkit-scrollbar{display:none}.dm-emoji-picker-tab{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;flex-shrink:0;padding:0;border:none;border-radius:.375rem;background:rgba(0,0,0,0);cursor:pointer;font-size:1.25rem;line-height:1;opacity:.5;transition:opacity .15s,background-color .15s}.dm-emoji-picker-tab:hover{opacity:1;background:var(--dm-hover, rgba(0, 0, 0, 0.06))}.dm-emoji-picker-tab:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-emoji-picker-tab--active{opacity:1;background:var(--dm-active, rgba(0, 0, 0, 0.12))}.dm-emoji-picker-grid{flex:1;overflow-y:auto;padding:.25rem .5rem .5rem;display:grid;grid-template-columns:repeat(8, 1fr);gap:.125rem;align-content:start}.dm-emoji-picker-category-label{grid-column:1/-1;font-size:.6875rem;font-weight:600;color:var(--dm-text, #1a1a1a);opacity:.6;padding:.375rem 0 .125rem;text-transform:uppercase;letter-spacing:.03em}.dm-emoji-swatch{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:.25rem;background:rgba(0,0,0,0);cursor:pointer;font-size:1.25rem;line-height:1;transition:background-color .1s,transform .1s}.dm-emoji-swatch:hover{background:var(--dm-hover, rgba(0, 0, 0, 0.06));transform:scale(1.15)}.dm-emoji-swatch:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-emoji-picker-empty{grid-column:1/-1;padding:1rem;text-align:center;color:var(--dm-text, #1a1a1a);opacity:.5;font-size:.8125rem}.dm-emoji-suggestion{position:absolute;z-index:100;min-width:12rem;max-width:18rem;padding:.25rem;background:var(--dm-surface, #f8f9fa);border:1px solid var(--dm-border-color, #e0e0e0);border-radius:.25rem;box-shadow:0 4px 12px rgba(0,0,0,.12);animation:dm-fade-in .2s ease}.dm-emoji-suggestion-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.375rem .5rem;border:none;border-radius:.25rem;background:rgba(0,0,0,0);color:var(--dm-text, #1a1a1a);cursor:pointer;font-size:.8125rem;line-height:1.4;text-align:left;transition:background-color .1s}.dm-emoji-suggestion-item:hover,.dm-emoji-suggestion-item--selected{background:var(--dm-hover, rgba(0, 0, 0, 0.06))}.dm-emoji-suggestion-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-emoji-suggestion-emoji{font-size:1.125rem;line-height:1;flex-shrink:0}.dm-emoji-suggestion-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-emoji-suggestion-empty{padding:.5rem;text-align:center;color:var(--dm-text, #1a1a1a);opacity:.5;font-size:.8125rem}.dm-editor .ProseMirror span.emoji{cursor:default;font-style:normal;padding:0 .05em}.dm-editor .ProseMirror span.emoji.ProseMirror-selectednode{outline:2px solid var(--dm-accent, #2563eb);border-radius:.15em}.dm-editor .dm-table-container{position:relative}.dm-table-col-handle,.dm-table-row-handle{position:absolute;z-index:10;display:none;align-items:center;justify-content:center;border:1px solid var(--dm-border-color, #e0e0e0);border-radius:4px;background:var(--dm-bg, #ffffff);color:var(--dm-muted, #999999);cursor:pointer;padding:0;transition:background-color .15s,color .15s,box-shadow .15s}.dm-table-col-handle:hover,.dm-table-row-handle:hover{background:var(--dm-hover, rgba(0, 0, 0, 0.06));color:var(--dm-text, #1a1a1a);box-shadow:0 1px 4px rgba(0,0,0,.1)}.dm-table-col-handle:focus-visible,.dm-table-row-handle:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-table-col-handle svg,.dm-table-row-handle svg{display:block}.dm-table-col-handle{width:24px;height:14px}.dm-table-row-handle{width:14px;height:24px}.dm-table-cell-handle{position:absolute;z-index:10;display:none;align-items:center;justify-content:center;width:14px;height:14px;border:1px solid var(--dm-accent, #2563eb);border-radius:50%;background:var(--dm-bg, #ffffff);color:var(--dm-accent, #2563eb);cursor:pointer;padding:0;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:background-color .15s,color .15s,border-color .15s,box-shadow .15s}.dm-table-cell-handle:hover{background:var(--dm-accent, #2563eb);color:#fff;border-color:var(--dm-accent, #2563eb);box-shadow:0 1px 4px color-mix(in srgb, var(--dm-accent, #2563eb) 30%, transparent)}.dm-table-cell-handle:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-table-cell-handle svg{display:block;width:8px;height:8px}.dm-table-cell-toolbar{position:absolute;z-index:10;display:none;align-items:center;gap:2px;padding:2px;border:1px solid var(--dm-border-color, #e0e0e0);border-radius:6px;background:var(--dm-bg, #ffffff);box-shadow:0 2px 8px rgba(0,0,0,.1);animation:dm-fade-in .12s ease}.dm-table-cell-toolbar-btn{display:flex;align-items:center;gap:1px;padding:4px 5px;border:none;border-radius:4px;background:rgba(0,0,0,0);color:var(--dm-text, #1a1a1a);cursor:pointer;transition:background-color .15s,color .15s}.dm-table-cell-toolbar-btn:hover,.dm-table-cell-toolbar-btn.dm-table-cell-toolbar-btn--open{background:var(--dm-hover, rgba(0, 0, 0, 0.06))}.dm-table-cell-toolbar-btn--active{color:var(--dm-accent, #2563eb);background:var(--dm-accent-surface, rgba(37, 99, 235, 0.1))}.dm-table-cell-toolbar-btn:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-table-cell-toolbar-btn:disabled{opacity:.3;cursor:default;pointer-events:none}.dm-table-cell-toolbar-btn svg{display:block;flex-shrink:0}.dm-table-cell-toolbar-chevron{display:flex;align-items:center}.dm-table-cell-toolbar-sep{width:1px;height:16px;margin:0 2px;background:var(--dm-border-color, #e0e0e0)}.dm-table-cell-align-dropdown{min-width:auto;width:max-content;padding:.25rem}.dm-table-cell-align-dropdown .dm-table-align-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.3rem .5rem;border:none;border-radius:.25rem;background:rgba(0,0,0,0);color:var(--dm-text, #1a1a1a);cursor:pointer;font-size:.8125rem;white-space:nowrap;transition:background-color .15s,color .15s}.dm-table-cell-align-dropdown .dm-table-align-item:hover{background:var(--dm-hover, rgba(0, 0, 0, 0.06))}.dm-table-cell-align-dropdown .dm-table-align-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-table-cell-align-dropdown .dm-table-align-item--active{color:var(--dm-accent, #2563eb);background:var(--dm-accent-surface, rgba(37, 99, 235, 0.1))}.dm-table-cell-align-dropdown .dm-table-align-item-icon{display:flex;align-items:center}.dm-table-cell-align-dropdown .dm-table-align-item-icon svg{display:block}.dm-editor .ProseMirror table td[data-text-align=center],.dm-editor .ProseMirror table th[data-text-align=center]{text-align:center}.dm-editor .ProseMirror table td[data-text-align=right],.dm-editor .ProseMirror table th[data-text-align=right]{text-align:right}.dm-editor .ProseMirror table td[data-vertical-align=middle],.dm-editor .ProseMirror table th[data-vertical-align=middle]{vertical-align:middle}.dm-editor .ProseMirror table td[data-vertical-align=bottom],.dm-editor .ProseMirror table th[data-vertical-align=bottom]{vertical-align:bottom}.dm-editor td.dm-cell-focused,.dm-editor th.dm-cell-focused{outline:1px solid var(--dm-accent, #2563eb);outline-offset:-1px}.dm-table-controls-dropdown{position:absolute;z-index:50;display:flex;flex-direction:column;gap:.125rem;min-width:10rem;padding:.25rem;background:var(--dm-bg, #fff);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.5rem;box-shadow:0 4px 16px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.04);animation:dm-fade-in .2s ease}.dm-table-controls-dropdown>button{display:flex;align-items:center;gap:.375rem;width:100%;padding:.375rem .5rem;border:none;border-radius:var(--dm-button-border-radius, 0.375rem);background:rgba(0,0,0,0);color:var(--dm-button-color, var(--dm-text));cursor:pointer;font-size:.8125rem;line-height:1.4;text-align:left;white-space:nowrap;transition:background-color .15s}.dm-table-controls-dropdown>button:hover{background:var(--dm-button-hover-bg, var(--dm-hover, rgba(0, 0, 0, 0.06)))}.dm-table-controls-dropdown>button:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-table-controls-dropdown-icon{display:flex;align-items:center;color:var(--dm-icon, #666)}.dm-table-controls-dropdown-icon svg{display:block}.dm-table-cell-dropdown{min-width:auto;width:max-content;padding:0;border-radius:.75rem}.dm-table-cell-dropdown .dm-color-palette{padding:.5rem}.dm-table-cell-dropdown-separator{height:1px;background:var(--dm-border-color, #e0e0e0);margin:.25rem 0}.dm-editor .ProseMirror [data-bg-color=gray]{background-color:var(--dm-block-bg-gray)}.dm-editor .ProseMirror [data-bg-color=brown]{background-color:var(--dm-block-bg-brown)}.dm-editor .ProseMirror [data-bg-color=orange]{background-color:var(--dm-block-bg-orange)}.dm-editor .ProseMirror [data-bg-color=yellow]{background-color:var(--dm-block-bg-yellow)}.dm-editor .ProseMirror [data-bg-color=green]{background-color:var(--dm-block-bg-green)}.dm-editor .ProseMirror [data-bg-color=blue]{background-color:var(--dm-block-bg-blue)}.dm-editor .ProseMirror [data-bg-color=purple]{background-color:var(--dm-block-bg-purple)}.dm-editor .ProseMirror [data-bg-color=pink]{background-color:var(--dm-block-bg-pink)}.dm-editor .ProseMirror [data-bg-color=red]{background-color:var(--dm-block-bg-red)}.dm-editor .ProseMirror [data-bg-color]{padding-block:.125rem;border-radius:.25rem}.dm-editor .ProseMirror [data-text-color=gray]{color:var(--dm-block-text-gray)}.dm-editor .ProseMirror [data-text-color=brown]{color:var(--dm-block-text-brown)}.dm-editor .ProseMirror [data-text-color=orange]{color:var(--dm-block-text-orange)}.dm-editor .ProseMirror [data-text-color=yellow]{color:var(--dm-block-text-yellow)}.dm-editor .ProseMirror [data-text-color=green]{color:var(--dm-block-text-green)}.dm-editor .ProseMirror [data-text-color=blue]{color:var(--dm-block-text-blue)}.dm-editor .ProseMirror [data-text-color=purple]{color:var(--dm-block-text-purple)}.dm-editor .ProseMirror [data-text-color=pink]{color:var(--dm-block-text-pink)}.dm-editor .ProseMirror [data-text-color=red]{color:var(--dm-block-text-red)}.dm-block-color-row{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;padding:.25rem .5rem}.dm-block-color-row-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.dm-block-color-swatch{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:1px solid var(--dm-border-color, #e5e7eb);border-radius:50%;background:rgba(0,0,0,0);cursor:pointer;transition:transform .08s ease,box-shadow .08s ease}.dm-block-color-swatch:hover{transform:scale(1.1);box-shadow:0 0 0 2px var(--dm-accent-surface, rgba(37, 99, 235, 0.15))}.dm-block-color-swatch:focus-visible,.dm-block-color-swatch[aria-pressed=true]{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-block-color-swatch::before{content:"";display:block;width:1rem;height:1rem;border-radius:50%}.dm-block-color-swatch[data-color=null]::before{background:linear-gradient(to top right, transparent calc(50% - 1px), var(--dm-muted, #999) calc(50% - 1px), var(--dm-muted, #999) calc(50% + 1px), transparent calc(50% + 1px));border:1px solid var(--dm-border-color, #e5e7eb)}.dm-block-color-swatch--bg[data-color=gray]::before{background:var(--dm-block-bg-gray)}.dm-block-color-swatch--bg[data-color=brown]::before{background:var(--dm-block-bg-brown)}.dm-block-color-swatch--bg[data-color=orange]::before{background:var(--dm-block-bg-orange)}.dm-block-color-swatch--bg[data-color=yellow]::before{background:var(--dm-block-bg-yellow)}.dm-block-color-swatch--bg[data-color=green]::before{background:var(--dm-block-bg-green)}.dm-block-color-swatch--bg[data-color=blue]::before{background:var(--dm-block-bg-blue)}.dm-block-color-swatch--bg[data-color=purple]::before{background:var(--dm-block-bg-purple)}.dm-block-color-swatch--bg[data-color=pink]::before{background:var(--dm-block-bg-pink)}.dm-block-color-swatch--bg[data-color=red]::before{background:var(--dm-block-bg-red)}.dm-block-color-swatch--text::before{content:"A";display:flex;align-items:center;justify-content:center;font-family:var(--dm-editor-font-family, system-ui, sans-serif);font-size:.75rem;font-weight:600;background:var(--dm-surface, #f8f9fa);color:var(--dm-editor-text, #333)}.dm-block-color-swatch--text[data-color=gray]::before{color:var(--dm-block-text-gray)}.dm-block-color-swatch--text[data-color=brown]::before{color:var(--dm-block-text-brown)}.dm-block-color-swatch--text[data-color=orange]::before{color:var(--dm-block-text-orange)}.dm-block-color-swatch--text[data-color=yellow]::before{color:var(--dm-block-text-yellow)}.dm-block-color-swatch--text[data-color=green]::before{color:var(--dm-block-text-green)}.dm-block-color-swatch--text[data-color=blue]::before{color:var(--dm-block-text-blue)}.dm-block-color-swatch--text[data-color=purple]::before{color:var(--dm-block-text-purple)}.dm-block-color-swatch--text[data-color=pink]::before{color:var(--dm-block-text-pink)}.dm-block-color-swatch--text[data-color=red]::before{color:var(--dm-block-text-red)}.dm-editor .ProseMirror span[data-bg-color]{padding-block:0;padding-inline:.2rem;border-radius:.25rem}.dm-ncp-trigger{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.125rem}.dm-ncp-trigger-glyph{font-family:var(--dm-editor-font-family, system-ui, sans-serif);font-size:.95rem;font-weight:600;line-height:1;transform:translateY(2px)}.dm-ncp-trigger-underline{width:.875rem;height:.125rem;border-radius:.0625rem;background-color:rgba(0,0,0,0)}.dm-notion-color-picker{position:absolute;z-index:60;display:flex;flex-direction:column;gap:.25rem;padding:.25rem;background:var(--dm-surface-elevated, var(--dm-surface, #ffffff));color:var(--dm-editor-text, inherit);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.5rem;box-shadow:0 8px 24px rgba(0,0,0,.18)}.dm-notion-color-picker:not([data-show]){display:none}.dm-ncp-section{display:flex;flex-direction:column;gap:.25rem}.dm-ncp-label{font-size:.75rem;line-height:1;font-weight:500;color:var(--dm-muted, #6b7280);padding:.125rem .25rem}.dm-ncp-grid{display:grid;grid-template-columns:repeat(5, 1.5rem);gap:.25rem;padding:.25rem .5rem;justify-content:start}.dm-ncp-swatch{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:1px solid var(--dm-border-color, #e5e7eb);border-radius:50%;background:rgba(0,0,0,0);color:var(--dm-editor-text, #333);font-family:var(--dm-editor-font-family, system-ui, sans-serif);font-size:.75rem;font-weight:600;line-height:1;cursor:pointer;transition:transform .08s ease,box-shadow .08s ease}.dm-ncp-swatch:hover{transform:scale(1.1);box-shadow:0 0 0 2px var(--dm-accent-surface, rgba(37, 99, 235, 0.15))}.dm-ncp-swatch:focus-visible,.dm-ncp-swatch.dm-ncp-active{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-ncp-swatch--text{background-color:var(--dm-surface, #f8f9fa)}.dm-ncp-swatch--text::before{content:"A"}.dm-ncp-swatch--text[data-color=null]::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background-image:linear-gradient(to top right, transparent calc(50% - 1px), var(--dm-muted, #999) calc(50% - 1px), var(--dm-muted, #999) calc(50% + 1px), transparent calc(50% + 1px))}.dm-ncp-swatch--text[data-color=gray]::before{color:var(--dm-block-text-gray)}.dm-ncp-swatch--text[data-color=brown]::before{color:var(--dm-block-text-brown)}.dm-ncp-swatch--text[data-color=orange]::before{color:var(--dm-block-text-orange)}.dm-ncp-swatch--text[data-color=yellow]::before{color:var(--dm-block-text-yellow)}.dm-ncp-swatch--text[data-color=green]::before{color:var(--dm-block-text-green)}.dm-ncp-swatch--text[data-color=blue]::before{color:var(--dm-block-text-blue)}.dm-ncp-swatch--text[data-color=purple]::before{color:var(--dm-block-text-purple)}.dm-ncp-swatch--text[data-color=pink]::before{color:var(--dm-block-text-pink)}.dm-ncp-swatch--text[data-color=red]::before{color:var(--dm-block-text-red)}.dm-ncp-swatch--bg[data-color=null]::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background-image:linear-gradient(to top right, transparent calc(50% - 1px), var(--dm-muted, #999) calc(50% - 1px), var(--dm-muted, #999) calc(50% + 1px), transparent calc(50% + 1px))}.dm-ncp-swatch--bg[data-color=gray]{background-color:var(--dm-block-bg-gray)}.dm-ncp-swatch--bg[data-color=brown]{background-color:var(--dm-block-bg-brown)}.dm-ncp-swatch--bg[data-color=orange]{background-color:var(--dm-block-bg-orange)}.dm-ncp-swatch--bg[data-color=yellow]{background-color:var(--dm-block-bg-yellow)}.dm-ncp-swatch--bg[data-color=green]{background-color:var(--dm-block-bg-green)}.dm-ncp-swatch--bg[data-color=blue]{background-color:var(--dm-block-bg-blue)}.dm-ncp-swatch--bg[data-color=purple]{background-color:var(--dm-block-bg-purple)}.dm-ncp-swatch--bg[data-color=pink]{background-color:var(--dm-block-bg-pink)}.dm-ncp-swatch--bg[data-color=red]{background-color:var(--dm-block-bg-red)}@media(max-width: 480px){.dm-notion-color-picker{max-width:calc(100vw - 1rem)}}.dm-toc-outline{display:flex;flex-direction:column;align-items:flex-end;gap:var(--dm-toc-tick-gap, 10px);padding:var(--dm-toc-padding-block, 12px) var(--dm-toc-padding-inline, 8px);z-index:var(--dm-toc-z-index, 10);background:rgba(0,0,0,0);border:0;margin:0;pointer-events:auto}.dm-toc-outline[data-anchor=editor]{position:sticky;top:var(--dm-toc-mid-top, 50vh)}.dm-toc-outline[data-anchor=editor][data-bottom-visible=true]{top:var(--dm-toc-editor-top, 1rem)}.dm-toc-outline[data-anchor=viewport]{position:fixed;top:50%;right:var(--dm-toc-right-offset, 24px);transform:translateY(-50%)}.dm-toc-outline[data-state=hidden],.dm-toc-outline[data-viewport=mobile]{display:none}.dm-toc-outline-shell[data-anchor=editor]{position:absolute;top:25px;bottom:25px;right:var(--dm-toc-page-offset, 8px);z-index:var(--dm-toc-z-index, 10);pointer-events:none}.dm-toc-outline-shell[data-anchor=editor]:has(.dm-toc-outline[data-state=hidden]),.dm-toc-outline-shell[data-anchor=editor]:has(.dm-toc-outline[data-viewport=mobile]){display:none}.dm-toc-outline-shell[data-anchor=editor][data-mode=center]{display:flex;align-items:center;justify-content:flex-end}.dm-toc-outline-tick{appearance:none;border:0;margin:0;padding:0;font:inherit;cursor:pointer;background:var(--dm-toc-tick-color, rgba(55, 53, 47, 0.4));height:var(--dm-toc-tick-height, 2px);border-radius:var(--dm-toc-tick-radius, 1px);width:var(--dm-toc-tick-h3-width, 8px);transition:background-color 120ms ease-out,width 120ms ease-out}.dm-toc-outline-tick:hover{background:var(--dm-toc-tick-hover-color, rgba(55, 53, 47, 0.7))}.dm-toc-outline-tick:focus-visible{background:var(--dm-toc-tick-hover-color, rgba(55, 53, 47, 0.7));outline:2px solid var(--dm-accent, #2563eb);outline-offset:3px}.dm-toc-outline-tick.dm-toc--active,.dm-toc-outline-tick[aria-current=location]{background:var(--dm-toc-tick-active-color, rgba(55, 53, 47, 0.95))}.dm-toc-outline-tick[data-level="1"]{width:var(--dm-toc-tick-h1-width, 18px)}.dm-toc-outline-tick[data-level="2"]{width:var(--dm-toc-tick-h2-width, 12px)}.dm-toc-outline-tick[data-level="3"]{width:var(--dm-toc-tick-h3-width, 8px)}.dm-toc-outline-tick[data-level="4"]{width:var(--dm-toc-tick-h4-width, 6px)}.dm-toc-outline-tick[data-level="5"]{width:var(--dm-toc-tick-h5-width, 5px)}.dm-toc-outline-tick[data-level="6"]{width:var(--dm-toc-tick-h6-width, 4px)}.dm-toc-outline[data-state=expanded] .dm-toc-outline-tick{opacity:0;pointer-events:none}.dm-toc-outline-card{position:absolute;right:0;top:50%;transform:translateY(calc(-50% + var(--dm-toc-card-shift-y, 0px))) translateX(var(--dm-toc-card-offset, 8px));min-width:var(--dm-toc-card-min-width, 180px);max-width:var(--dm-toc-card-max-width, 260px);max-height:calc(100vh - 2*var(--dm-toc-card-viewport-margin, 16px));overflow-y:auto;padding:var(--dm-toc-card-padding-block, 6px) 0;background:var(--dm-toc-card-bg, rgba(255, 255, 255, 0.98));border:var(--dm-toc-card-border, 1px solid rgba(0, 0, 0, 0.06));border-radius:var(--dm-toc-card-radius, 6px);box-shadow:var(--dm-toc-card-shadow, 0 8px 24px rgba(0, 0, 0, 0.08));display:flex;flex-direction:column;align-items:stretch;opacity:0;pointer-events:none;transition:opacity var(--dm-toc-card-transition, 180ms) ease-out,transform var(--dm-toc-card-transition, 180ms) ease-out}.dm-toc-outline[data-state=expanded] .dm-toc-outline-card{opacity:1;pointer-events:auto;transform:translateY(calc(-50% + var(--dm-toc-card-shift-y, 0px))) translateX(0)}.dm-toc-outline-row{appearance:none;border:0;margin:0;background:rgba(0,0,0,0);cursor:pointer;text-align:start;font:inherit;font-size:var(--dm-toc-row-font-size, 13px);line-height:var(--dm-toc-row-line-height, 1.4);color:var(--dm-toc-row-color, rgba(55, 53, 47, 0.7));padding:var(--dm-toc-row-padding-block, 4px) var(--dm-toc-row-padding-inline-end, 16px) var(--dm-toc-row-padding-block, 4px) var(--dm-toc-row-padding-inline-start, 12px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:3px;transition:background-color 120ms ease-out,color 120ms ease-out}.dm-toc-outline-row:hover{background:var(--dm-toc-row-hover-bg, rgba(0, 0, 0, 0.04))}.dm-toc-outline-row:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-2px}.dm-toc-outline-row.dm-toc--active,.dm-toc-outline-row[aria-current=location]{color:var(--dm-toc-row-active-color, rgba(55, 53, 47, 0.95));font-weight:var(--dm-toc-row-active-weight, 600)}.dm-toc-outline-row[data-level="1"]{padding-inline-start:var(--dm-toc-row-padding-inline-start, 12px)}.dm-toc-outline-row[data-level="2"]{padding-inline-start:calc(var(--dm-toc-row-padding-inline-start, 12px) + var(--dm-toc-row-indent, 14px))}.dm-toc-outline-row[data-level="3"]{padding-inline-start:calc(var(--dm-toc-row-padding-inline-start, 12px) + var(--dm-toc-row-indent, 14px)*2)}.dm-toc-outline-row[data-level="4"]{padding-inline-start:calc(var(--dm-toc-row-padding-inline-start, 12px) + var(--dm-toc-row-indent, 14px)*3)}.dm-toc-outline-row[data-level="5"]{padding-inline-start:calc(var(--dm-toc-row-padding-inline-start, 12px) + var(--dm-toc-row-indent, 14px)*4)}.dm-toc-outline-row[data-level="6"]{padding-inline-start:calc(var(--dm-toc-row-padding-inline-start, 12px) + var(--dm-toc-row-indent, 14px)*5)}.dm-toc-block{display:block;margin-block:var(--dm-toc-block-margin-block, 1rem);padding:var(--dm-toc-block-padding-block, 12px) var(--dm-toc-block-padding-inline, 16px);background:var(--dm-toc-block-bg, rgba(0, 0, 0, 0.02));border:var(--dm-toc-block-border, 1px solid rgba(0, 0, 0, 0.08));border-radius:var(--dm-toc-block-radius, 6px)}.dm-toc-block.ProseMirror-selectednode{outline:2px solid var(--dm-accent, #2563eb);outline-offset:2px}.dm-toc-block-empty{margin:0;color:var(--dm-toc-block-empty-color, rgba(55, 53, 47, 0.5));font-style:var(--dm-toc-block-empty-font-style, italic)}.dm-toc-block-list{list-style:none;padding:0;margin:0}.dm-toc-block-item{margin:0}.dm-toc-block-link{appearance:none;border:0;background:rgba(0,0,0,0);cursor:pointer;font:inherit;font-size:var(--dm-toc-block-link-font-size, 0.9375rem);line-height:var(--dm-toc-block-link-line-height, 1.5);color:var(--dm-toc-block-link-color, rgba(55, 53, 47, 0.8));text-align:start;width:100%;display:block;padding:var(--dm-toc-block-link-padding-block, 4px) var(--dm-toc-block-link-padding-inline, 8px);border-radius:var(--dm-toc-block-link-radius, 3px);transition:background-color 120ms ease-out,color 120ms ease-out}.dm-toc-block-link:hover{color:var(--dm-toc-block-link-hover-color, rgb(55, 53, 47));background:var(--dm-toc-block-link-hover-bg, rgba(0, 0, 0, 0.04))}.dm-toc-block-link:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-2px}.dm-toc-block-link.dm-toc-block-link--active,.dm-toc-block-link[aria-current=location]{color:var(--dm-toc-block-link-active-color, rgba(55, 53, 47, 0.95));font-weight:var(--dm-toc-block-link-active-weight, 600)}.dm-toc-block-link[data-level="1"]{padding-inline-start:var(--dm-toc-block-link-padding-inline, 8px)}.dm-toc-block-link[data-level="2"]{padding-inline-start:calc(var(--dm-toc-block-link-padding-inline, 8px) + var(--dm-toc-block-link-indent, 16px))}.dm-toc-block-link[data-level="3"]{padding-inline-start:calc(var(--dm-toc-block-link-padding-inline, 8px) + var(--dm-toc-block-link-indent, 16px)*2)}.dm-toc-block-link[data-level="4"]{padding-inline-start:calc(var(--dm-toc-block-link-padding-inline, 8px) + var(--dm-toc-block-link-indent, 16px)*3)}.dm-toc-block-link[data-level="5"]{padding-inline-start:calc(var(--dm-toc-block-link-padding-inline, 8px) + var(--dm-toc-block-link-indent, 16px)*4)}.dm-toc-block-link[data-level="6"]{padding-inline-start:calc(var(--dm-toc-block-link-padding-inline, 8px) + var(--dm-toc-block-link-indent, 16px)*5)}@media(prefers-reduced-motion: reduce){.dm-toc-outline-tick,.dm-toc-outline-card,.dm-toc-outline-row,.dm-toc-block-link{transition:none}.dm-toc-outline-card{transform:translateY(calc(-50% + var(--dm-toc-card-shift-y, 0px))) translateX(0)}}@media print{.dm-toc-outline{display:none}.dm-toc-block{background:rgba(0,0,0,0);border-color:rgba(0,0,0,.2)}}@media(forced-colors: active){.dm-toc-outline-tick{background:ButtonText;border:1px solid ButtonText}.dm-toc-outline-tick.dm-toc--active,.dm-toc-outline-tick[aria-current=location]{background:Highlight;border-color:Highlight}.dm-toc-outline-card{border:1px solid ButtonText}.dm-toc-outline-row.dm-toc--active,.dm-toc-outline-row.dm-toc-block-link--active,.dm-toc-outline-row[aria-current=location],.dm-toc-block-link.dm-toc--active,.dm-toc-block-link.dm-toc-block-link--active,.dm-toc-block-link[aria-current=location]{color:Highlight}.dm-toc-block{border:1px solid ButtonText}}.dm-editor.dm-notion-mode{border:none;border-radius:0;box-shadow:none;background:rgba(0,0,0,0);max-width:38rem;margin:0 auto;--dm-editor-line-height: 1.7;--dm-editor-padding: 0;--dm-block-handle-gutter: 0;--dm-block-handle-left: -3.5rem;--dm-task-checkbox-top: 0.45em}.dm-editor.dm-notion-mode .ProseMirror{min-height:60vh;outline:none}.dm-editor.dm-notion-mode .ProseMirror h1{font-weight:700;margin-top:1.5rem;margin-bottom:.75rem}.dm-editor.dm-notion-mode .ProseMirror h2{font-weight:600;margin-top:1.5rem;margin-bottom:.5rem}.dm-editor.dm-notion-mode .ProseMirror h3{font-weight:600;margin-top:1.25rem;margin-bottom:.375rem}.dm-editor.dm-notion-mode .ProseMirror p{margin:.25rem 0}.dm-editor.dm-notion-mode .ProseMirror td>p,.dm-editor.dm-notion-mode .ProseMirror th>p{margin:0}.dm-editor.dm-notion-mode .ProseMirror td .is-empty::before,.dm-editor.dm-notion-mode .ProseMirror th .is-empty::before{content:none}.dm-theme-light,.dm-theme-light .dm-editor,.dm-theme-light .dm-toolbar,.dm-theme-light .dm-table-controls-dropdown{--dm-bg: #ffffff;--dm-text: #1a1a1a;--dm-muted: #999999;--dm-surface: #f8f9fa;--dm-border-color: #e0e0e0;--dm-hover: rgba(0, 0, 0, 0.06);--dm-active: rgba(0, 0, 0, 0.12);--dm-accent: #2563eb;--dm-accent-hover: #1d4ed8;--dm-accent-surface: rgba(37, 99, 235, 0.1);--dm-focus-color: rgba(66, 133, 244, 0.3);--dm-selection: rgba(66, 133, 244, 0.2);--dm-code-surface: #f5f5f5;--dm-code-color: #d63384;--dm-highlight-bg: #fff3cd;--dm-syntax-keyword: #c72031;--dm-syntax-entity: #6f42c1;--dm-syntax-constant: #005cc5;--dm-syntax-string: #032f62;--dm-syntax-variable: #d35400;--dm-syntax-comment: #57606a;--dm-syntax-tag: #22863a;--dm-syntax-addition: #22863a;--dm-syntax-addition-bg: #f0fff4;--dm-syntax-deletion: #b31d28;--dm-syntax-deletion-bg: #ffeef0}.dm-theme-dark,.dm-theme-dark .dm-editor,.dm-theme-dark .dm-toolbar,.dm-theme-dark .dm-bubble-menu,.dm-theme-dark .dm-floating-menu,.dm-theme-dark .dm-emoji-picker,.dm-theme-dark .dm-emoji-suggestion,.dm-theme-dark .dm-mention-suggestion,.dm-theme-dark .dm-table-controls-dropdown,.dm-theme-dark .dm-slash-command-menu,.dm-theme-dark .dm-block-context-menu,.dm-theme-dark .dm-link-popover,.dm-theme-dark .dm-image-popover{--dm-color-scheme: dark;--dm-bg: #1e1e1e;--dm-text: #e0e0e0;--dm-muted: #777777;--dm-surface: #2a2a2a;--dm-border-color: #3a3a3a;--dm-hover: rgba(255, 255, 255, 0.08);--dm-active: rgba(255, 255, 255, 0.15);--dm-accent: #60a5fa;--dm-accent-hover: #93c5fd;--dm-accent-surface: rgba(96, 165, 250, 0.15);--dm-focus-color: rgba(96, 165, 250, 0.3);--dm-selection: rgba(96, 165, 250, 0.25);--dm-code-surface: #2d2d2d;--dm-code-color: inherit;--dm-highlight-bg: rgba(255, 243, 205, 0.2);--dm-scrollbar-thumb: rgba(255, 255, 255, 0.18);--dm-scrollbar-thumb-hover: rgba(255, 255, 255, 0.32);--dm-popover-shadow: 0 10px 25px rgba(0, 0, 0, 0.4), 0 4px 10px rgba(0, 0, 0, 0.25);--dm-blockquote-border: 3px solid #555555;--dm-blockquote-color: #a0a0a0;--dm-block-context-active-bg: rgba(255, 255, 255, 0.05);--dm-syntax-keyword: #ff7b72;--dm-syntax-entity: #d2a8ff;--dm-syntax-constant: #79c0ff;--dm-syntax-string: #a5d6ff;--dm-syntax-variable: #ffa657;--dm-syntax-comment: #8b949e;--dm-syntax-tag: #7ee787;--dm-syntax-addition: #aff5b4;--dm-syntax-addition-bg: #033a16;--dm-syntax-deletion: #ffdcd7;--dm-syntax-deletion-bg: #67060c;--dm-block-bg-gray: #2f2f2f;--dm-block-bg-brown: #4a3228;--dm-block-bg-orange: #5c3b1e;--dm-block-bg-yellow: #564328;--dm-block-bg-green: #243d30;--dm-block-bg-blue: #143a4e;--dm-block-bg-purple: #3c2d49;--dm-block-bg-pink: #4e2c3c;--dm-block-bg-red: #5c1e1e;--dm-block-text-gray: #9b9a97;--dm-block-text-brown: #ba856f;--dm-block-text-orange: #d68a52;--dm-block-text-yellow: #ca9849;--dm-block-text-green: #6db285;--dm-block-text-blue: #7a9bd6;--dm-block-text-purple: #a877d8;--dm-block-text-pink: #dc6da4;--dm-block-text-red: #df5452;--dm-block-selected-halo: rgba(112, 207, 248, 0.35)}@media(prefers-color-scheme: dark){.dm-theme-auto,.dm-theme-auto .dm-editor,.dm-theme-auto .dm-toolbar,.dm-theme-auto .dm-bubble-menu,.dm-theme-auto .dm-floating-menu,.dm-theme-auto .dm-emoji-picker,.dm-theme-auto .dm-emoji-suggestion,.dm-theme-auto .dm-mention-suggestion,.dm-theme-auto .dm-table-controls-dropdown,.dm-theme-auto .dm-slash-command-menu,.dm-theme-auto .dm-block-context-menu,.dm-theme-auto .dm-link-popover,.dm-theme-auto .dm-image-popover{--dm-color-scheme: dark;--dm-bg: #1e1e1e;--dm-text: #e0e0e0;--dm-muted: #777777;--dm-surface: #2a2a2a;--dm-border-color: #3a3a3a;--dm-hover: rgba(255, 255, 255, 0.08);--dm-active: rgba(255, 255, 255, 0.15);--dm-accent: #60a5fa;--dm-accent-hover: #93c5fd;--dm-accent-surface: rgba(96, 165, 250, 0.15);--dm-focus-color: rgba(96, 165, 250, 0.3);--dm-selection: rgba(96, 165, 250, 0.25);--dm-code-surface: #2d2d2d;--dm-code-color: inherit;--dm-highlight-bg: rgba(255, 243, 205, 0.2);--dm-scrollbar-thumb: rgba(255, 255, 255, 0.18);--dm-scrollbar-thumb-hover: rgba(255, 255, 255, 0.32);--dm-popover-shadow: 0 10px 25px rgba(0, 0, 0, 0.4), 0 4px 10px rgba(0, 0, 0, 0.25);--dm-blockquote-border: 3px solid #555555;--dm-blockquote-color: #a0a0a0;--dm-block-context-active-bg: rgba(255, 255, 255, 0.05);--dm-syntax-keyword: #ff7b72;--dm-syntax-entity: #d2a8ff;--dm-syntax-constant: #79c0ff;--dm-syntax-string: #a5d6ff;--dm-syntax-variable: #ffa657;--dm-syntax-comment: #8b949e;--dm-syntax-tag: #7ee787;--dm-syntax-addition: #aff5b4;--dm-syntax-addition-bg: #033a16;--dm-syntax-deletion: #ffdcd7;--dm-syntax-deletion-bg: #67060c;--dm-block-bg-gray: #2f2f2f;--dm-block-bg-brown: #4a3228;--dm-block-bg-orange: #5c3b1e;--dm-block-bg-yellow: #564328;--dm-block-bg-green: #243d30;--dm-block-bg-blue: #143a4e;--dm-block-bg-purple: #3c2d49;--dm-block-bg-pink: #4e2c3c;--dm-block-bg-red: #5c1e1e;--dm-block-text-gray: #9b9a97;--dm-block-text-brown: #ba856f;--dm-block-text-orange: #d68a52;--dm-block-text-yellow: #ca9849;--dm-block-text-green: #6db285;--dm-block-text-blue: #7a9bd6;--dm-block-text-purple: #a877d8;--dm-block-text-pink: #dc6da4;--dm-block-text-red: #df5452;--dm-block-selected-halo: rgba(112, 207, 248, 0.35)}}.dm-theme-dark .dm-toc-outline,.dm-theme-dark.dm-toc-outline{--dm-toc-tick-color: rgba(255, 255, 255, 0.3);--dm-toc-tick-hover-color: rgba(255, 255, 255, 0.6);--dm-toc-tick-active-color: rgba(255, 255, 255, 0.95);--dm-toc-card-bg: rgba(45, 50, 56, 0.98);--dm-toc-card-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);--dm-toc-card-border: 1px solid rgba(255, 255, 255, 0.08);--dm-toc-row-color: rgba(255, 255, 255, 0.7);--dm-toc-row-hover-bg: rgba(255, 255, 255, 0.06);--dm-toc-row-active-color: rgba(255, 255, 255, 0.95)}.dm-theme-dark .dm-toc-block,.dm-theme-dark.dm-toc-block{--dm-toc-block-bg: rgba(255, 255, 255, 0.04);--dm-toc-block-border: 1px solid rgba(255, 255, 255, 0.08);--dm-toc-block-empty-color: rgba(255, 255, 255, 0.4);--dm-toc-block-link-color: rgba(255, 255, 255, 0.7);--dm-toc-block-link-hover-color: rgba(255, 255, 255, 0.95);--dm-toc-block-link-hover-bg: rgba(255, 255, 255, 0.06);--dm-toc-block-link-active-color: rgba(255, 255, 255, 0.95)}@media(prefers-color-scheme: dark){.dm-theme-auto .dm-toc-block,.dm-theme-auto.dm-toc-block{--dm-toc-block-bg: rgba(255, 255, 255, 0.04);--dm-toc-block-border: 1px solid rgba(255, 255, 255, 0.08);--dm-toc-block-empty-color: rgba(255, 255, 255, 0.4);--dm-toc-block-link-color: rgba(255, 255, 255, 0.7);--dm-toc-block-link-hover-color: rgba(255, 255, 255, 0.95);--dm-toc-block-link-hover-bg: rgba(255, 255, 255, 0.06);--dm-toc-block-link-active-color: rgba(255, 255, 255, 0.95)}}@media(prefers-color-scheme: dark){.dm-theme-auto .dm-toc-outline,.dm-theme-auto.dm-toc-outline{--dm-toc-tick-color: rgba(255, 255, 255, 0.3);--dm-toc-tick-hover-color: rgba(255, 255, 255, 0.6);--dm-toc-tick-active-color: rgba(255, 255, 255, 0.95);--dm-toc-card-bg: rgba(45, 50, 56, 0.98);--dm-toc-card-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);--dm-toc-card-border: 1px solid rgba(255, 255, 255, 0.08);--dm-toc-row-color: rgba(255, 255, 255, 0.7);--dm-toc-row-hover-bg: rgba(255, 255, 255, 0.06);--dm-toc-row-active-color: rgba(255, 255, 255, 0.95)}}@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}}
1
+ .dm-editor{--dm-bg: #ffffff;--dm-text: #1a1a1a;--dm-muted: #999999;--dm-surface: #f8f9fa;--dm-border-color: #e5e7eb;--dm-hover: rgba(0, 0, 0, 0.04);--dm-active: rgba(0, 0, 0, 0.1);--dm-accent: #2563eb;--dm-accent-hover: #1d4ed8;--dm-accent-surface: rgba(37, 99, 235, 0.1);--dm-focus-color: rgba(66, 133, 244, 0.3);--dm-selection: rgba(66, 133, 244, 0.2);--dm-scrollbar-thumb: rgba(0, 0, 0, 0.18);--dm-scrollbar-thumb-hover: rgba(0, 0, 0, 0.28);--dm-z-handle: 25;--dm-z-popover: 50;--dm-block-handle-gutter: 3rem;--dm-block-handle-left: -0.5rem;--dm-block-inline-padding: 0.375rem;--dm-block-children-indent: 1.5rem;--dm-popover-shadow: 0 10px 25px rgba(0, 0, 0, 0.08), 0 4px 10px rgba(0, 0, 0, 0.04);--dm-code-surface: #f0f0f0;--dm-code-color: inherit;--dm-block-bg-gray: #f1f1ef;--dm-block-bg-brown: #f3eeee;--dm-block-bg-orange: #f8ecdf;--dm-block-bg-yellow: #faf3dd;--dm-block-bg-green: #eef3ed;--dm-block-bg-blue: #e9f3f7;--dm-block-bg-purple: #f6f3f8;--dm-block-bg-pink: #f9f2f5;--dm-block-bg-red: #faecec;--dm-block-text-gray: #787774;--dm-block-text-brown: #976d57;--dm-block-text-orange: #cc782f;--dm-block-text-yellow: #c29343;--dm-block-text-green: #548164;--dm-block-text-blue: #487ca5;--dm-block-text-purple: #8a67ab;--dm-block-text-pink: #b35488;--dm-block-text-red: #c4554d;--dm-block-selected-halo: rgba(112, 207, 248, 0.25);--dm-block-context-active-bg: rgba(55, 53, 47, 0.06);--dm-editor-bg: var(--dm-bg);--dm-editor-text: var(--dm-text);--dm-editor-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;--dm-editor-font-size: 1rem;--dm-editor-line-height: 1.6;--dm-editor-padding: 1rem;--dm-editor-padding-top-extra: 0.5rem;--dm-editor-border: 1px solid var(--dm-border-color);--dm-editor-border-radius: 0.75rem;--dm-editor-focus-ring: none;--dm-editor-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02);--dm-placeholder-color: var(--dm-muted);--dm-link-color: var(--dm-accent);--dm-link-hover-color: var(--dm-accent-hover);--dm-code-bg: var(--dm-code-surface);--dm-code-text: var(--dm-code-color);--dm-code-font: "SF Mono", "Fira Code", Consolas, "Liberation Mono", Menlo, monospace;--dm-code-border-radius: 0.25rem;--dm-code-block-bg: var(--dm-code-surface);--dm-code-block-text: var(--dm-text);--dm-syntax-keyword: #c72031;--dm-syntax-entity: #6f42c1;--dm-syntax-constant: #005cc5;--dm-syntax-string: #032f62;--dm-syntax-variable: #d35400;--dm-syntax-comment: #57606a;--dm-syntax-tag: #22863a;--dm-syntax-addition: #22863a;--dm-syntax-addition-bg: #f0fff4;--dm-syntax-deletion: #b31d28;--dm-syntax-deletion-bg: #ffeef0;--dm-blockquote-border: 3px solid #6a6a6a;--dm-blockquote-color: #6a6a6a;--dm-hr-color: var(--dm-border-color);--dm-table-border: 1px solid var(--dm-border-color);--dm-table-header-bg: var(--dm-surface);--dm-table-selected-bg: rgba(66, 133, 244, 0.15);--dm-mention-bg: var(--dm-accent-surface);--dm-mention-color: var(--dm-accent);--dm-mention-border-radius: 0.25rem;--dm-highlight-bg: #fff3cd;--dm-details-border: 1px solid var(--dm-border-color);--dm-details-bg: var(--dm-surface);--dm-details-summary-font-weight: 600;--dm-task-checkbox-left: -1.15em;--dm-task-checkbox-top: 0.45em}.dm-toolbar{--dm-toolbar-bg: var(--dm-bg, #ffffff);--dm-toolbar-border: none;--dm-toolbar-padding: 0.375rem 0.5rem;--dm-toolbar-gap: 0.125rem;--dm-toolbar-border-radius: 0.75rem 0.75rem 0 0;--dm-button-size: 2rem;--dm-button-border-radius: 0.375rem;--dm-button-color: var(--dm-text, #374151);--dm-button-hover-bg: var(--dm-hover, rgba(0, 0, 0, 0.04));--dm-button-active-bg: var(--dm-accent-surface, rgba(37, 99, 235, 0.1));--dm-button-active-color: var(--dm-accent, #2563eb);--dm-button-disabled-opacity: 0.35;--dm-separator-color: var(--dm-border-color, #e5e7eb);--dm-separator-margin: 0.375rem}:root{--dm-toc-tick-h1-width: 18px;--dm-toc-tick-h2-width: 12px;--dm-toc-tick-h3-width: 8px;--dm-toc-tick-h4-width: 6px;--dm-toc-tick-h5-width: 5px;--dm-toc-tick-h6-width: 4px;--dm-toc-tick-height: 2px;--dm-toc-tick-radius: 1px;--dm-toc-tick-gap: 10px;--dm-toc-tick-color: rgba(55, 53, 47, 0.4);--dm-toc-tick-hover-color: rgba(55, 53, 47, 0.7);--dm-toc-tick-active-color: rgba(55, 53, 47, 0.95);--dm-toc-padding-block: 12px;--dm-toc-padding-inline: 8px;--dm-toc-right-offset: 24px;--dm-toc-z-index: 10;--dm-toc-editor-top: 1rem;--dm-toc-page-offset: 8px;--dm-toc-card-viewport-margin: 16px;--dm-toc-card-bg: rgba(255, 255, 255, 0.98);--dm-toc-card-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);--dm-toc-card-radius: 6px;--dm-toc-card-border: 1px solid rgba(0, 0, 0, 0.06);--dm-toc-card-min-width: 180px;--dm-toc-card-max-width: 260px;--dm-toc-card-padding-block: 6px;--dm-toc-card-offset: 8px;--dm-toc-card-transition: 180ms;--dm-toc-row-padding-block: 4px;--dm-toc-row-padding-inline-start: 12px;--dm-toc-row-padding-inline-end: 16px;--dm-toc-row-indent: 14px;--dm-toc-row-color: rgba(55, 53, 47, 0.7);--dm-toc-row-hover-bg: rgba(0, 0, 0, 0.04);--dm-toc-row-active-color: rgba(55, 53, 47, 0.95);--dm-toc-row-active-weight: 600;--dm-toc-row-font-size: 13px;--dm-toc-row-line-height: 1.4;--dm-toc-block-bg: rgba(0, 0, 0, 0.02);--dm-toc-block-border: 1px solid rgba(0, 0, 0, 0.08);--dm-toc-block-radius: 6px;--dm-toc-block-padding-block: 12px;--dm-toc-block-padding-inline: 16px;--dm-toc-block-margin-block: 1rem;--dm-toc-block-empty-color: rgba(55, 53, 47, 0.5);--dm-toc-block-empty-font-style: italic;--dm-toc-block-link-color: rgba(55, 53, 47, 0.8);--dm-toc-block-link-hover-color: rgba(55, 53, 47, 1);--dm-toc-block-link-hover-bg: rgba(0, 0, 0, 0.04);--dm-toc-block-link-active-color: rgba(55, 53, 47, 0.95);--dm-toc-block-link-active-weight: 600;--dm-toc-block-link-padding-block: 4px;--dm-toc-block-link-padding-inline: 8px;--dm-toc-block-link-indent: 16px;--dm-toc-block-link-radius: 3px;--dm-toc-block-link-font-size: 0.9375rem;--dm-toc-block-link-line-height: 1.5}.dm-editor .ProseMirror{position:relative;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;outline:none}.dm-editor .ProseMirror pre{white-space:pre-wrap}.dm-editor .ProseMirror li{position:relative}.ProseMirror-hideselection *::selection{background:rgba(0,0,0,0)}.ProseMirror-hideselection *::-moz-selection{background:rgba(0,0,0,0)}.ProseMirror-hideselection{caret-color:rgba(0,0,0,0)}.ProseMirror [draggable][contenteditable=false]{user-select:text}.dm-editor .ProseMirror-selectednode{outline:2px solid var(--dm-accent, #2563eb)}.dm-editor li.ProseMirror-selectednode{outline:none}.dm-editor li.ProseMirror-selectednode::after{content:"";position:absolute;left:-32px;right:-2px;top:-2px;bottom:-2px;border:2px solid var(--dm-accent, #2563eb);pointer-events:none}img.ProseMirror-separator{display:inline !important;border:none !important;margin:0 !important}.dm-editor .ProseMirror-gapcursor{display:none;pointer-events:none;position:absolute}.dm-editor .ProseMirror-gapcursor::after{content:"";display:block;position:absolute;top:-2px;width:20px;border-top:1px solid var(--dm-editor-text, #1a1a1a);animation:ProseMirror-cursor-blink 1.1s steps(2, start) infinite}@keyframes ProseMirror-cursor-blink{to{visibility:hidden}}.dm-editor .ProseMirror-focused .ProseMirror-gapcursor{display:block}.dm-editor .tableWrapper{overflow-x:auto}.dm-editor table{border-collapse:collapse;table-layout:fixed;width:100%;overflow:hidden}.dm-editor td,.dm-editor th{vertical-align:top;box-sizing:border-box;position:relative}.dm-editor .column-resize-handle{position:absolute;right:-1.5px;top:0;bottom:0;width:2px;z-index:20;background-color:var(--dm-accent, #2563eb);pointer-events:none}.dm-editor .dm-mouse-drag .column-resize-handle{display:none}.dm-editor .ProseMirror.resize-cursor{cursor:ew-resize;cursor:col-resize}.dm-editor .ProseMirror.resize-cursor.dm-mouse-drag{cursor:auto}.dm-editor .selectedCell::after{z-index:2;position:absolute;content:"";left:0;right:0;top:0;bottom:0;background:var(--dm-table-selected-bg, rgba(66, 133, 244, 0.15));pointer-events:none}.dm-editor .selectedCell::selection,.dm-editor .selectedCell *::selection{background:rgba(0,0,0,0) !important;color:inherit !important}.dm-editor{display:block;position:relative;box-sizing:border-box;background:var(--dm-editor-bg);color:var(--dm-editor-text);font-family:var(--dm-editor-font-family);font-size:var(--dm-editor-font-size);line-height:var(--dm-editor-line-height);border:var(--dm-editor-border);border-radius:var(--dm-editor-border-radius);box-shadow:var(--dm-editor-shadow, none);overflow:hidden;color-scheme:var(--dm-color-scheme, light)}.dm-editor .ProseMirror{padding:var(--dm-editor-padding);padding-top:calc(var(--dm-editor-padding) + var(--dm-editor-padding-top-extra, 0px));min-height:6rem}.dm-editor .ProseMirror:focus-visible{outline:none}.dm-editor:focus-within{box-shadow:var(--dm-editor-focus-ring, var(--dm-editor-shadow, none))}.dm-editor .ProseMirror ::selection{background:var(--dm-selection)}.dm-toolbar+.dm-editor{border-top-left-radius:0;border-top-right-radius:0;border-top:none}@keyframes dm-fade-in{from{opacity:0}to{opacity:1}}.dm-editor .ProseMirror :where(p,h1,h2,h3,h4,h5,h6){padding-inline:var(--dm-block-inline-padding)}.dm-editor .ProseMirror h1,.dm-editor .ProseMirror h2,.dm-editor .ProseMirror h3,.dm-editor .ProseMirror h4,.dm-editor .ProseMirror h5,.dm-editor .ProseMirror h6{line-height:1.25}.dm-editor .ProseMirror h3{font-size:1.25em}.dm-editor .ProseMirror h4{font-size:1.1em}.dm-editor .ProseMirror h6{font-size:.9em;color:var(--dm-muted, #666)}.dm-editor .ProseMirror code{background:var(--dm-code-bg);color:var(--dm-code-text);font-family:var(--dm-code-font);font-size:.875em;padding:.15em .35em;border:1px solid var(--dm-border-color);border-radius:var(--dm-code-border-radius)}.dm-editor .ProseMirror pre{background:var(--dm-code-block-bg);color:var(--dm-code-block-text);font-family:var(--dm-code-font);font-size:.875em;padding:1em;border-radius:.375rem;overflow-x:auto;margin:.75em 0}.dm-editor .ProseMirror pre code{background:none;color:inherit;padding:0;border:none;border-radius:0;font-size:inherit}.dm-editor .ProseMirror blockquote{border-left:var(--dm-blockquote-border);color:var(--dm-blockquote-color);margin:.5em 0;padding:.1em var(--dm-block-inline-padding) .1em .8em}.dm-editor .ProseMirror ul,.dm-editor .ProseMirror ol{margin:.75em 0;padding-left:1.5em;padding-right:var(--dm-block-inline-padding)}.dm-editor .ProseMirror ul:not([data-type=taskList]) li,.dm-editor .ProseMirror ol li{margin:.25em 0}.dm-editor .ProseMirror ul:not([data-type=taskList]) li>p,.dm-editor .ProseMirror ol li>p{margin:.1em 0;padding-inline:.3em 0}.dm-editor .ProseMirror ul:not([data-type=taskList]) li>:not(p:first-child):not(ul):not(ol),.dm-editor .ProseMirror ol li>:not(p:first-child):not(ul):not(ol){margin-inline-start:var(--dm-block-children-indent, 1.5rem);margin-top:.25rem}.dm-editor .ProseMirror hr{border:none;border-top:2px solid var(--dm-hr-color);margin:1.5em 0}.dm-editor .ProseMirror a{color:var(--dm-link-color)}.dm-editor .ProseMirror a:hover{color:var(--dm-link-hover-color)}.dm-editor .ProseMirror mark{color:inherit}.dm-editor .ProseMirror img{max-width:100%;height:auto;display:block;margin:.75em 0}.dm-editor .ProseMirror img.ProseMirror-selectednode{outline:2px solid var(--dm-accent, #2563eb)}.dm-editor .ProseMirror table{border:var(--dm-table-border);margin:.75em 0;font-size:.9375rem;line-height:1.5}.dm-editor .ProseMirror table td,.dm-editor .ProseMirror table th{border:var(--dm-table-border);padding:.375em .625em;min-width:100px}.dm-editor .ProseMirror table th{background:var(--dm-table-header-bg);font-weight:600;text-align:left}.dm-editor .ProseMirror table td>p,.dm-editor .ProseMirror table th>p{margin:0}.dm-editor .ProseMirror pre code .hljs-doctag,.dm-editor .ProseMirror pre code .hljs-keyword,.dm-editor .ProseMirror pre code .hljs-meta .hljs-keyword,.dm-editor .ProseMirror pre code .hljs-template-tag,.dm-editor .ProseMirror pre code .hljs-template-variable,.dm-editor .ProseMirror pre code .hljs-type,.dm-editor .ProseMirror pre code .hljs-variable.language_{color:var(--dm-syntax-keyword)}.dm-editor .ProseMirror pre code .hljs-title,.dm-editor .ProseMirror pre code .hljs-title.class_,.dm-editor .ProseMirror pre code .hljs-title.class_.inherited__,.dm-editor .ProseMirror pre code .hljs-title.function_{color:var(--dm-syntax-entity)}.dm-editor .ProseMirror pre code .hljs-attr,.dm-editor .ProseMirror pre code .hljs-attribute,.dm-editor .ProseMirror pre code .hljs-literal,.dm-editor .ProseMirror pre code .hljs-meta,.dm-editor .ProseMirror pre code .hljs-number,.dm-editor .ProseMirror pre code .hljs-operator,.dm-editor .ProseMirror pre code .hljs-variable,.dm-editor .ProseMirror pre code .hljs-selector-attr,.dm-editor .ProseMirror pre code .hljs-selector-class,.dm-editor .ProseMirror pre code .hljs-selector-id{color:var(--dm-syntax-constant)}.dm-editor .ProseMirror pre code .hljs-regexp,.dm-editor .ProseMirror pre code .hljs-string,.dm-editor .ProseMirror pre code .hljs-meta .hljs-string{color:var(--dm-syntax-string)}.dm-editor .ProseMirror pre code .hljs-built_in,.dm-editor .ProseMirror pre code .hljs-symbol{color:var(--dm-syntax-variable)}.dm-editor .ProseMirror pre code .hljs-comment,.dm-editor .ProseMirror pre code .hljs-code,.dm-editor .ProseMirror pre code .hljs-formula{color:var(--dm-syntax-comment)}.dm-editor .ProseMirror pre code .hljs-name,.dm-editor .ProseMirror pre code .hljs-quote,.dm-editor .ProseMirror pre code .hljs-selector-tag,.dm-editor .ProseMirror pre code .hljs-selector-pseudo{color:var(--dm-syntax-tag)}.dm-editor .ProseMirror pre code .hljs-section{color:var(--dm-syntax-constant);font-weight:bold}.dm-editor .ProseMirror pre code .hljs-bullet{color:var(--dm-syntax-tag)}.dm-editor .ProseMirror pre code .hljs-addition{color:var(--dm-syntax-addition);background-color:var(--dm-syntax-addition-bg)}.dm-editor .ProseMirror pre code .hljs-deletion{color:var(--dm-syntax-deletion);background-color:var(--dm-syntax-deletion-bg)}.dm-editor .ProseMirror pre code .hljs-emphasis{font-style:italic}.dm-editor .ProseMirror pre code .hljs-strong{font-weight:bold}.dm-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:var(--dm-toolbar-justify, flex-start);gap:var(--dm-toolbar-gap);padding:var(--dm-toolbar-padding);background:var(--dm-toolbar-bg);border:1px solid var(--dm-border-color, #e5e7eb);border-bottom:1px solid var(--dm-border-color, #e5e7eb);border-radius:var(--dm-toolbar-border-radius);box-shadow:var(--dm-editor-shadow, none)}.dm-toolbar-group{display:flex;align-items:center;gap:var(--dm-toolbar-gap)}.dm-toolbar-button{display:inline-flex;align-items:center;justify-content:center;width:var(--dm-button-size);height:var(--dm-button-size);padding:0;border:none;border-radius:var(--dm-button-border-radius);background:rgba(0,0,0,0);color:var(--dm-button-color);cursor:pointer;transition:background-color .15s,color .15s;font-size:.875rem;line-height:1}.dm-toolbar-button:hover{background:var(--dm-button-hover-bg)}.dm-toolbar-button--active{background:var(--dm-button-active-bg);color:var(--dm-button-active-color)}.dm-toolbar-button[aria-expanded=true]{background:var(--dm-button-hover-bg)}.dm-toolbar-button--disabled,.dm-toolbar-button:disabled{opacity:var(--dm-button-disabled-opacity);cursor:not-allowed;pointer-events:none}.dm-toolbar-button:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-toolbar-button svg{width:1.125rem;height:1.125rem}.dm-toolbar-dropdown-trigger{position:relative;width:auto;padding:0 .375rem;gap:.125rem}.dm-toolbar-dropdown-trigger[aria-expanded=true]{background:var(--dm-button-hover-bg)}.dm-toolbar-color-indicator{position:absolute;bottom:.15rem;left:.25rem;width:1.375rem;height:.3rem;border-radius:2px}.dm-toolbar-trigger-label{display:inline-block;vertical-align:middle;text-align:center;font-size:.8125rem;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:2.5rem}.dm-toolbar-trigger-label svg{width:1.125rem;height:1.125rem}[data-dropdown=fontFamily] .dm-toolbar-trigger-label{width:5rem}.dm-toolbar-button .dm-dropdown-caret{width:.625rem;height:.625rem;flex-shrink:0}.dm-toolbar-dropdown-wrapper{position:relative}.dm-toolbar-dropdown-panel{position:absolute;z-index:50;display:flex;flex-direction:column;gap:.125rem;min-width:8rem;padding:.25rem;background:var(--dm-bg, #fff);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.5rem;box-shadow:0 4px 16px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.04);animation:dm-fade-in .2s ease}.dm-toolbar-dropdown-panel.dm-color-palette{padding:.5rem;border-radius:.75rem}.dm-toolbar-dropdown-panel[data-display-mode=icon]{min-width:0}.dm-toolbar-dropdown-panel[data-display-mode=icon] .dm-toolbar-dropdown-item{width:auto;padding:.375rem;justify-content:center}.dm-toolbar-dropdown-panel[data-display-mode=text]{min-width:0}.dm-toolbar-dropdown-panel[data-display-mode=text] .dm-toolbar-dropdown-item{gap:0}.dm-toolbar-dropdown-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.375rem .5rem;border:none;border-radius:var(--dm-button-border-radius);background:rgba(0,0,0,0);color:var(--dm-button-color);cursor:pointer;font-size:.8125rem;line-height:1.4;text-align:left;white-space:nowrap;transition:background-color .15s}.dm-toolbar-dropdown-item:hover{background:var(--dm-button-hover-bg)}.dm-toolbar-dropdown-item--active{color:var(--dm-button-active-color);background:var(--dm-button-active-bg)}.dm-toolbar-dropdown-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-toolbar-dropdown-item svg{width:1rem;height:1rem;flex-shrink:0}.dm-toolbar-separator{width:1px;height:1.25rem;background:var(--dm-separator-color);margin:0 var(--dm-separator-margin)}.dm-color-palette{display:grid;grid-template-columns:repeat(var(--dm-palette-columns, 10), 1fr);gap:.375rem;padding:.375rem;min-width:auto;width:max-content}.dm-color-palette-reset{grid-column:1/-1;display:flex;align-items:center;gap:.375rem;width:100%;padding:.375rem .5rem;margin-bottom:.375rem;border:none;border-radius:.375rem;background:rgba(0,0,0,0);color:var(--dm-button-color, #1a1a1a);cursor:pointer;font-size:.8125rem;line-height:1.4;text-align:left;white-space:nowrap;transition:background-color .15s}.dm-color-palette-reset:hover{background:var(--dm-button-hover-bg, rgba(0, 0, 0, 0.06))}.dm-color-palette-reset:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-color-palette-reset svg{width:.875rem;height:.875rem;flex-shrink:0}.dm-color-swatch{position:relative;width:1.5rem;height:1.5rem;padding:0;border:1px solid rgba(0,0,0,.06);border-radius:50%;cursor:pointer;transition:transform .1s,box-shadow .1s}.dm-color-swatch:hover{transform:scale(1.15);z-index:1;box-shadow:0 0 0 2px var(--dm-toolbar-bg, #f8f9fa),0 0 0 3px var(--dm-accent, #2563eb)}.dm-color-swatch:focus-visible{box-shadow:0 0 0 2px var(--dm-toolbar-bg, #f8f9fa),0 0 0 3px var(--dm-accent, #2563eb)}.dm-color-swatch--active{box-shadow:0 0 0 2px var(--dm-toolbar-bg, #f8f9fa),0 0 0 3px var(--dm-accent, #2563eb)}.dm-color-swatch--active::after{content:"";position:absolute;inset:0;border-radius:50%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M12 5L6.5 11 4 8.5' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' opacity='0.3'/%3E%3Cpath d='M12 5L6.5 11 4 8.5' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat}.dm-theme-dark .dm-color-swatch,.dm-theme-auto .dm-color-swatch{border-color:hsla(0,0%,100%,.15)}@media(prefers-color-scheme: dark){.dm-theme-auto .dm-color-swatch{border-color:hsla(0,0%,100%,.15)}}.dm-bubble-menu{--dm-toolbar-padding: 0.25rem;--dm-toolbar-gap: 0.125rem;--dm-button-size: 1.75rem;--dm-button-border-radius: 0.25rem;--dm-button-color: var(--dm-text, #1a1a1a);--dm-button-hover-bg: var(--dm-hover, rgba(0, 0, 0, 0.06));--dm-button-active-bg: var(--dm-accent-surface, rgba(37, 99, 235, 0.1));--dm-button-active-color: var(--dm-accent, #2563eb);--dm-button-disabled-opacity: 0.4}.dm-bubble-menu .dm-toolbar-button svg:not(.dm-dropdown-caret){width:1rem;height:1rem}.dm-bubble-menu .dm-toolbar-separator{width:1px;height:1.125rem;background:var(--dm-separator-color, var(--dm-border-color, #e0e0e0));margin:0 .125rem;flex-shrink:0}.dm-bubble-menu{position:absolute;top:0;left:0;display:flex;align-items:center;gap:var(--dm-toolbar-gap);padding:var(--dm-toolbar-padding);background:var(--dm-bg, #fff);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.5rem;box-shadow:0 4px 16px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.04);visibility:hidden;opacity:0;z-index:50}.dm-bubble-menu[data-show]{visibility:visible;opacity:1;transition:opacity .15s ease}.dm-floating-menu{position:absolute;top:0;left:0;display:flex;flex-direction:column;gap:.25rem;min-width:16rem;max-height:22rem;overflow-y:auto;padding:.375rem;background:var(--dm-toolbar-bg, var(--dm-bg, #ffffff));border:1px solid var(--dm-border-color, #e5e7eb);border-radius:var(--dm-toolbar-border-radius, 0.5rem);box-shadow:var(--dm-popover-shadow, 0 10px 25px rgba(0, 0, 0, 0.08), 0 4px 10px rgba(0, 0, 0, 0.04));visibility:hidden;opacity:0;transition:opacity .15s ease,visibility .15s;z-index:var(--dm-z-popover, 50);scrollbar-width:thin;scrollbar-color:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18)) rgba(0,0,0,0)}.dm-floating-menu::-webkit-scrollbar{width:6px}.dm-floating-menu::-webkit-scrollbar-track{background:rgba(0,0,0,0);margin:.375rem 0}.dm-floating-menu::-webkit-scrollbar-thumb{background:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18));border-radius:3px;transition:background-color .15s}.dm-floating-menu::-webkit-scrollbar-thumb:hover{background:var(--dm-scrollbar-thumb-hover, rgba(0, 0, 0, 0.28))}.dm-floating-menu[data-show]{visibility:visible;opacity:1}.dm-floating-menu-group-label{padding:.375rem .5rem .125rem;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--dm-muted, #999);user-select:none}.dm-floating-menu-group{display:flex;flex-direction:column;gap:.125rem}.dm-floating-menu-group+.dm-floating-menu-group:not(:has(+.dm-floating-menu-group-label)){margin-top:.25rem}.dm-floating-menu-group-wrapper{display:flex;flex-direction:column}.dm-floating-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.3125rem .5rem;border:none;border-radius:var(--dm-button-border-radius, 0.375rem);background:rgba(0,0,0,0);color:var(--dm-button-color, inherit);text-align:left;font:inherit;cursor:pointer;transition:background-color .12s}.dm-floating-menu-item:hover:not([aria-disabled=true]),.dm-floating-menu-item:focus:not([aria-disabled=true]){background:var(--dm-button-hover-bg, rgba(0, 0, 0, 0.04))}.dm-floating-menu-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-2px}.dm-floating-menu-item[aria-disabled=true],.dm-floating-menu-item:disabled{opacity:var(--dm-button-disabled-opacity, 0.45);cursor:not-allowed}.dm-floating-menu-item-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--dm-editor-text, inherit)}.dm-floating-menu-item-icon svg{width:1.125rem;height:1.125rem}.dm-floating-menu-item-label{flex:1;min-width:0;font-size:.875rem;color:var(--dm-editor-text, inherit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-floating-menu-item-shortcut{flex-shrink:0;padding:.0625rem .375rem;font-family:var(--dm-code-font, ui-monospace, monospace);font-size:.6875rem;color:var(--dm-muted, #999);background:var(--dm-surface, #f8f9fa);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.25rem;user-select:none}.dm-link-popover{position:fixed;display:flex;align-items:center;gap:.25rem;padding:.25rem;background:var(--dm-surface);border:1px solid var(--dm-border-color);border-radius:.25rem;box-shadow:var(--dm-popover-shadow, 0 4px 12px rgba(0, 0, 0, 0.12));font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s;z-index:60}.dm-link-popover[data-show]{visibility:visible;opacity:1}.dm-link-popover-input{border:1px solid var(--dm-border-color);border-radius:.25rem;padding:.25rem .5rem;font-size:.8125rem;font-family:inherit;min-width:14rem;outline:none;background:var(--dm-bg);color:var(--dm-text)}.dm-link-popover-input:focus{border-color:var(--dm-accent)}.dm-link-popover-btn{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:none;border-radius:.25rem;background:rgba(0,0,0,0);color:var(--dm-text);cursor:pointer;transition:background-color .15s,color .15s}.dm-link-popover-btn:hover{background:var(--dm-hover)}.dm-link-popover-btn:focus-visible{outline:2px solid var(--dm-accent);outline-offset:1px}.dm-link-popover-btn svg{width:.875rem;height:.875rem}.dm-link-popover-apply:hover{color:var(--dm-accent)}.dm-link-popover-remove:hover{color:#dc2626}.dm-link-pending{background-color:color-mix(in srgb, var(--dm-accent) 12%, transparent);border-radius:1px}.dm-editor--has-block-handle{overflow:visible}.dm-editor--has-block-handle .ProseMirror{padding-left:var(--dm-block-handle-gutter, 4rem)}.dm-editor--has-block-handle .ProseMirror-selectednode,.dm-editor--has-block-handle .ProseMirror-selectednoderange{position:relative;outline:none}.dm-editor--has-block-handle .ProseMirror-selectednode::before,.dm-editor--has-block-handle .ProseMirror-selectednoderange::before{content:"";position:absolute;inset:-0.25rem;background-color:var(--dm-block-selected-halo, rgba(112, 207, 248, 0.25));border-radius:.25rem;pointer-events:none;z-index:-1}.dm-editor--has-block-handle li.ProseMirror-selectednode::after{display:none}.dm-block-handle{position:absolute;top:0;left:var(--dm-block-handle-left, -0.5rem);display:flex;align-items:center;gap:2px;padding:2px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s;z-index:var(--dm-z-handle, 25)}.dm-block-handle[data-show]{opacity:1;visibility:visible;pointer-events:auto}.dm-block-handle-btn{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.5rem;padding:0;border:none;background:rgba(0,0,0,0);color:var(--dm-muted, #999);cursor:pointer;border-radius:3px;transition:background-color .1s,color .1s;user-select:none;-webkit-user-select:none;touch-action:none}.dm-block-handle-btn:hover{background:var(--dm-button-hover-bg, rgba(0, 0, 0, 0.04));color:var(--dm-editor-text, inherit)}.dm-block-handle-btn:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-1px}.dm-block-handle-btn svg{width:1rem;height:1rem;pointer-events:none}.dm-block-handle-drag{cursor:grab}.dm-block-handle-drag:active{cursor:grabbing}.dm-block-handle-plus:hover{color:var(--dm-accent, #2563eb)}.dm-block-drop-indicator{position:absolute;height:2px;background:var(--dm-accent, #2563eb);border-radius:1px;pointer-events:none;z-index:5;display:none;box-shadow:0 0 0 1px rgba(37,99,235,.15);transform:translateY(3px);transition:left 80ms ease-out,width 80ms ease-out,top 80ms ease-out,transform 80ms ease-out}.dm-block-drop-indicator[data-show]{display:block}.dm-block-drop-indicator[data-mode=nested]{height:0;background:rgba(0,0,0,0);border-radius:0;border-top:2px dashed var(--dm-accent, #2563eb);box-shadow:none;transform:translateY(-2px)}.dm-block-handle-dragging .prosemirror-dropcursor-block,.dm-block-handle-dragging .prosemirror-dropcursor-inline{display:none}.dm-slash-command-menu{position:absolute;display:flex;flex-direction:column;gap:.25rem;min-width:17rem;max-height:22rem;overflow-y:auto;padding:.375rem;background:var(--dm-toolbar-bg, var(--dm-bg, #ffffff));border:1px solid var(--dm-border-color, #e5e7eb);border-radius:var(--dm-toolbar-border-radius, 0.5rem);box-shadow:var(--dm-popover-shadow, 0 10px 25px rgba(0, 0, 0, 0.08), 0 4px 10px rgba(0, 0, 0, 0.04));z-index:var(--dm-z-popover, 50);scrollbar-width:thin;scrollbar-color:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18)) rgba(0,0,0,0)}.dm-slash-command-menu::-webkit-scrollbar{width:6px}.dm-slash-command-menu::-webkit-scrollbar-track{background:rgba(0,0,0,0);margin:.375rem 0}.dm-slash-command-menu::-webkit-scrollbar-thumb{background:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18));border-radius:3px;transition:background-color .15s}.dm-slash-command-menu::-webkit-scrollbar-thumb:hover{background:var(--dm-scrollbar-thumb-hover, rgba(0, 0, 0, 0.28))}.dm-slash-command-query{color:var(--dm-accent, #2563eb)}.dm-slash-command-group-label{padding:.375rem .5rem .125rem;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--dm-muted, #999);user-select:none}.dm-slash-command-group{display:flex;flex-direction:column;gap:.125rem}.dm-slash-command-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.375rem .5rem;border:none;border-radius:var(--dm-button-border-radius, 0.375rem);background:rgba(0,0,0,0);color:var(--dm-editor-text, inherit);text-align:left;font:inherit;cursor:pointer;transition:background-color .1s}.dm-slash-command-item[data-selected]{background:var(--dm-button-hover-bg, rgba(0, 0, 0, 0.04))}.dm-slash-command-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-2px}.dm-slash-command-item-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--dm-editor-text, inherit)}.dm-slash-command-item-icon svg{width:1.125rem;height:1.125rem}.dm-slash-command-item-text{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.25}.dm-slash-command-item-label{font-size:.875rem;font-weight:500;color:var(--dm-editor-text, inherit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-slash-command-item-description{font-size:.75rem;color:var(--dm-muted, #999);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-slash-command-item-shortcut{flex-shrink:0;padding:.0625rem .375rem;font-family:var(--dm-code-font, ui-monospace, monospace);font-size:.6875rem;color:var(--dm-muted, #999);background:var(--dm-surface, #f8f9fa);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.25rem;user-select:none}.dm-slash-command-empty{padding:.5rem .75rem;font-size:.8125rem;color:var(--dm-muted, #999);user-select:none}.dm-block-context-menu{position:absolute;display:none;flex-direction:column;min-width:12rem;max-height:20rem;overflow-y:auto;overscroll-behavior:contain;padding:.25rem;background:var(--dm-toolbar-bg, var(--dm-bg, #ffffff));border:1px solid var(--dm-border-color, #e5e7eb);border-radius:var(--dm-toolbar-border-radius, 0.5rem);box-shadow:var(--dm-popover-shadow, 0 10px 25px rgba(0, 0, 0, 0.08), 0 4px 10px rgba(0, 0, 0, 0.04));z-index:var(--dm-z-popover, 50)}.dm-block-context-menu[data-show]{display:flex}.dm-block-context-menu{scrollbar-width:thin;scrollbar-color:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18)) rgba(0,0,0,0)}.dm-block-context-menu::-webkit-scrollbar{width:6px}.dm-block-context-menu::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.dm-block-context-menu::-webkit-scrollbar-thumb{background:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18));border-radius:3px}.dm-block-context-menu::-webkit-scrollbar-thumb:hover{background:var(--dm-scrollbar-thumb-hover, rgba(0, 0, 0, 0.28))}.dm-block-context-menu-group{display:flex;flex-direction:column;gap:1px}.dm-block-context-menu-group-label{padding:.5rem .5rem .125rem;margin-top:.25rem;border-top:1px solid var(--dm-border-color, #e5e7eb);font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--dm-muted, #999);user-select:none}.dm-block-context-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.3125rem .5rem;border:none;border-radius:var(--dm-button-border-radius, 0.375rem);background:rgba(0,0,0,0);color:var(--dm-editor-text, inherit);text-align:left;font:inherit;font-size:.875rem;cursor:pointer;transition:background-color .1s}.dm-block-context-menu-item:hover,.dm-block-context-menu-item:focus-visible{background:var(--dm-button-hover-bg, rgba(0, 0, 0, 0.04))}.dm-block-context-menu-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-2px}.dm-block-context-menu-item-icon{display:inline-flex;align-items:center;justify-content:center;width:1.125rem;height:1.125rem;flex-shrink:0;color:var(--dm-muted, #999)}.dm-block-context-menu-item-icon svg{width:1rem;height:1rem}.dm-block-context-menu-item-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ProseMirror .dm-block-context-active{background-color:var(--dm-block-context-active-bg, rgba(55, 53, 47, 0.06));border-radius:.25rem;box-shadow:0 0 0 4px var(--dm-block-context-active-bg, rgba(55, 53, 47, 0.06));transition:background-color .12s ease,box-shadow .12s ease}.dm-editor .ProseMirror .is-empty::before{content:attr(data-placeholder);float:left;color:var(--dm-placeholder-color);pointer-events:none;height:0}.dm-editor .ProseMirror ul[data-type=taskList]{list-style:none;padding-left:1.5em}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]{position:relative;margin:.25em 0}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]>label{position:absolute;left:var(--dm-task-checkbox-left, -1.15em);top:var(--dm-task-checkbox-top, 0.45em);display:flex;align-items:center;user-select:none}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]>label input[type=checkbox]{width:1em;height:1em;margin:0;padding:0;cursor:pointer;accent-color:var(--dm-accent, #2563eb)}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]>div>p{margin:.1em 0;padding-inline:.3em 0}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]>div>:not(p:first-child):not(ul):not(ol){margin-inline-start:var(--dm-block-children-indent, 1.5rem);margin-top:.25rem}.dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem][data-checked=true]>div>p:first-child{text-decoration:line-through;opacity:.6}.dm-editor .ProseMirror .mention{display:inline;background:var(--dm-mention-bg);color:var(--dm-mention-color);border-radius:var(--dm-mention-border-radius);padding:.1em .3em;font-weight:500;font-size:.95em;white-space:nowrap}.dm-editor .ProseMirror .mention-suggestion{text-decoration:underline;text-decoration-color:var(--dm-accent, #2563eb);text-underline-offset:2px}.dm-mention-suggestion{position:absolute;z-index:100;min-width:12rem;max-width:20rem;padding:.25rem;background:var(--dm-surface, #f8f9fa);border:1px solid var(--dm-border-color, #e0e0e0);border-radius:.25rem;box-shadow:0 4px 12px rgba(0,0,0,.12);animation:dm-fade-in .2s ease}.dm-mention-suggestion-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.375rem .5rem;border:none;border-radius:.25rem;background:rgba(0,0,0,0);color:var(--dm-text, #1a1a1a);cursor:pointer;font-size:.8125rem;line-height:1.4;text-align:left;transition:background-color .1s}.dm-mention-suggestion-item:hover,.dm-mention-suggestion-item--selected{background:var(--dm-hover, rgba(0, 0, 0, 0.06))}.dm-mention-suggestion-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-mention-suggestion-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-mention-suggestion-empty{padding:.5rem;text-align:center;color:var(--dm-text, #1a1a1a);opacity:.5;font-size:.8125rem}.dm-editor .ProseMirror img[style*="float: left"],.dm-editor .ProseMirror img[style*="float: right"]{max-width:60%}.dm-editor .ProseMirror .dm-image-resizable{position:relative;display:inline-block;max-width:100%;margin:.75em 0;line-height:0}.dm-editor .ProseMirror .dm-image-resizable img{display:block;max-width:100%;height:auto}.dm-editor .ProseMirror .dm-image-resizable[data-float=left]{float:left;margin:0 1em 1em 0}.dm-editor .ProseMirror .dm-image-resizable[data-float=right]{float:right;margin:0 0 1em 1em}.dm-editor .ProseMirror .dm-image-resizable[data-float=center]{display:block;width:fit-content;margin-left:auto;margin-right:auto}.dm-editor .ProseMirror .dm-image-resizable[data-float=left],.dm-editor .ProseMirror .dm-image-resizable[data-float=right]{max-width:60%;z-index:1}.dm-editor .ProseMirror .dm-image-resizable.ProseMirror-selectednode{outline:2px solid var(--dm-accent, #2563eb)}.dm-editor .ProseMirror .dm-image-resizable.ProseMirror-selectednode .dm-image-handle{display:block}.dm-editor .ProseMirror .dm-image-handle{display:none;position:absolute;width:8px;height:8px;background:var(--dm-accent, #2563eb);border:1px solid #fff;border-radius:1px;z-index:5}.dm-editor .ProseMirror .dm-image-handle-nw{top:-4px;left:-4px;cursor:nw-resize}.dm-editor .ProseMirror .dm-image-handle-ne{top:-4px;right:-4px;cursor:ne-resize}.dm-editor .ProseMirror .dm-image-handle-sw{bottom:-4px;left:-4px;cursor:sw-resize}.dm-editor .ProseMirror .dm-image-handle-se{bottom:-4px;right:-4px;cursor:se-resize}.dm-image-popover{position:fixed;display:flex;align-items:center;gap:.25rem;padding:.25rem;background:var(--dm-surface);border:1px solid var(--dm-border-color);border-radius:.25rem;box-shadow:var(--dm-popover-shadow, 0 4px 12px rgba(0, 0, 0, 0.12));font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s;z-index:60}.dm-image-popover[data-show]{visibility:visible;opacity:1}.dm-image-popover-input{border:1px solid var(--dm-border-color);border-radius:.25rem;padding:.25rem .5rem;font-size:.8125rem;font-family:inherit;min-width:14rem;outline:none;background:var(--dm-bg);color:var(--dm-text)}.dm-image-popover-input:focus{border-color:var(--dm-accent)}.dm-image-popover-btn{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:none;border-radius:.25rem;background:rgba(0,0,0,0);color:var(--dm-text);cursor:pointer;transition:background-color .15s,color .15s}.dm-image-popover-btn:hover{background:var(--dm-hover)}.dm-image-popover-btn:focus-visible{outline:2px solid var(--dm-accent);outline-offset:1px}.dm-image-popover-btn svg{width:.875rem;height:.875rem}.dm-image-popover-apply:hover,.dm-image-popover-browse:hover{color:var(--dm-accent)}.dm-editor.dm-dragover{outline:2px dashed var(--dm-accent);outline-offset:-2px}.dm-editor.dm-dragover::after{content:"";position:absolute;inset:0;background:var(--dm-accent);opacity:.05;pointer-events:none;z-index:10}.dm-editor .ProseMirror div[data-type=details]{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;border:var(--dm-details-border);border-radius:.375rem;margin:.75em 0}.dm-editor .ProseMirror div[data-type=details]>div{display:contents}.dm-editor .ProseMirror div[data-type=details]>button[type=button]{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;align-self:center;margin-right:10px;border:none;background:rgba(0,0,0,0);cursor:pointer;color:var(--dm-muted);border-radius:50%}.dm-editor .ProseMirror div[data-type=details]>button[type=button]::before{content:"";display:block;width:.4em;height:.4em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s ease}.dm-editor .ProseMirror div[data-type=details]>button[type=button]:hover{color:var(--dm-text);background:var(--dm-hover)}.dm-editor .ProseMirror div[data-type=details]>button[type=button]:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-editor .ProseMirror div[data-type=details]::before{content:"";grid-column:1/-1;grid-row:1;background:var(--dm-details-bg);border-radius:.375rem}.dm-editor .ProseMirror div[data-type=details].is-open::before{border-radius:.375rem .375rem 0 0}.dm-editor .ProseMirror div[data-type=details] summary{grid-column:1;grid-row:1;display:block;padding:.5em .5em .5em .75em;font-weight:var(--dm-details-summary-font-weight);min-height:0}.dm-editor .ProseMirror div[data-type=details] summary::-webkit-details-marker{display:none}.dm-editor .ProseMirror div[data-type=details] summary{list-style:none}.dm-editor .ProseMirror div[data-type=details] div[data-details-content]{grid-column:1/-1;grid-row:2;padding:.5em .75em;border-top:var(--dm-details-border)}.dm-editor .ProseMirror div[data-type=details].ProseMirror-selectednode{outline:none}.dm-editor .ProseMirror div[data-type=details].is-open>button[type=button]::before{transform:rotate(45deg)}.dm-editor .ProseMirror .invisible-char{color:var(--dm-invisible-char-color, var(--dm-muted, #999));pointer-events:none;user-select:none}.dm-editor .ProseMirror [data-char=space]{position:relative}.dm-editor .ProseMirror [data-char=space]::after{content:"·";position:absolute;inset:0;text-align:center;color:var(--dm-invisible-char-color, var(--dm-muted, #999));pointer-events:none}.dm-editor .ProseMirror [data-char=nbsp]{position:relative}.dm-editor .ProseMirror [data-char=nbsp]::after{content:"°";position:absolute;inset:0;text-align:center;color:var(--dm-invisible-char-color, var(--dm-muted, #999));pointer-events:none}.dm-emoji-picker{position:absolute;z-index:100;width:20rem;max-height:22rem;display:flex;flex-direction:column;background:var(--dm-surface, #f8f9fa);border:1px solid var(--dm-border-color, #e0e0e0);border-radius:.25rem;box-shadow:0 4px 12px rgba(0,0,0,.12);overflow:hidden;animation:dm-fade-in .2s ease}.dm-emoji-picker-search{flex-shrink:0;padding:.5rem;border-bottom:1px solid var(--dm-border-color, #e0e0e0)}.dm-emoji-picker-search input{width:100%;padding:.375rem .5rem;border:1px solid var(--dm-border-color, #e0e0e0);border-radius:.25rem;background:var(--dm-bg, #ffffff);color:var(--dm-text, #1a1a1a);font-size:.8125rem;outline:none;box-sizing:border-box}.dm-emoji-picker-search input:focus{border-color:var(--dm-accent, #2563eb)}.dm-emoji-picker-search input::placeholder{color:var(--dm-muted, #999999)}.dm-emoji-picker-tabs{display:flex;align-items:center;flex-shrink:0;padding:.375rem .5rem;gap:.1rem;border-bottom:1px solid var(--dm-border-color, #e0e0e0);overflow-x:auto;scrollbar-width:none}.dm-emoji-picker-tabs::-webkit-scrollbar{display:none}.dm-emoji-picker-tab{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;flex-shrink:0;padding:0;border:none;border-radius:.375rem;background:rgba(0,0,0,0);cursor:pointer;font-size:1.25rem;line-height:1;opacity:.5;transition:opacity .15s,background-color .15s}.dm-emoji-picker-tab:hover{opacity:1;background:var(--dm-hover, rgba(0, 0, 0, 0.06))}.dm-emoji-picker-tab:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-emoji-picker-tab--active{opacity:1;background:var(--dm-active, rgba(0, 0, 0, 0.12))}.dm-emoji-picker-grid{flex:1;overflow-y:auto;padding:.25rem .5rem .5rem;display:grid;grid-template-columns:repeat(8, 1fr);gap:.125rem;align-content:start}.dm-emoji-picker-category-label{grid-column:1/-1;font-size:.6875rem;font-weight:600;color:var(--dm-text, #1a1a1a);opacity:.6;padding:.375rem 0 .125rem;text-transform:uppercase;letter-spacing:.03em}.dm-emoji-swatch{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:.25rem;background:rgba(0,0,0,0);cursor:pointer;font-size:1.25rem;line-height:1;transition:background-color .1s,transform .1s}.dm-emoji-swatch:hover{background:var(--dm-hover, rgba(0, 0, 0, 0.06));transform:scale(1.15)}.dm-emoji-swatch:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-emoji-picker-empty{grid-column:1/-1;padding:1rem;text-align:center;color:var(--dm-text, #1a1a1a);opacity:.5;font-size:.8125rem}.dm-emoji-suggestion{position:absolute;z-index:100;min-width:12rem;max-width:18rem;padding:.25rem;background:var(--dm-surface, #f8f9fa);border:1px solid var(--dm-border-color, #e0e0e0);border-radius:.25rem;box-shadow:0 4px 12px rgba(0,0,0,.12);animation:dm-fade-in .2s ease}.dm-emoji-suggestion-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.375rem .5rem;border:none;border-radius:.25rem;background:rgba(0,0,0,0);color:var(--dm-text, #1a1a1a);cursor:pointer;font-size:.8125rem;line-height:1.4;text-align:left;transition:background-color .1s}.dm-emoji-suggestion-item:hover,.dm-emoji-suggestion-item--selected{background:var(--dm-hover, rgba(0, 0, 0, 0.06))}.dm-emoji-suggestion-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-emoji-suggestion-emoji{font-size:1.125rem;line-height:1;flex-shrink:0}.dm-emoji-suggestion-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-emoji-suggestion-empty{padding:.5rem;text-align:center;color:var(--dm-text, #1a1a1a);opacity:.5;font-size:.8125rem}.dm-editor .ProseMirror span.emoji{cursor:default;font-style:normal;padding:0 .05em}.dm-editor .ProseMirror span.emoji.ProseMirror-selectednode{outline:2px solid var(--dm-accent, #2563eb);border-radius:.15em}.dm-editor .dm-table-container{position:relative}.dm-table-col-handle,.dm-table-row-handle{position:absolute;z-index:10;display:none;align-items:center;justify-content:center;border:1px solid var(--dm-border-color, #e0e0e0);border-radius:4px;background:var(--dm-bg, #ffffff);color:var(--dm-muted, #999999);cursor:pointer;padding:0;transition:background-color .15s,color .15s,box-shadow .15s}.dm-table-col-handle:hover,.dm-table-row-handle:hover{background:var(--dm-hover, rgba(0, 0, 0, 0.06));color:var(--dm-text, #1a1a1a);box-shadow:0 1px 4px rgba(0,0,0,.1)}.dm-table-col-handle:focus-visible,.dm-table-row-handle:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-table-col-handle svg,.dm-table-row-handle svg{display:block}.dm-table-col-handle{width:24px;height:14px}.dm-table-row-handle{width:14px;height:24px}.dm-table-cell-handle{position:absolute;z-index:10;display:none;align-items:center;justify-content:center;width:14px;height:14px;border:1px solid var(--dm-accent, #2563eb);border-radius:50%;background:var(--dm-bg, #ffffff);color:var(--dm-accent, #2563eb);cursor:pointer;padding:0;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:background-color .15s,color .15s,border-color .15s,box-shadow .15s}.dm-table-cell-handle:hover{background:var(--dm-accent, #2563eb);color:#fff;border-color:var(--dm-accent, #2563eb);box-shadow:0 1px 4px color-mix(in srgb, var(--dm-accent, #2563eb) 30%, transparent)}.dm-table-cell-handle:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-table-cell-handle svg{display:block;width:8px;height:8px}.dm-table-cell-toolbar{position:absolute;z-index:10;display:none;align-items:center;gap:2px;padding:2px;border:1px solid var(--dm-border-color, #e0e0e0);border-radius:6px;background:var(--dm-bg, #ffffff);box-shadow:0 2px 8px rgba(0,0,0,.1);animation:dm-fade-in .12s ease}.dm-table-cell-toolbar-btn{display:flex;align-items:center;gap:1px;padding:4px 5px;border:none;border-radius:4px;background:rgba(0,0,0,0);color:var(--dm-text, #1a1a1a);cursor:pointer;transition:background-color .15s,color .15s}.dm-table-cell-toolbar-btn:hover,.dm-table-cell-toolbar-btn.dm-table-cell-toolbar-btn--open{background:var(--dm-hover, rgba(0, 0, 0, 0.06))}.dm-table-cell-toolbar-btn--active{color:var(--dm-accent, #2563eb);background:var(--dm-accent-surface, rgba(37, 99, 235, 0.1))}.dm-table-cell-toolbar-btn:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-table-cell-toolbar-btn:disabled{opacity:.3;cursor:default;pointer-events:none}.dm-table-cell-toolbar-btn svg{display:block;flex-shrink:0}.dm-table-cell-toolbar-chevron{display:flex;align-items:center}.dm-table-cell-toolbar-sep{width:1px;height:16px;margin:0 2px;background:var(--dm-border-color, #e0e0e0)}.dm-table-cell-align-dropdown{min-width:auto;width:max-content;padding:.25rem}.dm-table-cell-align-dropdown .dm-table-align-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.3rem .5rem;border:none;border-radius:.25rem;background:rgba(0,0,0,0);color:var(--dm-text, #1a1a1a);cursor:pointer;font-size:.8125rem;white-space:nowrap;transition:background-color .15s,color .15s}.dm-table-cell-align-dropdown .dm-table-align-item:hover{background:var(--dm-hover, rgba(0, 0, 0, 0.06))}.dm-table-cell-align-dropdown .dm-table-align-item:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-table-cell-align-dropdown .dm-table-align-item--active{color:var(--dm-accent, #2563eb);background:var(--dm-accent-surface, rgba(37, 99, 235, 0.1))}.dm-table-cell-align-dropdown .dm-table-align-item-icon{display:flex;align-items:center}.dm-table-cell-align-dropdown .dm-table-align-item-icon svg{display:block}.dm-editor .ProseMirror table td[data-text-align=center],.dm-editor .ProseMirror table th[data-text-align=center]{text-align:center}.dm-editor .ProseMirror table td[data-text-align=right],.dm-editor .ProseMirror table th[data-text-align=right]{text-align:right}.dm-editor .ProseMirror table td[data-vertical-align=middle],.dm-editor .ProseMirror table th[data-vertical-align=middle]{vertical-align:middle}.dm-editor .ProseMirror table td[data-vertical-align=bottom],.dm-editor .ProseMirror table th[data-vertical-align=bottom]{vertical-align:bottom}.dm-editor td.dm-cell-focused,.dm-editor th.dm-cell-focused{outline:1px solid var(--dm-accent, #2563eb);outline-offset:-1px}.dm-table-controls-dropdown{position:absolute;z-index:50;display:flex;flex-direction:column;gap:.125rem;min-width:10rem;padding:.25rem;background:var(--dm-bg, #fff);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.5rem;box-shadow:0 4px 16px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.04);animation:dm-fade-in .2s ease}.dm-table-controls-dropdown>button{display:flex;align-items:center;gap:.375rem;width:100%;padding:.375rem .5rem;border:none;border-radius:var(--dm-button-border-radius, 0.375rem);background:rgba(0,0,0,0);color:var(--dm-button-color, var(--dm-text));cursor:pointer;font-size:.8125rem;line-height:1.4;text-align:left;white-space:nowrap;transition:background-color .15s}.dm-table-controls-dropdown>button:hover{background:var(--dm-button-hover-bg, var(--dm-hover, rgba(0, 0, 0, 0.06)))}.dm-table-controls-dropdown>button:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-table-controls-dropdown-icon{display:flex;align-items:center;color:var(--dm-icon, #666)}.dm-table-controls-dropdown-icon svg{display:block}.dm-table-cell-dropdown{min-width:auto;width:max-content;padding:0;border-radius:.75rem}.dm-table-cell-dropdown .dm-color-palette{padding:.5rem}.dm-table-cell-dropdown-separator{height:1px;background:var(--dm-border-color, #e0e0e0);margin:.25rem 0}.dm-editor .ProseMirror [data-bg-color=gray]{background-color:var(--dm-block-bg-gray)}.dm-editor .ProseMirror [data-bg-color=brown]{background-color:var(--dm-block-bg-brown)}.dm-editor .ProseMirror [data-bg-color=orange]{background-color:var(--dm-block-bg-orange)}.dm-editor .ProseMirror [data-bg-color=yellow]{background-color:var(--dm-block-bg-yellow)}.dm-editor .ProseMirror [data-bg-color=green]{background-color:var(--dm-block-bg-green)}.dm-editor .ProseMirror [data-bg-color=blue]{background-color:var(--dm-block-bg-blue)}.dm-editor .ProseMirror [data-bg-color=purple]{background-color:var(--dm-block-bg-purple)}.dm-editor .ProseMirror [data-bg-color=pink]{background-color:var(--dm-block-bg-pink)}.dm-editor .ProseMirror [data-bg-color=red]{background-color:var(--dm-block-bg-red)}.dm-editor .ProseMirror [data-bg-color]{padding-block:.125rem;border-radius:.25rem}.dm-editor .ProseMirror [data-text-color=gray]{color:var(--dm-block-text-gray)}.dm-editor .ProseMirror [data-text-color=brown]{color:var(--dm-block-text-brown)}.dm-editor .ProseMirror [data-text-color=orange]{color:var(--dm-block-text-orange)}.dm-editor .ProseMirror [data-text-color=yellow]{color:var(--dm-block-text-yellow)}.dm-editor .ProseMirror [data-text-color=green]{color:var(--dm-block-text-green)}.dm-editor .ProseMirror [data-text-color=blue]{color:var(--dm-block-text-blue)}.dm-editor .ProseMirror [data-text-color=purple]{color:var(--dm-block-text-purple)}.dm-editor .ProseMirror [data-text-color=pink]{color:var(--dm-block-text-pink)}.dm-editor .ProseMirror [data-text-color=red]{color:var(--dm-block-text-red)}.dm-block-color-row{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;padding:.25rem .5rem}.dm-block-color-row-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.dm-block-color-swatch{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:1px solid var(--dm-border-color, #e5e7eb);border-radius:50%;background:rgba(0,0,0,0);cursor:pointer;transition:transform .08s ease,box-shadow .08s ease}.dm-block-color-swatch:hover{transform:scale(1.1);box-shadow:0 0 0 2px var(--dm-accent-surface, rgba(37, 99, 235, 0.15))}.dm-block-color-swatch:focus-visible,.dm-block-color-swatch[aria-pressed=true]{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-block-color-swatch::before{content:"";display:block;width:1rem;height:1rem;border-radius:50%}.dm-block-color-swatch[data-color=null]::before{background:linear-gradient(to top right, transparent calc(50% - 1px), var(--dm-muted, #999) calc(50% - 1px), var(--dm-muted, #999) calc(50% + 1px), transparent calc(50% + 1px));border:1px solid var(--dm-border-color, #e5e7eb)}.dm-block-color-swatch--bg[data-color=gray]::before{background:var(--dm-block-bg-gray)}.dm-block-color-swatch--bg[data-color=brown]::before{background:var(--dm-block-bg-brown)}.dm-block-color-swatch--bg[data-color=orange]::before{background:var(--dm-block-bg-orange)}.dm-block-color-swatch--bg[data-color=yellow]::before{background:var(--dm-block-bg-yellow)}.dm-block-color-swatch--bg[data-color=green]::before{background:var(--dm-block-bg-green)}.dm-block-color-swatch--bg[data-color=blue]::before{background:var(--dm-block-bg-blue)}.dm-block-color-swatch--bg[data-color=purple]::before{background:var(--dm-block-bg-purple)}.dm-block-color-swatch--bg[data-color=pink]::before{background:var(--dm-block-bg-pink)}.dm-block-color-swatch--bg[data-color=red]::before{background:var(--dm-block-bg-red)}.dm-block-color-swatch--text::before{content:"A";display:flex;align-items:center;justify-content:center;font-family:var(--dm-editor-font-family, system-ui, sans-serif);font-size:.75rem;font-weight:600;background:var(--dm-surface, #f8f9fa);color:var(--dm-editor-text, #333)}.dm-block-color-swatch--text[data-color=gray]::before{color:var(--dm-block-text-gray)}.dm-block-color-swatch--text[data-color=brown]::before{color:var(--dm-block-text-brown)}.dm-block-color-swatch--text[data-color=orange]::before{color:var(--dm-block-text-orange)}.dm-block-color-swatch--text[data-color=yellow]::before{color:var(--dm-block-text-yellow)}.dm-block-color-swatch--text[data-color=green]::before{color:var(--dm-block-text-green)}.dm-block-color-swatch--text[data-color=blue]::before{color:var(--dm-block-text-blue)}.dm-block-color-swatch--text[data-color=purple]::before{color:var(--dm-block-text-purple)}.dm-block-color-swatch--text[data-color=pink]::before{color:var(--dm-block-text-pink)}.dm-block-color-swatch--text[data-color=red]::before{color:var(--dm-block-text-red)}.dm-editor .ProseMirror span[data-bg-color]{padding-block:0;padding-inline:.2rem;border-radius:.25rem}.dm-ncp-trigger{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.125rem}.dm-ncp-trigger-glyph{font-family:var(--dm-editor-font-family, system-ui, sans-serif);font-size:.95rem;font-weight:600;line-height:1;transform:translateY(2px)}.dm-ncp-trigger-underline{width:.875rem;height:.125rem;border-radius:.0625rem;background-color:rgba(0,0,0,0)}.dm-notion-color-picker{position:absolute;z-index:60;display:flex;flex-direction:column;gap:.25rem;padding:.25rem;background:var(--dm-surface-elevated, var(--dm-surface, #ffffff));color:var(--dm-editor-text, inherit);border:1px solid var(--dm-border-color, #e5e7eb);border-radius:.5rem;box-shadow:0 8px 24px rgba(0,0,0,.18)}.dm-notion-color-picker:not([data-show]){display:none}.dm-ncp-section{display:flex;flex-direction:column;gap:.25rem}.dm-ncp-label{font-size:.75rem;line-height:1;font-weight:500;color:var(--dm-muted, #6b7280);padding:.125rem .25rem}.dm-ncp-grid{display:grid;grid-template-columns:repeat(5, 1.5rem);gap:.25rem;padding:.25rem .5rem;justify-content:start}.dm-ncp-swatch{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:1px solid var(--dm-border-color, #e5e7eb);border-radius:50%;background:rgba(0,0,0,0);color:var(--dm-editor-text, #333);font-family:var(--dm-editor-font-family, system-ui, sans-serif);font-size:.75rem;font-weight:600;line-height:1;cursor:pointer;transition:transform .08s ease,box-shadow .08s ease}.dm-ncp-swatch:hover{transform:scale(1.1);box-shadow:0 0 0 2px var(--dm-accent-surface, rgba(37, 99, 235, 0.15))}.dm-ncp-swatch:focus-visible,.dm-ncp-swatch.dm-ncp-active{outline:2px solid var(--dm-accent, #2563eb);outline-offset:1px}.dm-ncp-swatch--text{background-color:var(--dm-surface, #f8f9fa)}.dm-ncp-swatch--text::before{content:"A"}.dm-ncp-swatch--text[data-color=null]::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background-image:linear-gradient(to top right, transparent calc(50% - 1px), var(--dm-muted, #999) calc(50% - 1px), var(--dm-muted, #999) calc(50% + 1px), transparent calc(50% + 1px))}.dm-ncp-swatch--text[data-color=gray]::before{color:var(--dm-block-text-gray)}.dm-ncp-swatch--text[data-color=brown]::before{color:var(--dm-block-text-brown)}.dm-ncp-swatch--text[data-color=orange]::before{color:var(--dm-block-text-orange)}.dm-ncp-swatch--text[data-color=yellow]::before{color:var(--dm-block-text-yellow)}.dm-ncp-swatch--text[data-color=green]::before{color:var(--dm-block-text-green)}.dm-ncp-swatch--text[data-color=blue]::before{color:var(--dm-block-text-blue)}.dm-ncp-swatch--text[data-color=purple]::before{color:var(--dm-block-text-purple)}.dm-ncp-swatch--text[data-color=pink]::before{color:var(--dm-block-text-pink)}.dm-ncp-swatch--text[data-color=red]::before{color:var(--dm-block-text-red)}.dm-ncp-swatch--bg[data-color=null]::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background-image:linear-gradient(to top right, transparent calc(50% - 1px), var(--dm-muted, #999) calc(50% - 1px), var(--dm-muted, #999) calc(50% + 1px), transparent calc(50% + 1px))}.dm-ncp-swatch--bg[data-color=gray]{background-color:var(--dm-block-bg-gray)}.dm-ncp-swatch--bg[data-color=brown]{background-color:var(--dm-block-bg-brown)}.dm-ncp-swatch--bg[data-color=orange]{background-color:var(--dm-block-bg-orange)}.dm-ncp-swatch--bg[data-color=yellow]{background-color:var(--dm-block-bg-yellow)}.dm-ncp-swatch--bg[data-color=green]{background-color:var(--dm-block-bg-green)}.dm-ncp-swatch--bg[data-color=blue]{background-color:var(--dm-block-bg-blue)}.dm-ncp-swatch--bg[data-color=purple]{background-color:var(--dm-block-bg-purple)}.dm-ncp-swatch--bg[data-color=pink]{background-color:var(--dm-block-bg-pink)}.dm-ncp-swatch--bg[data-color=red]{background-color:var(--dm-block-bg-red)}@media(max-width: 480px){.dm-notion-color-picker{max-width:calc(100vw - 1rem)}}.dm-toc-outline{display:flex;flex-direction:column;align-items:flex-end;z-index:var(--dm-toc-z-index, 10);background:rgba(0,0,0,0);border:0;margin:0;pointer-events:auto}.dm-toc-outline[data-anchor=editor]{position:sticky;top:var(--dm-toc-mid-top, 50vh)}.dm-toc-outline[data-anchor=editor][data-bottom-visible=true]{top:var(--dm-toc-editor-top, 1rem)}.dm-toc-outline[data-anchor=editor][data-scroll-mode=container]{position:sticky;top:calc(50% - var(--dm-toc-mid-half-height, 0px));right:0}.dm-toc-outline[data-anchor=viewport]{position:fixed;top:50%;right:var(--dm-toc-right-offset, 24px);transform:translateY(-50%)}.dm-toc-outline[data-state=hidden],.dm-toc-outline[data-viewport=mobile]{display:none}.dm-toc-outline-shell[data-anchor=editor]{position:absolute;top:25px;bottom:25px;right:var(--dm-toc-page-offset, 8px);z-index:var(--dm-toc-z-index, 10);pointer-events:none}.dm-toc-outline-shell[data-anchor=editor]:has(.dm-toc-outline[data-state=hidden]),.dm-toc-outline-shell[data-anchor=editor]:has(.dm-toc-outline[data-viewport=mobile]){display:none}.dm-toc-outline-shell[data-anchor=editor][data-mode=center]{display:flex;align-items:center;justify-content:flex-end}.dm-toc-outline-shell[data-anchor=editor][data-scroll-mode=container]{top:0;bottom:0}.dm-toc-outline-ticks{display:flex;flex-direction:column;align-items:flex-end;gap:var(--dm-toc-tick-gap, 10px);padding:var(--dm-toc-padding-block, 12px) var(--dm-toc-padding-inline, 8px);max-height:var(--dm-toc-ticks-max-h, 50vh);overflow:hidden}.dm-toc-outline-tick{appearance:none;border:0;margin:0;padding:0;font:inherit;cursor:pointer;background:var(--dm-toc-tick-color, rgba(55, 53, 47, 0.4));flex-shrink:0;height:var(--dm-toc-tick-height, 2px);border-radius:var(--dm-toc-tick-radius, 1px);width:var(--dm-toc-tick-h3-width, 8px);transition:background-color 120ms ease-out,width 120ms ease-out}.dm-toc-outline-tick:hover{background:var(--dm-toc-tick-hover-color, rgba(55, 53, 47, 0.7))}.dm-toc-outline-tick:focus-visible{background:var(--dm-toc-tick-hover-color, rgba(55, 53, 47, 0.7));outline:2px solid var(--dm-accent, #2563eb);outline-offset:3px}.dm-toc-outline-tick.dm-toc--active,.dm-toc-outline-tick[aria-current=location]{background:var(--dm-toc-tick-active-color, rgba(55, 53, 47, 0.95))}.dm-toc-outline-tick[data-level="1"]{width:var(--dm-toc-tick-h1-width, 18px)}.dm-toc-outline-tick[data-level="2"]{width:var(--dm-toc-tick-h2-width, 12px)}.dm-toc-outline-tick[data-level="3"]{width:var(--dm-toc-tick-h3-width, 8px)}.dm-toc-outline-tick[data-level="4"]{width:var(--dm-toc-tick-h4-width, 6px)}.dm-toc-outline-tick[data-level="5"]{width:var(--dm-toc-tick-h5-width, 5px)}.dm-toc-outline-tick[data-level="6"]{width:var(--dm-toc-tick-h6-width, 4px)}.dm-toc-outline[data-state=expanded] .dm-toc-outline-tick{opacity:0;pointer-events:none}.dm-toc-outline-card{position:absolute;right:0;top:50%;transform:translateY(calc(-50% + var(--dm-toc-card-shift-y, 0px))) translateX(var(--dm-toc-card-offset, 8px));min-width:var(--dm-toc-card-min-width, 180px);max-width:var(--dm-toc-card-max-width, 260px);max-height:var(--dm-toc-ticks-max-h, 50vh);overflow-y:auto;padding:var(--dm-toc-card-padding-block, 6px) 0;background:var(--dm-toc-card-bg, rgba(255, 255, 255, 0.98));border:var(--dm-toc-card-border, 1px solid rgba(0, 0, 0, 0.06));border-radius:var(--dm-toc-card-radius, 6px);box-shadow:var(--dm-toc-card-shadow, 0 8px 24px rgba(0, 0, 0, 0.08));scrollbar-width:thin;scrollbar-color:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18)) rgba(0,0,0,0)}.dm-toc-outline-card::-webkit-scrollbar{width:6px}.dm-toc-outline-card::-webkit-scrollbar-track{background:rgba(0,0,0,0);margin:.375rem 0}.dm-toc-outline-card::-webkit-scrollbar-thumb{background:var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18));border-radius:3px;transition:background-color .15s}.dm-toc-outline-card::-webkit-scrollbar-thumb:hover{background:var(--dm-scrollbar-thumb-hover, rgba(0, 0, 0, 0.28))}.dm-toc-outline-card{display:flex;flex-direction:column;align-items:stretch;opacity:0;pointer-events:none;transition:opacity var(--dm-toc-card-transition, 180ms) ease-out,transform var(--dm-toc-card-transition, 180ms) ease-out}.dm-toc-outline[data-state=expanded] .dm-toc-outline-card{opacity:1;pointer-events:auto;transform:translateY(calc(-50% + var(--dm-toc-card-shift-y, 0px))) translateX(0)}.dm-toc-outline-row{appearance:none;border:0;margin:0;background:rgba(0,0,0,0);cursor:pointer;text-align:start;font:inherit;font-size:var(--dm-toc-row-font-size, 13px);line-height:var(--dm-toc-row-line-height, 1.4);color:var(--dm-toc-row-color, rgba(55, 53, 47, 0.7));flex-shrink:0;padding:var(--dm-toc-row-padding-block, 4px) var(--dm-toc-row-padding-inline-end, 16px) var(--dm-toc-row-padding-block, 4px) var(--dm-toc-row-padding-inline-start, 12px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:3px;transition:background-color 120ms ease-out,color 120ms ease-out}.dm-toc-outline-row:hover{background:var(--dm-toc-row-hover-bg, rgba(0, 0, 0, 0.04))}.dm-toc-outline-row:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-2px}.dm-toc-outline-row.dm-toc--active,.dm-toc-outline-row[aria-current=location]{color:var(--dm-toc-row-active-color, rgba(55, 53, 47, 0.95));font-weight:var(--dm-toc-row-active-weight, 600)}.dm-toc-outline-row[data-level="1"]{padding-inline-start:var(--dm-toc-row-padding-inline-start, 12px)}.dm-toc-outline-row[data-level="2"]{padding-inline-start:calc(var(--dm-toc-row-padding-inline-start, 12px) + var(--dm-toc-row-indent, 14px))}.dm-toc-outline-row[data-level="3"]{padding-inline-start:calc(var(--dm-toc-row-padding-inline-start, 12px) + var(--dm-toc-row-indent, 14px)*2)}.dm-toc-outline-row[data-level="4"]{padding-inline-start:calc(var(--dm-toc-row-padding-inline-start, 12px) + var(--dm-toc-row-indent, 14px)*3)}.dm-toc-outline-row[data-level="5"]{padding-inline-start:calc(var(--dm-toc-row-padding-inline-start, 12px) + var(--dm-toc-row-indent, 14px)*4)}.dm-toc-outline-row[data-level="6"]{padding-inline-start:calc(var(--dm-toc-row-padding-inline-start, 12px) + var(--dm-toc-row-indent, 14px)*5)}.dm-toc-block{display:block;margin-block:var(--dm-toc-block-margin-block, 1rem);padding:var(--dm-toc-block-padding-block, 12px) var(--dm-toc-block-padding-inline, 16px);background:var(--dm-toc-block-bg, rgba(0, 0, 0, 0.02));border:var(--dm-toc-block-border, 1px solid rgba(0, 0, 0, 0.08));border-radius:var(--dm-toc-block-radius, 6px)}.dm-toc-block.ProseMirror-selectednode{outline:2px solid var(--dm-accent, #2563eb);outline-offset:2px}.dm-toc-block-empty{margin:0;color:var(--dm-toc-block-empty-color, rgba(55, 53, 47, 0.5));font-style:var(--dm-toc-block-empty-font-style, italic)}.dm-toc-block-list{list-style:none;padding:0;margin:0}.dm-toc-block-item{margin:0}.dm-toc-block-link{appearance:none;border:0;background:rgba(0,0,0,0);cursor:pointer;font:inherit;font-size:var(--dm-toc-block-link-font-size, 0.9375rem);line-height:var(--dm-toc-block-link-line-height, 1.5);color:var(--dm-toc-block-link-color, rgba(55, 53, 47, 0.8));text-align:start;width:100%;display:block;padding:var(--dm-toc-block-link-padding-block, 4px) var(--dm-toc-block-link-padding-inline, 8px);border-radius:var(--dm-toc-block-link-radius, 3px);transition:background-color 120ms ease-out,color 120ms ease-out}.dm-toc-block-link:hover{color:var(--dm-toc-block-link-hover-color, rgb(55, 53, 47));background:var(--dm-toc-block-link-hover-bg, rgba(0, 0, 0, 0.04))}.dm-toc-block-link:focus-visible{outline:2px solid var(--dm-accent, #2563eb);outline-offset:-2px}.dm-toc-block-link.dm-toc-block-link--active,.dm-toc-block-link[aria-current=location]{color:var(--dm-toc-block-link-active-color, rgba(55, 53, 47, 0.95));font-weight:var(--dm-toc-block-link-active-weight, 600)}.dm-toc-block-link[data-level="1"]{padding-inline-start:var(--dm-toc-block-link-padding-inline, 8px)}.dm-toc-block-link[data-level="2"]{padding-inline-start:calc(var(--dm-toc-block-link-padding-inline, 8px) + var(--dm-toc-block-link-indent, 16px))}.dm-toc-block-link[data-level="3"]{padding-inline-start:calc(var(--dm-toc-block-link-padding-inline, 8px) + var(--dm-toc-block-link-indent, 16px)*2)}.dm-toc-block-link[data-level="4"]{padding-inline-start:calc(var(--dm-toc-block-link-padding-inline, 8px) + var(--dm-toc-block-link-indent, 16px)*3)}.dm-toc-block-link[data-level="5"]{padding-inline-start:calc(var(--dm-toc-block-link-padding-inline, 8px) + var(--dm-toc-block-link-indent, 16px)*4)}.dm-toc-block-link[data-level="6"]{padding-inline-start:calc(var(--dm-toc-block-link-padding-inline, 8px) + var(--dm-toc-block-link-indent, 16px)*5)}@media(prefers-reduced-motion: reduce){.dm-toc-outline-tick,.dm-toc-outline-card,.dm-toc-outline-row,.dm-toc-block-link{transition:none}.dm-toc-outline-card{transform:translateY(calc(-50% + var(--dm-toc-card-shift-y, 0px))) translateX(0)}}@media print{.dm-toc-outline{display:none}.dm-toc-block{background:rgba(0,0,0,0);border-color:rgba(0,0,0,.2)}}@media(forced-colors: active){.dm-toc-outline-tick{background:ButtonText;border:1px solid ButtonText}.dm-toc-outline-tick.dm-toc--active,.dm-toc-outline-tick[aria-current=location]{background:Highlight;border-color:Highlight}.dm-toc-outline-card{border:1px solid ButtonText}.dm-toc-outline-row.dm-toc--active,.dm-toc-outline-row.dm-toc-block-link--active,.dm-toc-outline-row[aria-current=location],.dm-toc-block-link.dm-toc--active,.dm-toc-block-link.dm-toc-block-link--active,.dm-toc-block-link[aria-current=location]{color:Highlight}.dm-toc-block{border:1px solid ButtonText}}.dm-editor.dm-notion-mode{border:none;border-radius:0;box-shadow:none;background:rgba(0,0,0,0);max-width:38rem;margin:0 auto;--dm-editor-line-height: 1.7;--dm-editor-padding: 0;--dm-block-handle-gutter: 0;--dm-block-handle-left: -3.5rem;--dm-task-checkbox-top: 0.45em}.dm-editor.dm-notion-mode .ProseMirror{min-height:60vh;outline:none}.dm-editor.dm-notion-mode .ProseMirror h1{font-weight:700;margin-top:1.5rem;margin-bottom:.75rem}.dm-editor.dm-notion-mode .ProseMirror h2{font-weight:600;margin-top:1.5rem;margin-bottom:.5rem}.dm-editor.dm-notion-mode .ProseMirror h3{font-weight:600;margin-top:1.25rem;margin-bottom:.375rem}.dm-editor.dm-notion-mode .ProseMirror p{margin:.25rem 0}.dm-editor.dm-notion-mode .ProseMirror td>p,.dm-editor.dm-notion-mode .ProseMirror th>p{margin:0}.dm-editor.dm-notion-mode .ProseMirror td .is-empty::before,.dm-editor.dm-notion-mode .ProseMirror th .is-empty::before{content:none}.dm-theme-light,.dm-theme-light .dm-editor,.dm-theme-light .dm-toolbar,.dm-theme-light .dm-table-controls-dropdown{--dm-bg: #ffffff;--dm-text: #1a1a1a;--dm-muted: #999999;--dm-surface: #f8f9fa;--dm-border-color: #e0e0e0;--dm-hover: rgba(0, 0, 0, 0.06);--dm-active: rgba(0, 0, 0, 0.12);--dm-accent: #2563eb;--dm-accent-hover: #1d4ed8;--dm-accent-surface: rgba(37, 99, 235, 0.1);--dm-focus-color: rgba(66, 133, 244, 0.3);--dm-selection: rgba(66, 133, 244, 0.2);--dm-code-surface: #f5f5f5;--dm-code-color: #d63384;--dm-highlight-bg: #fff3cd;--dm-syntax-keyword: #c72031;--dm-syntax-entity: #6f42c1;--dm-syntax-constant: #005cc5;--dm-syntax-string: #032f62;--dm-syntax-variable: #d35400;--dm-syntax-comment: #57606a;--dm-syntax-tag: #22863a;--dm-syntax-addition: #22863a;--dm-syntax-addition-bg: #f0fff4;--dm-syntax-deletion: #b31d28;--dm-syntax-deletion-bg: #ffeef0}.dm-theme-dark,.dm-theme-dark .dm-editor,.dm-theme-dark .dm-toolbar,.dm-theme-dark .dm-bubble-menu,.dm-theme-dark .dm-floating-menu,.dm-theme-dark .dm-emoji-picker,.dm-theme-dark .dm-emoji-suggestion,.dm-theme-dark .dm-mention-suggestion,.dm-theme-dark .dm-table-controls-dropdown,.dm-theme-dark .dm-slash-command-menu,.dm-theme-dark .dm-block-context-menu,.dm-theme-dark .dm-link-popover,.dm-theme-dark .dm-image-popover{--dm-color-scheme: dark;--dm-bg: #1e1e1e;--dm-text: #e0e0e0;--dm-muted: #777777;--dm-surface: #2a2a2a;--dm-border-color: #3a3a3a;--dm-hover: rgba(255, 255, 255, 0.08);--dm-active: rgba(255, 255, 255, 0.15);--dm-accent: #60a5fa;--dm-accent-hover: #93c5fd;--dm-accent-surface: rgba(96, 165, 250, 0.15);--dm-focus-color: rgba(96, 165, 250, 0.3);--dm-selection: rgba(96, 165, 250, 0.25);--dm-code-surface: #2d2d2d;--dm-code-color: inherit;--dm-highlight-bg: rgba(255, 243, 205, 0.2);--dm-scrollbar-thumb: rgba(255, 255, 255, 0.18);--dm-scrollbar-thumb-hover: rgba(255, 255, 255, 0.32);--dm-popover-shadow: 0 10px 25px rgba(0, 0, 0, 0.4), 0 4px 10px rgba(0, 0, 0, 0.25);--dm-blockquote-border: 3px solid #555555;--dm-blockquote-color: #a0a0a0;--dm-block-context-active-bg: rgba(255, 255, 255, 0.05);--dm-syntax-keyword: #ff7b72;--dm-syntax-entity: #d2a8ff;--dm-syntax-constant: #79c0ff;--dm-syntax-string: #a5d6ff;--dm-syntax-variable: #ffa657;--dm-syntax-comment: #8b949e;--dm-syntax-tag: #7ee787;--dm-syntax-addition: #aff5b4;--dm-syntax-addition-bg: #033a16;--dm-syntax-deletion: #ffdcd7;--dm-syntax-deletion-bg: #67060c;--dm-block-bg-gray: #2f2f2f;--dm-block-bg-brown: #4a3228;--dm-block-bg-orange: #5c3b1e;--dm-block-bg-yellow: #564328;--dm-block-bg-green: #243d30;--dm-block-bg-blue: #143a4e;--dm-block-bg-purple: #3c2d49;--dm-block-bg-pink: #4e2c3c;--dm-block-bg-red: #5c1e1e;--dm-block-text-gray: #9b9a97;--dm-block-text-brown: #ba856f;--dm-block-text-orange: #d68a52;--dm-block-text-yellow: #ca9849;--dm-block-text-green: #6db285;--dm-block-text-blue: #7a9bd6;--dm-block-text-purple: #a877d8;--dm-block-text-pink: #dc6da4;--dm-block-text-red: #df5452;--dm-block-selected-halo: rgba(112, 207, 248, 0.35)}@media(prefers-color-scheme: dark){.dm-theme-auto,.dm-theme-auto .dm-editor,.dm-theme-auto .dm-toolbar,.dm-theme-auto .dm-bubble-menu,.dm-theme-auto .dm-floating-menu,.dm-theme-auto .dm-emoji-picker,.dm-theme-auto .dm-emoji-suggestion,.dm-theme-auto .dm-mention-suggestion,.dm-theme-auto .dm-table-controls-dropdown,.dm-theme-auto .dm-slash-command-menu,.dm-theme-auto .dm-block-context-menu,.dm-theme-auto .dm-link-popover,.dm-theme-auto .dm-image-popover{--dm-color-scheme: dark;--dm-bg: #1e1e1e;--dm-text: #e0e0e0;--dm-muted: #777777;--dm-surface: #2a2a2a;--dm-border-color: #3a3a3a;--dm-hover: rgba(255, 255, 255, 0.08);--dm-active: rgba(255, 255, 255, 0.15);--dm-accent: #60a5fa;--dm-accent-hover: #93c5fd;--dm-accent-surface: rgba(96, 165, 250, 0.15);--dm-focus-color: rgba(96, 165, 250, 0.3);--dm-selection: rgba(96, 165, 250, 0.25);--dm-code-surface: #2d2d2d;--dm-code-color: inherit;--dm-highlight-bg: rgba(255, 243, 205, 0.2);--dm-scrollbar-thumb: rgba(255, 255, 255, 0.18);--dm-scrollbar-thumb-hover: rgba(255, 255, 255, 0.32);--dm-popover-shadow: 0 10px 25px rgba(0, 0, 0, 0.4), 0 4px 10px rgba(0, 0, 0, 0.25);--dm-blockquote-border: 3px solid #555555;--dm-blockquote-color: #a0a0a0;--dm-block-context-active-bg: rgba(255, 255, 255, 0.05);--dm-syntax-keyword: #ff7b72;--dm-syntax-entity: #d2a8ff;--dm-syntax-constant: #79c0ff;--dm-syntax-string: #a5d6ff;--dm-syntax-variable: #ffa657;--dm-syntax-comment: #8b949e;--dm-syntax-tag: #7ee787;--dm-syntax-addition: #aff5b4;--dm-syntax-addition-bg: #033a16;--dm-syntax-deletion: #ffdcd7;--dm-syntax-deletion-bg: #67060c;--dm-block-bg-gray: #2f2f2f;--dm-block-bg-brown: #4a3228;--dm-block-bg-orange: #5c3b1e;--dm-block-bg-yellow: #564328;--dm-block-bg-green: #243d30;--dm-block-bg-blue: #143a4e;--dm-block-bg-purple: #3c2d49;--dm-block-bg-pink: #4e2c3c;--dm-block-bg-red: #5c1e1e;--dm-block-text-gray: #9b9a97;--dm-block-text-brown: #ba856f;--dm-block-text-orange: #d68a52;--dm-block-text-yellow: #ca9849;--dm-block-text-green: #6db285;--dm-block-text-blue: #7a9bd6;--dm-block-text-purple: #a877d8;--dm-block-text-pink: #dc6da4;--dm-block-text-red: #df5452;--dm-block-selected-halo: rgba(112, 207, 248, 0.35)}}.dm-theme-dark .dm-toc-outline,.dm-theme-dark.dm-toc-outline{--dm-toc-tick-color: rgba(255, 255, 255, 0.3);--dm-toc-tick-hover-color: rgba(255, 255, 255, 0.6);--dm-toc-tick-active-color: rgba(255, 255, 255, 0.95);--dm-toc-card-bg: rgba(45, 50, 56, 0.98);--dm-toc-card-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);--dm-toc-card-border: 1px solid rgba(255, 255, 255, 0.08);--dm-toc-row-color: rgba(255, 255, 255, 0.7);--dm-toc-row-hover-bg: rgba(255, 255, 255, 0.06);--dm-toc-row-active-color: rgba(255, 255, 255, 0.95)}.dm-theme-dark .dm-toc-block,.dm-theme-dark.dm-toc-block{--dm-toc-block-bg: rgba(255, 255, 255, 0.04);--dm-toc-block-border: 1px solid rgba(255, 255, 255, 0.08);--dm-toc-block-empty-color: rgba(255, 255, 255, 0.4);--dm-toc-block-link-color: rgba(255, 255, 255, 0.7);--dm-toc-block-link-hover-color: rgba(255, 255, 255, 0.95);--dm-toc-block-link-hover-bg: rgba(255, 255, 255, 0.06);--dm-toc-block-link-active-color: rgba(255, 255, 255, 0.95)}@media(prefers-color-scheme: dark){.dm-theme-auto .dm-toc-block,.dm-theme-auto.dm-toc-block{--dm-toc-block-bg: rgba(255, 255, 255, 0.04);--dm-toc-block-border: 1px solid rgba(255, 255, 255, 0.08);--dm-toc-block-empty-color: rgba(255, 255, 255, 0.4);--dm-toc-block-link-color: rgba(255, 255, 255, 0.7);--dm-toc-block-link-hover-color: rgba(255, 255, 255, 0.95);--dm-toc-block-link-hover-bg: rgba(255, 255, 255, 0.06);--dm-toc-block-link-active-color: rgba(255, 255, 255, 0.95)}}@media(prefers-color-scheme: dark){.dm-theme-auto .dm-toc-outline,.dm-theme-auto.dm-toc-outline{--dm-toc-tick-color: rgba(255, 255, 255, 0.3);--dm-toc-tick-hover-color: rgba(255, 255, 255, 0.6);--dm-toc-tick-active-color: rgba(255, 255, 255, 0.95);--dm-toc-card-bg: rgba(45, 50, 56, 0.98);--dm-toc-card-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);--dm-toc-card-border: 1px solid rgba(255, 255, 255, 0.08);--dm-toc-row-color: rgba(255, 255, 255, 0.7);--dm-toc-row-hover-bg: rgba(255, 255, 255, 0.06);--dm-toc-row-active-color: rgba(255, 255, 255, 0.95)}}@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}}
@@ -50,6 +50,7 @@
50
50
  --dm-editor-font-size: 1rem;
51
51
  --dm-editor-line-height: 1.6;
52
52
  --dm-editor-padding: 1rem;
53
+ --dm-editor-padding-top-extra: 0.5rem;
53
54
  --dm-editor-border: 1px solid var(--dm-border-color);
54
55
  --dm-editor-border-radius: 0.75rem;
55
56
  --dm-editor-focus-ring: none;
@@ -330,6 +331,7 @@ img.ProseMirror-separator {
330
331
  }
331
332
  .dm-editor .ProseMirror {
332
333
  padding: var(--dm-editor-padding);
334
+ padding-top: calc(var(--dm-editor-padding) + var(--dm-editor-padding-top-extra, 0px));
333
335
  min-height: 6rem;
334
336
  }
335
337
  .dm-editor .ProseMirror:focus-visible {
@@ -833,6 +835,8 @@ img.ProseMirror-separator {
833
835
  }
834
836
  .dm-bubble-menu {
835
837
  position: absolute;
838
+ top: 0;
839
+ left: 0;
836
840
  display: flex;
837
841
  align-items: center;
838
842
  gap: var(--dm-toolbar-gap);
@@ -853,6 +857,8 @@ img.ProseMirror-separator {
853
857
 
854
858
  .dm-floating-menu {
855
859
  position: absolute;
860
+ top: 0;
861
+ left: 0;
856
862
  display: flex;
857
863
  flex-direction: column;
858
864
  gap: 0.25rem;
@@ -1069,8 +1075,13 @@ img.ProseMirror-separator {
1069
1075
  z-index: -1;
1070
1076
  }
1071
1077
 
1078
+ .dm-editor--has-block-handle li.ProseMirror-selectednode::after {
1079
+ display: none;
1080
+ }
1081
+
1072
1082
  .dm-block-handle {
1073
1083
  position: absolute;
1084
+ top: 0;
1074
1085
  left: var(--dm-block-handle-left, -0.5rem);
1075
1086
  display: flex;
1076
1087
  align-items: center;
@@ -1151,7 +1162,8 @@ img.ProseMirror-separator {
1151
1162
  transform: translateY(-2px);
1152
1163
  }
1153
1164
 
1154
- .dm-block-handle-dragging .ProseMirror-dropcursor {
1165
+ .dm-block-handle-dragging .prosemirror-dropcursor-block,
1166
+ .dm-block-handle-dragging .prosemirror-dropcursor-inline {
1155
1167
  display: none;
1156
1168
  }
1157
1169
 
@@ -2589,8 +2601,6 @@ img.ProseMirror-separator {
2589
2601
  display: flex;
2590
2602
  flex-direction: column;
2591
2603
  align-items: flex-end;
2592
- gap: var(--dm-toc-tick-gap, 10px);
2593
- padding: var(--dm-toc-padding-block, 12px) var(--dm-toc-padding-inline, 8px);
2594
2604
  z-index: var(--dm-toc-z-index, 10);
2595
2605
  background: transparent;
2596
2606
  border: 0;
@@ -2604,6 +2614,11 @@ img.ProseMirror-separator {
2604
2614
  .dm-toc-outline[data-anchor=editor][data-bottom-visible=true] {
2605
2615
  top: var(--dm-toc-editor-top, 1rem);
2606
2616
  }
2617
+ .dm-toc-outline[data-anchor=editor][data-scroll-mode=container] {
2618
+ position: sticky;
2619
+ top: calc(50% - var(--dm-toc-mid-half-height, 0px));
2620
+ right: 0;
2621
+ }
2607
2622
  .dm-toc-outline[data-anchor=viewport] {
2608
2623
  position: fixed;
2609
2624
  top: 50%;
@@ -2632,6 +2647,21 @@ img.ProseMirror-separator {
2632
2647
  justify-content: flex-end;
2633
2648
  }
2634
2649
 
2650
+ .dm-toc-outline-shell[data-anchor=editor][data-scroll-mode=container] {
2651
+ top: 0;
2652
+ bottom: 0;
2653
+ }
2654
+
2655
+ .dm-toc-outline-ticks {
2656
+ display: flex;
2657
+ flex-direction: column;
2658
+ align-items: flex-end;
2659
+ gap: var(--dm-toc-tick-gap, 10px);
2660
+ padding: var(--dm-toc-padding-block, 12px) var(--dm-toc-padding-inline, 8px);
2661
+ max-height: var(--dm-toc-ticks-max-h, 50vh);
2662
+ overflow: hidden;
2663
+ }
2664
+
2635
2665
  .dm-toc-outline-tick {
2636
2666
  appearance: none;
2637
2667
  border: 0;
@@ -2640,6 +2670,7 @@ img.ProseMirror-separator {
2640
2670
  font: inherit;
2641
2671
  cursor: pointer;
2642
2672
  background: var(--dm-toc-tick-color, rgba(55, 53, 47, 0.4));
2673
+ flex-shrink: 0;
2643
2674
  height: var(--dm-toc-tick-height, 2px);
2644
2675
  border-radius: var(--dm-toc-tick-radius, 1px);
2645
2676
  width: var(--dm-toc-tick-h3-width, 8px);
@@ -2687,13 +2718,32 @@ img.ProseMirror-separator {
2687
2718
  transform: translateY(calc(-50% + var(--dm-toc-card-shift-y, 0px))) translateX(var(--dm-toc-card-offset, 8px));
2688
2719
  min-width: var(--dm-toc-card-min-width, 180px);
2689
2720
  max-width: var(--dm-toc-card-max-width, 260px);
2690
- max-height: calc(100vh - 2 * var(--dm-toc-card-viewport-margin, 16px));
2721
+ max-height: var(--dm-toc-ticks-max-h, 50vh);
2691
2722
  overflow-y: auto;
2692
2723
  padding: var(--dm-toc-card-padding-block, 6px) 0;
2693
2724
  background: var(--dm-toc-card-bg, rgba(255, 255, 255, 0.98));
2694
2725
  border: var(--dm-toc-card-border, 1px solid rgba(0, 0, 0, 0.06));
2695
2726
  border-radius: var(--dm-toc-card-radius, 6px);
2696
2727
  box-shadow: var(--dm-toc-card-shadow, 0 8px 24px rgba(0, 0, 0, 0.08));
2728
+ scrollbar-width: thin;
2729
+ scrollbar-color: var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18)) transparent;
2730
+ }
2731
+ .dm-toc-outline-card::-webkit-scrollbar {
2732
+ width: 6px;
2733
+ }
2734
+ .dm-toc-outline-card::-webkit-scrollbar-track {
2735
+ background: transparent;
2736
+ margin: 0.375rem 0;
2737
+ }
2738
+ .dm-toc-outline-card::-webkit-scrollbar-thumb {
2739
+ background: var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18));
2740
+ border-radius: 3px;
2741
+ transition: background-color 0.15s;
2742
+ }
2743
+ .dm-toc-outline-card::-webkit-scrollbar-thumb:hover {
2744
+ background: var(--dm-scrollbar-thumb-hover, rgba(0, 0, 0, 0.28));
2745
+ }
2746
+ .dm-toc-outline-card {
2697
2747
  display: flex;
2698
2748
  flex-direction: column;
2699
2749
  align-items: stretch;
@@ -2719,6 +2769,7 @@ img.ProseMirror-separator {
2719
2769
  font-size: var(--dm-toc-row-font-size, 13px);
2720
2770
  line-height: var(--dm-toc-row-line-height, 1.4);
2721
2771
  color: var(--dm-toc-row-color, rgba(55, 53, 47, 0.7));
2772
+ flex-shrink: 0;
2722
2773
  padding: var(--dm-toc-row-padding-block, 4px) var(--dm-toc-row-padding-inline-end, 16px) var(--dm-toc-row-padding-block, 4px) var(--dm-toc-row-padding-inline-start, 12px);
2723
2774
  white-space: nowrap;
2724
2775
  overflow: hidden;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@domternal/theme",
3
- "version": "0.7.1",
3
+ "version": "0.7.2",
4
4
  "description": "Default themes and styles for Domternal editor",
5
5
  "author": "https://github.com/ThomasNowHere",
6
6
  "license": "MIT",
package/src/_base.scss CHANGED
@@ -19,6 +19,7 @@
19
19
 
20
20
  .ProseMirror {
21
21
  padding: var(--dm-editor-padding);
22
+ padding-top: calc(var(--dm-editor-padding) + var(--dm-editor-padding-top-extra, 0px));
22
23
  min-height: 6rem;
23
24
 
24
25
  &:focus-visible {
@@ -48,8 +48,19 @@
48
48
  }
49
49
  }
50
50
 
51
+ // `_prosemirror.scss` draws a sharp 2px accent border on selected list
52
+ // items via `li.ProseMirror-selectednode::after`. With BlockHandle the
53
+ // translucent halo above is the canonical selection visual, so suppress
54
+ // the list-item-specific border to avoid a doubled frame.
55
+ .dm-editor--has-block-handle li.ProseMirror-selectednode::after {
56
+ display: none;
57
+ }
58
+
51
59
  .dm-block-handle {
52
60
  position: absolute;
61
+ // Pin static position to parent top so the hidden box doesn't
62
+ // inflate parent scrollHeight. JS sets `top` inline on show.
63
+ top: 0;
53
64
  // Tokenised so demos with a centered narrower content column can move
54
65
  // the handle further out (e.g., `--dm-block-handle-left: -3.5rem`) to
55
66
  // place it fully in the surrounding whitespace. Default `-0.5rem` keeps
@@ -189,8 +200,10 @@
189
200
  }
190
201
 
191
202
  // Hide the native dropcursor during a handle drag so it doesn't double up
192
- // with `.dm-block-drop-indicator`. Class is set by BlockHandle on dragstart
193
- // and cleared on dragend.
194
- .dm-block-handle-dragging .ProseMirror-dropcursor {
203
+ // with `.dm-block-drop-indicator`. `prosemirror-dropcursor` emits one of
204
+ // two classes depending on the drop target ('-block' between blocks,
205
+ // '-inline' within inline content); both must be hidden.
206
+ .dm-block-handle-dragging .prosemirror-dropcursor-block,
207
+ .dm-block-handle-dragging .prosemirror-dropcursor-inline {
195
208
  display: none;
196
209
  }
@@ -32,6 +32,10 @@
32
32
  }
33
33
 
34
34
  position: absolute;
35
+ // Pin static position to parent top-left so the hidden box doesn't
36
+ // inflate parent scrollHeight. JS overrides on show.
37
+ top: 0;
38
+ left: 0;
35
39
  display: flex;
36
40
  align-items: center;
37
41
  gap: var(--dm-toolbar-gap);
@@ -6,6 +6,11 @@
6
6
 
7
7
  .dm-floating-menu {
8
8
  position: absolute;
9
+ // Pin static position to parent top-left; otherwise the hidden box
10
+ // inherits an end-of-content static position and inflates parent
11
+ // scrollHeight. `positionFloating` overrides via transform on show.
12
+ top: 0;
13
+ left: 0;
9
14
  display: flex;
10
15
  flex-direction: column;
11
16
  gap: 0.25rem;
package/src/_toc.scss CHANGED
@@ -5,13 +5,11 @@
5
5
  // =============================================================================
6
6
 
7
7
  .dm-toc-outline {
8
- // Stack ticks vertically with even gaps. flex-end keeps the right
9
- // edge of every tick aligned even though widths differ per level.
8
+ // Positioning wrapper. Inner `.dm-toc-outline-ticks` stacks + clips
9
+ // ticks; card is an absolute sibling, untouched by the clip.
10
10
  display: flex;
11
11
  flex-direction: column;
12
12
  align-items: flex-end;
13
- gap: var(--dm-toc-tick-gap, 10px);
14
- padding: var(--dm-toc-padding-block, 12px) var(--dm-toc-padding-inline, 8px);
15
13
  z-index: var(--dm-toc-z-index, 10);
16
14
 
17
15
  // No background / no border in collapsed state - just a column of ticks.
@@ -44,6 +42,14 @@
44
42
  &[data-anchor='editor'][data-bottom-visible='true'] {
45
43
  top: var(--dm-toc-editor-top, 1rem);
46
44
  }
45
+ // `scroll-mode='container'`: sticky pins the nav at the host's
46
+ // visible middle, zero JS during scroll. Plugin publishes
47
+ // `--dm-toc-mid-half-height` (= nav.offsetHeight / 2).
48
+ &[data-anchor='editor'][data-scroll-mode='container'] {
49
+ position: sticky;
50
+ top: calc(50% - var(--dm-toc-mid-half-height, 0px));
51
+ right: 0;
52
+ }
47
53
  &[data-anchor='viewport'] {
48
54
  position: fixed;
49
55
  top: 50%;
@@ -94,6 +100,27 @@
94
100
  justify-content: flex-end;
95
101
  }
96
102
 
103
+ // `scroll-mode='container'`: shell spans the host (no top/bottom
104
+ // inset) and is JS-stretched to host.scrollHeight so the sticky's
105
+ // containing block covers the full scroll range.
106
+ .dm-toc-outline-shell[data-anchor='editor'][data-scroll-mode='container'] {
107
+ top: 0;
108
+ bottom: 0;
109
+ }
110
+
111
+ // Ticks column - capped at ~50% (Notion behavior): overflow simply
112
+ // clips, gap stays constant, column doesn't scroll. Defaults to
113
+ // `50vh` (page mode); container mode plugin overrides the var.
114
+ .dm-toc-outline-ticks {
115
+ display: flex;
116
+ flex-direction: column;
117
+ align-items: flex-end;
118
+ gap: var(--dm-toc-tick-gap, 10px);
119
+ padding: var(--dm-toc-padding-block, 12px) var(--dm-toc-padding-inline, 8px);
120
+ max-height: var(--dm-toc-ticks-max-h, 50vh);
121
+ overflow: hidden;
122
+ }
123
+
97
124
  .dm-toc-outline-tick {
98
125
  // Reset button defaults - we draw a solid filled rectangle.
99
126
  appearance: none;
@@ -103,6 +130,9 @@
103
130
  font: inherit;
104
131
  cursor: pointer;
105
132
  background: var(--dm-toc-tick-color, rgba(55, 53, 47, 0.4));
133
+ // Lock tick height so the gap stays constant; overflow is clipped
134
+ // by the wrapper instead of squeezed.
135
+ flex-shrink: 0;
106
136
  height: var(--dm-toc-tick-height, 2px);
107
137
  border-radius: var(--dm-toc-tick-radius, 1px);
108
138
  // Width per heading level - h1 widest, deeper levels narrower.
@@ -173,9 +203,9 @@
173
203
  translateX(var(--dm-toc-card-offset, 8px));
174
204
  min-width: var(--dm-toc-card-min-width, 180px);
175
205
  max-width: var(--dm-toc-card-max-width, 260px);
176
- // Long heading lists scroll internally rather than overflowing the
177
- // viewport; the margin keeps the card off the chrome edges.
178
- max-height: calc(100vh - 2 * var(--dm-toc-card-viewport-margin, 16px));
206
+ // Card matches the ticks wrapper height; the rest of the rows
207
+ // are reachable by scrolling the card itself.
208
+ max-height: var(--dm-toc-ticks-max-h, 50vh);
179
209
  overflow-y: auto;
180
210
  padding: var(--dm-toc-card-padding-block, 6px) 0;
181
211
  background: var(--dm-toc-card-bg, rgba(255, 255, 255, 0.98));
@@ -183,6 +213,26 @@
183
213
  border-radius: var(--dm-toc-card-radius, 6px);
184
214
  box-shadow: var(--dm-toc-card-shadow, 0 8px 24px rgba(0, 0, 0, 0.08));
185
215
 
216
+ // Tokenised slim scrollbar so dark theme overrides keep contrast.
217
+ scrollbar-width: thin;
218
+ scrollbar-color: var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18)) transparent;
219
+
220
+ &::-webkit-scrollbar {
221
+ width: 6px;
222
+ }
223
+ &::-webkit-scrollbar-track {
224
+ background: transparent;
225
+ margin: 0.375rem 0;
226
+ }
227
+ &::-webkit-scrollbar-thumb {
228
+ background: var(--dm-scrollbar-thumb, rgba(0, 0, 0, 0.18));
229
+ border-radius: 3px;
230
+ transition: background-color 0.15s;
231
+ }
232
+ &::-webkit-scrollbar-thumb:hover {
233
+ background: var(--dm-scrollbar-thumb-hover, rgba(0, 0, 0, 0.28));
234
+ }
235
+
186
236
  display: flex;
187
237
  flex-direction: column;
188
238
  align-items: stretch;
@@ -216,6 +266,8 @@
216
266
  font-size: var(--dm-toc-row-font-size, 13px);
217
267
  line-height: var(--dm-toc-row-line-height, 1.4);
218
268
  color: var(--dm-toc-row-color, rgba(55, 53, 47, 0.7));
269
+ // Constant row height; long lists scroll the card, no squeeze.
270
+ flex-shrink: 0;
219
271
  padding:
220
272
  var(--dm-toc-row-padding-block, 4px)
221
273
  var(--dm-toc-row-padding-inline-end, 16px)
@@ -122,6 +122,7 @@
122
122
  --dm-editor-font-size: 1rem;
123
123
  --dm-editor-line-height: 1.6;
124
124
  --dm-editor-padding: 1rem;
125
+ --dm-editor-padding-top-extra: 0.5rem;
125
126
  --dm-editor-border: 1px solid var(--dm-border-color);
126
127
  --dm-editor-border-radius: 0.75rem;
127
128
  // Override to add a focus ring, e.g. 0 0 0 1px var(--dm-focus-color)