/* FormContainer Flip Animation Styles */
.formcontainer-flip-wrapper {
  position                  : relative;
  width                     : 100%;
  height                    : 100%;
  perspective               : 1000px;
  overflow                  : hidden;
  border-radius             : 8px;
  box-shadow                : 0 4px 6px rgba(0, 0, 0, 0.1);
  flex                      : 1 1 auto; /* This is the key fix */
  min-height                : 0; /* Allows flexbox to shrink */
}

.formcontainer-flip-inner {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 600ms cubic-bezier(0.4, 0.0, 0.2, 1);
}

.formcontainer-flip-inner.flipped {
  transform: rotateY(180deg);
}

.formcontainer-flip-side {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  border-radius: 8px;
  overflow: hidden;
}

.formcontainer-flip-front {
  z-index: 2;
  background: #ffffff;
}

.formcontainer-flip-back {
  transform: rotateY(180deg);
  background: #f8f9fa;
}

.formcontainer-form-content {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  padding: 10px;
  box-sizing: border-box;
}

/* Loading state animation */
.formcontainer-flip-wrapper.loading .formcontainer-flip-inner {
  animation: pulse 1.5s ease-in-out infinite;
}

@keyframes pulse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
  100% {
    opacity: 1;
  }
}

/* Hover effects */
.formcontainer-flip-wrapper:hover {
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
  transition: box-shadow 0.3s ease;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .formcontainer-flip-wrapper {
    border-radius: 4px;
  }

  .formcontainer-form-content {
    padding: 5px;
  }
}

/* Custom flip animations - alternative styles */
.formcontainer-flip-inner.flip-vertical {
  transition: transform 600ms cubic-bezier(0.4, 0.0, 0.2, 1);
}

.formcontainer-flip-inner.flip-vertical.flipped {
  transform: rotateX(180deg);
}

.formcontainer-flip-inner.flip-diagonal {
  transition: transform 800ms cubic-bezier(0.4, 0.0, 0.2, 1);
}

.formcontainer-flip-inner.flip-diagonal.flipped {
  transform: rotate3d(1, 1, 0, 180deg);
}

/* Slide-in alternative animation */
.formcontainer-slide-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.formcontainer-slide-content {
  position: absolute;
  width: 100%;
  height: 100%;
  transition: transform 500ms cubic-bezier(0.25, 0.8, 0.25, 1);
}

.formcontainer-slide-content.slide-out-left {
  transform: translateX(-100%);
}

.formcontainer-slide-content.slide-out-right {
  transform: translateX(100%);
}

.formcontainer-slide-content.slide-in {
  transform: translateX(0);
}

.formcontainer-flip-wrapper .embedded-form,
.formcontainer-flip-side > * {
    width: 100% !important;
    height: 100% !important;
    min-height: 100%;
    box-sizing: border-box;
}


/* pagecontrol-animations.css */

.animated-pagecontrol {
  perspective       : 1000px;
  overflow          : hidden;
  width             : 100%          !important;
  height            : 100%          !important;
  position          : relative      !important;

}

.flip-container {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 600ms cubic-bezier(0.4, 0.0, 0.2, 1);
}

.flip-container.flipped {
  transform: rotateY(180deg);
}

.flip-side {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.flip-front {
  z-index: 2;
}

.flip-back {
  transform: rotateY(180deg);
}

