body {
  margin: 0;
  padding: 0;
}

.splash-screen {
  position: absolute;
  z-index: 1000;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-family: Helvetica, 'sans-serif';
  background: linear-gradient(135deg, #2d5016 0%, #4a7c2a 25%, #6ba644 50%, #8bc34a 75%, #a5d668 100%);
  background-size: 400% 400%;
  animation: gradientShift 8s ease infinite;
  color: #ffffff;
  line-height: 1;
  font-size: 14px;
  font-weight: 400;
}

@keyframes gradientShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

.splash-screen span {
  color: #ffffff;
  transition: none !important;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.splash-screen img {
  margin-left: calc(100vw - 100%);
  margin-bottom: 30px;
  max-height: 220px !important;
  max-width: 500px !important;
  height: auto !important;
  width: auto !important;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
}

[data-bs-theme="dark"] .splash-screen {
  background: linear-gradient(135deg, #1a3a0d 0%, #2d5016 25%, #4a7c2a 50%, #6ba644 75%, #8bc34a 100%);
  background-size: 400% 400%;
  animation: gradientShift 8s ease infinite;
  color: #ffffff;
}

[data-bs-theme="dark"] .splash-screen span {
  color: #ffffff;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}


#root {
  opacity: 1;
  transition: opacity 1s ease-in-out;
}
