*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--mono: "Space Mono", monospace;--sans: "Space Grotesk", sans-serif}html{scroll-behavior:smooth;background:var(--bg);min-height:100%}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--sans);background:var(--bg);color:var(--text);min-height:100vh;min-height:100svh;line-height:1.75;position:relative;overflow-x:hidden;cursor:none}#cursor{width:8px;height:8px;background:var(--accent);border-radius:50%;position:fixed;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s}#cursor-ring{width:32px;height:32px;border:1px solid var(--cursor-ring);border-radius:50%;position:fixed;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:transform .12s ease-out,width .25s,height .25s,border-color .2s}body:has(a:hover) #cursor{width:12px;height:12px}body:has(a:hover) #cursor-ring{width:48px;height:48px;border-color:var(--cursor-ring-hover)}body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:60px 60px;pointer-events:none;z-index:1;opacity:.55;animation:blogGridBreathe 5s ease-in-out infinite}@keyframes blogGridBreathe{0%,to{opacity:.48}50%{opacity:.82}}html[data-theme=light] body:before{opacity:.32}@media(prefers-reduced-motion:reduce){body:before{animation:none;opacity:.55}html[data-theme=light] body:before{opacity:.32}}:global(.skiptranslate iframe),:global(.goog-te-banner-frame.skiptranslate){display:none!important}:global(body){top:0!important}.back{display:inline-block;margin-bottom:2rem;font-family:var(--mono);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);text-decoration:none;border:none;transition:color .2s ease}.back:hover{color:var(--accent)}.blog-wrap{width:min(960px,calc(100vw - 2rem));margin:0 auto;padding:4rem 1.5rem calc(7rem + env(safe-area-inset-bottom,0px));position:relative;z-index:2}.blog-page-title{font-family:var(--mono);font-size:clamp(1.35rem,4vw,1.75rem);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2rem;color:var(--accent)}#blog-top{scroll-margin-top:1.25rem}.blog-page-head{margin-bottom:1.5rem}.blog-cat-region{scroll-margin-top:6.5rem}.blog-cat-region+.blog-cat-region{margin-top:2.75rem}.blog-cat-head{display:flex;align-items:baseline;margin-bottom:1.1rem;padding-bottom:.6rem;border-bottom:1px solid color-mix(in srgb,var(--line2) 72%,var(--accent) 8%)}.blog-cat-title{font-family:var(--mono);font-size:clamp(.72rem,1.5vw,.82rem);letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:color-mix(in srgb,var(--accent) 58%,var(--text));margin:0}.group-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;align-items:start}.group-list .post-item{width:100%;border-radius:6px;background:linear-gradient(90deg,color-mix(in srgb,var(--bg2) 82%,transparent),color-mix(in srgb,var(--bg3) 72%,transparent));box-shadow:0 10px 24px -20px color-mix(in srgb,var(--shadow-card) 95%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--line2) 78%,transparent);overflow:hidden}.group-list .post-item a{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:.85rem;min-height:100%;border-bottom:none;padding:.84rem .9rem .88rem;margin:0;border-radius:6px;transition:transform .26s ease,box-shadow .26s ease,background .26s ease;text-decoration:none;color:var(--text)}.group-list .post-item a:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 16%,color-mix(in srgb,var(--accent) 13%,transparent) 45%,transparent 74%);transform:translate(-115%);transition:transform .55s cubic-bezier(.33,1,.64,1);pointer-events:none}.group-list .post-item a:hover{background:color-mix(in srgb,var(--accent) 6%,transparent);transform:translateY(-1px);box-shadow:0 12px 30px -22px color-mix(in srgb,var(--accent) 65%,var(--shadow-card)),inset 0 0 0 1px color-mix(in srgb,var(--accent) 36%,var(--line2))}.group-list .post-item a:hover:before{transform:translate(115%)}.post-index{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;color:color-mix(in srgb,var(--accent) 65%,var(--muted));opacity:.88}.post-arrow{font-family:var(--mono);font-size:.78rem;color:color-mix(in srgb,var(--accent) 56%,var(--text));transform:translate(-2px,1px);transition:transform .22s ease,color .22s ease}.group-list .post-item a:hover .post-arrow{transform:translate(1px,-1px);color:var(--accent)}.post-list-title{font-size:clamp(1rem,1.7vw,1.08rem);line-height:1.45;letter-spacing:.01em;text-wrap:balance;color:var(--text)}@media(max-width:640px){.blog-wrap{width:calc(100vw - 1rem);padding:3.25rem .75rem calc(6.5rem + env(safe-area-inset-bottom,0px))}}.article-wrap{max-width:42rem;margin:0 auto;padding:4rem 1.5rem 5rem;position:relative;z-index:2}.post-meta{font-family:var(--mono);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-dim);margin-bottom:1.25rem}.post-title{font-size:clamp(1.5rem,4vw,2rem);font-weight:500;letter-spacing:-.02em;margin-bottom:2rem;line-height:1.25;text-wrap:balance;color:var(--text)}.prose{color:var(--muted);font-size:1.05rem;line-height:1.85}.prose :global(h1),.prose :global(h2){font-size:1.15rem;color:var(--text);margin:2rem 0 .75rem;scroll-margin-top:calc(4.75rem + env(safe-area-inset-top,0px))}.prose :global(h1:first-child){display:none}.prose :global(h3),.prose :global(h4){color:var(--text);margin:1.6rem 0 .7rem;scroll-margin-top:calc(4.75rem + env(safe-area-inset-top,0px))}.prose :global(p){margin-bottom:1rem}.prose :global(ul),.prose :global(ol){margin:1rem 0 1rem 1.25rem}.prose :global(li){margin-bottom:.35rem}.prose :global(pre){margin:1.25rem 0;padding:1rem 1.1rem;border-radius:4px;border:1px solid var(--line2);background:var(--bg2);overflow-x:auto;font-family:var(--mono);font-size:.82rem}.prose :global(code){font-family:var(--mono);font-size:.88em}.prose :global(blockquote){margin:1.2rem 0;padding:.35rem 0 .35rem .9rem;border-left:2px solid color-mix(in srgb,var(--accent) 45%,var(--line2) 55%);color:color-mix(in srgb,var(--muted) 85%,var(--text) 15%)}.prose :global(hr){border:0;border-top:1px solid color-mix(in srgb,var(--line2) 72%,transparent);margin:1.4rem 0}.prose :global(table){width:100%;border-collapse:collapse;margin:1.25rem 0;font-size:.95rem}.prose :global(th),.prose :global(td){border-bottom:1px solid color-mix(in srgb,var(--line2) 70%,transparent);padding:.55rem .45rem;text-align:left;vertical-align:top}.prose :global(thead th){color:var(--text)}.prose :global(img),.prose :global(video),.prose :global(iframe){max-width:100%;height:auto;border-radius:4px;margin:1rem 0}.prose :global(del){opacity:.8}.prose :global(a){color:var(--accent)}.prose :global(.data-snapshot){margin:1.25rem 0 1.75rem;padding:1rem;border:1px solid color-mix(in srgb,var(--line2) 70%,var(--accent) 30%);border-radius:6px;background:color-mix(in srgb,var(--bg2) 72%,transparent)}.prose :global(.data-bars){display:grid;gap:.52rem}.prose :global(.data-bars__row){display:grid;grid-template-columns:6.5rem minmax(0,1fr);gap:.6rem;align-items:center}.prose :global(.data-bars__row>span){font-family:var(--mono);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.prose :global(.data-bars__track){height:8px;border-radius:999px;background:color-mix(in srgb,var(--line2) 56%,transparent);overflow:hidden}.prose :global(.data-bars__track>i){display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 85%,#fff 15%),color-mix(in srgb,var(--accent) 65%,var(--nav-accent) 35%));transform-origin:left center;animation:data-bar-in 1.1s cubic-bezier(.2,.8,.2,1)}@keyframes data-bar-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media(max-width:640px){.prose :global(.data-bars__row){grid-template-columns:1fr;gap:.35rem}}.blog-toc{--blog-toc-panel-w: min(15rem, calc(100vw - 2.85rem) );--blog-toc-expanded-max-h: min(21rem, 46vh);--blog-toc-glass-blur: 24px;--blog-toc-glass-sat: 1.28;--blog-toc-panel-pad-y: .52rem;--blog-toc-panel-pad-x: .5rem;--toc-toggle-w: 36px;--toc-toggle-h: 2.35rem;--toc-card-bg: color-mix(in srgb, var(--bg3) 52%, var(--bg2) 48%);--toc-card-bg-hover: color-mix(in srgb, var(--nav-toolbar-bg) 92%, var(--bg3) 8%);--toc-card-border: color-mix(in srgb, var(--line2) 88%, var(--line) 12%);--toc-card-shadow: 0 2px 8px color-mix(in srgb, var(--shadow-card) 75%, transparent);--toc-card-shadow-hover: 0 5px 18px color-mix(in srgb, var(--shadow-card) 90%, transparent);--blog-toc-link-font-size: .78rem;--blog-toc-panel-dur: .46s;--blog-toc-panel-dur-out: .36s;--blog-toc-ease-open: cubic-bezier(.22, 1, .32, 1);--blog-toc-ease-close: cubic-bezier(.4, 0, .2, 1);position:fixed;z-index:90;top:calc(4.35rem + env(safe-area-inset-top,0px));bottom:calc(5.35rem + env(safe-area-inset-bottom,0px));max-height:none;right:max(.3rem,env(safe-area-inset-right,0px));left:auto;opacity:0;pointer-events:none;transition:opacity .45s cubic-bezier(.4,0,.2,1),visibility .45s;visibility:hidden}.blog-toc.blog-toc--mounted{opacity:1;visibility:visible;pointer-events:none}.blog-toc.blog-toc--mounted .blog-toc__shell{pointer-events:auto}.blog-toc__shell{position:relative;isolation:isolate;display:flex;flex-direction:row;align-items:flex-start;max-height:min(100%,calc(100dvh - 9.5rem))}#blog-post-toc.blog-toc,#blog-post-toc .blog-toc__panel,#blog-post-toc .blog-toc__nav{text-align:left!important}.blog-toc__panel{position:relative;width:var(--blog-toc-panel-w);max-width:var(--blog-toc-panel-w);min-width:0;min-height:0;flex-shrink:0;display:flex;flex-direction:column;padding:var(--blog-toc-panel-pad-y) var(--blog-toc-panel-pad-x) calc(var(--blog-toc-panel-pad-y) + .06rem);overflow:hidden;background:color-mix(in srgb,color-mix(in srgb,var(--bg2) 76%,var(--nav-bg) 24%) 78%,transparent);backdrop-filter:blur(var(--blog-toc-glass-blur)) saturate(var(--blog-toc-glass-sat));-webkit-backdrop-filter:blur(var(--blog-toc-glass-blur)) saturate(var(--blog-toc-glass-sat));border:1px solid color-mix(in srgb,var(--line) 82%,transparent);box-shadow:0 5px 28px color-mix(in srgb,var(--shadow-card) 88%,transparent);border-radius:11px 0 0 11px;border-right:none;transform:translateZ(0);transform-origin:center right;transition:max-width var(--blog-toc-panel-dur) var(--blog-toc-ease-open),width var(--blog-toc-panel-dur) var(--blog-toc-ease-open),max-height var(--blog-toc-panel-dur) var(--blog-toc-ease-open),min-width var(--blog-toc-panel-dur) var(--blog-toc-ease-open),opacity calc(var(--blog-toc-panel-dur) * .88) var(--blog-toc-ease-open),transform var(--blog-toc-panel-dur) var(--blog-toc-ease-open),padding var(--blog-toc-panel-dur) var(--blog-toc-ease-open),border-color .32s ease,background .38s ease,box-shadow .42s ease,visibility 0s linear 0s}.blog-toc:not(.blog-toc--collapsed) .blog-toc__panel{max-height:var(--blog-toc-expanded-max-h);transform:translateZ(0);visibility:visible}html[data-theme=light] .blog-toc__panel{background:color-mix(in srgb,color-mix(in srgb,#fff 82%,var(--bg2) 18%) 76%,transparent);border-color:color-mix(in srgb,color-mix(in srgb,var(--line) 72%,var(--line2) 28%) 88%,transparent);box-shadow:0 1px color-mix(in srgb,#fff 62%,transparent) inset,0 8px 36px color-mix(in srgb,var(--shadow-card) 80%,transparent)}html[data-theme=dark] .blog-toc__panel,html:not([data-theme]) .blog-toc__panel{background:color-mix(in srgb,color-mix(in srgb,var(--bg2) 78%,var(--bg) 22%) 78%,transparent);box-shadow:0 1px color-mix(in srgb,#fff 8%,transparent) inset,0 12px 40px color-mix(in srgb,var(--shadow-card) 95%,transparent)}.blog-toc__panel:after{content:"";position:absolute;left:10%;right:10%;top:0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--nav-accent) 45%,transparent) 40%,color-mix(in srgb,var(--nav-accent) 65%,transparent) 50%,color-mix(in srgb,var(--nav-accent) 45%,transparent) 60%,transparent);opacity:.85;pointer-events:none}.blog-toc__toggle{position:relative;z-index:2;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:var(--toc-toggle-w);height:var(--toc-toggle-h);min-height:0;margin:0;padding:0;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);background:color-mix(in srgb,color-mix(in srgb,var(--bg2) 76%,var(--nav-bg) 24%) 78%,transparent);backdrop-filter:blur(var(--blog-toc-glass-blur)) saturate(var(--blog-toc-glass-sat));-webkit-backdrop-filter:blur(var(--blog-toc-glass-blur)) saturate(var(--blog-toc-glass-sat));color:var(--muted-dim);cursor:pointer;box-shadow:0 5px 24px color-mix(in srgb,var(--shadow-card) 85%,transparent);transition:color .25s ease,border-color .25s ease,background .35s ease;border-radius:0 6px 6px 0;border-left:1px solid color-mix(in srgb,var(--line2) 65%,transparent);touch-action:manipulation;-webkit-tap-highlight-color:transparent}html[data-theme=light] .blog-toc__toggle{background:color-mix(in srgb,color-mix(in srgb,#fff 82%,var(--bg2) 18%) 76%,transparent);border-color:color-mix(in srgb,color-mix(in srgb,var(--line) 72%,var(--line2) 28%) 88%,transparent);box-shadow:0 6px 26px color-mix(in srgb,var(--shadow-card) 75%,transparent)}html[data-theme=dark] .blog-toc__toggle,html:not([data-theme]) .blog-toc__toggle{background:color-mix(in srgb,color-mix(in srgb,var(--bg2) 78%,var(--bg) 22%) 78%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--shadow-card) 90%,transparent)}.blog-toc__toggle:hover,.blog-toc__toggle:focus-visible{color:var(--nav-accent);outline:none}.blog-toc__toggle:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--nav-accent) 40%,transparent),0 4px 20px var(--shadow-card)}.blog-toc__toggle-chevron{display:block;transition:transform var(--blog-toc-panel-dur) var(--blog-toc-ease-open)}.blog-toc__toggle-chevron svg{display:block;width:12px;height:18px;transition:none}.blog-toc .blog-toc__toggle-chevron{transform:rotate(0)}.blog-toc.blog-toc--collapsed .blog-toc__toggle-chevron{transform:rotate(180deg);transition-duration:var(--blog-toc-panel-dur-out);transition-timing-function:var(--blog-toc-ease-close)}.blog-toc.blog-toc--collapsed.blog-toc--peek .blog-toc__toggle-chevron{transform:rotate(0)}.blog-toc__nav{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;align-items:stretch;gap:.22rem;padding:.14rem .1rem .12rem}.blog-toc--collapsed .blog-toc__panel{max-width:0!important;width:0!important;min-width:0!important;max-height:0!important;opacity:0;padding:0;overflow:hidden;visibility:hidden;border-color:transparent;pointer-events:none;transform:translate3d(.55rem,0,0) scale(.985);transition-duration:var(--blog-toc-panel-dur-out),var(--blog-toc-panel-dur-out),var(--blog-toc-panel-dur-out),var(--blog-toc-panel-dur-out),calc(var(--blog-toc-panel-dur-out) * .9),var(--blog-toc-panel-dur-out),var(--blog-toc-panel-dur-out),.28s,.32s,.36s,0s;transition-delay:0s,0s,0s,0s,0s,0s,0s,0s,0s,0s,var(--blog-toc-panel-dur-out);transition-timing-function:var(--blog-toc-ease-close),var(--blog-toc-ease-close),var(--blog-toc-ease-close),var(--blog-toc-ease-close),var(--blog-toc-ease-close),var(--blog-toc-ease-close),var(--blog-toc-ease-close),ease,ease,ease,linear}.blog-toc--collapsed.blog-toc--peek .blog-toc__panel,.blog-toc--collapsed .blog-toc__shell:focus-within .blog-toc__panel{max-width:var(--blog-toc-panel-w)!important;width:var(--blog-toc-panel-w)!important;min-width:0!important;max-height:var(--blog-toc-expanded-max-h)!important;opacity:1;padding:var(--blog-toc-panel-pad-y) var(--blog-toc-panel-pad-x) calc(var(--blog-toc-panel-pad-y) + .06rem);overflow-x:hidden;overflow-y:hidden;visibility:visible;border-color:var(--line);border-right:none;pointer-events:auto;transform:translateZ(0) scale(1);transition-duration:var(--blog-toc-panel-dur),var(--blog-toc-panel-dur),var(--blog-toc-panel-dur),var(--blog-toc-panel-dur),calc(var(--blog-toc-panel-dur) * .88),var(--blog-toc-panel-dur),var(--blog-toc-panel-dur),.32s,.38s,.42s,0s;transition-delay:0s,0s,0s,0s,0s,0s,0s,0s,0s,0s,0s;transition-timing-function:var(--blog-toc-ease-open),var(--blog-toc-ease-open),var(--blog-toc-ease-open),var(--blog-toc-ease-open),var(--blog-toc-ease-open),var(--blog-toc-ease-open),var(--blog-toc-ease-open),ease,ease,ease,linear}@keyframes blog-toc-link-in{0%{opacity:0;transform:translate(calc(-1 * var(--toc-slide, 6px)))}to{opacity:1;transform:translate(0)}}#blog-post-toc :global(button.blog-toc__link){--toc-slide: 6px;--toc-indent: 0rem;--toc-link-bg: var(--toc-card-bg);--toc-inset-bar: 0px;--toc-inset-color: transparent;appearance:none;-webkit-appearance:none;font-family:var(--sans);font-size:var(--blog-toc-link-font-size);font-weight:400;line-height:1.4;letter-spacing:-.01em;text-wrap:pretty;box-sizing:border-box;display:block;margin:0;margin-inline-start:var(--toc-indent);padding:.28rem .38rem;padding-inline-start:.34rem;width:calc(100% - var(--toc-indent));max-width:calc(100% - var(--toc-indent));touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:6px;border:1px solid var(--toc-card-border);text-align:left!important;cursor:pointer;color:var(--muted);background:color-mix(in srgb,var(--toc-link-bg) 86%,transparent);backdrop-filter:blur(14px) saturate(1.16);-webkit-backdrop-filter:blur(14px) saturate(1.16);box-shadow:inset var(--toc-inset-bar) 0 0 0 var(--toc-inset-color),var(--toc-card-shadow);text-decoration:none;transition:background .22s cubic-bezier(.4,0,.2,1),color .22s ease,border-color .22s ease,box-shadow .26s cubic-bezier(.4,0,.2,1),transform .22s cubic-bezier(.4,0,.2,1),margin-inline-start .28s cubic-bezier(.4,0,.2,1),width .28s cubic-bezier(.4,0,.2,1),max-width .28s cubic-bezier(.4,0,.2,1);animation:blog-toc-link-in .46s cubic-bezier(.22,1,.36,1) backwards;animation-delay:calc(var(--toc-stagger, 0) * 32ms)}html[data-theme=light] #blog-post-toc :global(button.blog-toc__link){--toc-card-bg: color-mix(in srgb, color-mix(in srgb, #fff 76%, var(--bg3) 24%) 86%, transparent);--toc-card-bg-hover: color-mix(in srgb, color-mix(in srgb, #fff 90%, var(--bg2) 10%) 90%, transparent);--toc-card-border: color-mix(in srgb, var(--line2) 95%, var(--text) 5%);--toc-card-shadow: 0 2px 6px color-mix(in srgb, var(--shadow-card) 65%, transparent);--toc-card-shadow-hover: 0 6px 16px color-mix(in srgb, var(--shadow-card) 80%, transparent)}html[data-theme=dark] #blog-post-toc :global(button.blog-toc__link),html:not([data-theme]) #blog-post-toc :global(button.blog-toc__link){--toc-card-bg: color-mix(in srgb, color-mix(in srgb, var(--bg3) 55%, var(--bg2) 45%) 86%, transparent);--toc-card-bg-hover: color-mix(in srgb, color-mix(in srgb, var(--bg3) 35%, var(--nav-toolbar-bg) 65%) 88%, transparent);--toc-card-shadow: 0 2px 10px color-mix(in srgb, var(--shadow-card) 90%, transparent);--toc-card-shadow-hover: 0 8px 22px color-mix(in srgb, var(--shadow-card) 95%, transparent)}#blog-post-toc :global(button.blog-toc__link--depth-0){--toc-indent: 0rem}#blog-post-toc :global(button.blog-toc__link--depth-1){--toc-indent: .72rem}#blog-post-toc :global(button.blog-toc__link--depth-2){--toc-indent: 1.44rem}#blog-post-toc :global(button.blog-toc__link--depth-3){--toc-indent: 2.16rem}#blog-post-toc :global(button.blog-toc__link--h1){border:2px solid color-mix(in srgb,var(--nav-accent) 50%,var(--toc-card-border) 50%);border-radius:8px;font-weight:700;font-size:calc(var(--blog-toc-link-font-size) * 1.07);letter-spacing:-.025em;color:var(--text);padding-block:.34rem;padding-inline:.48rem .44rem;background:color-mix(in srgb,var(--nav-accent) 8%,var(--toc-link-bg) 92%);box-shadow:var(--toc-card-shadow)}#blog-post-toc :global(button.blog-toc__link--h2){border:none;box-shadow:none;border-radius:6px;font-weight:600;padding-block:.3rem;color:color-mix(in srgb,var(--text) 88%,var(--muted) 12%);background:color-mix(in srgb,var(--line2) 10%,var(--toc-link-bg) 90%)}#blog-post-toc :global(button.blog-toc__link--h3){border:none;box-shadow:none;border-radius:999px;font-weight:400;padding-block:.26rem;padding-inline:.44rem .4rem;padding-inline-start:.46rem;background:color-mix(in srgb,var(--line2) 6%,var(--toc-link-bg) 94%);color:color-mix(in srgb,var(--muted) 22%,var(--text) 78%)}#blog-post-toc :global(button.blog-toc__link--h4){border:none;box-shadow:none;border-radius:4px;background:color-mix(in srgb,var(--line2) 12%,var(--toc-link-bg) 88%);padding-inline-start:.44rem;font-size:calc(var(--blog-toc-link-font-size) * .94);color:color-mix(in srgb,var(--muted) 92%,var(--text) 8%)}#blog-post-toc :global(button.blog-toc__link:hover){color:var(--text);--toc-link-bg: var(--toc-card-bg-hover);background:color-mix(in srgb,var(--toc-card-bg-hover) 88%,transparent);box-shadow:inset var(--toc-inset-bar) 0 0 0 var(--toc-inset-color),var(--toc-card-shadow-hover);transform:translateY(-2px) scale(1)}#blog-post-toc :global(button.blog-toc__link--h1:hover){background:color-mix(in srgb,var(--nav-accent) 12%,var(--toc-card-bg-hover) 88%);border-color:color-mix(in srgb,var(--nav-accent) 58%,var(--toc-card-border) 42%);box-shadow:var(--toc-card-shadow-hover)}#blog-post-toc :global(button.blog-toc__link--h2:hover){background:color-mix(in srgb,var(--line2) 14%,var(--toc-card-bg-hover) 86%);box-shadow:var(--toc-card-shadow-hover)}#blog-post-toc :global(button.blog-toc__link--h3:hover){background:color-mix(in srgb,var(--line2) 10%,var(--toc-card-bg-hover) 90%);box-shadow:var(--toc-card-shadow-hover)}#blog-post-toc :global(button.blog-toc__link:active){transform:translateY(0) scale(1)}#blog-post-toc :global(button.blog-toc__link:hover:active){transform:translateY(-2px) scale(1)}#blog-post-toc :global(button.blog-toc__link:focus-visible){outline:2px solid color-mix(in srgb,var(--nav-accent) 50%,transparent);outline-offset:1px}#blog-post-toc :global(button.blog-toc__link--active){color:var(--text);--toc-link-bg: color-mix(in srgb, var(--toc-card-bg-hover) 70%, var(--line2) 30%);background:color-mix(in srgb,color-mix(in srgb,var(--toc-card-bg-hover) 70%,var(--line2) 30%) 88%,transparent);border-color:color-mix(in srgb,var(--nav-accent) 42%,var(--toc-card-border) 58%);box-shadow:inset var(--toc-inset-bar) 0 0 0 var(--toc-inset-color),0 0 0 1px color-mix(in srgb,var(--nav-accent) 22%,transparent),var(--toc-card-shadow-hover)}#blog-post-toc :global(button.blog-toc__link--active.blog-toc__link--h1){color:var(--text);border:2px solid color-mix(in srgb,var(--nav-accent) 64%,var(--toc-card-border) 36%);background:color-mix(in srgb,var(--nav-accent) 16%,color-mix(in srgb,var(--toc-card-bg-hover) 72%,var(--line2) 28%) 84%);box-shadow:0 0 0 1px color-mix(in srgb,var(--nav-accent) 28%,transparent),var(--toc-card-shadow-hover)}#blog-post-toc :global(button.blog-toc__link--active.blog-toc__link--h2){border:none;color:var(--text);background:color-mix(in srgb,var(--nav-accent) 9%,color-mix(in srgb,var(--toc-card-bg-hover) 70%,var(--line2) 30%) 91%);box-shadow:0 0 0 1px color-mix(in srgb,var(--nav-accent) 18%,transparent),var(--toc-card-shadow-hover)}#blog-post-toc :global(button.blog-toc__link--active.blog-toc__link--h3){border:none;color:var(--text);background:color-mix(in srgb,var(--nav-accent) 8%,color-mix(in srgb,var(--toc-card-bg-hover) 70%,var(--line2) 30%) 92%);box-shadow:0 0 0 1px color-mix(in srgb,var(--nav-accent) 16%,transparent),var(--toc-card-shadow-hover)}#blog-post-toc :global(button.blog-toc__link--active.blog-toc__link--h4){border:none;background:color-mix(in srgb,color-mix(in srgb,var(--nav-accent) 14%,var(--toc-card-bg-hover) 86%) 90%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--nav-accent) 18%,transparent),var(--toc-card-shadow-hover)}#blog-post-toc :global(.blog-toc__label){display:block;min-width:0;width:100%;max-width:100%;text-align:left!important;word-break:break-word}@media(max-width:520px){.blog-toc{--blog-toc-panel-w: min(13.5rem, calc(100vw - 2.35rem) );--blog-toc-expanded-max-h: min(17.5rem, 42vh);--toc-toggle-w: 34px;--toc-toggle-h: 2.05rem;--blog-toc-link-font-size: .72rem}}@media(prefers-reduced-motion:reduce){.blog-toc,.blog-toc__panel,.blog-toc__toggle,.blog-toc__toggle-chevron,.blog-toc__toggle-chevron svg{transition:none}#blog-post-toc :global(button.blog-toc__link){animation:none;transition:background .22s cubic-bezier(.4,0,.2,1),color .22s ease,border-color .22s ease,box-shadow .26s cubic-bezier(.4,0,.2,1),transform .22s cubic-bezier(.4,0,.2,1)}#blog-post-toc :global(button.blog-toc__link:hover){transform:none}}@media(max-width:768px){body{cursor:auto!important}#cursor,#cursor-ring{display:none!important;visibility:hidden;pointer-events:none}}
