/* Global Mobile Responsiveness Fixes */

/* Prevent horizontal scroll on entire page */
html,
body {
  max-width: 100vw;
  overflow-x: hidden;
}

/* Ensure all images don't overflow */
img {
  max-width: 100%;
  height: auto;
}

/* Prevent text from causing overflow */
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
a,
div {
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* Prevent tables from causing horizontal scroll */
table {
  width: 100% !important;
  max-width: 100% !important;
}

/* Fix for long email addresses and URLs */
a[href^="mailto:"],
a[href^="tel:"] {
  word-break: break-all;
}

/* Mobile-specific fixes */
@media (max-width: 640px) {

  /* Reduce base padding on mobile */
  .px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  /* Ensure cards don't overflow */
  .rounded-2xl,
  .rounded-xl {
    max-width: 100%;
  }
}

/* Custom animations for modals */
@keyframes scaleIn {
  from {
    transform: scale(0.95);
    opacity: 0;
  }

  to {
    transform: scale(1);
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.animate-scaleIn {
  animation: scaleIn 0.2s ease-out forwards;
}

.animate-fadeIn {
  animation: fadeIn 0.3s ease-out forwards;
}