/* Keep ancestors transparent, unfiltered and unmasked: the lens needs the page
   as its backdrop, not an isolated/transparent intermediate surface. */
.edge-glass { position: fixed; inset: 0; z-index: 12; pointer-events: none; }
.edge-glass[hidden] { display: none; }
.edge-glass-filters { position: absolute; width: 0; height: 0; pointer-events: none; }
.edge-glass-band { position: absolute; left: 0; right: 0; height: calc(var(--edge-band) * 2); }
.edge-glass-band-top {
  top: 0;
  backdrop-filter: url('#edge-lens-top');
  clip-path: inset(0 0 50%);
}
.edge-glass-band-bottom {
  bottom: 0;
  backdrop-filter: url('#edge-lens-bottom');
  clip-path: inset(50% 0 0);
}
body:has(dialog[open]) .edge-glass,
body:has(:fullscreen) .edge-glass { display: none; }
@media (prefers-reduced-motion: reduce), (forced-colors: active) {
  .edge-glass { display: none; }
}
@media print { .edge-glass { display: none; } }
