/* Дополнительные стили для xs breakpoint, которые могут отсутствовать */
@media (min-width: 480px) {
  .xs\:pb-12 {
    padding-bottom: 3rem;
  }
  .xs\:relative {
    position: relative;
  }
  .xs\:bottom-auto {
    bottom: auto;
  }
  .xs\:mb-0 {
    margin-bottom: 0;
  }
  .xs\:mt-10 {
    margin-top: 2.5rem;
  }
}

/* Flex grow для lg */
@media (min-width: 1024px) {
  .lg\:flex-grow {
    flex-grow: 1;
  }
  .lg\:absolute {
    position: absolute;
  }
  .lg\:bottom-0 {
    bottom: 0;
  }
}

/* Кастомные стили для текста */
.custom-text-styles p {
  margin-bottom: 1rem;
}

.custom-text-styles p:last-child {
  margin-bottom: 0;
}

/* prose стили для rich text */
.prose {
  max-width: 65ch;
}

.prose p {
  margin-bottom: 1rem;
}

.prose ul {
  list-style-type: disc;
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}

.prose ol {
  list-style-type: decimal;
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}

.prose li {
  margin-bottom: 0.5rem;
}

.map-container {
  height: 50vh;
}
.map-iframe {
  width: 100%;
  height: 50vh;
  border: 0;
}
@media (min-width: 1024px) {
  .map-container {
    height: auto;
  }
  .map-iframe {
    height: 100%;
  }
}

@keyframes spinSlow {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
.animate-spinSlow {
  animation: spinSlow 12s linear infinite;
}

.preview-block-active {
  position: relative;
}
.preview-block-active::before {
  content: '';
  position: absolute;
  inset: 4px;
  border: 3px solid #22c55e;
  border-radius: 8px;
  pointer-events: none;
  z-index: 9999;
}

.admin-wrapper {
  min-height: 100vh;
}
