/* Tutte le regole sono scoped alla radice del componente. */
.convienequi-widget {
  --cq-blue: #173b67;
  --cq-ink: #192434;
  --cq-muted: #5b6878;
  --cq-border: #d7dee8;
  --cq-background: #f6f8fb;
  box-sizing: border-box;
  max-width: 34rem;
  padding: 1.5rem;
  border: 1px solid var(--cq-border);
  border-radius: 0.75rem;
  color: var(--cq-ink);
  background: var(--cq-background);
  font: 1rem/1.45 system-ui, sans-serif;
}
.convienequi-widget *,
.convienequi-widget *::before,
.convienequi-widget *::after { box-sizing: inherit; }
.convienequi-widget h2,
.convienequi-widget h3,
.convienequi-widget p { margin-top: 0; }
.convienequi-widget__note,
.convienequi-widget__status { color: var(--cq-muted); }
.convienequi-widget__form { display: grid; gap: 1rem; }
.convienequi-widget__field { display: grid; gap: 0.35rem; font-weight: 600; }
.convienequi-widget__field input,
.convienequi-widget__field select {
  width: 100%;
  min-height: 2.75rem;
  padding: 0.5rem 0.65rem;
  border: 1px solid var(--cq-border);
  border-radius: 0.35rem;
  background: #fff;
  color: inherit;
  font: inherit;
}
.convienequi-widget__radios { margin: 0; padding: 0; border: 0; }
.convienequi-widget__radios legend { margin-bottom: 0.35rem; font-weight: 600; }
.convienequi-widget__radios label { display: inline-flex; gap: 0.35rem; margin-right: 1rem; align-items: center; font-weight: 400; }
.convienequi-widget button { min-height: 2.75rem; border: 0; border-radius: 0.35rem; padding: 0.5rem 1rem; color: #fff; background: var(--cq-blue); font: inherit; font-weight: 700; cursor: pointer; }
.convienequi-widget__status[data-state="error"] { color: #a32626; }
.convienequi-widget__result { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--cq-border); }
.convienequi-widget__payment { display: block; margin-bottom: 1rem; color: var(--cq-blue); font-size: 1.7rem; }
.convienequi-widget__details { display: grid; grid-template-columns: 1fr auto; gap: 0.35rem 1rem; margin: 0; }
.convienequi-widget__details dt { color: var(--cq-muted); }
.convienequi-widget__details dd { margin: 0; font-weight: 600; }
.convienequi-widget__warnings { margin: 1rem 0 0; padding: 0.75rem 1rem 0.75rem 2rem; border-radius: 0.35rem; color: #684b00; background: #fff5d6; }
.convienequi-lead-form {
  max-width: 34rem;
  margin-top: 1.5rem;
  padding: 1.5rem;
  border: 1px solid var(--cq-border, #d7dee8);
  border-radius: 0.75rem;
  color: var(--cq-ink, #192434);
  background: var(--cq-background, #f6f8fb);
  font: 1rem/1.45 system-ui, sans-serif;
}
.convienequi-lead-form__form { display: grid; gap: 1rem; }
.convienequi-lead-form__field { display: grid; gap: 0.35rem; font-weight: 600; }
.convienequi-lead-form__field input { width: 100%; min-height: 2.75rem; padding: 0.5rem 0.65rem; border: 1px solid var(--cq-border, #d7dee8); border-radius: 0.35rem; background: #fff; color: inherit; font: inherit; }
.convienequi-lead-form__consents { display: grid; gap: 0.75rem; margin: 0; padding: 0; border: 0; }
.convienequi-lead-form__consents legend { margin-bottom: 0.35rem; font-weight: 700; }
.convienequi-lead-form__consent { display: flex; gap: 0.5rem; align-items: flex-start; font-size: 0.9rem; }
.convienequi-lead-form__privacy { margin: 0; font-size: 0.9rem; }
.convienequi-lead-form button { min-height: 2.75rem; border: 0; border-radius: 0.35rem; padding: 0.5rem 1rem; color: #fff; background: var(--cq-blue, #173b67); font: inherit; font-weight: 700; cursor: pointer; }
.convienequi-lead-form button:disabled { cursor: wait; opacity: 0.6; }
.convienequi-lead-form__status[data-state="error"] { color: #a32626; }
.convienequi-lead-form__status[data-state="demo"] { color: #684b00; }
.convienequi-lead-form__status[data-state="forwarded-unconfirmed"],
.convienequi-lead-form__status[data-state="received"],
.convienequi-lead-form__status[data-state="dispatching"],
.convienequi-lead-form__status[data-state="unconfirmed"] { color: #684b00; }
