.blur {
position: relative;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
pointer-events: none;
--h: min(96px,var(--page-top));
position: sticky;
width: calc(100% + var(--body-margin-left) + var(--body-margin-right));
margin-left: calc(-1 * var(--body-margin-left));
height: var(--h);
z-index: 1;
-webkit-backdrop-filter: blur(5px);
backdrop-filter: blur(5px);
opacity: .95;
-webkit-mask-image: linear-gradient(var(--direction),var(--mask-visible) 25%,var(--mask-hidden));
mask-image: linear-gradient(var(--direction),var(--mask-visible) 25%,var(--mask-hidden))
}
.blur:after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(var(--direction),var(--bg),var(--transparent))
}
.blur:first-child {
margin-bottom: calc(-1 * var(--h));
top: 0;
--direction: to bottom
}
.blur:last-child {
margin-top: calc(-1 * var(--h));
bottom: 0;
--direction: to top
}