code{font-family:var(--font-mono);font-size:0.85em;background:var(--code-bg);padding:0.15em 0.35em;border-radius:3px}pre{background:var(--code-bg);border:1px solid var(--border);border-radius:4px;padding:1.2rem;max-width:100%;overflow-x:auto;line-height:1.6;margin:1.5rem 0}pre code{background:none;padding:0;font-size:0.85rem;color:var(--text)}.code-block-container{position:relative;margin:1.8rem 0;width:100%;max-width:100%}.code-block-container pre{margin:0}div.sourceCode,.scroll-wrapper{width:100%;max-width:100%}mjx-container{max-width:100%}mjx-container[display="true"]{display:block;overflow-x:auto;overflow-y:hidden}.copy-button{position:absolute;top:0.75rem;right:0.75rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;color:var(--muted);background:transparent;border:none;border-radius:999px;cursor:pointer;opacity:0;transition:opacity 0.18s ease,color 0.18s ease,transform 0.18s ease;z-index:10}.code-block-container:hover .copy-button,.code-block-container:focus-within .copy-button{opacity:1}.copy-button:hover,.copy-button:focus-visible{color:var(--accent);transform:scale(1.05)}.copy-button.copied{color:var(--accent);transform:scale(1.08)}.copy-button svg{display:block}.copy-button-icon{position:absolute;display:flex;align-items:center;justify-content:center;transition:opacity 0.2s ease,transform 0.2s ease}.copy-button .copy-icon{opacity:1;transform:scale(1)}.copy-button .success-icon{opacity:0;transform:scale(0.7)}.copy-button.copied .copy-icon{opacity:0;transform:scale(0.7)}.copy-button.copied .success-icon{opacity:1;transform:scale(1.05)}.sourceCode .co{color:#8e908c;font-style:italic}.sourceCode .ot{color:#8959a8}.sourceCode .at{color:#eab700}.sourceCode .ss{color:#718c00}.sourceCode .st{color:#718c00}.sourceCode .va{color:#c82829}.sourceCode .cf{color:#8959a8;font-weight:bold}.sourceCode .op{color:#3e999f}.sourceCode .bu{color:#eab700}.sourceCode .ex{color:#4271ae}.sourceCode .pp{color:#8959a8}.sourceCode .do{color:#8e908c;font-style:italic}.sourceCode .an{color:#eab700}.sourceCode .cv{color:#8e908c;font-style:italic}.sourceCode .in{color:#8e908c;font-style:italic}.sourceCode .kw{color:#8959a8;font-weight:bold}.sourceCode .dt{color:#eab700}.sourceCode .dv{color:#f5871f}.sourceCode .bn{color:#f5871f}.sourceCode .fl{color:#f5871f}.sourceCode .ch{color:#718c00}.sourceCode .fu{color:#4271ae}blockquote{font-family:var(--font-serif);margin:1.5rem 0;padding:0.8rem 1.2rem;border-left:3px solid var(--border);color:var(--muted)}blockquote p{margin:0;text-align:left}.callout{--callout-color:8,109,221;margin:1.5rem 0;border:1px solid rgba(var(--callout-color),0.45);border-radius:6px;background:rgba(var(--callout-color),0.1);overflow:hidden}.callout-title{font-family:var(--font-sans);font-weight:600;font-size:0.88rem;padding:0.75rem 0.95rem;display:flex;align-items:center;gap:0.55rem;color:rgb(var(--callout-color));line-height:1.4}.callout-title-inner{min-width:0;flex:1}.callout-title-inner>:first-child{margin-top:0}.callout-title-inner>:last-child{margin-bottom:0}.callout-icon{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;flex-shrink:0;opacity:0.85}.callout-icon svg{width:100%;height:100%;display:block}.callout-content{padding:0.85rem 0.95rem;font-size:0.95em}.callout-content>:first-child{margin-top:0}.callout-content>:last-child{margin-bottom:0}.callout .callout{margin:0.9rem 0}.callout-content p,.callout-content ul,.callout-content ol,.callout-content pre,.callout-content blockquote{margin-top:0.75rem;margin-bottom:0.75rem}.callout summary{list-style:none;cursor:pointer}.callout summary::-webkit-details-marker{display:none}.callout-fold{width:0.9rem;height:0.9rem;flex-shrink:0;margin-left:auto;opacity:0.7}.callout-fold::before{content:'';display:block;width:100%;height:100%;background:currentColor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolyline points='9 18 15 12 9 6' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolyline points='9 18 15 12 9 6' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;transform:rotate(90deg);transition:transform 0.18s ease}.callout[data-callout-fold] .callout-title:hover .callout-fold::before{opacity:1}.callout[data-callout-fold]:not([open]) .callout-fold::before{transform:rotate(0deg)}.callout[data-callout-fold]:not([open]) .callout-content{display:none}.callout-note{--callout-color:8,109,221}.callout-abstract{--callout-color:0,191,188}.callout-info{--callout-color:8,109,221}.callout-todo{--callout-color:8,109,221}.callout-tip{--callout-color:0,191,188}.callout-success{--callout-color:8,185,78}.callout-question{--callout-color:236,117,0}.callout-warning{--callout-color:236,117,0}.callout-failure{--callout-color:233,49,71}.callout-danger{--callout-color:233,49,71}.callout-bug{--callout-color:233,49,71}.callout-example{--callout-color:120,82,238}.callout-quote{--callout-color:158,158,158}mark{background:#c8e6c0;color:inherit;padding:0.05em 0.25em;border-radius:2px}@media (prefers-color-scheme:dark){mark{background:#2a4a24;color:#e8e8e4}}.post-list{list-style:none;padding:0;margin:0}.post-list li{display:flex;justify-content:space-between;align-items:baseline;padding:0.6rem 0;border-bottom:1px solid var(--border);gap:1rem}.post-list li:first-child{border-top:1px solid var(--border)}.post-list .post-date{font-family:var(--font-sans);font-size:0.8rem;color:var(--muted);white-space:nowrap}table{border-collapse:collapse;border-spacing:0;width:auto;max-width:100%;margin:1.5rem 0;font-size:0.95em;border-top:2px solid var(--text);border-bottom:2px solid var(--text);counter-increment:caption}thead tr>th{border-bottom:1px solid var(--text);font-family:var(--font-sans);font-weight:500;font-size:0.85rem;letter-spacing:0.04em}th,td{text-align:left;padding:0.5rem 0.75rem;line-height:1.4}tbody tr:first-child>td{padding-top:0.6rem}caption{text-align:left;font-family:var(--font-sans);font-size:0.85rem;color:var(--muted);padding:0 0 0.4rem;caption-side:top}caption::before{content:'Table ' counter(caption) '. ';font-weight:500}.scroll-wrapper{overflow-x:auto;margin:1.5rem 0}.scroll-wrapper>table{margin:0;white-space:nowrap}