/* Live request states, scoped to the existing VIOLETTA lead dialog. */
.lead-dialog .lead-website-field { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.lead-dialog .lead-feedback { margin:20px 0; padding:16px 18px; border:1px solid #c9b89a; border-radius:14px; background:#f4efe5; color:#403629; font-size:14px; line-height:1.55; }
.lead-dialog .lead-feedback[hidden] { display:none; }
.lead-dialog .lead-feedback[data-state="error"] { border-color:#ba8d7d; background:#f7efeb; color:#693f32; }
.lead-dialog .lead-feedback p { margin:0; }
.lead-dialog .lead-feedback a { display:inline-block; margin-top:9px; color:inherit; text-underline-offset:4px; font-weight:600; }
.lead-dialog #lead-submit { min-width:210px; justify-content:center; gap:16px; }
.lead-dialog #lead-submit-label { font-size:inherit; line-height:inherit; transform:none; }
.lead-dialog #lead-submit:disabled { cursor:wait; opacity:.7; transform:none; }
.lead-dialog #lead-submit[data-pending="true"] .lead-submit-icon { width:16px; height:16px; overflow:hidden; font-size:0; border:1.5px solid currentColor; border-right-color:transparent; border-radius:50%; animation:lead-submit-spin .8s linear infinite; }
.lead-dialog .lead-contact-fallback { margin:18px 0 0; font-size:12px; line-height:1.7; color:#70695e; }
.lead-dialog .lead-contact-fallback a { color:inherit; white-space:nowrap; text-underline-offset:4px; }
.lead-dialog #channel-hint { margin-top:10px; line-height:1.55; }
.lead-dialog .channel-options { grid-template-columns:repeat(3,minmax(0,1fr)); }
.lead-dialog .lead-received-mark { display:grid; place-items:center; width:54px; height:54px; margin:0 0 20px; border:1px solid #b59a62; border-radius:50%; color:#92763e; font-size:26px; }
.lead-dialog .lead-review-note { overflow-wrap:anywhere; }
.lead-dialog .lead-form-actions [data-lead-back]:disabled { opacity:.45; cursor:wait; }
.lead-dialog [data-lead-reset] { margin-top:16px; }
@keyframes lead-submit-spin { to { transform:rotate(360deg); } }
@media (max-width:600px) {
  .lead-dialog .form-row input { font-size:16px; }
  .lead-dialog #lead-submit { min-width:0; flex:1; }
  .lead-dialog .lead-contact-fallback { text-align:center; }
  .lead-dialog .lead-form-actions { gap:16px; }
  .lead-dialog .channel-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lead-dialog .channel-options label:last-child { grid-column:1/-1; }
}
@media (prefers-reduced-motion:reduce) {
  .lead-dialog #lead-submit[data-pending="true"] .lead-submit-icon { animation:none; }
}
