.rich-text-editor.ProseMirror{color:var(--foreground);caret-color:var(--foreground);min-height:100%}.rich-text-editor.ProseMirror:focus{outline:none}.rich-text-editor .is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--muted-foreground);pointer-events:none;height:0}.rich-text-editor h1{font-size:1.375rem;font-weight:700;margin-top:1.5rem;margin-bottom:.5rem;line-height:1.3;letter-spacing:-.01em}.rich-text-editor h2{font-size:1.125rem;font-weight:600;margin-top:1.5rem;margin-bottom:.5rem;line-height:1.35}.rich-text-editor h3{font-size:.9375rem;font-weight:600;margin-top:1rem;margin-bottom:.5rem;line-height:1.4}.rich-text-editor p{margin-top:.625rem;margin-bottom:.625rem;line-height:1.625}.rich-text-editor>:first-child{margin-top:0}.rich-text-editor>:last-child{margin-bottom:0}.rich-text-editor ul{list-style-type:disc;padding-inline-start:1.25rem;padding-inline-end:.5rem;margin:.5rem 0}.rich-text-editor ol{list-style-type:decimal;padding-inline-start:1.5rem;margin:.5rem 0}.rich-text-editor li{margin:.25rem 0;line-height:1.625}.rich-text-editor li+li{margin-top:.25rem}.rich-text-editor li::marker{color:var(--muted-foreground)}.rich-text-editor li>p{margin:0}.rich-text-editor li>p+p{margin-top:.25rem}.rich-text-editor .math-node{display:inline-flex;max-width:100%;vertical-align:middle}.rich-text-editor .math-node.inline{align-items:center}.rich-text-editor .math-node.block{display:block;margin:.75rem 0;overflow-x:auto;overflow-y:hidden}.rich-text-editor .math-node.block .katex-display{margin:0}.rich-text-editor .math-node .katex{max-width:100%}.rich-text-editor ul ul{list-style-type:circle;margin:.25rem 0}.rich-text-editor ul ul ul{list-style-type:square}.rich-text-editor ol ol{list-style-type:lower-alpha;margin:.25rem 0}.rich-text-editor ol ol ol{list-style-type:lower-roman}.rich-text-editor code{font-size:.875rem;background:color-mix(in srgb,var(--foreground) 3%,transparent);border:1px solid color-mix(in srgb,var(--foreground) 5%,transparent);color:color-mix(in srgb,var(--foreground) 75%,transparent);padding:.125rem .375rem;border-radius:var(--radius-sm);box-decoration-break:clone;-webkit-box-decoration-break:clone;line-height:2}.rich-text-editor code,.rich-text-editor pre{font-family:var(--font-mono,ui-monospace,monospace)}.rich-text-editor pre{background:var(--muted);border-radius:var(--radius);padding:.75rem 1rem;margin:.75rem 0;overflow-x:auto}.rich-text-editor pre code{background:none;border:none;color:var(--foreground);padding:0;font-size:.8125rem;line-height:1.6}.rich-text-editor .mermaid-diagram{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius);margin:.75rem 0;overflow-x:auto;padding:1rem;position:relative}.rich-text-editor .mermaid-diagram-frame{border:0;display:block;height:auto;width:100%}.rich-text-editor .mermaid-diagram-error p,.rich-text-editor .mermaid-diagram-loading{color:var(--muted-foreground);font-size:.8125rem;margin:0}.rich-text-editor .mermaid-diagram-error pre{margin-bottom:0}.rich-text-editor .mermaid-diagram-toolbar{position:absolute;top:.5rem;right:.5rem;display:flex;gap:1px;padding:.25rem;background:color-mix(in srgb,black 75%,transparent);backdrop-filter:blur(8px);border-radius:var(--radius);opacity:0;transition:opacity .15s;z-index:1}.rich-text-editor .mermaid-diagram-toolbar:focus-within,.rich-text-editor .mermaid-diagram:hover .mermaid-diagram-toolbar{opacity:1}.rich-text-editor .mermaid-diagram-toolbar button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:calc(var(--radius) - 2px);color:white;transition:background .15s}.rich-text-editor .mermaid-diagram-toolbar button:hover{background:color-mix(in srgb,white 15%,transparent)}.mermaid-diagram-lightbox{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,black 80%,transparent);cursor:zoom-out}.mermaid-diagram-lightbox-frame{border:0;width:90vw;height:90vh;background:transparent;cursor:default}.rich-text-editor .hljs-built_in,.rich-text-editor .hljs-keyword,.rich-text-editor .hljs-selector-tag{color:oklch(.55 .16 255)}.rich-text-editor .hljs-addition,.rich-text-editor .hljs-string{color:oklch(.55 .14 155)}.rich-text-editor .hljs-comment,.rich-text-editor .hljs-quote{color:var(--muted-foreground);font-style:italic}.rich-text-editor .hljs-literal,.rich-text-editor .hljs-number{color:oklch(.58 .16 30)}.rich-text-editor .hljs-section,.rich-text-editor .hljs-title,.rich-text-editor .hljs-title\.function_{color:oklch(.55 .14 280)}.rich-text-editor .hljs-attr,.rich-text-editor .hljs-attribute{color:oklch(.58 .12 60)}.rich-text-editor .hljs-template-variable,.rich-text-editor .hljs-variable{color:oklch(.58 .14 20)}.rich-text-editor .hljs-title\.class_,.rich-text-editor .hljs-type{color:oklch(.55 .14 200)}.rich-text-editor .hljs-deletion{color:oklch(.55 .2 25)}.rich-text-editor .hljs-meta{color:var(--muted-foreground)}.dark .rich-text-editor .hljs-built_in,.dark .rich-text-editor .hljs-keyword,.dark .rich-text-editor .hljs-selector-tag{color:oklch(.7 .14 255)}.dark .rich-text-editor .hljs-addition,.dark .rich-text-editor .hljs-string{color:oklch(.7 .14 155)}.dark .rich-text-editor .hljs-literal,.dark .rich-text-editor .hljs-number{color:oklch(.72 .14 30)}.dark .rich-text-editor .hljs-section,.dark .rich-text-editor .hljs-title,.dark .rich-text-editor .hljs-title\.function_{color:oklch(.72 .12 280)}.dark .rich-text-editor .hljs-attr,.dark .rich-text-editor .hljs-attribute{color:oklch(.72 .1 60)}.dark .rich-text-editor .hljs-template-variable,.dark .rich-text-editor .hljs-variable{color:oklch(.72 .12 20)}.dark .rich-text-editor .hljs-title\.class_,.dark .rich-text-editor .hljs-type{color:oklch(.72 .12 200)}.dark .rich-text-editor .hljs-deletion{color:oklch(.7 .18 25)}.rich-text-editor .tableWrapper{overflow-x:auto;margin:1rem 0;border:1px solid var(--border);border-radius:var(--radius)}.rich-text-editor table{min-width:100%;border-collapse:collapse}.rich-text-editor colgroup{display:none}.rich-text-editor thead{background:color-mix(in srgb,var(--muted) 50%,transparent)}.rich-text-editor tbody tr{border-top:1px solid var(--border)}.rich-text-editor tr:hover td{background:color-mix(in srgb,var(--muted) 30%,transparent);transition:background .15s}.rich-text-editor td,.rich-text-editor th{text-align:left;padding:.625rem 1rem;font-size:.875rem}.rich-text-editor th{font-weight:600}.rich-text-editor td p,.rich-text-editor th p{margin:0}.rich-text-editor blockquote{border-left:3px solid color-mix(in srgb,var(--muted-foreground) 30%,transparent);padding-left:.75rem;margin:.625rem 0;color:var(--muted-foreground);font-style:italic}.rich-text-editor blockquote p{margin-top:.25rem;margin-bottom:.25rem}.rich-text-editor blockquote>:first-child{margin-top:0}.rich-text-editor blockquote>:last-child{margin-bottom:0}.rich-text-editor blockquote blockquote{margin-top:.25rem;margin-bottom:.25rem;border-left-color:color-mix(in srgb,var(--muted-foreground) 15%,transparent)}.rich-text-editor hr{border:none;border-top:1px solid var(--border);margin:1rem 0}.rich-text-editor a{color:var(--brand);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--brand) 40%,transparent);text-underline-offset:2px;cursor:pointer}.rich-text-editor a:hover{text-decoration-color:var(--brand)}.rich-text-editor a.issue-mention{color:inherit;text-decoration:none}.rich-text-editor a.issue-mention:hover{text-decoration:none}.rich-text-editor .mention{color:var(--primary);font-weight:600;text-decoration:none;margin:0 .125rem}.rich-text-editor strong{font-weight:600}.rich-text-editor em{font-style:italic}.rich-text-editor del,.rich-text-editor s{text-decoration:line-through;color:var(--muted-foreground)}.rich-text-editor.readonly.ProseMirror{caret-color:transparent;cursor:default}.rich-text-editor [data-node-view-wrapper]{display:inline;vertical-align:middle}.rich-text-editor .file-card-node{display:block!important}.rich-text-editor img{max-width:100%;height:auto;border-radius:var(--radius);margin:.5rem 0}.rich-text-editor .image-node{display:block!important;text-align:center}.rich-text-editor .image-figure{position:relative;display:inline-block;max-width:min(100%,640px);margin:.75rem 0}.rich-text-editor .image-figure.image-selected .image-content{outline:2px solid var(--brand);outline-offset:2px}.rich-text-editor .image-content{display:block;width:100%;height:auto;border-radius:var(--radius)}.rich-text-editor .image-uploading{opacity:.5;animation:rte-upload-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes rte-upload-pulse{0%,to{opacity:.5}50%{opacity:.3}}.rich-text-editor.readonly .image-figure{cursor:zoom-in}.rich-text-editor .image-toolbar{position:absolute;top:.5rem;right:.5rem;display:flex;gap:1px;padding:.25rem;background:color-mix(in srgb,black 75%,transparent);backdrop-filter:blur(8px);border-radius:var(--radius);opacity:0;transition:opacity .15s;z-index:1}.image-figure:hover .image-toolbar{opacity:1}.rich-text-editor .image-toolbar button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:calc(var(--radius) - 2px);color:white;transition:background .15s}.rich-text-editor .image-toolbar button:hover{background:color-mix(in srgb,white 15%,transparent)}.bubble-menu{gap:1px}.bubble-menu,.bubble-menu-link-edit{display:flex;align-items:center;padding:.25rem;background:var(--popover);border:1px solid color-mix(in srgb,var(--foreground) 10%,transparent);border-radius:var(--radius);box-shadow:0 4px 12px color-mix(in srgb,black 12%,transparent),0 0 0 1px color-mix(in srgb,black 4%,transparent)}.bubble-menu-link-edit{gap:.25rem;min-width:300px}.link-hover-card{display:flex;align-items:center;gap:.25rem;padding:.25rem .25rem .25rem .5rem;background:var(--popover);border:1px solid color-mix(in srgb,var(--foreground) 10%,transparent);border-radius:var(--radius);box-shadow:0 4px 12px color-mix(in srgb,black 12%,transparent),0 0 0 1px color-mix(in srgb,black 4%,transparent);max-width:min(360px,calc(100vw - 2rem));white-space:nowrap}.title-editor.ProseMirror{outline:none}.title-editor.ProseMirror p{margin:0}.title-editor .is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--muted-foreground);pointer-events:none;height:0}