@layer base,demo,scroll;@layer popover{:root{--bottom: 2rem;--speed: .3s;--power-in: linear( 0 0%, .0039 6.25%, .0156 12.5%, .0352 18.75%, .0625 25%, .0977 31.25%, .1407 37.5%, .1914 43.74%, .2499 49.99%, .3164 56.25%, .3906 62.5%, .5625 75%, .7656 87.5%, 1 100% );--power-in-out: linear( 0 0%, .0012 14.95%, .0089 22.36%, .0297 28.43%, .0668 33.43%, .0979 36.08%, .1363 38.55%, .2373 43.07%, .3675 47.01%, .5984 52.15%, .7121 55.23%, .8192 59.21%, .898 63.62%, .9297 66.23%, .9546 69.06%, .9733 72.17%, .9864 75.67%, .9982 83.73%, 1 100% );--power-out: linear( 0 0%, .2342 12.49%, .4374 24.99%, .6093 37.49%, .6835 43.74%, .7499 49.99%, .8086 56.25%, .8593 62.5%, .9023 68.75%, .9375 75%, .9648 81.25%, .9844 87.5%, .9961 93.75%, 1 100% );--ease: var(--power-in);--trigger-width: 190px;--trigger-height: 44px}:root:has(:popover-open){--ease: var(--power-out)}.toc{[popover]:popover-open .backdrop-blur{scale:1;opacity:1}@starting-style{[popover]:popover-open .backdrop-blur{scale:0;opacity:0}}.trigger{width:var(--trigger-width);height:var(--trigger-height);border-radius:22px;color:light-dark(canvas,canvasText);border:0;outline-color:#fff}:root:has(.trigger:focus-visible) [popover]{outline:2px solid white}.trigger,.contents{background:light-dark(hsl(0 0% 8%),hsl(0 0% 14%))}.contents{display:flex;overflow:hidden;height:100%;width:100%;flex-direction:column-reverse;border-radius:22px;padding:0 6px;transition:padding var(--speed);transform:translateZ(0);@starting-style{padding:1rem}}[popover]{border:0px;border-radius:22px;background:transparent;padding-block:0;overflow:visible}[popover] .trigger__details{min-height:44px;flex-basis:44px}.trigger__details{display:flex;align-items:center;gap:.5rem;padding-left:.5rem;padding-right:.25rem;width:100%}.trigger__details svg{width:24px}.trigger__details .lines{animation:draw both linear;animation-timeline:--content}.trigger__details>span:first-of-type{flex:1;display:flex;align-items:center;text-align:left;gap:.25rem;svg{width:18px}}@keyframes draw{to{stroke-dashoffset:0}}[popovertargetaction]{anchor-name:--opener}[popover]:popover-open{display:flex}[popover]:popover-open .contents{padding:1rem 1rem 0}@starting-style{[popover]:popover-open .contents{padding:0 6px}}&[data-alignment=left] .trigger,&[data-alignment=left] [popover]{left:1rem}&[data-alignment=right] .trigger,&[data-alignment=right] [popover]{right:1rem}&[data-alignment=center] .trigger,&[data-alignment=center] [popover]{left:50%;translate:-50% 0}[popover]{flex-direction:column-reverse;position-anchor:--opener;transition-property:display,overlay,width,height;transition-duration:var(--speed);transition-behavior:allow-discrete;transition-timing-function:var(--ease);color:#fff;margin:unset;inset:unset;bottom:var(--bottom);width:var(--trigger-width);height:var(--trigger-height);z-index:99999999;padding:0;interpolate-size:allow-keywords;@starting-style{width:var(--trigger-width);height:var(--trigger-height)}}[popover] ol{padding-inline:.5rem;padding-left:2.5rem;list-style:pad-it;display:flex;width:max-content;margin:0;flex-direction:column;filter:blur(4px);opacity:0;transition:filter var(--speed),opacity var(--speed);transition-timing-function:var(--ease)}[popover]:popover-open ol{filter:blur(0px);opacity:1}@starting-style{[popover]:popover-open ol{filter:blur(4px);opacity:0}}[popover]:popover-open{width:var(--content-width, fit-content);height:var(--content-height, fit-content)}li::marker{color:#999}li:has(a:is(:hover,:focus-visible))::marker{color:#fff}ol li button[data-href]{white-space:nowrap;padding-block:.5rem;text-decoration:none;display:inline-block;color:#999;flex:1;width:100%;text-align:start;&:is(:hover,:focus-visible){color:#fff}}@starting-style{[popover]:popover-open{width:var(--trigger-width);height:var(--trigger-height)}}[popover]::backdrop{transition-property:overlay,display,opacity;transition-duration:var(--speed);transition-behavior:allow-discrete;transition-timing-function:var(--ease);background:#00000040;opacity:0;backdrop-filter:blur(8px)}[popover] button{background:#0000;border:none;padding:0;color:inherit;cursor:pointer}&[data-alignment=right] [popover]::backdrop{mask:linear-gradient(135deg,#0000 0%,#fff 100%)}&[data-alignment=center] [popover]::backdrop{mask:linear-gradient(180deg,#0000 0%,#fff 100%)}&[data-alignment=left] [popover]::backdrop{mask:linear-gradient(225deg,#0000 0%,#fff 100%)}[popover]:popover-open::backdrop{opacity:1}@starting-style{[popover]:popover-open::backdrop{opacity:0}}}}@layer scroll{:root{timeline-scope:--content}html{scroll-timeline:--content y}@property --progress{initial-value: 0; syntax: "<integer>"; inherits: true;}:root{animation:scroll-progress both linear;animation-timeline:--content}@keyframes scroll-progress{to{--progress: 100}}:root{counter-reset:progress var(--progress)}.toc{.trigger{anchor-name:--opener;position:fixed;bottom:var(--bottom);z-index:9999999;view-transition-name:trigger;cursor:pointer}.progress{border-radius:100px;background:light-dark(hsl(0 0% 35%),hsl(0 0% 0%));padding:.25rem .5rem}.progress:before{font-variant-numeric:tabular-nums;content:counter(progress) "%"}}}@layer demo{@counter-style pad-it{system:extends decimal;pad:2 "0"}main{counter-reset:section}section{counter-increment:section 1}[id]{scroll-margin-top:80px}.toc .heading{position:relative;display:flex;&:is(:hover,:focus-within) button{opacity:1}button{text-align:left;opacity:0;width:24px;aspect-ratio:1;position:absolute;right:calc(100% + .5rem);top:0;display:grid;place-items:center;transition:opacity .2s;outline-color:transparent;border-radius:6px;&:focus-visible{background:color-mix(in hsl,canvasText,#0000 75%)}svg{width:20px}}}}@layer base{:root{--font-size-min: 14;--font-size-max: 16;--font-ratio-min: 1.2;--font-ratio-max: 1.33;--font-width-min: 375;--font-width-max: 1280}html{color-scheme:light dark}[data-theme=light]{color-scheme:light only}[data-theme=dark]{color-scheme:dark only}:where(.fluid){--fluid-min: calc( var(--font-size-min) * pow(var(--font-ratio-min), var(--font-level, 0)) );--fluid-max: calc( var(--font-size-max) * pow(var(--font-ratio-max), var(--font-level, 0)) );--fluid-preferred: calc( (var(--fluid-max) - var(--fluid-min)) / (var(--font-width-max) - var(--font-width-min)) );--fluid-type: clamp( (var(--fluid-min) / 16) * 1rem, ((var(--fluid-min) / 16) * 1rem) - (((var(--fluid-preferred) * var(--font-width-min)) / 16) * 1rem) + (var(--fluid-preferred) * var(--variable-unit, 100vi)), (var(--fluid-max) / 16) * 1rem );font-size:var(--fluid-type)}*,*:after,*:before{box-sizing:border-box}}@counter-style pad-example{system:extends decimal;suffix:" ";pad:2 " "}.arrow-left-icon[data-astro-cid-sd25icds]{display:inline-flex;cursor:pointer;width:var(--size);height:var(--size)}.arrow-left-icon[data-astro-cid-sd25icds] svg[data-astro-cid-sd25icds]{width:100%;height:100%}.arrow-path[data-astro-cid-sd25icds]{transform-origin:center;transition:transform .3s cubic-bezier(.4,0,.2,1)}.line-path[data-astro-cid-sd25icds]{stroke-dasharray:14;stroke-dashoffset:0;transition:stroke-dashoffset .3s cubic-bezier(.4,0,.2,1)}.arrow-left-icon[data-astro-cid-sd25icds]:hover .arrow-path[data-astro-cid-sd25icds]{animation:arrowBounce .6s cubic-bezier(.4,0,.2,1) infinite}.arrow-left-icon[data-astro-cid-sd25icds]:hover .line-path[data-astro-cid-sd25icds]{animation:lineFlow .8s cubic-bezier(.4,0,.2,1) infinite}@keyframes arrowBounce{0%,to{transform:translate(0)}25%{transform:translate(-3px)}50%{transform:translate(0)}75%{transform:translate(-1px)}}@keyframes lineFlow{0%{stroke-dashoffset:0}50%{stroke-dashoffset:-7}to{stroke-dashoffset:-14}}.article[data-astro-cid-p32sffdo]{padding:2rem 0}.back-link[data-astro-cid-p32sffdo]{display:inline-flex;align-items:center;gap:.4rem;color:var(--muted);text-decoration:none;font-size:.9rem;margin-bottom:1.5rem;transition:color .15s}.back-link[data-astro-cid-p32sffdo]:hover{color:var(--text)}.back-link[data-astro-cid-p32sffdo] svg[data-astro-cid-p32sffdo]{flex-shrink:0}.meta[data-astro-cid-p32sffdo]{font-size:.82rem;color:var(--muted);margin:0;font-variant-numeric:tabular-nums}h1[data-astro-cid-p32sffdo]{font-family:var(--font-heading);font-weight:400;font-size:2rem;letter-spacing:-.01em;margin:.4rem 0 0}.body[data-astro-cid-p32sffdo].lead{margin:.6rem 0 1.5rem;font-size:1.05rem}.body[data-astro-cid-p32sffdo],.content[data-astro-cid-p32sffdo]{color:var(--muted);line-height:1.75}.content[data-astro-cid-p32sffdo] h2[data-astro-cid-p32sffdo],.content[data-astro-cid-p32sffdo] h3[data-astro-cid-p32sffdo]{font-family:var(--font-heading);font-weight:400;color:var(--text)}.content[data-astro-cid-p32sffdo] pre[data-astro-cid-p32sffdo]{padding:1rem;border-radius:8px;background:var(--surface-tag);overflow-x:auto;font-size:.88rem}.content[data-astro-cid-p32sffdo] code[data-astro-cid-p32sffdo]{font-family:JetBrains Mono,SFMono-Regular,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.content[data-astro-cid-p32sffdo] a[data-astro-cid-p32sffdo]{color:var(--primary)}@media(max-width:768px){h1[data-astro-cid-p32sffdo]{font-size:1.75rem}.content[data-astro-cid-p32sffdo] pre[data-astro-cid-p32sffdo]{font-size:.82rem;padding:.75rem;margin-left:-.5rem;margin-right:-.5rem;border-radius:6px}}@media(max-width:480px){.article[data-astro-cid-p32sffdo]{padding:1.25rem 0}.back-link[data-astro-cid-p32sffdo]{margin-bottom:1rem}h1[data-astro-cid-p32sffdo]{font-size:1.4rem}.body[data-astro-cid-p32sffdo].lead{font-size:.95rem;margin-bottom:1.2rem}.content[data-astro-cid-p32sffdo] pre[data-astro-cid-p32sffdo]{font-size:.78rem;padding:.65rem}}
