.prose-content{--prose-muted: color-mix(in oklab, var(--color-base-content) 80%, transparent);--prose-faint: color-mix(in oklab, var(--color-base-content) 55%, transparent);--prose-accent: var(--color-terminal-green, #22c55e);line-height:1.75;overflow-wrap:break-word}.prose-content :where(h1,h2,h3,h4){position:relative;font-family:var(--font-mono, monospace);font-weight:700;line-height:1.3;margin-top:1.9em;margin-bottom:.6em;color:var(--color-base-content);scroll-margin-top:5rem}.prose-content h1{font-size:1.6em}.prose-content h2{font-size:1.35em}.prose-content h3{font-size:1.15em}.prose-content h4{font-size:1em;color:var(--prose-muted)}.prose-content .heading-anchor{margin-left:.4em;color:var(--prose-accent);text-decoration:none;opacity:0;transition:opacity .15s ease}.prose-content :where(h2,h3,h4):hover .heading-anchor,.prose-content .heading-anchor:focus-visible{opacity:1}.prose-content p{margin:1em 0;color:var(--prose-muted)}.prose-content :where(ul,ol){margin:1em 0;padding-left:1.5em;color:var(--prose-muted)}.prose-content ul{list-style:disc}.prose-content ol{list-style:decimal}.prose-content li{margin:.35em 0}.prose-content li>p{margin:.25em 0}.prose-content a{color:var(--prose-accent);text-decoration:underline;text-underline-offset:2px}.prose-content :where(strong,b){color:var(--color-base-content);font-weight:600}.prose-content mark{background:color-mix(in oklab,var(--color-terminal-amber, #f59e0b) 30%,transparent);color:inherit;border-radius:.2em;padding:0 .15em}.prose-content hr{border:none;border-top:1px solid var(--color-base-300);margin:2.5em 0}.prose-content :not(pre)>code{font-family:var(--font-mono, monospace);font-size:.875em;background:color-mix(in oklab,var(--color-base-content) 10%,transparent);padding:.15em .4em;border-radius:.3em;color:var(--color-base-content)}.prose-content blockquote{border-left:3px solid var(--prose-accent);padding-left:1em;margin:1.25em 0;color:var(--prose-faint);font-style:italic}.prose-content blockquote p{color:inherit}.prose-content pre{position:relative;background:var(--color-base-300);border-radius:.5em;padding:1em;overflow-x:auto;margin:1.25em 0;font-family:var(--font-mono, monospace);font-size:.875em;line-height:1.6}.prose-content pre code{background:none;padding:0;font-size:inherit}.prose-content .code-block{position:relative;margin:1.25em 0;border-radius:.5em;background:var(--color-base-300);overflow:hidden}.prose-content .code-block pre{margin:0;border-radius:0}.prose-content .code-block-header{display:flex;justify-content:space-between;gap:1em;padding:.45em 1em;border-bottom:1px solid color-mix(in oklab,var(--color-base-content) 10%,transparent);font-family:var(--font-mono, monospace);font-size:.75em}.prose-content .code-block-filename{color:var(--color-base-content)}.prose-content .code-block-lang{color:var(--prose-faint)}.prose-content .code-block code{display:block;min-width:fit-content}.prose-content .code-block .line{display:inline-block;min-width:100%;padding:0 1em;margin:0 -1em;box-sizing:content-box}.prose-content .code-block .line.highlighted{background:color-mix(in oklab,var(--prose-accent) 12%,transparent);box-shadow:inset 3px 0 0 var(--prose-accent)}.prose-content .code-block .line.added{background:color-mix(in oklab,var(--color-success) 14%,transparent)}.prose-content .code-block .line.removed{background:color-mix(in oklab,var(--color-error) 14%,transparent)}.prose-content .code-block .diff-marker{display:inline-block;width:1.5ch;-webkit-user-select:none;user-select:none;color:var(--prose-faint)}.prose-content .code-block .added .diff-marker{color:var(--color-success)}.prose-content .code-block .removed .diff-marker{color:var(--color-error)}.prose-content pre.line-numbers code{counter-reset:line}.prose-content pre.line-numbers .line:before{counter-increment:line;content:counter(line);display:inline-block;width:2.5ch;margin-right:1.25ch;text-align:right;color:color-mix(in oklab,var(--color-base-content) 30%,transparent);-webkit-user-select:none;user-select:none}.prose-content .markdown-copy-btn{position:absolute;top:.5em;right:.5em;font-family:var(--font-mono, monospace);font-size:.75rem;line-height:1;color:color-mix(in oklab,var(--color-base-content) 70%,transparent);background:color-mix(in oklab,var(--color-base-300) 85%,var(--color-base-content));border:1px solid color-mix(in oklab,var(--color-base-content) 15%,transparent);border-radius:.35em;padding:.35em .6em;cursor:pointer;opacity:0;transition:opacity .15s ease,color .15s ease,border-color .15s ease}.prose-content .code-block .markdown-copy-btn{top:.35em}.prose-content :where(pre,.code-block):hover .markdown-copy-btn,.prose-content .markdown-copy-btn:focus-visible{opacity:1}.prose-content .markdown-copy-btn:hover{color:var(--prose-accent);border-color:color-mix(in oklab,var(--prose-accent) 40%,transparent)}.prose-content .hljs{background:none;color:var(--color-base-content)}.prose-content :where(.hljs-comment,.hljs-quote){color:color-mix(in oklab,var(--color-base-content) 50%,transparent);font-style:italic}.prose-content :where(.hljs-keyword,.hljs-selector-tag,.hljs-literal,.hljs-section,.hljs-link){color:var(--prose-accent);font-weight:600}.prose-content :where(.hljs-string,.hljs-doctag,.hljs-regexp,.hljs-addition){color:#f59e0b}.prose-content :where(.hljs-number,.hljs-built_in,.hljs-class .hljs-title,.hljs-type){color:#61afef}.prose-content :where(.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-attribute,.hljs-name,.hljs-meta){color:#c586c0}.prose-content :where(.hljs-title,.hljs-symbol){color:var(--color-base-content);font-weight:600}.prose-content .hljs-deletion{color:#ef4444}.prose-content img{border-radius:.5em;max-width:100%;height:auto}.prose-content .figure{margin:2em 0}.prose-content .figure img{display:block;margin:0 auto}.prose-content img[data-zoomable]{cursor:zoom-in}.prose-content figcaption{margin-top:.6em;text-align:center;font-size:.875em;color:var(--prose-faint)}.prose-content .figure-wide,.prose-content .figure-full{position:relative;left:50%;transform:translate(-50%)}.prose-content .figure-wide{width:min(64rem,calc(100vw - 2rem))}.prose-content .figure-full{width:calc(100vw - 1rem)}.prose-content .figure-full img{border-radius:0;width:100%}.prose-content .gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75em;margin:2em 0}@media(min-width:640px){.prose-content .gallery:not([data-count="2"]):not([data-count="4"]){grid-template-columns:repeat(3,minmax(0,1fr))}}.prose-content .gallery .figure{margin:0}.prose-content .gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover}.prose-content .callout{--callout-color: var(--color-info);margin:1.5em 0;padding:.85em 1.1em;border-radius:.5em;border:1px solid color-mix(in oklab,var(--callout-color) 35%,transparent);border-left-width:4px;background:color-mix(in oklab,var(--callout-color) 8%,transparent)}.prose-content .callout-tip{--callout-color: var(--prose-accent)}.prose-content .callout-warning{--callout-color: var(--color-warning)}.prose-content .callout-danger{--callout-color: var(--color-error)}.prose-content .callout-title{display:flex;align-items:center;gap:.5em;color:var(--callout-color);font-family:var(--font-mono, monospace);font-size:.75em;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.prose-content .callout-icon{flex-shrink:0}.prose-content .callout-body>:first-child{margin-top:.4em}.prose-content .callout-body>:last-child{margin-bottom:0}.prose-content .details-block{margin:1.25em 0;border:1px solid var(--color-base-300);border-radius:.5em;padding:.6em 1em}.prose-content details.details-block>summary{cursor:pointer;font-weight:600;color:var(--color-base-content)}.prose-content details.details-block>summary p{display:inline;margin:0}.prose-content .details-content>:last-child{margin-bottom:.25em}.prose-content ul.task-list,.prose-content ul[data-type=taskList]{list-style:none;padding-left:.25em}.prose-content li.task-item,.prose-content li[data-type=taskItem]{display:flex;align-items:flex-start;gap:.6em}.prose-content li.task-item>input,.prose-content li[data-type=taskItem]>label{margin-top:.45em;flex-shrink:0}.prose-content li.task-item input,.prose-content li[data-type=taskItem] input{accent-color:var(--prose-accent)}.prose-content li.task-item>div,.prose-content li[data-type=taskItem]>div{flex:1;min-width:0}.prose-content li.task-item>div>p,.prose-content li[data-type=taskItem]>div>p{margin:0}.prose-content li.task-item[data-checked]>div,.prose-content li[data-type=taskItem][data-checked=true]>div{color:var(--prose-faint);text-decoration:line-through}.prose-content .table-wrap,.prose-content .tableWrapper{overflow-x:auto;margin:1.25em 0}.prose-content table{border-collapse:collapse;font-size:.9em;min-width:100%}.prose-content :where(th,td){border:1px solid var(--color-base-300);padding:.5em .9em;text-align:left;vertical-align:top}.prose-content :where(th,td) p{margin:0}.prose-content th{font-family:var(--font-mono, monospace);background:var(--color-base-300);color:var(--color-base-content);font-weight:700}.prose-content td{color:var(--prose-muted)}.prose-content tr:nth-child(2n) td{background:color-mix(in oklab,var(--color-base-content) 4%,transparent)}.prose-content .embed{margin:2em 0}.prose-content .embed iframe{display:block;width:100%;border:0;border-radius:.5em;background:var(--color-base-300)}.prose-content .embed-youtube iframe{aspect-ratio:16 / 9}.prose-content :where(.embed-codepen,.embed-stackblitz) iframe{height:480px}.prose-content .bookmark{display:flex;margin:1.5em 0;overflow:hidden;border:1px solid var(--color-base-300);border-radius:.5em;text-decoration:none;color:inherit;transition:border-color .15s ease}.prose-content a.bookmark:hover{border-color:color-mix(in oklab,var(--prose-accent) 45%,transparent)}.prose-content .bookmark-text{display:flex;flex:1;min-width:0;flex-direction:column;gap:.3em;padding:.9em 1.1em}.prose-content .bookmark-title{font-weight:600;color:var(--color-base-content)}.prose-content .bookmark-description{font-size:.875em;color:var(--prose-faint);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.prose-content .bookmark-site{font-family:var(--font-mono, monospace);font-size:.75em;color:var(--prose-accent)}.prose-content .bookmark-image{width:30%;max-width:14rem;object-fit:cover;border-radius:0;margin:0}.prose-content .math-block{margin:1.5em 0;overflow-x:auto;overflow-y:hidden}.prose-content pre.mermaid{background:none;text-align:center;color:var(--prose-faint)}.prose-content pre.mermaid svg{max-width:100%;height:auto}.blog-editor-content{min-height:60vh;outline:none;padding-left:2rem}.blog-editor-content :where(p.is-empty,h2.is-empty,h3.is-empty,h4.is-empty):before{content:attr(data-placeholder);float:left;height:0;pointer-events:none;color:color-mix(in oklab,var(--color-base-content) 30%,transparent)}.blog-editor-content .ProseMirror-selectednode:not(.node-view){outline:2px solid color-mix(in oklab,var(--prose-accent) 70%,transparent);outline-offset:2px;border-radius:.3em}.blog-editor-content .node-view{position:relative}.blog-editor-content .code-block-view pre{margin:0;border-radius:0}.blog-editor-content .selectedCell{background:color-mix(in oklab,var(--prose-accent) 15%,transparent)}.blog-editor-content :where(.tiptap-mathematics-render){cursor:pointer;border-radius:.25em;padding:0 .15em}.blog-editor-content :where(.tiptap-mathematics-render):hover{background:color-mix(in oklab,var(--color-base-content) 8%,transparent)}.blog-editor-content :where(div[data-type=blockMath]){margin:1.5em 0;text-align:center}.blog-editor-content div[data-type=details]{display:flex;gap:.5em}.blog-editor-content div[data-type=details]>button{flex-shrink:0;width:1.2em;height:1.2em;margin-top:.3em;cursor:pointer;border-radius:.25em;color:var(--prose-faint)}.blog-editor-content div[data-type=details]>button:before{content:"▸"}.blog-editor-content div[data-type=details].is-open>button:before{content:"▾"}.blog-editor-content div[data-type=details]>div{flex:1;min-width:0}.blog-editor-content div[data-type=details]:not(.is-open) div[data-type=detailsContent]{display:none}.blog-editor-content summary{font-weight:600;color:var(--color-base-content);list-style:none}.editor-drag-handle{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.5rem;border-radius:.25rem;cursor:grab;color:color-mix(in oklab,var(--color-base-content) 35%,transparent);transition:background .15s ease,color .15s ease}.editor-drag-handle:hover{background:color-mix(in oklab,var(--color-base-content) 10%,transparent);color:var(--color-base-content)}
