.heartbeat{width:var(--heart);height:var(--heart);isolation:isolate;place-items:center;display:inline-grid;position:relative}.heartbeat-mark{transform-origin:50% 58%;display:block;overflow:visible}.heartbeat-line{transition:stroke .26s}.heartbeat-fill{transition:transform .38s cubic-bezier(.5,0,.75,.45);transform:translateY(22px)}.heartbeat.is-filled .heartbeat-fill{transition:transform .76s cubic-bezier(.22,.72,.24,1);transform:translate(12px,-4px)}.heartbeat-bloom{z-index:-1;pointer-events:none;position:absolute;inset:0}.heartbeat-glow{opacity:0;background:radial-gradient(closest-side,#fb8fa357,#fb8fa31a 55%,#0000);border-radius:50%;animation:1s cubic-bezier(.2,.7,.2,1) forwards heartbeat-glow;position:absolute;inset:-70%}@keyframes heartbeat-glow{0%{opacity:0;transform:scale(.45)}28%{opacity:1}to{opacity:0;transform:scale(1.15)}}.heartbeat-ring{opacity:0;border:1.5px solid #fda4afbf;border-radius:50%;animation:.82s cubic-bezier(.16,.8,.3,1) 70ms forwards heartbeat-ring;position:absolute;inset:-14%}@keyframes heartbeat-ring{0%{opacity:.9;transform:scale(.55)}to{opacity:0;transform:scale(1.95)}}.heartbeat-mote{--mote:calc(var(--heart) * var(--mote-size,.12));width:var(--mote);height:var(--mote);margin:calc(var(--mote) / -2) 0 0 calc(var(--mote) / -2);box-shadow:0 0 calc(var(--heart) * .22) #fb8fa38c;opacity:0;animation:heartbeat-mote .98s cubic-bezier(.14, .82, .28, 1) var(--mote-at,90ms) forwards;background:#fda4af;border-radius:50%;position:absolute;top:50%;left:50%}.heartbeat-mote.is-blush{background:#ffe4e8}.heartbeat-mote.is-violet{box-shadow:0 0 calc(var(--heart) * .22) #c4b5fd80;background:#c4b5fd}@keyframes heartbeat-mote{0%{opacity:0;transform:translate(0)scale(.5)}16%{opacity:1}to{opacity:0;transform:translate(calc(var(--mote-x) * var(--heart) * 1.45), calc(var(--mote-y) * var(--heart) * 1.45 - var(--heart) * .2)) scale(.2)}}@media (prefers-reduced-motion:reduce){.heartbeat-bloom{display:none}.heartbeat-fill,.heartbeat.is-filled .heartbeat-fill{transition:none}}
