.btn-magic-link{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px 24px;font-family:inherit;font-size:16px;font-weight:500;color:#ffffff;letter-spacing:.01em;border:none;border-radius:9999px;cursor:pointer;outline:none;overflow:hidden;background:linear-gradient(90deg,var(--brand-primary-dark,#0284c7) 0,#38bdf8 50%,var(--brand-primary,#0ea5e9) 100%);background-size:200% auto;color:#ffffff!important;animation:magic-btn-gradient 4s linear infinite;box-shadow:0 4px 12px rgba(14,165,233,.3),inset 0 1px 1px rgba(255,255,255,.25),inset 0 -1px 1px rgba(0,0,0,.1);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s cubic-bezier(.2,.8,.2,1);will-change:transform,box-shadow,background-position}@keyframes magic-btn-gradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.btn-magic-link .icon{flex-shrink:0;transition:transform .3s ease}.btn-magic-link:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(14,165,233,.4),inset 0 1px 1px rgba(255,255,255,.3),inset 0 -1px 1px rgba(0,0,0,.1)}.btn-magic-link:hover .icon{transform:scale(1.05)}.btn-magic-link:active{transform:translateY(1px) scale(.98);box-shadow:0 2px 4px rgba(14,165,233,.3),inset 0 2px 4px rgba(0,0,0,.15),inset 0 1px 1px rgba(255,255,255,.1);transition:transform .1s cubic-bezier(.4,0,.2,1),box-shadow .1s cubic-bezier(.4,0,.2,1)}.btn-magic-link:focus-visible{outline:2px solid var(--brand-primary);outline-offset:3px;box-shadow:0 4px 12px rgba(14,165,233,.4),inset 0 1px 1px rgba(255,255,255,.25)}.btn-magic-link:before{content:"";position:absolute;top:0;left:-150%;width:50%;height:100%;background:linear-gradient(90deg,rgba(255,255,255,0) 0,rgba(255,255,255,.15) 50%,rgba(255,255,255,0));transform:skewX(-20deg);transition:none;z-index:1;pointer-events:none}.btn-magic-link:hover:before{animation:shimmer-sweep 1s cubic-bezier(.2,.8,.2,1) forwards}.btn-magic-link>*{position:relative;z-index:2}@keyframes shimmer-sweep{0%{left:-150%;opacity:0}10%{opacity:1}90%{opacity:1}to{left:200%;opacity:0}}