/* Contact Form 7 — match Juhe Steel form UI */

.juhe-cf7 .wpcf7-form {
  margin: 0;
}

.juhe-cf7 .wpcf7-form-control-wrap {
  display: block;
}

.juhe-cf7 .wpcf7-not-valid-tip {
  color: #c2410c;
  font-size: 13px;
  margin-top: 6px;
}

.juhe-cf7 .wpcf7-response-output {
  margin: 16px 0 0;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid rgba(12, 21, 36, 0.1);
  font-size: 14px;
}

.juhe-cf7 .wpcf7 form.sent .wpcf7-response-output {
  border-color: rgba(34, 197, 94, 0.35);
  background: rgba(34, 197, 94, 0.08);
}

.juhe-cf7 .wpcf7 form.invalid .wpcf7-response-output,
.juhe-cf7 .wpcf7 form.failed .wpcf7-response-output {
  border-color: rgba(234, 88, 12, 0.35);
  background: rgba(234, 88, 12, 0.08);
}

.juhe-cf7 .wpcf7-spinner {
  margin-left: 12px;
}

.juhe-cf7-missing {
  padding: 24px;
  border-radius: 16px;
  background: rgba(234, 88, 12, 0.08);
  color: #334155;
}

.inquiry-form-card.juhe-cf7 .form-card-head {
  margin-bottom: 0;
}

.form-card.juhe-cf7-wrap {
  display: block;
}

.inquiry-form-fields .form-field--full {
  grid-column: 1 / -1;
}

.juhe-cf7 .wpcf7-form {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.juhe-cf7 .wpcf7-form > .inquiry-form-fields {
  width: 100%;
}

.juhe-cf7 .form-field {
  margin-bottom: 0;
}

.juhe-cf7 .form-field .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.juhe-cf7 .form-field input,
.juhe-cf7 .form-field textarea {
  width: 100%;
  max-width: 100%;
}

.juhe-cf7 .form-submit {
  width: 100%;
  margin-top: 4px;
}

/* Hide default CF7 response output — replaced by toast */
.juhe-cf7 .wpcf7-response-output {
  display: none !important;
}

/* Toast notifications */
.juhe-toast-container {
  position: fixed;
  top: 24px;
  right: 24px;
  z-index: 10000;
  display: flex;
  flex-direction: column;
  gap: 12px;
  pointer-events: none;
  max-width: calc(100vw - 48px);
}

.juhe-toast {
  pointer-events: auto;
  min-width: 280px;
  max-width: 420px;
  padding: 14px 20px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  background: rgba(12, 21, 36, .94);
  box-shadow: 0 14px 36px rgba(8, 16, 28, .28);
  opacity: 0;
  transform: translateX(120%);
  transition: opacity .3s cubic-bezier(0.16, 1, 0.3, 1), transform .3s cubic-bezier(0.16, 1, 0.3, 1);
  backdrop-filter: blur(10px);
  border-left: 4px solid var(--orange, #EA580C);
}

.juhe-toast--show {
  opacity: 1;
  transform: translateX(0);
}

.juhe-toast--success {
  background: linear-gradient(135deg, rgba(20, 83, 45, .96), rgba(21, 94, 50, .96));
  border-left-color: #22c55e;
}

.juhe-toast--error {
  background: linear-gradient(135deg, rgba(127, 29, 29, .96), rgba(120, 20, 20, .96));
  border-left-color: #ef4444;
}

@media (max-width: 640px) {
  .juhe-toast-container {
    top: 16px;
    right: 16px;
    left: 16px;
    max-width: none;
  }
  .juhe-toast {
    min-width: 0;
    max-width: none;
    width: 100%;
  }
}
