.chroma:not([class*=mermaid]){background-color:var(--bg-code);border:1px solid var(--border-strong);border-radius:var(--radius-none);margin:var(--space-8)0;overflow-x:auto;overflow-y:auto;box-shadow:none;position:relative;width:100%;max-width:100%;scrollbar-width:thin;scrollbar-color:var(--accent-purple)transparent}.chroma:not([class*=mermaid]):hover,.chroma:not([class*=mermaid]):focus-within{background-color:var(--bg-code);border-color:var(--border-strong);box-shadow:none}.chroma:not([class*=mermaid])::-webkit-scrollbar{height:8px}.chroma:not([class*=mermaid])::-webkit-scrollbar-track{background:var(--bg-terminal-alt);border-radius:var(--radius-none)}.chroma:not([class*=mermaid])::-webkit-scrollbar-thumb{background:var(--accent-purple);border-radius:var(--radius-none)}.chroma:not([class*=mermaid])::-webkit-scrollbar-thumb:hover{background:var(--accent-purple-hover)}pre.chroma{overflow-x:auto!important;overflow-y:auto!important;scrollbar-width:thin;scrollbar-color:var(--accent-purple)transparent}pre.chroma::-webkit-scrollbar{height:8px}pre.chroma::-webkit-scrollbar-track{background:var(--bg-terminal-alt);border-radius:var(--radius-none)}pre.chroma::-webkit-scrollbar-thumb{background:var(--accent-purple);border-radius:var(--radius-none)}pre.chroma::-webkit-scrollbar-thumb:hover{background:var(--accent-purple-hover)}.highlight:not([class*=mermaid]){background:0 0;border:none;margin:0;padding:0}.chroma:not([class*=mermaid]) pre{background:0 0!important;border:none!important;border-radius:var(--radius-none)!important;margin:0!important;box-shadow:none!important}.chroma:not([class*=mermaid]) .lntable{border-spacing:0;padding:0;margin:0;border:none!important;width:100%;border-collapse:separate;background:0 0!important}.chroma:not([class*=mermaid]) .lntable tr{border:none!important;background:0 0!important}.chroma:not([class*=mermaid]) .lntd{vertical-align:top;padding:0;margin:0;border:none!important;background:0 0!important}.chroma:not([class*=mermaid]) .lnt,.chroma:not([class*=mermaid]) .ln{margin-right:0;padding:var(--space-5)var(--space-3);color:var(--text-muted);user-select:none;font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-snug);text-decoration:none!important;border:none!important;background:0 0!important}.chroma:not([class*=mermaid]) .lntd:first-child{width:4rem;background:color-mix(in srgb,var(--accent-purple) 12%,transparent);border-right:2px solid color-mix(in srgb,var(--accent-purple) 18%,transparent)!important;border-bottom:none!important;border-top:none!important;border-left:none!important}[data-theme=dark] .chroma:not([class*=mermaid]) .lntd:first-child{background:linear-gradient(180deg,color-mix(in srgb,var(--accent-purple) 18%,transparent) 0%,color-mix(in srgb,var(--bg-terminal) 22%,transparent) 100%);border-right:1px solid color-mix(in srgb,var(--text-secondary) 22%,transparent)!important}.chroma:not([class*=mermaid]) .lntd:last-child{padding:0;background:0 0;border:none!important}.chroma:not([class*=mermaid]) .lntd:last-child pre{padding:var(--space-5)var(--space-6);margin:0;background:0 0!important;border:none!important;border-radius:var(--radius-none)!important;overflow-x:auto;box-shadow:none!important}[data-theme=dark] .chroma:not([class*=mermaid]) .lntd:last-child pre{color:color-mix(in srgb,var(--syntax-text) 92%,transparent);text-shadow:none}.chroma:not([class*=mermaid]) .lntd:last-child code{background:0 0!important;padding:0;border:none!important;font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-snug)}@media(max-width:968px){.chroma:not([class*=mermaid]){max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.chroma:not([class*=mermaid]) .lntd:first-child{width:2.5rem;min-width:2.5rem}.chroma:not([class*=mermaid]) .lnt,.chroma:not([class*=mermaid]) .ln{padding:var(--space-3)var(--space-2);font-size:var(--text-xs)}.chroma:not([class*=mermaid]) .lntd:last-child{width:100%}.chroma:not([class*=mermaid]) .lntd:last-child pre{padding:var(--space-3);overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:pre;word-wrap:normal;word-break:normal}.chroma:not([class*=mermaid]) .lntd:last-child code{font-size:var(--text-xs);white-space:pre;word-wrap:normal;word-break:normal}.chroma:not([class*=mermaid]) .lntable{table-layout:fixed;width:100%}}@media(max-width:480px){.chroma:not([class*=mermaid]) .lntd:first-child{width:2rem;min-width:2rem}.chroma:not([class*=mermaid]) .lnt,.chroma:not([class*=mermaid]) .ln{padding:var(--space-2)var(--space-1);font-size:var(--text-xs)}.chroma:not([class*=mermaid]) .lntd:last-child pre{padding:var(--space-2)}.chroma:not([class*=mermaid]) .lntd:last-child code{font-size:var(--text-xs)}}.mermaid,[class*=mermaid],div[class*=mermaid],pre[class*=mermaid],code[class*=mermaid]{all:revert}.chroma:not([class*=mermaid]) a,.chroma:not([class*=mermaid]) a:focus,.chroma:not([class*=mermaid]) a:hover,.chroma:not([class*=mermaid]) a:active{text-decoration:none!important;border:none!important;outline:none!important;color:inherit!important}[data-theme=dark] .chroma:not([class*=mermaid]) .lnt,[data-theme=dark] .chroma:not([class*=mermaid]) .ln{color:var(--syntax-line-number)}.heading-anchor{color:var(--text-muted);text-decoration:none;margin-left:var(--space-2);opacity:0;transition:opacity var(--duration-base)var(--ease-standard),color var(--duration-base)var(--ease-standard);font-weight:400;font-size:var(--text-xs);vertical-align:middle;user-select:none}h1:hover .heading-anchor,h2:hover .heading-anchor,h3:hover .heading-anchor,h4:hover .heading-anchor{opacity:1}.heading-anchor:hover{color:var(--accent-purple);text-decoration:none}.heading-anchor:focus{opacity:1;outline:2px solid var(--accent-purple);outline-offset:2px;border-radius:var(--radius-none)}.code-copy-button{position:absolute;top:.75rem;right:.75rem;background:var(--bg-overlay);background:color-mix(in srgb,var(--bg-terminal) 92%,transparent 8%);border:1px solid var(--border-subtle);border-radius:var(--radius-none);padding:var(--space-2);cursor:pointer;transition:color var(--duration-base)var(--ease-standard),background-color var(--duration-base)var(--ease-standard),border-color var(--duration-base)var(--ease-standard),box-shadow var(--duration-base)var(--ease-standard),transform var(--duration-base)var(--ease-standard),opacity var(--duration-base)var(--ease-standard);z-index:var(--z-raised);display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;gap:0;line-height:var(--leading-none);color:var(--text-primary);backdrop-filter:blur(8px);box-shadow:var(--shadow-md)}[data-theme=dark] .code-copy-button{background-color:color-mix(in srgb,color-mix(in srgb,var(--bg-code) 94%,transparent) 75%,color-mix(in srgb,var(--accent-purple) 35%,transparent) 25%);border-color:color-mix(in srgb,var(--text-secondary) 45%,transparent);border-color:color-mix(in srgb,color-mix(in srgb,var(--text-secondary) 55%,transparent) 70%,color-mix(in srgb,var(--accent-purple) 55%,transparent) 30%);box-shadow:var(--shadow-lg)}[data-theme=dark] .code-copy-button:hover{background-color:color-mix(in srgb,color-mix(in srgb,var(--accent-purple) 60%,transparent) 45%,color-mix(in srgb,var(--bg-terminal) 92%,transparent) 55%);border-color:color-mix(in srgb,var(--accent-purple) 55%,transparent);border-color:color-mix(in srgb,color-mix(in srgb,var(--accent-purple) 65%,transparent) 65%,color-mix(in srgb,var(--text-secondary) 45%,transparent) 35%);box-shadow:var(--shadow-lg);color:var(--accent-purple-hover)}[data-theme=dark] .code-copy-button:focus{outline-color:color-mix(in srgb,var(--accent-purple) 60%,transparent);outline-color:color-mix(in srgb,var(--accent-purple) 60%,color-mix(in srgb,var(--text-secondary) 50%,transparent) 40%)}[data-theme=dark] .code-copy-button.copied{background-color:color-mix(in srgb,color-mix(in srgb,var(--success-green) 45%,transparent) 70%,color-mix(in srgb,color-mix(in srgb,var(--success-green) 35%,var(--color-black)) 75%,transparent) 30%);border-color:color-mix(in srgb,var(--success-green) 60%,transparent);color:color-mix(in srgb,var(--text-primary) 95%,transparent);box-shadow:var(--shadow-lg)}[data-theme=dark] .code-copy-button.copy-error{background-color:color-mix(in srgb,color-mix(in srgb,var(--error-red) 45%,transparent) 70%,color-mix(in srgb,color-mix(in srgb,var(--error-red) 45%,var(--color-black)) 75%,transparent) 30%);border-color:color-mix(in srgb,var(--error-red) 60%,transparent);color:color-mix(in srgb,var(--text-primary) 95%,transparent);box-shadow:var(--shadow-lg)}.code-copy-button:hover{background:var(--accent-purple-muted);border-color:var(--accent-purple);transform:translateY(-1px);color:var(--accent-purple);box-shadow:var(--shadow-sm)}.code-copy-button:focus{outline:2px solid var(--accent-purple);outline-offset:2px;color:var(--accent-purple)}.code-copy-button:focus:not(:focus-visible){outline:none;color:inherit}.code-copy-button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.code-copy-button.copied{background:color-mix(in srgb,var(--success-green) 12%,transparent);border-color:var(--success-green);color:var(--success-green)}.code-copy-button.copy-error{background:color-mix(in srgb,var(--error-red) 10%,transparent);border-color:var(--error-red);color:var(--error-red);animation:shake .3s ease-in-out}@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}@media(prefers-reduced-motion:reduce){.code-copy-button,.code-copy-button .copy-icon,.code-copy-button .check-icon{transition:none!important}.code-copy-button:hover,.code-copy-button:active{transform:none!important}.code-copy-button.copy-error{animation:none!important}}.code-copy-button .copy-icon,.code-copy-button .check-icon{width:1.1rem;height:1.1rem;display:inline-flex;align-items:center;justify-content:center;line-height:var(--leading-none);transition:transform var(--duration-base)var(--ease-standard),opacity var(--duration-base)var(--ease-standard)}.code-copy-button svg{width:100%;height:100%;display:block}.code-copy-button .check-icon{display:none}.code-copy-button.copied .copy-icon{display:none}.code-copy-button.copied .check-icon{display:inline-flex}.chroma:not([class*=mermaid]),.highlight{position:relative}.chroma:not([class*=mermaid]) pre,.chroma:not([class*=mermaid]) .lntd:last-child pre,.highlight pre,.highlight .lntd:last-child pre,pre.chroma{padding-right:calc(var(--space-6) + var(--space-10))!important}pre:has(code):not(.chroma pre){position:relative;padding-right:var(--space-10)}@media(max-width:640px){.code-copy-button{top:.6rem;right:.6rem;padding:var(--space-2);min-width:36px;min-height:36px}.code-copy-button .copy-icon,.code-copy-button .check-icon{width:1rem;height:1rem}.chroma:not([class*=mermaid]) pre,.chroma:not([class*=mermaid]) .lntd:last-child pre,.highlight pre,.highlight .lntd:last-child pre,pre.chroma{padding-right:calc(var(--space-4) + var(--space-10))!important}pre:has(code):not(.chroma pre){padding-right:var(--space-10)}}