:root{--vv-code-line-height:20px;--vv-code-font:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--vv-ui-font:system-ui, -apple-system, sans-serif;--vv-ui-font-size:16px;--vv-code-font-size:13px;--vv-fs-2xs:calc(var(--vv-ui-font-size) * .6875);--vv-fs-xs:calc(var(--vv-ui-font-size) * .75);--vv-fs-sm:calc(var(--vv-ui-font-size) * .8125);--vv-fs-md:calc(var(--vv-ui-font-size) * .875);--ui-bg:#fff;--ui-fg:#1f2328;--ui-fg-muted:#656d76;--ui-border:#d0d7de;--ui-accent:#0969da;--ui-side-bg:#f6f8fa;--ui-tab-bg:#f6f8fa;--ui-tab-active-bg:#fff;--ui-input-bg:#fff;--ui-hover-bg:#f6f8fa;--ui-selection-bg:#add6ff;--ui-statusbar-bg:#f6f8fa;--ui-danger:#cf222e;--ui-warning:#9a6700;--ui-success:#1a7f37;--ui-accent-2:#8250df;--code-bg:#fff;--code-fg:#1f2328;--code-gutter:#8c959f;--hljs-keyword:#cf222e;--hljs-string:#0a3069;--hljs-comment:#6e7781;--hljs-number:#0550ae;--hljs-title:#8250df;--hljs-built_in:#0550ae;--hljs-attr:#0550ae;--vv-hit-bg:#ffd50073;--vv-hit-active:#ffa000cc;--vv-hit-line:#ffd5002e;--vv-hit-line-active:#ffa00059;--vv-hex-hit:#ffb00038;--vv-hex-hit-active:#ff78008c;--vv-hex-flash:#ffb00066;--vv-scrim:#00000059;--vv-shadow-1:0 2px 8px #00000026;--vv-shadow-2:0 4px 16px #0000002e;--vv-shadow-3:0 8px 28px #00000038;--vv-radius-sm:4px;--vv-radius-md:6px;--vv-radius-lg:8px;--vv-radius-full:999px;--vv-sp-2:2px;--vv-sp-4:4px;--vv-sp-6:6px;--vv-sp-8:8px;--vv-sp-10:10px;--vv-sp-12:12px;--vv-sp-16:16px;--vv-dur-fast:.12s;--vv-dur-med:.2s}:root[data-theme-mode=dark]{--ui-bg:#0d1117;--ui-fg:#e6edf3;--ui-fg-muted:#8b949e;--ui-border:#30363d;--ui-accent:#2f81f7;--ui-side-bg:#161b22;--ui-tab-bg:#161b22;--ui-tab-active-bg:#0d1117;--ui-input-bg:#0d1117;--ui-hover-bg:#161b22;--ui-selection-bg:#264f78;--ui-statusbar-bg:#161b22;--ui-danger:#f85149;--ui-warning:#d29922;--ui-success:#3fb950;--ui-accent-2:#a371f7;--vv-hit-bg:#ffd5005e;--vv-hit-active:#ffa00059;--vv-hit-line:#ffd50014;--vv-hit-line-active:#ffa0001c;--code-bg:#0d1117;--code-fg:#e6edf3;--code-gutter:#6e7681;--hljs-keyword:#ff7b72;--hljs-string:#a5d6ff;--hljs-comment:#8b949e;--hljs-number:#79c0ff;--hljs-title:#d2a8ff;--hljs-built_in:#79c0ff;--hljs-attr:#79c0ff}@media (prefers-color-scheme:dark){:root[data-theme-mode=system]{--ui-bg:#0d1117;--ui-fg:#e6edf3;--ui-fg-muted:#8b949e;--ui-border:#30363d;--ui-accent:#2f81f7;--ui-side-bg:#161b22;--ui-tab-bg:#161b22;--ui-tab-active-bg:#0d1117;--ui-input-bg:#0d1117;--ui-hover-bg:#161b22;--ui-selection-bg:#264f78;--ui-statusbar-bg:#161b22;--ui-danger:#f85149;--ui-warning:#d29922;--ui-success:#3fb950;--ui-accent-2:#a371f7;--vv-hit-bg:#ffd5005e;--vv-hit-active:#ffa00059;--vv-hit-line:#ffd50014;--vv-hit-line-active:#ffa0001c;--code-bg:#0d1117;--code-fg:#e6edf3;--code-gutter:#6e7681;--hljs-keyword:#ff7b72;--hljs-string:#a5d6ff;--hljs-comment:#8b949e;--hljs-number:#79c0ff;--hljs-title:#d2a8ff;--hljs-built_in:#79c0ff;--hljs-attr:#79c0ff}}body{background:var(--ui-bg);color:var(--ui-fg);font-family:var(--vv-ui-font,system-ui, -apple-system, sans-serif);font-size:var(--vv-ui-font-size,16px);margin:0}button{background:var(--ui-side-bg);color:var(--ui-fg);border:1px solid var(--ui-border);cursor:pointer;font-family:inherit;font-size:var(--vv-fs-sm);border-radius:6px;padding:4px 10px}input{background:var(--ui-bg);color:var(--ui-fg);border:1px solid var(--ui-border);font-family:inherit;font-size:var(--vv-fs-sm);border-radius:6px;padding:4px 8px}select{background:var(--ui-side-bg);color:var(--ui-fg);border:1px solid var(--ui-border);font-family:inherit;font-size:var(--vv-fs-sm);border-radius:6px;padding:4px 6px}:where(button,input,select,summary,[tabindex],a[href]):focus-visible{outline:2px solid var(--ui-accent);outline-offset:-1px}input[type=checkbox]{accent-color:var(--ui-accent)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.vv-virtual{position:relative;overflow:auto}.vv-virtual-spacer{width:1px;position:absolute;top:0;left:0}.vv-virtual-viewport{position:absolute;top:0;left:0;right:0}.vv-code-pre{background:var(--code-bg);height:100%;font-family:var(--vv-code-font);font-size:var(--vv-code-font-size,13px);line-height:var(--vv-code-line-height);position:relative;overflow:auto}.vv-code-line{white-space:pre;display:flex}.vv-code-gutter{-webkit-user-select:none;user-select:none;text-align:right;min-width:3.5em;color:var(--code-gutter);flex:none;padding-right:1em}.vv-code-body{color:var(--code-fg);flex:1}.hljs-keyword{color:var(--hljs-keyword)}.hljs-string{color:var(--hljs-string)}.hljs-comment{color:var(--hljs-comment);font-style:italic}.hljs-number{color:var(--hljs-number)}.hljs-title{color:var(--hljs-title)}.hljs-built_in{color:var(--hljs-built_in)}.hljs-attr{color:var(--hljs-attr)}.hljs-params{color:var(--hljs-title)}.hljs-type{color:var(--hljs-type)}.hljs-variable{color:var(--hljs-variable)}.hljs-tag{color:var(--hljs-tag)}.ts-attribute{color:var(--vv-ts-attribute,inherit)}.ts-comment{color:var(--vv-ts-comment,inherit)}.ts-comment-line{color:var(--vv-ts-comment-line,inherit)}.ts-comment-block{color:var(--vv-ts-comment-block,inherit)}.ts-constant{color:var(--vv-ts-constant,inherit)}.ts-constant-builtin{color:var(--vv-ts-constant-builtin,inherit)}.ts-constant-character{color:var(--vv-ts-constant-character,inherit)}.ts-constant-character-escape{color:var(--vv-ts-constant-character-escape,inherit)}.ts-constant-numeric{color:var(--vv-ts-constant-numeric,inherit)}.ts-constructor{color:var(--vv-ts-constructor,inherit)}.ts-function{color:var(--vv-ts-function,inherit)}.ts-function-builtin{color:var(--vv-ts-function-builtin,inherit)}.ts-function-call{color:var(--vv-ts-function-call,inherit)}.ts-function-macro{color:var(--vv-ts-function-macro,inherit)}.ts-function-method{color:var(--vv-ts-function-method,inherit)}.ts-keyword{color:var(--vv-ts-keyword,inherit)}.ts-keyword-control{color:var(--vv-ts-keyword-control,inherit)}.ts-keyword-control-conditional{color:var(--vv-ts-keyword-control-conditional,inherit)}.ts-keyword-control-import{color:var(--vv-ts-keyword-control-import,inherit)}.ts-keyword-control-repeat{color:var(--vv-ts-keyword-control-repeat,inherit)}.ts-keyword-directive{color:var(--vv-ts-keyword-directive,inherit)}.ts-keyword-function{color:var(--vv-ts-keyword-function,inherit)}.ts-keyword-operator{color:var(--vv-ts-keyword-operator,inherit)}.ts-label{color:var(--vv-ts-label,inherit)}.ts-markup-bold{color:var(--vv-ts-markup-bold,inherit)}.ts-markup-heading{color:var(--vv-ts-markup-heading,inherit)}.ts-markup-italic{color:var(--vv-ts-markup-italic,inherit)}.ts-markup-link{color:var(--vv-ts-markup-link,inherit)}.ts-markup-list{color:var(--vv-ts-markup-list,inherit)}.ts-markup-raw{color:var(--vv-ts-markup-raw,inherit)}.ts-module{color:var(--vv-ts-module,inherit)}.ts-namespace{color:var(--vv-ts-namespace,inherit)}.ts-number{color:var(--vv-ts-number,inherit)}.ts-operator{color:var(--vv-ts-operator,inherit)}.ts-property{color:var(--vv-ts-property,inherit)}.ts-punctuation{color:var(--vv-ts-punctuation,inherit)}.ts-punctuation-bracket{color:var(--vv-ts-punctuation-bracket,inherit)}.ts-punctuation-delimiter{color:var(--vv-ts-punctuation-delimiter,inherit)}.ts-punctuation-special{color:var(--vv-ts-punctuation-special,inherit)}.ts-special{color:var(--vv-ts-special,inherit)}.ts-string{color:var(--vv-ts-string,inherit)}.ts-string-escape{color:var(--vv-ts-string-escape,inherit)}.ts-string-special{color:var(--vv-ts-string-special,inherit)}.ts-tag{color:var(--vv-ts-tag,inherit)}.ts-type{color:var(--vv-ts-type,inherit)}.ts-type-builtin{color:var(--vv-ts-type-builtin,inherit)}.ts-type-enum-variant{color:var(--vv-ts-type-enum-variant,inherit)}.ts-variable{color:var(--vv-ts-variable,inherit)}.ts-variable-builtin{color:var(--vv-ts-variable-builtin,inherit)}.ts-variable-parameter{color:var(--vv-ts-variable-parameter,inherit)}.ts-diff-delta{color:var(--vv-ts-diff-delta,inherit)}.ts-diff-minus{color:var(--vv-ts-diff-minus,inherit)}.ts-diff-plus{color:var(--vv-ts-diff-plus,inherit)}.vv-image{align-items:flex-start;height:100%;display:flex;overflow:auto}.vv-image img{transform-origin:0 0;max-width:none}.vv-av{max-width:100%}.vv-artplayer{aspect-ratio:16/9;background:#000;width:100%}.vv-error-card{flex-direction:column;gap:.5rem;padding:2rem;display:flex}.vv-error-title{font-weight:600}.vv-error-detail{color:var(--ui-fg-muted);white-space:pre-wrap}.vv-markdown{overflow-wrap:break-word;max-width:60rem;padding:1rem 1.5rem;line-height:1.6}.vv-markdown h1,.vv-markdown h2,.vv-markdown h3,.vv-markdown h4{margin:1.5em 0 .5em;scroll-margin-top:.5rem;line-height:1.3}.vv-markdown h1{border-bottom:1px solid var(--ui-border);padding-bottom:.3em;font-size:1.6em}.vv-markdown h2{border-bottom:1px solid var(--ui-border);padding-bottom:.2em;font-size:1.35em}.vv-markdown h3{font-size:1.15em}.vv-markdown pre{background:var(--code-bg);border:1px solid var(--ui-border);border-radius:6px;padding:.75rem 1rem;overflow:auto}.vv-markdown code{font-family:var(--vv-code-font);background:var(--ui-side-bg);border-radius:4px;padding:.1em .35em;font-size:.9em}.vv-markdown pre code{background:0 0;padding:0}.vv-markdown blockquote{color:var(--ui-fg-muted);border-left:4px solid var(--ui-border);margin:.8rem 0;padding:.1rem 1rem}.vv-markdown table{border-collapse:collapse;margin:.8rem 0}.vv-markdown th,.vv-markdown td{border:1px solid var(--ui-border);padding:.3rem .65rem}.vv-markdown img,.vv-markdown video,.vv-markdown audio{max-width:100%}.vv-markdown .md-code-bar{border-bottom:1px solid var(--ui-border);background:var(--ui-side-bg);align-items:center;gap:.5rem;margin:-.75rem -1rem .5rem;padding:.25rem .6rem;display:flex}.vv-markdown .md-code-lang{font:inherit;font-size:var(--vv-fs-xs,12px);color:var(--ui-fg-muted);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;padding:0}.vv-markdown .md-diagram{border:1px solid var(--ui-border);border-radius:6px;margin:.8rem 0;overflow:hidden}.vv-markdown .md-diagram-bar{border-bottom:1px solid var(--ui-border);background:var(--ui-side-bg);align-items:center;gap:.5rem;padding:.25rem .6rem;display:flex}.vv-markdown .md-diagram-lang{font-size:var(--vv-fs-xs,12px);color:var(--ui-fg-muted);text-transform:uppercase;letter-spacing:.04em}.vv-markdown .md-diagram-toggle{font-size:var(--vv-fs-xs,12px);border:1px solid var(--ui-border);color:var(--ui-fg);cursor:pointer;background:0 0;border-radius:4px;margin-left:auto;padding:1px 8px}.vv-markdown .md-diagram-toggle:hover{background:var(--ui-border)}.vv-markdown .md-diagram-view{justify-content:center;padding:.6rem;display:flex;overflow-x:auto}.vv-markdown .md-diagram-view svg{max-width:100%;height:auto}.vv-markdown .md-diagram-view img{max-width:100%}.vv-markdown .md-diagram-view.md-diagram-error{white-space:pre-wrap;color:var(--ui-fg-muted);font-family:var(--vv-code-font);font-size:var(--vv-code-font-size,13px);display:block}.vv-markdown .md-diagram-view[hidden]{display:none}.vv-markdown .md-diagram-source{padding:.6rem;overflow-x:auto}.vv-markdown .md-diagram-source code{font-family:var(--vv-code-font);font-size:var(--vv-code-font-size,13px)}.md-lightbox-overlay{z-index:100;cursor:zoom-out;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.md-lightbox{max-width:92vw;max-height:92vh}.md-lightbox-stage{transform-origin:0 0;cursor:grab;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.md-lightbox-stage.md-lightbox-dragging{cursor:grabbing}.md-lightbox-svg{max-width:92vw;max-height:92vh;display:flex}.md-lightbox-svg svg{max-width:100%;max-height:92vh}.md-lightbox-stage img[hidden],.md-lightbox-svg[hidden],.md-lightbox-bar [hidden]{display:none}.md-lightbox-bar{background:#00000080;border-radius:8px;align-items:center;gap:2px;padding:4px;display:flex;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.md-lightbox-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:0;font-size:16px;line-height:1;display:inline-flex}.md-lightbox-btn:hover{background:#fff3}.md-lightbox-count{color:#fff;min-width:32px;font-size:var(--vv-fs-sm);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;display:inline-flex}.markdown-alert{border:1px solid var(--ui-border);border-left-width:4px;border-radius:6px;margin:.8rem 0;padding:.5rem 1rem}.markdown-alert-title{align-items:center;gap:.4rem;margin:.2rem 0;font-weight:600;display:flex}.markdown-alert-note,.markdown-alert-info,.markdown-alert-faq,.markdown-alert-question{border-left-color:var(--ui-accent)}.markdown-alert-tip{border-left-color:var(--ui-success)}.markdown-alert-important,.markdown-alert-example{border-left-color:var(--ui-accent-2)}.markdown-alert-warning{border-left-color:var(--ui-warning)}.markdown-alert-caution{border-left-color:var(--ui-danger)}.markdown-alert-todo{border-left-color:var(--ui-fg-muted)}.markdown-alert-foldable>.markdown-alert-title{cursor:pointer;-webkit-user-select:none;user-select:none}.markdown-alert-foldable>.markdown-alert-title:after{content:"▾";color:var(--ui-fg-muted);margin-left:auto;font-size:.8em}.markdown-alert-collapsed>.markdown-alert-title:after{content:"▸"}.markdown-alert-collapsed>:not(.markdown-alert-title){display:none}.vv-markdown .md-wikilink-dead{border-bottom:1px dashed var(--ui-border);cursor:default}.vv-markdown a.anchor{color:var(--ui-accent);text-decoration:none}.vv-markdown a.anchor:focus-visible:before{content:"#"}.vv-html{flex-direction:column;height:100%;display:flex}.vv-html-toolbar{border-bottom:1px solid var(--ui-border);flex:none;gap:6px;padding:6px 10px;display:flex}.vv-html-toolbar button.active{color:var(--ui-accent);border-color:var(--ui-accent)}.vv-html-content{flex-direction:column;flex:1;min-height:0;display:flex}.vv-html-frame{background:#fff;border:0;flex:1;width:100%}.vv-pdf{flex-direction:column;height:100%;display:flex}.vv-pdf-toolbar{border-bottom:1px solid var(--ui-border);flex:none;align-items:center;gap:8px;padding:4px 10px;display:flex}.vv-pdf-toolbar button{min-width:1.8em}.vv-pdf-toolbar button:disabled{opacity:.5;cursor:default}.vv-pdf-zoom-label{text-align:center;font-variant-numeric:tabular-nums;min-width:3.2em}.vv-pdf-page-indicator{color:var(--ui-fg-muted);font-size:var(--vv-fs-xs);margin-left:auto}.vv-pdf-pages{flex-direction:column;flex:1;align-items:center;gap:12px;padding:12px;display:flex;overflow:auto}.vv-pdf-page{background:#fff;flex:none;position:relative;box-shadow:0 1px 4px #0000004d}.vv-pdf-page canvas{display:block}.vv-pdf-page-label{font-size:var(--vv-fs-2xs);color:var(--ui-fg-muted);background:color-mix(in srgb, var(--ui-bg) 80%, transparent);border-radius:var(--vv-radius-sm);padding:0 4px;position:absolute;bottom:6px;right:6px}.vv-pdf-page-hit{outline:3px solid var(--ui-accent);outline-offset:-3px}.vv-hex{flex-direction:column;height:100%;display:flex}.vv-hex-status{border-bottom:1px solid var(--ui-border);color:var(--ui-fg-muted);font-size:var(--vv-fs-xs);flex:none;padding:4px 10px}.vv-hex-body{flex-direction:column;flex:1;min-height:0;padding:8px 10px;display:flex;overflow:auto}.vv-hex-dump{font-family:var(--vv-code-font);font-size:var(--vv-code-font-size,12px);white-space:pre;line-height:1.5}.vv-hex-row{width:max-content}.vv-hex-more{margin:8px auto;display:block}.vv-hex-struct{font-size:var(--vv-code-font-size,13px);margin:12px 0}.vv-hex-struct summary{cursor:pointer;list-style:revert;font-weight:600}.vv-hex-children{padding-left:1.2em}.vv-hex-node-value{color:var(--ui-fg-muted)}.vv-hex-hit{background-color:var(--vv-hex-hit)}.vv-hex-hit-active{background-color:var(--vv-hex-hit-active)}.vv-hex-cursor{background-color:var(--ui-selection-bg)}@keyframes vv-hex-flash-fade{0%{background-color:var(--vv-hex-flash)}to{background-color:#0000}}.vv-hex-goto-flash{animation:1s ease-out forwards vv-hex-flash-fade}.meta-inspector{font-size:var(--vv-fs-xs);flex-direction:column;gap:4px;margin-top:10px;display:flex}.meta-inspector-head{align-items:center;gap:6px;display:flex}.meta-inspector-title{font-weight:600}.meta-inspector-offset{color:var(--ui-fg-muted);font-family:var(--vv-code-font)}.meta-inspector-little{font-size:var(--vv-fs-xs);margin-left:auto}.meta-inspector .meta-unavailable{color:var(--ui-fg-muted)}.vv-archive{padding:.75rem 1rem;overflow:auto}.vv-archive .vv-tree-row{border-radius:4px;padding:2px 4px}.vv-archive summary.vv-tree-row{cursor:pointer;list-style:none}.vv-archive summary.vv-tree-row::-webkit-details-marker{display:none}.vv-archive details[open]>summary .vv-tree-caret{display:inline-block;transform:rotate(90deg)}.vv-docx{height:100%;overflow:auto}.vv-docx-content{max-width:46rem;margin:0 auto;padding:1.5rem 2rem;font-size:.9375em;line-height:1.65}.vv-docx-content h1,.vv-docx-content h2,.vv-docx-content h3,.vv-docx-content h4{margin:1.2em 0 .5em;line-height:1.3}.vv-docx-content p{margin:.6em 0}.vv-docx-content ul,.vv-docx-content ol{margin:.6em 0;padding-left:1.5em}.vv-docx-content table{border-collapse:collapse;margin:.8rem 0}.vv-docx-content th,.vv-docx-content td{border:1px solid var(--ui-border);padding:.3rem .65rem}.vv-docx-content img{max-width:100%}.vv-docx-content a{color:var(--ui-accent)}.vv-xlsx{flex-direction:column;height:100%;display:flex}.vv-xlsx-tabbar{border-bottom:1px solid var(--ui-border);flex:none;gap:4px;padding:6px 10px;display:flex;overflow-x:auto}.vv-xlsx-tab{font-size:var(--vv-code-font-size,13px);padding:2px 10px}.vv-xlsx-tab.active{color:var(--ui-accent);border-color:var(--ui-accent)}.vv-xlsx-sheet{flex:1;min-height:0;padding:8px 10px;overflow:auto}.vv-xlsx-sheet table{border-collapse:collapse;font-size:var(--vv-code-font-size,13px)}.vv-xlsx-sheet td{border:1px solid var(--ui-border);text-overflow:ellipsis;white-space:nowrap;min-width:3em;max-width:32em;padding:.25rem .6rem;overflow:hidden}.vv-xlsx-sheet tr:first-child td{background:var(--ui-tab-bg);font-weight:600}.vv-xlsx-truncated{font-size:var(--vv-fs-xs);color:var(--ui-fg-muted);border:1px dashed var(--ui-border);border-radius:6px;margin:.6rem 0;padding:.35rem .8rem;display:inline-block}.vv-pptx{height:100%;padding:10px 14px;overflow:auto}.vv-pptx-notice{font-size:var(--vv-fs-xs);color:var(--ui-fg-muted);border:1px dashed var(--ui-border);border-radius:6px;margin-bottom:10px;padding:.35rem .8rem;display:inline-block}.vv-pptx-slides{flex-direction:column;gap:12px;display:flex}.vv-pptx-slide{border:1px solid var(--ui-border);background:var(--ui-tab-bg);border-radius:8px;max-width:46rem;padding:.9rem 1.1rem;position:relative}.vv-pptx-slide-no{font-size:var(--vv-fs-2xs);color:var(--ui-fg-muted);position:absolute;top:6px;right:10px}.vv-pptx-slide p{overflow-wrap:anywhere;margin:.35em 0;line-height:1.55}.vv-pptx-slide p:first-of-type{font-weight:600}.vv-pptx-empty{color:var(--ui-fg-muted)}.vv-degraded{flex-direction:column;height:100%;display:flex}.vv-degraded .vv-oversize-card{border-bottom:1px solid var(--ui-border);flex:none;padding:1rem 1.5rem}.vv-degraded-content{flex:1;min-height:0}.vv-code-oversize{flex-direction:column;height:100%;display:flex}.vv-code-oversize .vv-oversize-card{border-bottom:1px solid var(--ui-border);flex:none;padding:1rem 1.5rem}.vv-code-oversize .vv-code-pre{flex:1;height:auto;min-height:0}.vv-markdown img[data-vv-blocked-external]{background:#b5890014;border:1px dashed #b58900;border-radius:4px;min-width:96px;min-height:40px;display:inline-block}.vv-search-panel{z-index:60;background:var(--ui-bg);border:1px solid var(--ui-border);box-shadow:var(--vv-shadow-1);border-radius:6px;align-items:center;gap:6px;padding:4px 8px;display:flex;position:absolute;top:8px;right:16px}.vv-search-input{width:16rem}.vv-search-count{font-size:var(--vv-fs-xs);color:var(--ui-fg-muted);white-space:nowrap;-webkit-user-select:none;user-select:none}.vv-search-btn{font-size:var(--vv-fs-xs);padding:2px 8px}mark.vv-search-hit{background:var(--vv-hit-bg);color:inherit}mark.vv-search-hit-active{background:var(--vv-hit-active)}.vv-code-line.vv-search-hit-line{background:var(--vv-hit-line)}.vv-code-line.vv-search-hit-line-active{background:var(--vv-hit-line-active)}.vv-search-btn.active{color:var(--ui-accent);border-color:var(--ui-accent)}.vv-strip,.vv-colhandle,.vv-collapse-btn{display:none}@media (width>=901px){.vv-strip{background:var(--ui-side-bg);border-right:1px solid var(--ui-border);flex-direction:column;flex:none;align-items:center;gap:8px;width:28px;padding:8px 0;display:flex}.vv-strip[data-side=right]{border-right:0;border-left:1px solid var(--ui-border)}.vv-strip-expand{width:22px;font-size:var(--vv-fs-xs);padding:2px 0;line-height:1.4}.vv-strip-icon{color:var(--ui-fg-muted);font-size:14px;line-height:1}.vv-colhandle{cursor:col-resize;touch-action:none;flex:none;width:6px;display:block;position:relative}.vv-colhandle:after{content:"";background:0 0;width:2px;position:absolute;top:0;bottom:0;left:2px}.vv-colhandle:hover:after,.vv-colhandle.vv-dragging:after{background:var(--ui-accent)}.vv-collapse-btn{z-index:5;width:24px;height:24px;font-size:var(--vv-fs-xs);opacity:.35;padding:0;line-height:1;display:block;position:absolute;top:6px}.vv-collapse-btn:hover,.vv-collapse-btn:focus-visible{opacity:1}.vv-collapse-left,.vv-collapse-right{right:6px}}.vv-topbar.vv-chrome-off,.vv-tabbar.vv-chrome-off{z-index:50;visibility:hidden;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.vv-topbar.vv-chrome-temp,.vv-tabbar.vv-chrome-temp{z-index:50;opacity:.88;box-shadow:var(--vv-shadow-2);position:fixed;top:0;left:0;right:0;transform:none}.vv-wscreate{visibility:visible}.vv-edge{flex:none}.vv-edge[data-edge=top]{height:10px}.vv-edge[data-edge=tab]{height:8px}.vv-chromemenu{z-index:90;background:var(--ui-tab-active-bg);border:1px solid var(--ui-border);min-width:10em;box-shadow:var(--vv-shadow-2);border-radius:6px;flex-direction:column;padding:4px;display:flex;position:fixed}.vv-chromemenu button{text-align:left;font:inherit;font-size:var(--vv-fs-sm);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 10px}.vv-chromemenu button:hover{background:var(--ui-hover-bg)}.vv-shell.zen .vv-side,.vv-shell.zen .vv-right,.vv-shell.zen .vv-strip,.vv-shell.zen .vv-colhandle,.vv-shell.zen .vv-collapse-btn,.vv-shell.zen .vv-drawer-toggle,.vv-shell.zen .vv-right-toggle{display:none}.vv-topbar{border-bottom:1px solid var(--ui-border);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;display:flex}.vv-server-form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.vv-server-form input:first-child{width:220px}.vv-server-form input[type=password]{width:150px}.vv-server-error{color:var(--ui-danger);font-size:var(--vv-fs-xs);max-width:320px}.vv-ws{position:relative}.vv-ws-trigger{white-space:nowrap;text-overflow:ellipsis;max-width:22vw;overflow:hidden}.vv-ws-pop{background:var(--ui-bg);border:1px solid var(--ui-border);min-width:210px;max-width:320px;max-height:60vh;box-shadow:var(--vv-shadow-3);z-index:30;border-radius:8px;flex-direction:column;gap:2px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0;overflow:auto}.vv-ws-pop.narrow{min-width:230px;position:fixed;top:44px;left:auto;right:8px}.vv-ws-item{border-radius:6px;align-items:center;gap:2px;display:flex}.vv-ws-item:hover,.vv-ws-item:focus-within{background:var(--ui-hover-bg)}.vv-ws-item.active .vv-ws-name{color:var(--ui-accent);font-weight:600}.vv-ws-name{text-align:left;min-width:0;font:inherit;color:var(--ui-fg);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;flex:1;padding:5px 8px;overflow:hidden}.vv-ws-actions{opacity:0;transition:opacity var(--vv-dur-fast);gap:2px;display:inline-flex}.vv-ws-item:hover .vv-ws-actions,.vv-ws-item:focus-within .vv-ws-actions{opacity:1}@media (width<=600px){.vv-ws-actions{opacity:1}}.vv-ws-act{color:var(--ui-fg-muted);font-size:var(--vv-fs-xs);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 5px}.vv-ws-act:hover{color:var(--ui-fg)}.vv-ws-new{border-top:1px solid var(--ui-border);text-align:left;font:inherit;color:var(--ui-accent);cursor:pointer;background:0 0;border-radius:0;margin-top:2px;padding:6px 8px}.vv-ws-new:hover{background:var(--ui-hover-bg)}.vv-ws-rename{gap:4px;padding:2px 4px;display:flex}.vv-ws-rename input{flex:1;min-width:0}.vv-ws-rename button{font-size:var(--vv-fs-xs);padding:2px 8px}.vv-wscreate-panel{background:var(--ui-bg);border:1px solid var(--ui-border);width:min(420px,100vw - 16px);max-height:min(75vh,560px);box-shadow:var(--vv-shadow-3);z-index:30;border-radius:8px;padding:10px 12px;position:fixed;top:44px;left:50%;overflow:auto;transform:translate(-50%)}.vv-wspanel{background:var(--ui-bg);border:1px solid var(--ui-border);width:min(640px,100vw - 24px);max-height:min(50vh,560px);box-shadow:var(--vv-shadow-3);z-index:30;border-radius:8px;flex-direction:column;display:flex;position:fixed;top:44px;left:50%;overflow:hidden;transform:translate(-50%)}.vv-wspanel-search{border-bottom:1px solid var(--ui-border);flex:none;gap:6px;padding:8px 10px;display:flex}.vv-wspanel-search input{flex:1;min-width:0}.vv-wspanel-body{flex:1;min-height:0;padding:2px 0 6px;overflow:auto}.vv-wspanel-group{text-align:left;background:var(--ui-side-bg);width:100%;font:inherit;font-weight:600;font-size:var(--vv-fs-xs);color:var(--ui-fg-muted);cursor:pointer;border:0;border-radius:0;align-items:center;gap:6px;padding:5px 10px 3px;display:flex;position:sticky;top:0}.vv-wspanel-group:hover{color:var(--ui-fg)}.vv-wspanel-group.active .vv-wspanel-gname{color:var(--ui-accent)}.vv-wspanel-caret{flex:none;width:1em}.vv-wspanel-gname{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vv-wspanel-gcount{font-variant-numeric:tabular-nums;flex:none}.vv-wspanel-row{cursor:pointer;align-items:center;gap:8px;padding:3px 10px;display:flex}.vv-wspanel-row:hover,.vv-wspanel-row:focus-visible{background:var(--ui-hover-bg)}.vv-wspanel-row.active .vv-wspanel-name{color:var(--ui-accent);font-weight:600}.vv-wspanel-name{text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:40%;overflow:hidden}.vv-wspanel-badge{text-overflow:ellipsis;white-space:nowrap;max-width:10em;font-size:var(--vv-fs-2xs);color:var(--ui-fg-muted);border:1px solid var(--ui-border);border-radius:var(--vv-radius-full);flex:none;padding:0 5px;overflow:hidden}.vv-wspanel-path{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ui-fg-muted);font-size:var(--vv-fs-xs);flex:1;overflow:hidden}.vv-wspanel-close{color:var(--ui-fg-muted);font:inherit;opacity:0;cursor:pointer;background:0 0;border:none;border-radius:0;flex:none;padding:0 3px}.vv-wspanel-row:hover .vv-wspanel-close,.vv-wspanel-row:focus-within .vv-wspanel-close{opacity:1}.vv-wspanel-close:hover{color:var(--ui-danger)}@media (width<=600px){.vv-wspanel-close{opacity:1}}.vv-wspanel-empty{color:var(--ui-fg-muted);font-size:var(--vv-fs-xs);padding:4px 10px 6px 20px}.vv-wspanel-addbtn{text-align:left;font:inherit;font-size:var(--vv-fs-xs);color:var(--ui-accent);cursor:pointer;background:0 0;border:0;border-radius:4px;margin:2px 10px 4px 20px;padding:3px 6px;display:block}.vv-wspanel-addbtn:hover{background:var(--ui-hover-bg)}.vv-wspanel-add{flex-wrap:wrap;gap:6px;padding:2px 10px 6px 20px;display:flex}.vv-wspanel-add button{font-size:var(--vv-fs-xs)}.vv-wspanel-remote{min-height:0;padding:10px 12px;overflow:auto}.vv-statusbar{font-size:var(--vv-fs-xs);color:var(--ui-fg-muted);border-top:1px solid var(--ui-border);background:var(--ui-tab-bg);-webkit-user-select:none;user-select:none;flex:none;padding:2px 10px}@media (width<=600px){.vv-statusbar{padding-left:40px;padding-right:40px}}.vv-brand{margin-right:8px;font-weight:700}.vv-tabbar{background:var(--ui-tab-bg);border-bottom:1px solid var(--ui-border);display:flex;overflow-x:auto}.vv-tab{border:none;border-right:1px solid var(--ui-border);background:var(--ui-tab-bg);cursor:pointer;font-size:var(--vv-fs-sm);border-radius:0;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.vv-tab:hover{background:color-mix(in srgb, var(--ui-hover-bg) 60%, var(--ui-border))}.vv-tab.active{background:var(--ui-tab-active-bg);color:var(--ui-accent)}.vv-tab-name{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.vv-tab-close{color:inherit;font:inherit;opacity:.6;background:0 0;border:none;border-radius:0;padding:0 2px}.vv-tab-close:hover,.vv-tab-close:focus-visible{opacity:1}.vv-tab-src{text-overflow:ellipsis;white-space:nowrap;max-width:9em;font-size:var(--vv-fs-2xs);color:var(--ui-fg-muted);border:1px solid var(--ui-border);border-radius:var(--vv-radius-full);flex:none;padding:0 5px;line-height:1.5;overflow:hidden}.vv-tabbar-manage{border:0;border-left:1px solid var(--ui-border);background:var(--ui-tab-bg);font-size:var(--vv-fs-xs);border-radius:0;flex:none;margin-left:auto}.vv-tabbar-manage:hover{background:var(--ui-hover-bg)}.vv-tab-pinned .vv-tab-name{font-style:italic}.vv-tab.vv-tab-dragover{box-shadow:inset 2px 0 0 var(--ui-accent)}.vv-tab.vv-tab-dragover[data-drop-before=false]{box-shadow:inset -2px 0 0 var(--ui-accent)}.vv-tabctx{z-index:90;background:var(--ui-tab-active-bg);border:1px solid var(--ui-border);min-width:11em;box-shadow:var(--vv-shadow-2);border-radius:6px;flex-direction:column;padding:4px;display:flex;position:fixed}.vv-tabctx-item{text-align:left;font:inherit;font-size:var(--vv-fs-sm);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 10px}.vv-tabctx-item:hover{background:var(--ui-hover-bg)}.vv-tabctx-item[aria-disabled=true]{color:var(--ui-fg-muted);opacity:.5;cursor:default}.vv-tabctx-item[aria-disabled=true]:hover{background:0 0}.vv-tabctx-sub{background:var(--ui-tab-active-bg);border:1px solid var(--ui-border);min-width:12em;box-shadow:var(--vv-shadow-2);border-radius:6px;flex-direction:column;padding:4px;display:flex;position:absolute}.vv-tabctx-item[aria-expanded=true]{background:var(--ui-hover-bg)}.vv-status-openwith{font:inherit;font-size:var(--vv-fs-xs);color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:0}.vv-status-openwith:hover{color:var(--ui-accent)}.vv-status-picker{z-index:30;background:var(--ui-tab-active-bg);border:1px solid var(--ui-border);min-width:12em;box-shadow:var(--vv-shadow-2);border-radius:6px;flex-direction:column;padding:4px;display:flex;position:absolute;bottom:26px;left:8px}.vv-status-picker-item,.vv-status-picker-lang{text-align:left;font:inherit;font-size:var(--vv-fs-sm);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 10px}.vv-status-picker-item:hover,.vv-status-picker-lang:hover{background:var(--ui-hover-bg)}.vv-status-picker-item[aria-current=true]{color:var(--ui-accent)}.vv-tree{margin:0;padding:0;list-style:none}.vv-tree .vv-tree{padding-left:14px}.vv-tree-row{text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;width:100%;padding:2px 6px;display:flex}.vv-tree-row:hover{background:var(--ui-hover-bg)}.vv-tree-caret{flex:none;width:1em}.vv-tree-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.meta-panel{border-bottom:1px solid var(--ui-border);flex:none;padding:.65rem .75rem}.meta-title{font-size:var(--vv-fs-2xs);letter-spacing:.05em;text-transform:uppercase;color:var(--ui-fg-muted);margin:0 0 .3rem;font-weight:600}.meta-empty{font-size:var(--vv-fs-xs);color:var(--ui-fg-muted);margin:0}.meta-export{flex-direction:column;gap:.3rem;margin-top:.55rem;display:flex}.meta-export-title{font-size:var(--vv-fs-2xs);letter-spacing:.05em;text-transform:uppercase;color:var(--ui-fg-muted);font-weight:600}.meta-export-actions{gap:6px;display:flex}.meta-export-btn{font-size:var(--vv-fs-xs);flex:1;padding:3px 8px}.meta-export-btn:disabled{opacity:.5;cursor:default}.meta-export-notice{font-size:var(--vv-fs-xs);color:var(--ui-fg-muted);margin:0;line-height:1.4}.toc{flex:1;min-height:0;padding:.65rem .5rem;overflow:auto}.toc ul{margin:0;padding:0;list-style:none}.toc button{text-align:left;width:100%;color:var(--ui-fg-muted);font-size:var(--vv-fs-sm);white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:4px;padding:3px 6px;line-height:1.4;display:block;overflow:hidden}.toc button:hover{color:var(--ui-fg);background:var(--ui-hover-bg)}.toc button.active{color:var(--ui-accent);background:var(--ui-hover-bg)}.toc .level-1 button{color:var(--ui-fg);font-weight:600}.toc .level-3{padding-left:12px}.toc .level-4{padding-left:24px}.toc-empty{font-size:var(--vv-fs-xs);color:var(--ui-fg-muted);margin:0;padding:.25rem .5rem}.vv-jsonl{flex-direction:column;height:100%;display:flex}.vv-jsonl-status{border-bottom:1px solid var(--ui-border);color:var(--ui-fg-muted);font-size:var(--vv-fs-xs);flex:none;padding:4px 10px}.vv-jsonl-status-failed{color:var(--ui-danger)}.vv-jsonl-scroll{flex:1;min-height:0;position:relative;overflow:auto}.vv-jsonl-card{border:1px solid var(--ui-border);background:var(--code-bg);border-radius:6px;flex-wrap:wrap;align-items:flex-start;gap:0 .6em;margin:.4rem .6rem;padding:.4rem .6rem;display:flex}.vv-jsonl-card-failed{border-color:var(--ui-danger)}.vv-jsonl-gutter{-webkit-user-select:none;user-select:none;text-align:right;min-width:2.2em;color:var(--ui-fg-muted);flex:none}.vv-jsonl-body{white-space:pre;min-width:0;font-family:var(--vv-code-font);font-size:var(--vv-code-font-size,13px);line-height:var(--vv-code-line-height);color:var(--code-fg);flex:1;margin:0;overflow-x:auto}.vv-jsonl-badge{font-size:var(--vv-fs-xs);border:1px solid var(--ui-danger);color:var(--ui-danger);border-radius:4px;flex:none;align-self:center;padding:0 .4em}.vv-jsonl-cap{font-size:var(--vv-fs-xs);color:var(--ui-fg-muted);flex-basis:100%}.vv-jsonl-expand{font-size:var(--vv-fs-xs);color:var(--ui-accent);border-color:var(--ui-accent);background:0 0;flex:none;margin-left:auto}.vv-sc-section{gap:var(--vv-sp-6);flex-direction:column;max-width:640px;display:flex}.vv-settings-label{font-weight:600;font-size:var(--vv-fs-sm)}.vv-settings-hint{color:var(--ui-fg-muted);font-size:var(--vv-fs-xs)}.vv-settings-warn{color:var(--ui-warning);font-size:var(--vv-fs-xs)}.vv-settings-empty{color:var(--ui-fg-muted);font-size:var(--vv-fs-xs)}.vv-settings-remove{cursor:pointer;color:var(--ui-fg-muted);background:0 0;border:0;padding:0 3px}.vv-settings-remove:hover{color:var(--ui-fg)}.vv-settings-add{gap:var(--vv-sp-6);display:flex}.vv-settings-add input{flex:1;min-width:0}.vv-settings-presets{gap:var(--vv-sp-6);display:flex}.vv-settings-presets button{font-size:var(--vv-fs-xs)}.vv-settings-presets button:disabled{opacity:.5;cursor:default}.vv-settings-toggle{align-items:center;gap:var(--vv-sp-6);font-size:var(--vv-fs-sm);cursor:pointer;display:flex}.vv-settings-patterns{gap:var(--vv-sp-6);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.vv-settings-pattern{align-items:center;gap:var(--vv-sp-4);border:1px solid var(--ui-border);border-radius:var(--vv-radius-full);font-size:var(--vv-fs-xs);padding:1px 4px 1px 8px;display:inline-flex}.vv-settings-pattern code{font-family:var(--vv-code-font)}.vv-settings-theme-row{justify-content:space-between;align-items:center;gap:var(--vv-sp-6);font-size:var(--vv-fs-sm);display:flex}.vv-settings-theme-row select,.vv-settings-theme-row input{flex:1;min-width:0;max-width:210px}.vv-settings-import{gap:var(--vv-sp-6);display:flex}.vv-settings-import button{font-size:var(--vv-fs-xs)}.vv-settings-import button:disabled{opacity:.5;cursor:default}.vv-settings-note{color:var(--ui-accent);font-size:var(--vv-fs-xs);overflow-wrap:anywhere}.vv-settings-themes{gap:var(--vv-sp-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.vv-settings-theme{align-items:center;gap:var(--vv-sp-6);font-size:var(--vv-fs-xs);display:flex}.vv-settings-theme-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.vv-settings-theme-src{color:var(--ui-fg-muted);border:1px solid var(--ui-border);border-radius:var(--vv-radius-full);font-size:var(--vv-fs-2xs);flex:none;padding:0 6px}.vv-settings-diagram-modes{gap:var(--vv-sp-4);font-size:var(--vv-fs-sm);flex-direction:column;display:flex}.vv-diagram-mode-grid{gap:var(--vv-sp-4) var(--vv-sp-10);grid-template-columns:1fr 1fr;display:grid}.vv-diagram-mode-item{align-items:center;gap:var(--vv-sp-4);min-width:0;font-size:var(--vv-fs-xs);display:flex}.vv-diagram-mode-item .vv-diagram-mode-lang{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.vv-diagram-mode-item select{flex:none;min-width:0;max-width:88px}.vv-diagram-mode-item .vv-diagram-renderer{max-width:60px}@media (width<=600px){.vv-diagram-mode-grid{grid-template-columns:1fr}}.vv-settings-font-sample{border:1px solid var(--ui-border);border-radius:var(--vv-radius-md);overflow-wrap:anywhere;padding:4px 8px}.vv-settings-theme-row input[type=number]{flex:none;max-width:84px}.vv-settings-font-addrow{gap:var(--vv-sp-6);display:flex}.vv-settings-font-addrow input{flex:1;min-width:0}.vv-settings-font-addrow button{font-size:var(--vv-fs-xs)}.vv-settings-fonts{gap:var(--vv-sp-8);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.vv-settings-font{gap:var(--vv-sp-4);font-size:var(--vv-fs-xs);flex-direction:column;display:flex}.vv-settings-font-head{align-items:center;gap:var(--vv-sp-6);min-width:0;display:flex}.vv-settings-font-toggle{align-items:center;gap:var(--vv-sp-4);cursor:pointer;flex:1;min-width:0;display:flex}.vv-settings-font-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.vv-settings-font-size{color:var(--ui-fg-muted);flex:none}.vv-settings-font-failed .vv-settings-font-name{color:var(--ui-danger)}.vv-settings-font-retry{font-size:var(--vv-fs-xs);flex:none}.vv-settings-font-errmsg{color:var(--ui-danger);font-size:var(--vv-fs-xs);overflow-wrap:anywhere}
