.color-changing-text {
  font-size: 16px;
  background: linear-gradient(to right, #656871 30%, #ffffff 50%, #656871 70%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  background-size: 200% auto;
  animation: silverShine 2s linear infinite;
  will-change: background-position;
}

@keyframes silverShine {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: -200% 50%;
  }
}

.fade-transition {
  opacity: 1;
  visibility: visible;
  transform: translateZ(0);
  transition:
    opacity 0.3s ease-in-out,
    visibility 0.3s ease-in-out;
}

.custom-table {
  width: 85%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
}

.custom-table th,
.custom-table td {
  border: 1px solid #e2e2e2;
  padding: 6px 10px;
}

/* Header specific styles */
.custom-table th {
  background-color: #c6c6cd;
  font-weight: bold;
  text-align: left;
}

/* Remove double borders */
.custom-table th:not(:last-child),
.custom-table td:not(:last-child) {
  border-right: none;
}

.custom-table tr:not(:last-child) td {
  border-bottom: none;
}

/* Top corners */
.custom-table tr:first-child th:first-child {
  border-top-left-radius: 8px;
}

.custom-table tr:first-child th:last-child {
  border-top-right-radius: 8px;
}

/* Bottom corners */
.custom-table tr:last-child td:first-child {
  border-bottom-left-radius: 8px;
}

.custom-table tr:last-child td:last-child {
  border-bottom-right-radius: 8px;
}

.animating-text {
  opacity: 1;
  transition: opacity 0.3s ease-in-out;
}

/* Optional: Add a blinking cursor effect during animation */
.animating-text::after {
  content: "|";
  display: inline-block;
  color: #000;
  animation: blink 1s step-start infinite;
}

@keyframes blink {
  50% {
    opacity: 0;
  }
}
