@keyframes floating-heart-rise{0%{opacity:0;transform:translate(0,0)}10%,85%{opacity:1}to{opacity:0;transform:translateY(calc(-100vh - 100%))}}@keyframes floating-heart-sway{0%,to{translate:0}50%{translate:var(--heart-sway) 0}}.floating-heart{animation:floating-heart-rise var(--heart-duration) linear var(--heart-delay) infinite;position:absolute;top:100%}.floating-heart>svg{animation:floating-heart-sway calc(var(--heart-duration) / 3) ease-in-out infinite}@media (prefers-reduced-motion:reduce){.floating-heart{display:none}}
.heart-cursor{cursor:url(/cursor/heart.svg) 14 14,auto}.heart-cursor :is(a[href],button:not(:disabled),[role=button]:not([aria-disabled=true]),label[for],summary,select){cursor:url(/cursor/heart-outline.svg) 14 14,pointer}.heart-cursor :is(.cursor-pointer,.cursor-grab,.cursor-grabbing,[data-draggable]){cursor:url(/cursor/heart-outline.svg) 14 14,grab}.heart-cursor :is([style*="cursor: grab"],[style*="cursor: pointer"]){cursor:url(/cursor/heart-outline.svg) 14 14,grab!important}.heart-cursor :is(input:not([type=checkbox],[type=radio],[type=range],[type=submit],[type=button],[type=reset]),textarea,[contenteditable=true]){cursor:text}
