html {
  scroll-behavior: smooth;
}

img {
  object-fit: cover;
}

@layer utilities {
  .content-auto {
    content-visibility: auto;
  }

  .text-shadow {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  }

  .text-shadow-lg {
    text-shadow: 0 4px 8px rgba(0, 0, 0, 0.25);
  }

  .bg-blur {
    backdrop-filter: blur(8px);
  }

  .scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  .scrollbar-hide::-webkit-scrollbar {
    display: none;
  }

  .game-card-hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }

  .game-card-hover:hover {
    transform: translateY(-8px);
  }

  .dark .game-card-hover:hover {
    box-shadow: 0 20px 25px -5px rgba(99, 102, 241, 0.1), 0 10px 10px -5px rgba(99, 102, 241, 0.04);
  }

  #navbar {
    position: sticky !important;
    top: 0;
    bottom: auto;
  }
}

@media (max-width: 768px) {
  body {
    max-width: 100vw;
    overflow-x: hidden;
    box-sizing: border-box;
  }
}