.tiptap{outline:none;min-height:60vh}.tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:hsl(var(--muted-foreground) / .6);pointer-events:none;height:0}.tiptap>*+*{margin-top:.85em}.tiptap h1{font-size:2.1rem;font-weight:800;line-height:1.15;margin-top:1.6em;letter-spacing:-.02em}.tiptap h2{font-size:1.6rem;font-weight:700;line-height:1.2;margin-top:1.4em;letter-spacing:-.015em}.tiptap h3{font-size:1.25rem;font-weight:700;line-height:1.3;margin-top:1.2em}.tiptap p{font-size:1.0625rem;line-height:1.75;color:hsl(var(--foreground))}.tiptap a{color:hsl(var(--primary));text-decoration:underline;text-underline-offset:3px}.tiptap ul{list-style:disc;padding-left:1.4rem}.tiptap ol{list-style:decimal;padding-left:1.4rem}.tiptap li>p{margin:0}.tiptap blockquote{border-left:3px solid hsl(var(--primary));padding:.25rem 0 .25rem 1rem;font-style:italic;color:hsl(var(--muted-foreground))}.tiptap code{background:hsl(var(--muted));padding:.15rem .35rem;border-radius:4px;font-size:.9em}.tiptap pre{background:hsl(var(--muted));border-radius:12px;padding:1rem;overflow-x:auto}.tiptap pre code{background:transparent;padding:0}.tiptap img{border-radius:12px;max-width:100%;height:auto;margin:1.5rem 0}.tiptap hr{border:none;border-top:1px solid hsl(var(--border));margin:2rem 0}.tiptap mark{background:hsl(var(--primary) / .18);padding:0 .2rem;border-radius:3px}.tiptap table{width:100%;border-collapse:collapse;margin:1rem 0;border:1px solid hsl(var(--border))}.tiptap th,.tiptap td{border:1px solid hsl(var(--border));padding:.6rem .8rem;vertical-align:top}.tiptap th{background:hsl(var(--muted));font-weight:600;text-align:left}.slash-menu{background:hsl(var(--popover));color:hsl(var(--popover-foreground));border:1px solid hsl(var(--border));border-radius:12px;box-shadow:0 18px 48px -16px #00000040;width:260px;max-height:320px;overflow-y:auto;padding:6px}.slash-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:8px;font-size:.875rem;text-align:left;cursor:pointer}.slash-item:hover,.slash-item[data-selected=true]{background:hsl(var(--accent))}.slash-item-icon{width:32px;height:32px;display:grid;place-items:center;background:hsl(var(--muted));border-radius:6px}.slash-item-title{font-weight:600}.slash-item-desc{font-size:11px;color:hsl(var(--muted-foreground))}.bubble-toolbar{display:flex;gap:2px;padding:4px;background:hsl(var(--popover));border:1px solid hsl(var(--border));border-radius:10px;box-shadow:0 10px 30px -12px #0000004d}.bubble-btn{width:30px;height:30px;display:grid;place-items:center;border-radius:6px;color:hsl(var(--foreground))}.bubble-btn:hover{background:hsl(var(--accent))}.bubble-btn[data-active=true]{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.prose-article h1{font-size:2.5rem;font-weight:800;line-height:1.1;margin:2rem 0 1rem}.prose-article h2{font-size:1.875rem;font-weight:700;margin:2.25rem 0 .75rem;scroll-margin-top:100px}.prose-article h3{font-size:1.375rem;font-weight:700;margin:1.75rem 0 .5rem;scroll-margin-top:100px}.prose-article p{font-size:1.125rem;line-height:1.8;margin:1rem 0;color:hsl(var(--foreground))}.prose-article a{color:hsl(var(--primary));text-decoration:underline;text-underline-offset:3px}.prose-article ul{list-style:disc;padding-left:1.6rem;margin:1rem 0}.prose-article ol{list-style:decimal;padding-left:1.6rem;margin:1rem 0}.prose-article li{margin:.35rem 0;line-height:1.75}.prose-article blockquote{border-left:4px solid hsl(var(--primary));padding:.5rem 1.25rem;margin:1.5rem 0;font-style:italic;color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .4);border-radius:0 8px 8px 0}.prose-article code{background:hsl(var(--muted));padding:.15rem .4rem;border-radius:4px;font-size:.9em}.prose-article pre{background:hsl(var(--muted));border-radius:12px;padding:1.25rem;overflow-x:auto;margin:1.5rem 0}.prose-article pre code{background:transparent;padding:0}.prose-article img{border-radius:14px;max-width:100%;height:auto;margin:2rem auto;display:block;box-shadow:0 14px 40px -16px #00000040}.prose-article hr{border:none;border-top:1px solid hsl(var(--border));margin:2.5rem 0}.prose-article mark{background:hsl(var(--primary) / .18);padding:0 .25rem;border-radius:3px}.prose-article table{width:100%;border-collapse:collapse;margin:1.5rem 0;border:1px solid hsl(var(--border));border-radius:8px;overflow:hidden}.prose-article th,.prose-article td{border:1px solid hsl(var(--border));padding:.75rem 1rem}.prose-article th{background:hsl(var(--muted));font-weight:600;text-align:left}
