/* =========================================================================
   Avesa Forms — frontend (inline page forms)
   The Avesa Coming Soon theme provides the bulk of the form/button styling
   in its own assets/styles.css. The rules below are a self-contained
   fallback so the plugin still renders sensibly under any other theme.
   Variables resolve from the theme when present.
   ========================================================================= */

:root{
  --avesa-blue:    var(--blue,    #7a96bd);
  --avesa-violet:  var(--violet,  #8b8bb8);
  --avesa-green:   var(--green,   #94b89e);
  --avesa-mauve:   var(--mauve,   #a587a8);
  --avesa-ink:     var(--ink,     #2f3033);
  --avesa-ink-2:   var(--ink-2,   #5a5c61);
  --avesa-ink-3:   var(--ink-3,   #8d8f95);
  --avesa-rule:    var(--rule,    #e4e3e0);
  --avesa-bg:      var(--bg,      #fafaf7);
  --avesa-bg-2:    var(--bg-2,    #f3f2ee);
}

/* Honeypot — visually hidden but reachable to bots */
.avesa-hp{ position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }

/* Server-side error banner */
.avesa-form .avesa-error{
  background:#fef0f2;
  color:#7a1c2a;
  padding:10px 14px;
  border-radius:6px;
  font-size:13px;
  margin-bottom:16px;
  letter-spacing:0;
  text-transform:none;
  font-family:inherit;
  font-weight:400;
}

/* Invalid-field highlight */
.avesa-form input.avesa-invalid,
.avesa-form select.avesa-invalid,
.avesa-form textarea.avesa-invalid{
  border-color:#c64a5e;
  box-shadow:0 0 0 3px color-mix(in srgb, #c64a5e 18%, transparent);
}

/* Success state (rendered into .form-wrap on submit) */
.avesa-success{
  text-align:center;
  padding:64px 16px;
  max-width:480px;
  margin:0 auto;
}
.avesa-success .check-mark{
  width:64px; height:64px; border-radius:50%;
  background:var(--avesa-green); color:#fff;
  display:flex; align-items:center; justify-content:center;
  margin:0 auto 20px; font-size:32px;
}
.avesa-success h3{
  font-size:24px; font-weight:600; margin:0 0 10px;
  letter-spacing:-0.02em;
  color:var(--avesa-ink);
}
.avesa-success p{
  color:var(--avesa-ink-2);
  font-size:15px; line-height:1.6;
  margin:0 0 24px;
}
