.livi-form-status {
  margin: 0 0 16px;
  padding: 14px 16px;
}

.livi-form-error {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: rgba(198, 40, 40, 0.12) !important;
  border: 1px solid #e57373 !important;
}

.livi-form-error p {
  color: #b71c1c !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
  margin: 0 !important;
}

.module.form .moze-formerror,
.module.form [aria-invalid="true"] {
  border-color: #e57373 !important;
}

.module.form.livi-form-sent .thankYou,
.module.form .thankYou.livi-thankyou {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 0 8px !important;
  padding: 22px 20px !important;
  background: rgba(76, 175, 80, 0.12) !important;
  border: 1px solid #81c784 !important;
  border-left: 4px solid #43a047 !important;
  box-shadow: none !important;
  text-align: left !important;
  color: #1b5e20 !important;
}

.module.form .thankYou p,
.module.form .livi-thankyou__title {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #1b5e20 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
}

/* Reply hint under form — Mono used negative margin that overlaps the button */
.module.form + .module.text {
  margin-top: 18px !important;
  clear: both;
  position: relative;
  z-index: 0;
}

.module.form .field:has([data-livi-submit]),
.module.form .field:has(input.button),
.module.form .field:has([type="submit"]) {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.module.form.livi-form-sent + .module.text {
  display: none !important;
}

/*
 * Mini email+Send row (cc_miniform*).
 * Submit is converted to type=button for AJAX; Mono styles target input[type=submit]
 * with width:100%, which collapses .fields to a sliver in the flex row.
 */
@media only screen and (min-width: 768px) {
  form.module.form.cc_miniform,
  form.module.form.cc_miniform2,
  form.module.form.cc_miniform3 {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
  }

  form.module.form.cc_miniform > .fields,
  form.module.form.cc_miniform2 > .fields,
  form.module.form.cc_miniform3 > .fields {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  form.module.form.cc_miniform > .fields .field,
  form.module.form.cc_miniform2 > .fields .field,
  form.module.form.cc_miniform3 > .fields .field {
    width: 100% !important;
    margin: 0 !important;
  }

  form.module.form.cc_miniform > .fields input[type="text"],
  form.module.form.cc_miniform2 > .fields input[type="text"],
  form.module.form.cc_miniform3 > .fields input[type="text"],
  form.module.form.cc_miniform > .fields input[type="email"],
  form.module.form.cc_miniform2 > .fields input[type="email"],
  form.module.form.cc_miniform3 > .fields input[type="email"] {
    width: 100% !important;
    display: block !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
  }

  form.module.form.cc_miniform > input.button,
  form.module.form.cc_miniform2 > input.button,
  form.module.form.cc_miniform3 > input.button,
  form.module.form.cc_miniform > [data-livi-submit],
  form.module.form.cc_miniform2 > [data-livi-submit],
  form.module.form.cc_miniform3 > [data-livi-submit],
  form.module.form.cc_miniform > input[type="submit"],
  form.module.form.cc_miniform2 > input[type="submit"],
  form.module.form.cc_miniform3 > input[type="submit"] {
    display: inline-block !important;
    width: auto !important;
    min-width: 7rem !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    align-self: stretch !important;
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
  }

  form.module.form.cc_miniform > .optins:not(:has(*)),
  form.module.form.cc_miniform2 > .optins:not(:has(*)),
  form.module.form.cc_miniform3 > .optins:not(:has(*)),
  form.module.form.cc_miniform > .h-captcha,
  form.module.form.cc_miniform2 > .h-captcha,
  form.module.form.cc_miniform3 > .h-captcha,
  form.module.form.cc_miniform > .hcaptcha-badge,
  form.module.form.cc_miniform2 > .hcaptcha-badge,
  form.module.form.cc_miniform3 > .hcaptcha-badge {
    display: none !important;
  }

  form.module.form.cc_miniform > [id^="errors_"],
  form.module.form.cc_miniform2 > [id^="errors_"],
  form.module.form.cc_miniform3 > [id^="errors_"] {
    flex: 1 0 100% !important;
    order: 20 !important;
    width: 100% !important;
  }

  form.module.form.cc_miniform > [id^="errors_"]:not(.livi-form-status),
  form.module.form.cc_miniform2 > [id^="errors_"]:not(.livi-form-status),
  form.module.form.cc_miniform3 > [id^="errors_"]:not(.livi-form-status) {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
}
