body {
  font-family: 'Roboto', sans-serif;
  display: flex;
  justify-content: center;
  align-items: center;
  background: linear-gradient(135deg, #5b21b6, #7c3aed, #c026d3, #2563eb, #0891b2, #5b21b6, #7c3aed);
  background-size: 1000% 1000%;
  min-height: 100vh;
  margin: 0;
  animation: gradientShift 30s ease infinite;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

@keyframes gradientShift {
  0% { background-position: 0% 50%; }
  0.83% { background-position: 1.67% 51.67%; }
  1.67% { background-position: 3.33% 53.33%; }
  2.5% { background-position: 5% 55%; }
  3.33% { background-position: 6.67% 56.67%; }
  4.17% { background-position: 8.33% 58.33%; }
  5% { background-position: 10% 60%; }
  5.83% { background-position: 11.67% 61.67%; }
  6.67% { background-position: 13.33% 63.33%; }
  7.5% { background-position: 15% 65%; }
  8.33% { background-position: 16.67% 66.67%; }
  9.17% { background-position: 18.33% 68.33%; }
  10% { background-position: 20% 70%; }
  10.83% { background-position: 21.67% 71.67%; }
  11.67% { background-position: 23.33% 73.33%; }
  12.5% { background-position: 25% 75%; }
  13.33% { background-position: 26.67% 76.67%; }
  14.17% { background-position: 28.33% 78.33%; }
  15% { background-position: 30% 80%; }
  15.83% { background-position: 31.67% 81.67%; }
  16.67% { background-position: 33.33% 83.33%; }
  17.5% { background-position: 35% 85%; }
  18.33% { background-position: 36.67% 86.67%; }
  19.17% { background-position: 38.33% 88.33%; }
  20% { background-position: 40% 90%; }
  20.83% { background-position: 41.67% 91.67%; }
  21.67% { background-position: 43.33% 93.33%; }
  22.5% { background-position: 45% 95%; }
  23.33% { background-position: 46.67% 96.67%; }
  24.17% { background-position: 48.33% 98.33%; }
  25% { background-position: 50% 100%; }
  25.83% { background-position: 51.67% 98.33%; }
  26.67% { background-position: 53.33% 96.67%; }
  27.5% { background-position: 55% 95%; }
  28.33% { background-position: 56.67% 93.33%; }
  29.17% { background-position: 58.33% 91.67%; }
  30% { background-position: 60% 90%; }
  30.83% { background-position: 61.67% 88.33%; }
  31.67% { background-position: 63.33% 86.67%; }
  32.5% { background-position: 65% 85%; }
  33.33% { background-position: 66.67% 83.33%; }
  34.17% { background-position: 68.33% 81.67%; }
  35% { background-position: 70% 80%; }
  35.83% { background-position: 71.67% 78.33%; }
  36.67% { background-position: 73.33% 76.67%; }
  37.5% { background-position: 75% 75%; }
  38.33% { background-position: 76.67% 73.33%; }
  39.17% { background-position: 78.33% 71.67%; }
  40% { background-position: 80% 70%; }
  40.83% { background-position: 81.67% 68.33%; }
  41.67% { background-position: 83.33% 66.67%; }
  42.5% { background-position: 85% 65%; }
  43.33% { background-position: 86.67% 63.33%; }
  44.17% { background-position: 88.33% 61.67%; }
  45% { background-position: 90% 60%; }
  45.83% { background-position: 91.67% 58.33%; }
  46.67% { background-position: 93.33% 56.67%; }
  47.5% { background-position: 95% 55%; }
  48.33% { background-position: 96.67% 53.33%; }
  49.17% { background-position: 98.33% 51.67%; }
  50% { background-position: 100% 50%; }
  50.83% { background-position: 98.33% 51.67%; }
  51.67% { background-position: 96.67% 53.33%; }
  52.5% { background-position: 95% 55%; }
  53.33% { background-position: 93.33% 56.67%; }
  54.17% { background-position: 91.67% 58.33%; }
  55% { background-position: 90% 60%; }
  55.83% { background-position: 88.33% 61.67%; }
  56.67% { background-position: 86.67% 63.33%; }
  57.5% { background-position: 85% 65%; }
  58.33% { background-position: 83.33% 66.67%; }
  59.17% { background-position: 81.67% 68.33%; }
  60% { background-position: 80% 70%; }
  60.83% { background-position: 78.33% 71.67%; }
  61.67% { background-position: 76.67% 73.33%; }
  62.5% { background-position: 75% 75%; }
  63.33% { background-position: 73.33% 76.67%; }
  64.17% { background-position: 71.67% 78.33%; }
  65% { background-position: 70% 80%; }
  65.83% { background-position: 68.33% 81.67%; }
  66.67% { background-position: 66.67% 83.33%; }
  67.5% { background-position: 65% 85%; }
  68.33% { background-position: 63.33% 86.67%; }
  69.17% { background-position: 61.67% 88.33%; }
  70% { background-position: 60% 90%; }
  70.83% { background-position: 58.33% 91.67%; }
  71.67% { background-position: 56.67% 93.33%; }
  72.5% { background-position: 55% 95%; }
  73.33% { background-position: 53.33% 96.67%; }
  74.17% { background-position: 51.67% 98.33%; }
  75% { background-position: 50% 100%; }
  75.83% { background-position: 48.33% 98.33%; }
  76.67% { background-position: 46.67% 96.67%; }
  77.5% { background-position: 45% 95%; }
  78.33% { background-position: 43.33% 93.33%; }
  79.17% { background-position: 41.67% 91.67%; }
  80% { background-position: 40% 90%; }
  80.83% { background-position: 38.33% 88.33%; }
  81.67% { background-position: 36.67% 86.67%; }
  82.5% { background-position: 35% 85%; }
  83.33% { background-position: 33.33% 83.33%; }
  84.17% { background-position: 31.67% 81.67%; }
  85% { background-position: 30% 80%; }
  85.83% { background-position: 28.33% 78.33%; }
  86.67% { background-position: 26.67% 76.67%; }
  87.5% { background-position: 25% 75%; }
  88.33% { background-position: 23.33% 73.33%; }
  89.17% { background-position: 21.67% 71.67%; }
  90% { background-position: 20% 70%; }
  90.83% { background-position: 18.33% 68.33%; }
  91.67% { background-position: 16.67% 66.67%; }
  92.5% { background-position: 15% 65%; }
  93.33% { background-position: 13.33% 63.33%; }
  94.17% { background-position: 11.67% 61.67%; }
  95% { background-position: 10% 60%; }
  95.83% { background-position: 8.33% 58.33%; }
  96.67% { background-position: 6.67% 56.67%; }
  97.5% { background-position: 5% 55%; }
  98.33% { background-position: 3.33% 53.33%; }
  99.17% { background-position: 1.67% 51.67%; }
  100% { background-position: 0% 50%; }
}

.main-menu {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
  border-radius: 18px;
  padding: 2.5rem 2.5rem 2rem 2.5rem;
  min-width: 320px;
  text-align: center;
  animation: fadeIn 0.6s ease-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.main-menu h1 {
  font-size: 2rem;
  background: linear-gradient(45deg, #fff, #f0f0f0);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
}

.main-menu nav {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
}

.main-menu-btn {
  display: block;
  width: 100%;
  max-width: 400px;
  padding: 1.1rem;
  font-size: 1.15rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
  text-decoration: none;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 8px;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(5px);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.main-menu-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
  transition: left 0.5s;
}

.main-menu-btn:hover::before {
  left: 100%;
}

.main-menu-btn:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
  background: rgba(255, 255, 255, 0.25);
  border-color: rgba(255, 255, 255, 0.5);
}

.main-menu-btn:active {
  transform: translateY(-2px);
}

.visitor-counter {
  margin-top: 2rem;
  text-align: center;
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.71rem;
  animation: fadeIn 0.6s ease-out 0.3s both;
}

.visitor-counter strong {
  color: #fff;
  font-weight: 700;
  display: inline-block;
}

@keyframes countPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

.website-url {
  margin-top: 1.5rem;
  text-align: center;
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.95rem;
  animation: fadeIn 0.6s ease-out 0.4s both;
}

.website-url strong {
  color: #fff;
  font-weight: 700;
  display: inline-block;
  animation: countPulse 5s ease-in-out infinite;
  letter-spacing: 1px;
}

@media (max-width: 600px) {
  .main-menu h1 {
    font-size: 1.5rem;
  }
}
