/**
 * JetFormBuilder Submit Enhancement Styles
 *
 * Styles for the submit button enhancement that provides
 * visual feedback during form submission.
 *
 * @package Tecology
 * @version 1.0.0
 */

/* Submitting button state */
.tecology-submitting {
  pointer-events: none !important;
  cursor: not-allowed !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Button content container */
.tecology-button-content {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
}

/* Success content container */
.tecology-success-content {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
}

/* Spinner container */
.tecology-spinner {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
}

/* CSS Spinner */
.tecology-loader {
  width: 16px !important;
  height: 16px !important;
  border: 2px solid currentColor !important;
  border-bottom-color: transparent !important;
  border-radius: 50% !important;
  display: inline-block !important;
  box-sizing: border-box !important;
  animation: tecology-rotation 1s linear infinite !important;
}

@keyframes tecology-rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Checkmark container */
.tecology-checkmark {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 22px !important;
  flex-shrink: 0 !important;
}

/* Checkmark SVG */
.tecology-checkmark svg {
  width: 22px !important;
  height: 22px !important;
  color: currentColor !important;
  vertical-align: middle !important;
}

/* Checkmark path - always visible */
.tecology-checkmark-path {
  stroke: currentColor !important;
  fill: none !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  stroke-width: 4 !important;
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  .tecology-spinner svg animate {
    animation-duration: 3s !important;
  }

  .tecology-checkmark-path {
    animation: none !important;
    stroke-dashoffset: 0 !important;
  }
}

/* Focus management for accessibility */
.tecology-submitting:focus {
  outline: 2px solid var(--wp--preset--color--accent, #0073aa) !important;
  outline-offset: 2px !important;
}

/* Ensure button maintains its size during submission */
.tecology-submitting {
  min-width: var(--button-min-width, auto) !important;
  min-height: var(--button-min-height, auto) !important;
}

/* Override JetFormBuilder's built-in form fading during submission */
.jet-form-builder.is-loading {
  opacity: 1 !important;
}
