/* Existing memorial shimmer, shared with floating actions. */
.m-primary-cta{position:relative;isolation:isolate;overflow:hidden}
.m-fab{isolation:isolate;overflow:hidden}
.m-fab > *{position:relative;z-index:1}
.m-primary-cta-content{position:relative;z-index:1}
:is(.m-primary-cta,.m-fab)::before{
  content:'';position:absolute;z-index:0;pointer-events:none;
  top:-65%;bottom:-65%;left:-110%;width:100%;filter:blur(12px);
  background:radial-gradient(ellipse at center,rgba(255,253,245,.28) 0%,rgba(255,253,245,.16) 23%,rgba(var(--a),.10) 43%,transparent 72%);
  animation:m-cta-shine 10s ease-in-out infinite;animation-play-state:paused;
}
:is(.m-primary-cta,.m-fab).is-cta-visible::before{animation-play-state:running}
body.dark :is(.m-primary-cta,.m-fab)::before{
  background:radial-gradient(ellipse at center,rgba(var(--a),.22) 0%,rgba(var(--a),.12) 32%,transparent 72%);
}
@keyframes m-cta-shine{
  0%{transform:translateX(0);opacity:0}
  10%,40%{opacity:.9}
  52%,100%{transform:translateX(220%);opacity:0}
}
@media(prefers-reduced-motion:reduce){
  :is(.m-primary-cta,.m-fab)::before{animation:none;opacity:0}
}
