/* Hide Scrollbar */
html,
body {
  overflow-x: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar {
  display: none;
}

/* Offset for fixed header (h-16 / 72px) */
body {
  padding-top: 62px;
}

/* Small cards: shadow + hover animation */
@keyframes cardEnter {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

[class*="rounded-xl"][class*="border"]:not([class*="overflow-hidden"]):not(.absolute),
[class*="rounded-2xl"][class*="border"]:not([class*="overflow-hidden"]):not(.absolute) {
  box-shadow: 0 8px 22px rgba(7, 11, 17, 0.5);
  animation: cardEnter 0.55s ease both;
  transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s ease,
    border-color 0.28s ease;
}

[class*="rounded-xl"][class*="border"]:not([class*="overflow-hidden"]):not(.absolute):hover,
[class*="rounded-2xl"][class*="border"]:not([class*="overflow-hidden"]):not(.absolute):hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(34, 211, 238, 0.16), 0 10px 24px rgba(0, 0, 0, 0.4);
}

@media (prefers-reduced-motion: reduce) {
  [class*="rounded-xl"][class*="border"]:not([class*="overflow-hidden"]):not(.absolute),
  [class*="rounded-2xl"][class*="border"]:not([class*="overflow-hidden"]):not(.absolute) {
    animation: none;
    transition: none;
  }

  [class*="rounded-xl"][class*="border"]:not([class*="overflow-hidden"]):not(.absolute):hover,
  [class*="rounded-2xl"][class*="border"]:not([class*="overflow-hidden"]):not(.absolute):hover {
    transform: none;
  }
}
