.prose{max-width:var(--measure)}.prose>:first-child{margin-top:0}.prose>table{display:block;overflow-x:auto}.prose figure{margin:0 0 var(--space-5)}.prose figure img{border:1px solid var(--border);border-radius:var(--radius);display:block}.prose figcaption{margin-top:var(--space-2);color:var(--text-muted);font-size:.875rem}@media (width>=68rem){#contents>.prose>:is(pre,table,figure){margin-right:calc(var(--measure) - var(--measure-wide));clear:right}}.astro-code,.astro-code span{color:var(--shiki-light)}@media (prefers-color-scheme:dark){.astro-code,.astro-code span{color:var(--shiki-dark)}}.prose figure.code{margin:0 0 var(--space-4)}.code__body{position:relative}.code pre{margin:0}.code figcaption{font-family:var(--font-mono);color:var(--text-muted);background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;padding:var(--space-1) var(--space-4);border-bottom:0;margin:0;font-size:.8125rem}.code figcaption+.code__body pre{border-top-left-radius:0;border-top-right-radius:0}.code button[data-copy]{top:var(--space-2);right:var(--space-2);font:inherit;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);padding:var(--space-1) var(--space-2);cursor:pointer;opacity:0;border-radius:4px;font-size:.75rem;line-height:1;position:absolute}.code:hover button[data-copy],.code button[data-copy]:focus-visible{opacity:1}.code button[data-copy]:hover{color:var(--accent);border-color:var(--accent)}@media (hover:none){.code button[data-copy]{opacity:1}}.marginalia{border-left:3px solid var(--accent);padding-left:var(--space-3);margin:0 0 var(--space-4);color:var(--text-muted)}.marginalia p{margin-bottom:var(--space-2);font-size:.92rem;line-height:1.55}.marginalia>:last-child{margin-bottom:0}@media (width>=68rem){#contents>.prose .marginalia{float:right;clear:right;width:14rem;margin:0 -15.5rem var(--space-4) var(--space-4)}}.contents{margin:0 0 var(--space-5);padding:0;list-style:none}.contents>li{padding:var(--space-4) 0;border-bottom:1px solid var(--border);margin:0}.contents>li:first-child{padding-top:0}.contents__row{justify-content:space-between;align-items:baseline;gap:var(--space-4);display:flex}.contents__row a{overflow-wrap:anywhere;min-width:0;color:var(--text);font-size:1.1rem;font-weight:600;text-decoration:none}.contents__row a:hover{color:var(--accent);text-decoration:underline}.contents__meta{gap:var(--space-2);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0;align-items:center;font-size:.85rem;display:flex}.contents__desc{margin:var(--space-1) 0 0;color:var(--text-muted)}.topic-grid{margin:0 0 var(--space-6);gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));padding:0;list-style:none;display:grid}.topic-grid li{margin:0}.topic-grid a{gap:var(--space-1);height:100%;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);flex-direction:column;text-decoration:none;display:flex}.topic-grid a:hover{border-color:var(--accent)}.topic-grid__name{font-size:1.1rem;font-weight:600}.topic-grid a:hover .topic-grid__name{color:var(--accent)}.topic-grid__desc{color:var(--text-muted);font-size:.95rem}.topic-grid__count{padding-top:var(--space-2);color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:auto;font-size:.8rem}.series-block{margin-bottom:var(--space-5)}.series-block h3{margin-top:0}a.tag{text-decoration:none}a.tag:hover{border-color:var(--accent);color:var(--accent)}a.tag--topic{color:var(--text)}.post-series{margin:0 0 var(--space-2);color:var(--text-muted);font-size:.85rem}.post-note{margin:0 0 var(--space-4);padding-left:var(--space-3);border-left:3px solid var(--border);color:var(--text-muted);font-size:.92rem}.toc{margin:0 0 var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-subtle);font-size:.95rem}.toc summary{cursor:pointer;font-weight:600}.toc ol{margin:var(--space-2) 0 0;padding-left:var(--space-5)}.toc li+li,.toc ol ol{margin-top:var(--space-1)}.post-footer{margin-top:var(--space-7)}.post-footer .pager{margin-top:0}.related{margin-top:var(--space-6)}.related h2{margin-top:0;font-size:1.15rem}.related ul{padding:0;list-style:none}.related li{justify-content:space-between;gap:var(--space-4);display:flex}.related li .muted{flex-shrink:0;font-size:.85rem}.search .pagefind-ui{--pagefind-ui-scale:.95;--pagefind-ui-primary:var(--accent);--pagefind-ui-text:var(--text);--pagefind-ui-background:var(--bg);--pagefind-ui-border:var(--border);--pagefind-ui-tag:var(--bg-subtle);--pagefind-ui-border-width:1px;--pagefind-ui-border-radius:var(--radius);--pagefind-ui-font:var(--font-sans);max-width:var(--measure)}.docs-shell{gap:var(--space-7);grid-template-columns:15rem minmax(0,1fr);align-items:start;display:grid}@media (width<=820px){.docs-shell{gap:var(--space-5);grid-template-columns:minmax(0,1fr)}}.docs-nav{top:var(--space-5);font-size:.92rem;position:sticky}@media (width<=820px){.docs-nav{border-bottom:1px solid var(--border);padding-bottom:var(--space-4);position:static}}.docs-nav h2{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin:var(--space-5) 0 var(--space-2);font-size:.75rem}.docs-nav h2 a{color:inherit;text-decoration:none}.docs-nav h2 a:hover{color:var(--accent)}.docs-nav h2:first-of-type{margin-top:var(--space-3)}.docs-nav summary{cursor:pointer;font-size:.95rem;font-weight:600}@supports selector(::details-content){@media (width>=821px){.docs-nav summary{display:none}.docs-nav details::details-content{content-visibility:visible}.docs-nav h2:first-of-type{margin-top:0}}}.docs-nav ul{margin:0;padding:0;list-style:none}.docs-nav li{margin:0}.docs-nav a{padding:var(--space-1) 0;color:var(--text-muted);text-decoration:none;display:block}.docs-nav a:hover{color:var(--accent)}.docs-nav a[aria-current=page]{color:var(--accent);font-weight:600}.pager{justify-content:space-between;gap:var(--space-4);margin-top:var(--space-7);padding-top:var(--space-4);border-top:1px solid var(--border);font-size:.92rem;display:flex}.pager a{text-decoration:none}.pager a:hover{text-decoration:underline}@media print{.docs-nav,.pager{display:none}.docs-shell{display:block}.code figcaption{background:#fff}.code button[data-copy]{display:none}pre,pre *{white-space:pre-wrap;overflow-wrap:anywhere;color:#000!important;background:#fff!important}#contents>.prose .marginalia{float:none;width:auto;margin:0 0 var(--space-4)}#contents>.prose>:is(pre,table,figure){margin-right:0}}
