/* ShinyText Effect for Get Started Button */
.shiny-text {
  color: #ffffff; /* White text for contrast */
  background: linear-gradient(
    120deg,
    rgba(255, 255, 255, 0) 40%,
    rgba(34, 197, 94, 0.9) 50%, /* Green accent from logo */
    rgba(59, 130, 246, 0.9) 50.5%, /* Blue accent */
    rgba(255, 255, 255, 0) 60%
  );
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  display: inline-block;
  animation: shine 3s linear infinite;
  position: relative;
}

/* Fallback for browsers that don't support background-clip: text */
@supports not (-webkit-background-clip: text) {
  .shiny-text {
    color: #22c55e; /* Green fallback */
    background: none;
    animation: none;
  }
}

@keyframes shine {
  0% {
    background-position: 100%;
  }
  100% {
    background-position: -100%;
  }
}

.shiny-text.disabled {
  animation: none;
  color: #ffffff;
  background: none;
}

/* Shiny text effect only - keeping original button background */
.btn-primary.shiny-text-alt,
.btn-footer-primary.shiny-text-alt,
.pricing-cta.shiny-text-alt {
  background: var(--primary-color) !important; /* Keep original red background */
  color: transparent; /* Hide original text */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  position: relative;
}

/* Shiny text effect using pseudo-element */
.btn-primary.shiny-text-alt::before,
.btn-footer-primary.shiny-text-alt::before,
.pricing-cta.shiny-text-alt::before {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(
    120deg,
    #ffffff 20%,
    #ffffff 35%,
    #22c55e 50%, /* Bright green accent from logo */
    #3b82f6 50.5%, /* Bright blue accent */
    #ffffff 65%,
    #ffffff 80%
  );
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  animation: shine 3s linear infinite;
  color: transparent;
  font-size: inherit;
  font-weight: inherit;
  text-align: center;
  text-shadow: 0 0 12px rgba(255, 255, 255, 0.8);
  filter: drop-shadow(0 0 4px rgba(255, 255, 255, 0.5));
}

/* Ensure proper text alignment for navigation buttons */
.nav-buttons .btn-primary.shiny-text-alt {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  width: 130px !important;
  height: 36px !important;
  line-height: 1 !important;
}

/* Specific styling for header navigation buttons to match Login button size */
.nav-buttons .btn-primary.shiny-text-alt::before {
  font-size: 13px !important;
  font-weight: 500 !important;
}

/* Specific styling for pricing buttons to match original size */
.pricing-cta.shiny-text-alt::before {
  font-size: 14px !important;
  font-weight: 500 !important;
}

/* Fallback for browsers that don't support background-clip: text */
@supports not (-webkit-background-clip: text) {
  .btn-primary.shiny-text-alt,
  .btn-footer-primary.shiny-text-alt,
  .pricing-cta.shiny-text-alt {
    color: #ffffff !important;
    background: var(--primary-color) !important;
    font-weight: 600 !important;
    text-shadow: 0 0 8px rgba(255, 255, 255, 0.6) !important;
  }
  
  .btn-primary.shiny-text-alt::before,
  .btn-footer-primary.shiny-text-alt::before,
  .pricing-cta.shiny-text-alt::before {
    display: none;
  }
}

/* Mobile responsive adjustments */
@media (max-width: 768px) {
  .shiny-text {
    animation-duration: 4s; /* Slower on mobile for better performance */
  }
}
