.rainbow-btn {
 display: inline-block;
 padding: 7px 20px;
 font-size: 16px;
 font-weight: bold;
 text-decoration: none;
 color: white;
 border-radius: 15px;
 background: linear-gradient(270deg, red, orange, yellow, green, blue, indigo, violet);
 background-size: 1400% 1400%;
 transition: all 0.3s ease;
 animation: rainbow 8s ease infinite;
 box-shadow: 0 4px 15px rgba(0,0,0,0.2);
 text-align: center;
}

.rainbow-btn:hover {
 transform: scale(1.1);
 box-shadow: 0 6px 20px rgba(0,0,0,0.3);
}

@keyframes rainbow {
 0%{background-position:0% 50%;}
 50%{background-position:100% 50%;}
 100%{background-position:0% 50%;}
}