/* ============================================================
   Shared audit form — used by Hero and (later) CTA.
   Values verbatim from the source .audit-form / .af-* rules.
   Structure note: source CSS keys the success/error swap off
   `.audit-form.sent form` — i.e. a WRAPPER holding an inner <form>.
   We render exactly that (wrapper .ovs-audit-form > form + success),
   so "sent" hides the fields and shows success as the author intended.
   ============================================================ */

.ovs-audit-form{margin-top:1.9rem;background:var(--ovs-panel);border:1px solid var(--ovs-line);border-radius:var(--ovs-r);padding:1.25rem;max-width:520px;backdrop-filter:blur(6px)}
.ovs-audit-form .ovs-af-title{font-family:var(--ovs-mono);font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;color:var(--ovs-champ);margin-bottom:.9rem;display:flex;align-items:center;gap:.55rem}
.ovs-audit-form .ovs-af-title svg{width:14px;height:14px}
.ovs-audit-form .ovs-af-rows{display:grid;gap:.6rem}
.ovs-audit-form .ovs-af-2col{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.ovs-audit-form .ovs-af-field{position:relative}
.ovs-audit-form .ovs-af-field input{width:100%;background:rgba(6,5,4,.6);border:1px solid var(--ovs-line);border-radius:11px;padding:.8rem .95rem;color:var(--ovs-text);font-family:var(--ovs-body);font-size:.92rem;transition:border-color .2s,box-shadow .2s}
.ovs-audit-form .ovs-af-field input::placeholder{color:rgba(167,157,140,.7)}
.ovs-audit-form .ovs-af-field input:focus{outline:none;border-color:var(--ovs-champ-border);box-shadow:0 0 0 3px rgba(227,201,143,.10)}
.ovs-audit-form .ovs-af-submit{width:100%;justify-content:center;margin-top:.15rem}
.ovs-audit-form .ovs-af-submit[disabled]{opacity:.6;cursor:default}
.ovs-audit-form .ovs-af-note{margin-top:.7rem;font-size:.74rem;color:var(--ovs-muted);line-height:1.5}
.ovs-audit-form .ovs-af-note b{color:var(--ovs-pine);font-weight:600}
.ovs-audit-form .ovs-af-success{display:none;text-align:center;padding:1.4rem .5rem}
.ovs-audit-form .ovs-af-success svg{width:38px;height:38px;color:var(--ovs-pine);margin-bottom:.6rem}
.ovs-audit-form .ovs-af-success h4{font-size:1.02rem;margin-bottom:.3rem}
.ovs-audit-form .ovs-af-success p{font-size:.85rem;color:var(--ovs-muted);line-height:1.55}
.ovs-audit-form.ovs-sent form{display:none}
.ovs-audit-form.ovs-sent .ovs-af-success{display:block}
.ovs-audit-form .ovs-af-error{display:none;margin-top:.55rem;font-size:.78rem;color:var(--ovs-danger)}
.ovs-audit-form.ovs-err .ovs-af-error{display:block}

/* Tabs + textarea — used by the CTA form (audit / inquiry), harmless here. */
.ovs-audit-form .ovs-af-tabs{display:flex;gap:.35rem;margin-bottom:.95rem;background:rgba(6,5,4,.55);border:1px solid var(--ovs-line);border-radius:12px;padding:.3rem}
.ovs-audit-form .ovs-af-tab{flex:1;text-align:center;font-size:.78rem;font-weight:600;padding:.52rem .6rem;border-radius:9px;cursor:pointer;color:var(--ovs-muted);border:1px solid transparent;transition:color .2s,background .2s,border-color .2s;font-family:var(--ovs-body);background:none}
.ovs-audit-form .ovs-af-tab.ovs-on{background:var(--ovs-champ-dim);color:var(--ovs-champ);border-color:var(--ovs-champ-border)}
.ovs-audit-form .ovs-af-field textarea{width:100%;background:rgba(6,5,4,.6);border:1px solid var(--ovs-line);border-radius:11px;padding:.8rem .95rem;color:var(--ovs-text);font-family:var(--ovs-body);font-size:.92rem;min-height:96px;resize:vertical;transition:border-color .2s,box-shadow .2s}
.ovs-audit-form .ovs-af-field textarea::placeholder{color:rgba(167,157,140,.7)}
.ovs-audit-form .ovs-af-field textarea:focus{outline:none;border-color:var(--ovs-champ-border);box-shadow:0 0 0 3px rgba(227,201,143,.10)}
.ovs-audit-form .ovs-af-msg{display:none}
.ovs-audit-form form[data-mode="inquiry"] .ovs-af-msg{display:block}

/* Source breakpoint — verbatim */
@media(max-width:560px){
  .ovs-audit-form .ovs-af-2col{grid-template-columns:1fr}
}
