.btn{position:relative;display:inline-flex;align-items:center;width:14rem;height:3.5rem;padding:.2rem;outline:none;border:none;font-size:.9rem;background:var(--card);backdrop-filter:blur(10px);border-radius:4rem;cursor:pointer;margin:1rem .5rem;transform:scale(0);text-decoration:none;border:2px solid var(--border);box-shadow:0 2px 8px rgba(0,0,0,.1)}.dark .btn{box-shadow:0 2px 8px rgba(0,0,0,.3)}.btn .circle{position:relative;display:block;margin:0;width:3.2rem;height:3.2rem;background:var(--primary);border-radius:4rem;font-size:1.5rem;transform:scale(0);overflow:hidden;transition:width .5s cubic-bezier(.65,0,.076,1)}.btn .icon{top:.85rem;left:1.05rem;color:var(--primary-foreground);font-size:1.5rem;transform:translateX(0);will-change:transform}.btn .button-text,.btn .icon{position:absolute;transition:all .5s cubic-bezier(.65,0,.076,1)}.btn .button-text{top:50%;left:50%;transform:translate(-50%,-50%);margin:0 0 0 1.5rem;text-align:center;color:var(--foreground);font-family:Manrope,sans-serif;font-weight:600;line-height:1;white-space:nowrap;opacity:0}.btn .line{position:relative;transform:translateY(100%);will-change:transform;padding-bottom:.2em;margin-bottom:-.2em}.btn:hover .circle{width:100%}.btn:hover .icon{transform:translate(.5rem)}.btn:hover .button-text,.btn:hover .icon{color:var(--primary-foreground)}