/* Modulo [insert_link_form]. Usa i colori del tema (--pls-*) se ci sono, altrimenti i propri. */
.tsl-ref-form {
  --tsl-ref-brand: var(--pls-brand, #e51737);
  --tsl-ref-ink: var(--pls-ink, #111);
  --tsl-ref-ink2: var(--pls-ink2, #555);
  --tsl-ref-bg: var(--pls-bg, #fff);
  --tsl-ref-border: var(--pls-border, #d7d9de);
  --tsl-ref-radius: var(--pls-radius-sm, 8px);
  margin: 12px 0 24px;
}
.tsl-ref-form__label {
  display: block;
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 600;
  color: var(--tsl-ref-ink);
}
.tsl-ref-form__row {
  display: flex;
  gap: 10px;
}
.tsl-ref-form__input {
  flex: 1;
  min-width: 0;
  box-sizing: border-box;
  padding: 12px 14px;
  font: inherit;
  font-size: 16px; /* sotto i 16px Safari su iPhone ingrandisce la pagina al tocco */
  color: var(--tsl-ref-ink);
  background: var(--tsl-ref-bg);
  border: 1.5px solid var(--tsl-ref-border);
  border-radius: var(--tsl-ref-radius);
  transition: border-color .15s, box-shadow .15s;
}
.tsl-ref-form__input:focus {
  outline: none;
  border-color: var(--tsl-ref-brand);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tsl-ref-brand) 15%, transparent);
}
.tsl-ref-form__input[aria-invalid="true"] {
  border-color: #c81e1e;
}
.tsl-ref-form__btn {
  flex: 0 0 auto;
  padding: 12px 22px;
  font: inherit;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  background: var(--tsl-ref-brand);
  border: 0;
  border-radius: var(--tsl-ref-radius);
  cursor: pointer;
  transition: filter .15s;
}
.tsl-ref-form__btn:hover { filter: brightness(.92); }
.tsl-ref-form__btn:focus-visible { outline: 2px solid var(--tsl-ref-brand); outline-offset: 3px; }
.tsl-ref-form__btn[disabled] { opacity: .6; cursor: wait; }
.tsl-ref-form__hp {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.tsl-ref-form__msg {
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: var(--tsl-ref-radius);
  border-left: 4px solid var(--tsl-ref-border);
  background: color-mix(in srgb, var(--tsl-ref-border) 22%, transparent);
  font-size: 15px;
  line-height: 1.55;
  color: var(--tsl-ref-ink);
}
.tsl-ref-form__msg p { margin: 0; }
.tsl-ref-form__msg p + p { margin-top: 6px; }
.tsl-ref-form__link { font-size: 14px; color: var(--tsl-ref-ink2); overflow-wrap: anywhere; }
.tsl-ref-form__msg.is-added { border-left-color: #2e9e4f; }
.tsl-ref-form__msg.is-approved,
.tsl-ref-form__msg.is-pending { border-left-color: #e08a00; }
.tsl-ref-form__msg.is-invalid,
.tsl-ref-form__msg.is-rate,
.tsl-ref-form__msg.is-error { border-left-color: #c81e1e; }
.tsl-ref-form.is-sent .tsl-ref-form__row,
.tsl-ref-form.is-sent .tsl-ref-form__label { display: none; }
@media (max-width: 520px) {
  .tsl-ref-form__row { flex-direction: column; }
}
