/*
 * Hand-written front styles: replacements for React/Next components that had no CSS of their
 * own (next/image fill, framer-motion hover, react-toastify) and small helpers.
 * Frozen front/ styles are in globals.css and modules/*.css.
 */

/* next/image `fill` */
.img-fill {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* framer-motion whileHover={{ scale: 1.05 }} */
.hover-scale {
  transition: transform 0.3s ease;
}
.hover-scale:hover {
  transform: scale(1.05);
}

[hidden] {
  display: none !important;
}

body.modal-open {
  overflow: hidden;
}

.inline-form {
  display: inline;
}

.link-button {
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

button.is-loading {
  opacity: 0.7;
  cursor: progress;
}

/* react-toastify replacement (top-right, 4 s) */
.toasts {
  position: fixed;
  top: 1rem;
  right: 1rem;
  z-index: 10000;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-width: min(22rem, calc(100vw - 2rem));
}
.toast {
  padding: 0.875rem 1rem;
  border-radius: 0.5rem;
  background: #fff;
  color: #121212;
  font-size: 0.9375rem;
  line-height: 1.4;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  border-left: 4px solid #469a58;
  cursor: pointer;
}
.toast-error {
  border-left-color: #e74c3c;
}
.toast-info {
  border-left-color: #3498db;
}

.not-ported code {
  display: inline-block;
  margin-top: 0.5rem;
  opacity: 0.7;
}

.logout-form {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  padding-top: 8rem;
  color: #fff;
}

/* PageBanner: react-slick → Swiper. Same rules as the slick ones in modules/Publish.css. */
.Publish_pagePublish__autoplay_banner .Publish_slider .swiper-slide {
  pointer-events: none;
}
.Publish_pagePublish__autoplay_banner .Publish_slider .swiper-slide-active,
.Publish_pagePublish__autoplay_banner .Publish_slider .swiper-slide:only-child {
  pointer-events: auto;
}
.Publish_pagePublish__autoplay_banner .Publish_slider .swiper-wrapper,
.Publish_pagePublish__autoplay_banner .Publish_slider .swiper-slide {
  height: 100%;
}
