/* Content with line breaks */
.content-text {
  white-space: pre-line;
}

body {
  font-family: 'Poppins', sans-serif;
  overflow-x: hidden;
}

.bg-pattern {
  background-image: url('../images/banner.png');
  background-size: cover;
  background-position: center;
  opacity: 0.05;
}

[x-cloak] {
  display: none !important;
}

/* Prevent content shift during transitions */
.tab-content-wrapper {
  position: relative;
  min-height: 600px;
}

.tab-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
}

/* Smooth transitions */
.smooth-transition {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Fade and scale animations */
.fade-enter {
  opacity: 0;
  transform: scale(0.98);
}

.fade-enter-active {
  transition: opacity 0.3s ease-out, transform 0.3s ease-out;
}

.fade-enter-to {
  opacity: 1;
  transform: scale(1);
}

.fade-leave {
  opacity: 1;
  transform: scale(1);
}

.fade-leave-active {
  transition: opacity 0.2s ease-in, transform 0.2s ease-in;
}

.fade-leave-to {
  opacity: 0;
  transform: scale(0.98);
}

/* Hide native scrollbar */
html {
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

html::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

body {
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

body::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

/* Modal animations */
.modal-backdrop {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

/* Map iframe */
.map-iframe {
  border: 0;
}

/* Post image aspect ratio */
.post-image-container {
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

