.vc-prose{color:var(--fg);font-size:15.5px;line-height:1.72;overflow-wrap:anywhere}.vc-prose>*+*{margin-top:.85em}.vc-prose p{margin:0}.vc-prose ol+p,.vc-prose p+ol,.vc-prose p+p,.vc-prose p+ul,.vc-prose ul+p{margin-top:.85em}.vc-prose h1,.vc-prose h2,.vc-prose h3,.vc-prose h4{font-family:var(--font-heading);font-weight:650;line-height:1.3;letter-spacing:-.015em;margin-top:1.4em;margin-bottom:.5em}.vc-prose>:first-child,.vc-prose>div:first-child>:first-child{margin-top:0}.vc-prose h1{font-size:1.45em}.vc-prose h2{font-size:1.25em}.vc-prose h3{font-size:1.1em}.vc-prose h4{font-size:1em}.vc-prose strong{font-weight:650;color:var(--fg)}.vc-prose a{color:var(--primary);text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--brand) 35%,transparent);text-underline-offset:3px}.vc-prose a:hover{text-decoration-color:var(--primary)}.vc-prose ol,.vc-prose ul{padding-left:1.4em;margin:.6em 0}.vc-prose ul{list-style:disc}.vc-prose ol{list-style:decimal}.vc-prose li{margin:.3em 0;padding-left:.15em}.vc-prose li::marker{color:var(--fg-subtle)}.vc-prose li>ol,.vc-prose li>ul{margin:.25em 0}.vc-prose blockquote{border-left:3px solid color-mix(in oklab,var(--brand) 45%,var(--border));padding:.1em 0 .1em 1em;color:var(--fg-muted);margin:.9em 0}.vc-prose hr{border:0;border-top:1px solid var(--border);margin:1.6em 0}.vc-prose :not(pre)>code{font-family:var(--font-mono);font-size:.86em;background:var(--bg-muted);border:1px solid var(--border);border-radius:6px;padding:.12em .38em}.vc-prose input[type=checkbox]{margin-right:.4em;accent-color:var(--brand)}.vc-prose .katex-display{overflow-x:auto;overflow-y:hidden;padding:.4em 0;margin:.6em 0}.vc-prose .katex{font-size:1.05em}.vc-table table{width:100%;border-collapse:collapse;font-size:14px}.vc-table th{background:var(--bg-subtle);font-weight:600;text-align:left}.vc-table td,.vc-table th{padding:.55em .85em;border-bottom:1px solid var(--border);vertical-align:top}.vc-table tr:last-child td{border-bottom:0}.vc-table tbody tr:nth-child(2n) td{background:color-mix(in oklab,var(--bg-subtle) 60%,transparent)}.vc-prose a.vc-cite{display:inline-flex;align-items:center;justify-content:center;min-width:1.35em;height:1.35em;padding:0 .3em;margin:0 .1em;border-radius:999px;font-size:.7em;font-weight:650;line-height:1;vertical-align:.35em;text-decoration:none;color:var(--primary-soft-fg);background:var(--primary-soft);transition:background .15s}.vc-prose a.vc-cite:hover{background:color-mix(in oklab,var(--brand) 22%,var(--bg))}.vc-streaming>:last-child>:last-child:after{content:"";display:inline-block;width:.5em;height:1.05em;margin-left:.15em;vertical-align:-.15em;border-radius:2px;background:var(--primary);animation:vc-caret 1s steps(2,start) infinite}.vc-streaming>:last-child>div:last-child:after,.vc-streaming>:last-child>pre:last-child:after{display:none}@keyframes vc-caret{to{visibility:hidden}}.vc-code .hljs{color:var(--fg);background:transparent}.vc-code .hljs-comment,.vc-code .hljs-quote{color:var(--fg-subtle);font-style:italic}.vc-code .hljs-doctag,.vc-code .hljs-keyword,.vc-code .hljs-literal,.vc-code .hljs-meta .hljs-keyword,.vc-code .hljs-section,.vc-code .hljs-selector-tag{color:color-mix(in oklab,var(--brand) 85%,var(--fg));font-weight:600}.vc-code .hljs-addition,.vc-code .hljs-meta .hljs-string,.vc-code .hljs-regexp,.vc-code .hljs-string{color:#1a7f4b}.vc-code .hljs-bullet,.vc-code .hljs-link,.vc-code .hljs-number,.vc-code .hljs-symbol{color:#b45309}.vc-code .hljs-name,.vc-code .hljs-title,.vc-code .hljs-title.function_{color:#0b6bcb}.vc-code .hljs-built_in,.vc-code .hljs-class .hljs-title,.vc-code .hljs-title.class_,.vc-code .hljs-type{color:#a2399b}.vc-code .hljs-attr,.vc-code .hljs-attribute,.vc-code .hljs-property,.vc-code .hljs-template-variable,.vc-code .hljs-variable{color:#be3455}.vc-code .hljs-deletion{color:var(--danger)}.vc-code .hljs-meta{color:var(--fg-muted)}.vc-code .hljs-emphasis{font-style:italic}.vc-code .hljs-strong{font-weight:700}.dark .vc-code .hljs-addition,.dark .vc-code .hljs-regexp,.dark .vc-code .hljs-string{color:#7ee2a8}.dark .vc-code .hljs-bullet,.dark .vc-code .hljs-link,.dark .vc-code .hljs-number,.dark .vc-code .hljs-symbol{color:#fbbf72}.dark .vc-code .hljs-name,.dark .vc-code .hljs-title,.dark .vc-code .hljs-title.function_{color:#7cc4ff}.dark .vc-code .hljs-built_in,.dark .vc-code .hljs-title.class_,.dark .vc-code .hljs-type{color:#e7a6f0}.dark .vc-code .hljs-attr,.dark .vc-code .hljs-attribute,.dark .vc-code .hljs-property,.dark .vc-code .hljs-variable{color:#ff9cb2}.vc-shimmer-text{background:linear-gradient(90deg,var(--fg-subtle) 0,var(--fg) 45%,var(--fg-subtle) 90%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:vc-text-shimmer 1.8s linear infinite}@keyframes vc-text-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.vc-dots span{display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:999px;background:var(--fg-subtle);animation:vc-bounce 1.2s ease-in-out infinite}.vc-dots span:nth-child(2){animation-delay:.15s}.vc-dots span:nth-child(3){animation-delay:.3s}@keyframes vc-bounce{0%,80%,to{transform:translateY(0);opacity:.45}40%{transform:translateY(-4px);opacity:1}}.vc-composer{box-shadow:0 1px 2px hsl(var(--shadow-color)/.05),0 8px 30px -10px hsl(var(--shadow-color)/.18)}.vc-composer:focus-within{border-color:color-mix(in oklab,var(--brand) 45%,var(--border-strong));box-shadow:0 0 0 4px var(--primary-ring),0 8px 30px -10px hsl(var(--shadow-color)/.2)}.vc-app-h{height:100dvh}@supports (height:100svh){.vc-app-h{height:100dvh}}.vc-safe-b{padding-bottom:max(.75rem,env(safe-area-inset-bottom))}@media (prefers-reduced-motion:reduce){.vc-streaming>:last-child>:last-child:after{animation:none}.vc-shimmer-text{animation:none;color:var(--fg-muted);background:none}}.vc-artifact-tail{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 55%);mask-image:linear-gradient(180deg,transparent 0,#000 55%);opacity:.85}.vc-artifact-progress{background:linear-gradient(90deg,transparent,var(--primary),transparent);background-size:40% 100%;background-repeat:no-repeat;animation:vc-artifact-run 1.4s ease-in-out infinite}@keyframes vc-artifact-run{0%{background-position:-40% 0}to{background-position:140% 0}}.vc-codeview{font-family:var(--font-mono);font-size:12.5px;line-height:1.6;tab-size:2}.vc-codeview .vc-ln{position:sticky;left:0;z-index:1;width:var(--vc-gutter,3.25rem);min-width:var(--vc-gutter,3.25rem);padding:0 .85rem 0 .5rem;text-align:right;color:var(--fg-subtle);opacity:.7;user-select:none;background:var(--code-bg)}.vc-codeview .vc-line{display:flex;min-width:max-content}.vc-codeview.vc-wrap .vc-line{min-width:0}.vc-codeview .vc-lc{flex:1;padding-right:1rem;white-space:pre}.vc-codeview.vc-wrap .vc-lc{white-space:pre-wrap;overflow-wrap:anywhere}.vc-codeview .vc-line:hover .vc-ln{opacity:1}.vc-codeview .vc-chunk{content-visibility:auto;contain-intrinsic-size:auto 400px}.vc-codeview .vc-add{background:color-mix(in oklab,var(--success) 13%,transparent)}.vc-codeview .vc-add .vc-ln{background:color-mix(in oklab,var(--success) 18%,var(--code-bg));color:var(--success);opacity:1}.vc-codeview .vc-del{background:color-mix(in oklab,var(--danger) 11%,transparent)}.vc-codeview .vc-del .vc-ln{background:color-mix(in oklab,var(--danger) 16%,var(--code-bg));color:var(--danger);opacity:1}.vc-codeview .vc-sign{width:1.1rem;min-width:1.1rem;text-align:center;user-select:none;color:var(--fg-subtle)}.vc-codeview .vc-add .vc-sign{color:var(--success)}.vc-codeview .vc-del .vc-sign{color:var(--danger)}.vc-codeview .vc-live{white-space:pre}.vc-resize-handle{touch-action:none}.vc-resize-handle:after{content:"";position:absolute;inset:0 -4px}@media (prefers-reduced-motion:reduce){.vc-artifact-progress{animation:none;background:var(--primary);opacity:.35}}.vc-checker{background-color:var(--bg);background-image:linear-gradient(45deg,var(--bg-muted) 25%,transparent 25%),linear-gradient(-45deg,var(--bg-muted) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--bg-muted) 75%),linear-gradient(-45deg,transparent 75%,var(--bg-muted) 75%);background-size:18px 18px;background-position:0 0,0 9px,9px -9px,-9px 0}