.post-fab{z-index:50;opacity:0;visibility:hidden;transition:opacity .5s,translate .5s,visibility .5s;position:fixed;inset-block-end:2rem;inset-inline-end:1rem;translate:0 3.5rem}.post-fab[data-visible]{opacity:1;visibility:visible;translate:0}.post-fab-btn{background:var(--color-background) padding-box;width:3.5rem;height:3.5rem;color:var(--color-foreground);border:2px solid #0000;border-radius:9999px;justify-content:center;align-items:center;display:flex;position:relative;box-shadow:0 10px 15px -3px #00000026,0 4px 6px -4px #00000026}.post-fab-progress{--fab-track:var(--color-muted-foreground);z-index:-1;border-radius:inherit;background:conic-gradient(var(--color-primary-ink) var(--progress,0%), transparent 0), radial-gradient(closest-side, transparent calc(100% - 4px), var(--fab-track) 0 calc(100% - 2px), transparent 0);position:absolute;inset:-4px}@media (hover:hover){.post-fab-btn:hover{color:var(--color-primary-ink)}}.post-fab-btn:focus-visible{outline:2px solid var(--color-ring);outline-offset:4px;color:var(--color-primary-ink)}.post-fab-icon-toc,.post-fab-icon-close,[data-has-toc] .post-fab-icon-top{display:none}[data-has-toc] .post-fab-icon-toc{display:block}.post-fab:has(+.toc-popover:popover-open) .post-fab-icon-toc{display:none}.post-fab:has(+.toc-popover:popover-open) .post-fab-icon-close{display:block}.toc-popover{border:1px solid var(--color-border);background:var(--color-background);width:min(20rem,100vw - 2rem);max-height:min(60dvh,28rem);color:var(--color-foreground);border-radius:.5rem;flex-direction:column;margin:0;padding:0;font-size:.9rem;position:fixed;inset:auto;inset-block-end:6.25rem;inset-inline-end:1rem;box-shadow:0 20px 25px -5px #0003}.toc-popover:popover-open{display:flex}.toc-popover nav{padding:.75rem 1.25rem .25rem 1rem}@supports not selector(:popover-open){.toc-popover{display:none}}@media (width>=64rem){.post-fab:has([data-has-toc]):not([data-side-toc-hidden]){display:none}}@media print{.post-fab,.toc-popover{display:none!important}}.post-body{position:relative}:is(.toc-side,.toc-popover,.toc-details) ol{margin:0;padding-inline-start:1rem;list-style:none}:is(.toc-side,.toc-popover,.toc-details) ol ol{color:color-mix(in oklab, var(--color-foreground) 80%, transparent)}:is(.toc-side,.toc-popover,.toc-details) li{margin-block:.375rem}:is(.toc-side,.toc-popover,.toc-details) nav a{overflow-wrap:anywhere;transition:color var(--dur-standard) var(--ease-out);border-radius:.25rem;padding:.125rem .25rem;display:inline-block;position:relative}:is(.toc-side,.toc-popover,.toc-details) nav a:before{content:"#";content:"#" / "";opacity:.6;position:absolute;inset-inline-start:-.75rem}[data-toc-nav] a:hover,[data-toc-nav] a[aria-current=true]{color:var(--color-primary-ink)}[data-toc-nav] a[aria-current=true]{text-underline-offset:4px;text-decoration:underline dashed}.toc-label{flex-shrink:0;padding-block-end:.5rem;font-size:.875rem;font-weight:700}:is(.toc-side,.toc-popover,.toc-details) nav{flex-direction:column;min-height:0;display:flex}:is(.toc-side,.toc-popover,.toc-details) nav>ol{overscroll-behavior:contain;scrollbar-width:thin;min-height:0;position:relative;overflow-y:auto}.toc-skip{z-index:1;background:var(--color-background);color:var(--color-primary-ink);padding:.125rem .25rem;font-size:.875rem;position:absolute;inset-block-start:0;inset-inline-start:0}.toc-skip:not(:focus){clip-path:inset(50%)}.toc-side{display:none}.toc-side>nav{max-height:calc(100dvh - 4rem);font-size:.875rem;line-height:1.4;position:sticky;top:2rem}.toc-back-to-top{border-radius:.25rem;align-items:center;gap:.375rem;padding:.125rem .25rem;font-size:.875rem;display:flex}.toc-back-to-top:hover{color:var(--color-primary-ink)}:is(.toc-side,.toc-popover,.toc-details) .toc-back-to-top{border-block-start:1px dashed var(--color-border);border-radius:0;flex-shrink:0;margin-block-start:.5rem;padding-block:.5rem}.post-body:has(.toc-side) .toc-inline{display:none}.toc-details{border-block:1px solid var(--color-border);margin-block-end:2rem;font-size:.9375rem}.toc-details>summary{cursor:pointer;align-items:center;min-height:2.75rem;font-weight:600;display:flex}.toc-details>summary:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}.toc-details>nav{padding-block-end:.75rem;padding-inline-start:.75rem}.toc-details nav>ol{max-height:50dvh}@media (width>=64rem){.toc-details{display:none}.toc-side{width:14rem;margin-inline-start:2rem;display:block;position:absolute;inset-block:0;inset-inline-start:100%}}@media print{.toc-side{display:none!important}}
