pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}:root{color-scheme:light;--radius: .625rem;--theme: #00b0aa;--background: oklch(.99 .0057 84.57);--foreground: oklch(.145 0 0);--primary: oklch(.205 0 0);--secondary-foreground: oklch(.37 .034 259.733);--muted-foreground: oklch(.556 0 0);--border: oklch(.922 0 0);--accent: oklch(.8853 0 0 / 30%);--code-bg: #282c34;font-family:Geist,Geist Fallback,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--foreground);background:var(--background);line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;overscroll-behavior-y:none;background:radial-gradient(26.51% 36.51% at 33.58% 72.9%,#00e7e712 0,#f0513303),radial-gradient(36.76% 46.03% at 73.84% 69.56%,#00bfff26 0,#f0513305),var(--background)}button,input,textarea{font:inherit}button{appearance:none}a{color:inherit;text-decoration:none}.boot-status,.screen-message{margin:48px auto;max-width:720px;padding:24px;color:var(--muted-foreground)}.screen-message{display:grid;gap:8px}.screen-message strong{color:var(--foreground);font-size:20px}.screen-error pre{overflow:auto;border:1px solid rgb(239 68 68 / 24%);border-radius:8px;background:#fef2f2b8;padding:16px}.app-shell{position:relative;display:flex;align-items:flex-start;width:100%;min-height:100vh}.wiki-sidebar{position:sticky;top:61px;display:block;flex-shrink:0;width:18rem;height:calc(100vh - 61px);overflow:hidden;padding:1rem 1rem 0}.repo-indexed{display:flex;align-items:center;gap:.5rem;margin:1rem 1rem 0 .5rem;color:var(--muted-foreground);font-size:.75rem}.repo-indexed a,.repo-actions a,.repo-actions button{display:inline-flex;align-items:center;gap:.5rem}.repo-indexed a{border-bottom:1px solid transparent}.repo-indexed a:hover{border-bottom-color:var(--muted-foreground)}.repo-actions{display:flex;gap:.5rem;margin:.875rem 1rem 0 .5rem}.repo-actions a,.repo-actions button{height:2.5rem;border:1px solid #d8d8d8;border-radius:.5rem;background:transparent;color:#898989;cursor:pointer;padding:0 .75rem;font-size:.875rem}.repo-actions a:hover,.repo-actions button:hover{background:#d9d9d91a}.repo-actions svg{stroke:var(--theme)}.repo-title{margin:1.125rem 1rem 0 .5rem;color:var(--primary);font-size:.875rem;font-weight:700}.wiki-tree{height:calc(100vh - 180px);overflow-y:auto;padding:1rem 1rem 0 0}.wiki-tree::-webkit-scrollbar,.sticky-toc::-webkit-scrollbar{width:0}.wiki-section{margin-top:1.5rem}.wiki-section:first-child{margin-top:0}.wiki-section h2{display:flex;align-items:center;gap:.25rem;margin:0;padding:.5rem 0 .5rem 1rem;color:var(--primary);font-size:.875rem;font-weight:700}.wiki-group{display:grid;gap:0}.wiki-group h3{margin:.25rem 0;border-radius:.5rem;padding:.375rem .5rem .375rem 1rem;color:var(--primary);font-size:.875rem;font-weight:400}.wiki-page{display:block;width:100%;overflow:hidden;border:0;border-radius:.5rem;background:transparent;color:var(--foreground);cursor:pointer;padding:.5rem 1rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:none;user-select:none}.wiki-page:hover{background:#d9d9d91a}.wiki-page:active,.wiki-page-active{background:#d9d9d966}.wiki-page-active{color:var(--theme);font-weight:500}.wiki-page small{display:none}.wiki-main{position:relative;min-width:0;width:100%;max-width:64rem;margin:0 auto;padding:1.75rem 1.5rem}@media(min-width:40rem){.wiki-main{max-width:48rem}}.page-section{color:var(--theme);font-size:1rem;font-weight:600}.wiki-main h1{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.5rem 0 0;color:var(--primary);font-size:1.875rem;font-weight:800;line-height:1.2}.wiki-main h1 em{flex:0 0 auto;color:var(--muted-foreground);font-size:.875rem;font-style:normal;font-weight:500}.page-meta{margin-top:.875rem;color:#6b7280;font-size:.875rem}.page-meta span+span:before{content:"·";margin:0 .5rem}.prose{max-width:65ch;margin-top:1.5rem;color:var(--secondary-foreground);font-size:1rem;line-height:1.75}.prose>:first-child{margin-top:0}.prose p{margin:1.25em 0}.prose strong{color:var(--primary);font-weight:600}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{position:relative;scroll-margin-top:70px;color:var(--primary);font-weight:700}.prose h2{margin:2.2rem 0 .5em;font-size:1.55rem;line-height:1.3}.prose h3{margin:1.7rem 0 .5em;font-size:1.2rem;line-height:1.35}.heading-anchor{display:none;margin-left:.5rem;color:var(--muted-foreground);vertical-align:text-bottom}.prose h2:hover .heading-anchor,.prose h3:hover .heading-anchor{display:inline-block}.heading-anchor:hover{color:var(--theme)}.prose ul,.prose ol{margin:1.25em 0;padding-left:1.625em}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li{margin:.5em 0}.prose a{color:var(--theme);font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.prose a.source-anchor-highlight{border-radius:.25rem;background:#00b0aa33}.prose img{display:block;width:auto;max-width:100%;min-width:min(240px,100%);height:auto;max-height:37.5rem;border-radius:.75rem;cursor:zoom-in;transition:opacity .3s ease,box-shadow .3s ease}.prose img:hover{opacity:.95;box-shadow:0 18px 50px #0f172a2e}.prose blockquote{margin:1.2rem 0;border-left:4px solid #d1d5db;padding-left:1rem;color:var(--muted-foreground)}.table-wrap{max-width:100%;overflow-x:auto;margin:1.2rem 0}.table-wrap table{width:100%;border-collapse:collapse;font-size:.875rem}.table-wrap th,.table-wrap td{border:1px solid #e5e7eb;padding:.5rem .625rem;text-align:left;vertical-align:top;text-wrap:nowrap}.table-wrap th{background:#f9fafb;color:var(--primary);font-weight:700}.prose :not(pre)>code{display:inline-block;max-width:100%;overflow-x:auto;border-radius:.125rem;background:#d6d3d17f;color:var(--primary);padding:0 .375rem;vertical-align:middle}.code-block{position:relative;overflow:hidden;margin:1.25rem 0;border:1px solid var(--border);border-radius:.125rem;background:var(--code-bg)}.code-block figcaption{display:flex;align-items:center;justify-content:space-between;min-height:2rem;border-bottom:1px solid rgb(255 255 255 / 10%);background:transparent;padding-left:1rem;color:#ffffffe5;font-size:.75rem;-webkit-user-select:none;user-select:none}.code-block figcaption button{display:inline-flex;align-items:center;gap:.25rem;border:0;background:transparent;color:#ffffff7f;cursor:pointer;padding:.5rem}.code-block:hover figcaption button{color:#ffffffe5}.code-block pre{overflow:auto;margin:0;background:transparent;padding:1rem}.code-block code{background:transparent;color:inherit;font-family:var(--font-jetbrains-mono, "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace);font-size:.875rem}.mermaid-block,.mermaid-placeholder{position:relative;overflow:hidden;max-width:100%;margin:1.25rem 0;border:1px solid rgb(0 0 0 / 6%);border-radius:1rem;background:linear-gradient(180deg,#f7f4ef,#f1ede6);cursor:pointer;padding:1rem;transition:transform .3s ease,box-shadow .3s ease}.mermaid-block:hover{transform:translateY(-2px);box-shadow:0 18px 50px #0f172a1a}.mermaid-block svg{display:block;width:auto;max-width:100%;min-width:min(240px,100%);height:auto;max-height:40vh;margin:0 auto}.mermaid-error{margin:1.25rem 0;border:1px solid rgb(239 68 68 / 30%);border-radius:.5rem;background:#fef2f27f;padding:1rem}.mermaid-error pre{margin:0;border:0;background:transparent;color:#991b1b;padding:0;font-size:.8125rem;white-space:pre-wrap}.mermaid-error small{display:block;margin-top:.5rem;color:#dc2626;font-size:.75rem}.cgx-tip{display:grid;grid-template-columns:1.5rem minmax(0,1fr);gap:.5rem;margin:1rem 0;border:1px solid rgb(16 185 129 / 20%);border-radius:.5rem;background:#ecfdf57f;color:#059669;padding:1rem;font-size:.875rem}.cgx-tip:before{content:"!";display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;border:1px solid currentColor;font-weight:700}.store-probe{margin:2rem 0 4rem;overflow:auto;border-radius:.5rem;background:#0f172a;color:#d1e7ff;padding:.875rem;font-family:var(--font-jetbrains-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:.75rem}.sticky-toc{position:sticky;top:93px;right:1rem;display:none;flex-shrink:0;height:calc(100vh - 93px);overflow-y:visible}@media(min-width:640px){.sticky-toc{display:block}}.sticky-toc-inner{display:flex;width:100%;max-width:100%;height:100%;flex-direction:column;align-items:center;justify-content:flex-start}.toc-tooltip{position:relative}.toc-trigger{border:0;background:transparent;padding:0}.toc-trigger ul{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;border-radius:.125rem;cursor:pointer;margin:0;padding:.25rem;outline:none;list-style:none}.toc-trigger ul:hover{background:#d9d9d933}.toc-trigger-dot{position:relative;box-sizing:content-box;width:.5rem;height:0;border:2px solid transparent}.toc-trigger-dot:before{content:"";position:absolute;top:0;right:0;box-sizing:content-box;width:.5rem;height:0;border:1px solid #999;border-radius:999px;transform:translate(.125rem,-50%);transition:all .15s ease}.toc-trigger-dot-child:before{width:.25rem;border-color:#d8d8d8}.toc-trigger-dot-active:before{border:2px solid var(--theme)}.toc-content{position:absolute;top:0;right:calc(100% + .5rem);width:17rem;max-height:min(80vh,620px);overflow-y:auto;border:1px solid var(--border);border-radius:.5rem;background:#fffffff5;box-shadow:0 18px 48px #0f172a1f;opacity:0;pointer-events:none;transform:translate(8px);transition:opacity .15s ease,transform .15s ease;padding:.875rem}.toc-content-open{opacity:1;pointer-events:auto;transform:translate(0)}.toc-content h2{margin:0 0 .5rem;color:var(--primary);font-size:1.125rem;font-weight:600}.toc-list-scroll{max-height:80vh;overflow-y:auto}.toc-list-scroll ul{margin:0;padding:0;list-style:none}.toc-list-item{margin-bottom:.5rem}.toc-list-depth-1{margin-left:.75rem}.toc-list-depth-2{margin-left:1.5rem}.toc-list-depth-3{margin-left:2.25rem}.toc-list-depth-4{margin-left:3rem}.toc-list-depth-5{margin-left:3.75rem}.toc-list-depth-6{margin-left:4.5rem}.toc-list-link{color:var(--primary);font-size:.875rem;transition:all .15s ease}.toc-list-link:hover,.toc-list-link-active{color:var(--theme)}.toc-list-link-root{color:var(--primary);font-weight:500}.toc-list-link-child{color:var(--secondary-foreground);font-weight:400}.sources-panel{position:sticky;top:61px;display:block;flex-shrink:0;width:20rem;min-width:20rem;height:calc(100vh - 73px);overflow:visible;padding:1rem 2rem 1rem 1rem}.sources-card{flex-shrink:0;margin-top:1rem;border-radius:.125rem;background:color-mix(in oklab,var(--accent) 50%,transparent);padding:.5rem 1rem 1rem}.sources-card-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:.25rem}.sources-card-header h4{margin:0;color:var(--primary);font-size:.875rem;font-weight:500}.sources-card-header span{max-width:66%;overflow:hidden;color:#78716c;font-size:.875rem;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.sources-tree-wrap{width:100%;max-height:calc(100vh - 260px);overflow:auto;margin-top:1rem}.source-tree{min-width:100%;font-family:var(--font-jetbrains-mono, ui-monospace, SFMono-Regular, Menlo, monospace)}.source-tree ul{margin:0;padding:0;list-style:none}.source-tree-row{position:relative;z-index:0;display:flex;width:100%;min-height:1.75rem;align-items:center;border:0;background:transparent;color:var(--primary);cursor:pointer;padding:.25rem 0;text-align:left}.source-tree-row:before{content:"";position:absolute;left:0;right:.25rem;z-index:-1;height:2rem;border-radius:.5rem;background:#d9d9d933;opacity:0}.source-tree-row:hover:before{opacity:1}.source-tree-node{color:color-mix(in oklab,var(--primary) 50%,transparent)}.source-tree-row-active{color:var(--theme);font-weight:500}.source-tree-row span:last-child{flex:1 1 auto;overflow:hidden;font-size:.875rem;text-overflow:ellipsis;text-wrap:nowrap;white-space:nowrap}.source-tree-row svg{flex-shrink:0;margin-right:.5rem}.source-chevron{width:1rem;height:1rem;margin-right:.25rem!important;color:color-mix(in oklab,var(--primary) 50%,transparent);transform:rotate(-90deg);transition:transform .2s ease}.source-chevron-open{transform:rotate(0)}.source-tree-children{margin-left:.5rem!important;border-left:1px solid var(--border);padding-left:.75rem!important}.source-leaf-spacer{width:1rem;margin-right:.25rem;flex-shrink:0}.source-preview{position:absolute;right:1.5rem;left:1.5rem;z-index:50;border-radius:.125rem;background:#282c34;box-shadow:0 20px 25px -5px #0000004d,0 8px 10px -6px #0000004d}.source-preview-actions{position:absolute;top:50%;right:-.75rem;z-index:2;display:flex;flex-direction:column;gap:.5rem;border-radius:999px;background:var(--accent);padding:.5rem;filter:drop-shadow(0 1px 1px rgb(0 0 0 / 15%));transform:translate(100%,-50%)}.source-preview-action{width:1rem;height:1rem;color:color-mix(in oklab,var(--foreground) 40%,transparent);cursor:pointer;transition:color .15s ease}.source-preview-action:hover{color:var(--foreground)}.source-preview-action-theme{color:color-mix(in oklab,var(--theme) 40%,transparent)}.source-preview-action-theme:hover{color:var(--theme)}.source-preview-action-disabled,.source-preview-action-disabled:hover{color:color-mix(in oklab,var(--foreground) 30%,transparent);cursor:not-allowed}.source-preview-code{width:100%;color:#e5e7eb}.source-preview-header{position:sticky;top:0;z-index:1;display:flex;width:100%;align-items:center;justify-content:space-between;border-bottom:1px solid rgb(255 255 255 / 10%);border-radius:.125rem .125rem 0 0;background:#282c34;color:var(--muted-foreground);padding:0 1rem;font-size:.875rem}.source-preview-header span:first-child{max-width:66%;overflow:hidden;border-bottom:1px solid var(--muted-foreground);padding:.5rem 0;line-height:1;text-overflow:ellipsis;white-space:nowrap}.source-preview-header span:last-child{line-height:1}.source-preview-code pre{overflow:auto;max-height:25rem;width:100%;margin:0;padding:1rem;color:#e5e7eb;font-family:var(--font-jetbrains-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:.8125rem;line-height:1.65;white-space:pre-wrap}.source-preview-error{color:#fca5a5!important}.source-preview-skeleton{display:flex;width:100%;flex-direction:column;gap:1rem;padding:1rem}.source-preview-skeleton span{display:block;height:1rem;width:75%;border-radius:.375rem;background:color-mix(in oklab,var(--muted-foreground) 18%,transparent)}.source-preview-skeleton span:nth-child(2n){width:50%}@media(max-width:1023px){.sources-panel{display:none}}@media(max-width:1024px){.wiki-sidebar{display:none}}@media(max-width:768px){.app-shell{display:block}.wiki-main{padding:1.5rem}.sticky-toc{display:none}}.login-btn{border:1px solid var(--border);border-radius:.5rem;background:#fff;color:var(--foreground);cursor:pointer;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:background .15s ease}.login-btn:hover{background:var(--accent)}.user-bar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:flex-end;gap:1rem;height:48px;border-bottom:1px solid var(--border);background:#ffffffe5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:0 1.5rem;font-size:.875rem}.user-bar span{color:var(--muted-foreground)}.user-bar button{border:1px solid var(--border);border-radius:.375rem;background:transparent;color:var(--muted-foreground);cursor:pointer;padding:.375rem .75rem;font-size:.75rem}.user-bar button:hover{background:var(--accent);color:var(--foreground)}
