/* Form Builder Frontend Styles */
.fb-form-wrapper {
  max-width: 1020px;
  margin: 0 auto;
}

.fb-field {
  margin-bottom: 18px;
}

.fb-field label {
  display: block;
  font-size: 16px;
  line-height: 35px;
  font-weight: 400;
  color: #555;
}

.fb-field input[type="text"],
.fb-field input[type="email"],
.fb-field input[type="tel"],
.fb-field textarea,
.fb-field select {
  background: #fbfbfb;
  width: 100%;
  color: #555;
  padding: 0 20px;
  border: 1px solid #e2e2e2;
  border-radius: 0;
  font-size: 16px;
  height: 50px;
  letter-spacing: 0.04em;
  box-sizing: border-box;
  -webkit-border-radius: 0;
  -webkit-appearance: none;
}
.fb-field textarea {
  min-height: 200px;
  padding-top: 12px;
  padding-bottom: 12px;
}

.fb-field input:focus,
.fb-field textarea:focus,
.fb-field select:focus {
  outline: none;
  box-shadow: none;
}

.fb-field .required {
  color: #d63638;
}

.fb-submit-wrapper {
  margin-top: 30px;
}

.fb-submit-btn {
  width: auto;
  min-width: 360px;
  padding: 0px 30px;
  min-height: 50px;
  margin: auto;
}

.fb-submit-btn:disabled {
  background: #ccc;
  cursor: not-allowed;
}

.fb-messages {
  margin-top: 15px;
  padding: 10px;
  border-radius: 4px;
}

.fb-message-success {
  background: #d1e7dd;
  color: #0f5132;
  border: 1px solid #badbcc;
}

.fb-message-error {
  background: #f8d7da;
  color: #721c24;
  border: 1px solid #f5c6cb;
}

.fb-field-error input,
.fb-field-error textarea,
.fb-field-error select {
  border-color: #d63638;
}

.fb-error-message {
  color: #d63638;
  font-size: 12px;
  margin-top: 5px;
  display: block;
}

/* reCAPTCHA Styles */
.fb-recaptcha-wrapper {
  margin: 20px 0;
}

.fb-recaptcha-wrapper .g-recaptcha {
  transform: scale(0.9);
  transform-origin: 0 0;
}
/* File Upload Styles */
.file-requirements {
  margin-top: 5px;
  color: #666;
  font-size: 12px;
}

.file-requirements small {
  opacity: 0.8;
}

/* File Type Checkboxes in Builder */
.file-type-checkboxes {
  border: 1px solid #dcdcde;
  border-radius: 4px;
  padding: 10px;
  background: #f9f9f9;
  max-height: 150px;
  overflow-y: auto;
}

/* Make reCAPTCHA responsive */
@media (max-width: 480px) {
  .fb-recaptcha-wrapper .g-recaptcha {
    transform: scale(0.8);
  }
}
