.beacon-link{position:relative}.beacon-link:has(.beacon-button-icon){padding-left:calc(var(--b-button-padding) + 34px);padding-right:calc(var(--b-button-padding) + 34px)}.beacon-button-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);max-width:48px;pointer-events:none}.beacon-link[data-button-motion=heartbeat]{animation:beaconHeartbeat var(--button-speed) ease-in-out infinite!important}.beacon-link[data-button-motion=pulse]{animation:beaconPulse var(--button-speed) ease-in-out infinite!important}.beacon-link[data-button-motion=float]{animation:beaconFloat var(--button-speed) ease-in-out infinite!important}.beacon-link[data-button-motion=shake]{animation:beaconShake var(--button-speed) ease-in-out infinite!important}.beacon-link[data-button-motion=glow]{animation:beaconButtonGlow var(--button-speed) ease-in-out infinite!important}
@keyframes beaconHeartbeat{0%,30%,60%,100%{transform:scale(1)}15%,45%{transform:scale(1.025)}}@keyframes beaconPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.018)}}@keyframes beaconFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes beaconShake{0%,75%,100%{transform:translateX(0)}80%,90%{transform:translateX(-2px)}85%,95%{transform:translateX(2px)}}@keyframes beaconButtonGlow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.17)}}
.beacon-link[data-button-motion]:hover,.beacon-link[data-button-motion]:focus-visible{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.beacon-link[data-button-motion]{animation:none!important;transform:none!important}}
