/* =========================================================
   WIRELESS ACTIVATION — Formulaires (devis, réparation,
   contact). Repris 1:1 de la maquette.
   ========================================================= */

.wa-form{display:grid;gap:18px}
.wa-field{display:grid;gap:.45rem}
.wa-field label{font-family:var(--font-display);font-weight:600;font-size:.9rem;color:var(--wa-ink)}
.wa-field label span.req{color:var(--wa-orange)}
.wa-hint{font-size:.82rem;color:var(--wa-grey-2);font-weight:400;display:block}
.wa-field input,.wa-field select,.wa-field textarea{width:100%;padding:.85rem 1rem;border:1.5px solid var(--wa-line);border-radius:var(--radius-sm);background:#fff;outline:none;transition:border-color .2s var(--ease),box-shadow .2s var(--ease);font-family:var(--font-body)}
.wa-field textarea{min-height:130px;resize:vertical}
.wa-field input:focus,.wa-field select:focus,.wa-field textarea:focus{border-color:var(--wa-orange);box-shadow:0 0 0 4px rgba(242,101,34,.12)}
.wa-field input[aria-invalid="true"],.wa-field select[aria-invalid="true"],.wa-field textarea[aria-invalid="true"]{border-color:#D93025}
.wa-error{font-size:.82rem;color:#D93025;display:none;margin:0}
.wa-error.is-visible{display:block}
.wa-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}

.wa-drop{border:1.5px dashed var(--wa-line);border-radius:var(--radius);padding:26px;text-align:center;cursor:pointer;background:var(--wa-surface);transition:border-color .2s var(--ease),background .2s var(--ease)}
.wa-drop:hover,.wa-drop.is-hot{border-color:var(--wa-orange);background:var(--wa-orange-soft)}
.wa-drop svg{width:26px;height:26px;color:var(--wa-orange);margin-bottom:8px;display:inline-block}
.wa-drop p{margin:0;font-size:.9rem;color:var(--wa-grey)}
.wa-drop strong{color:var(--wa-ink);font-family:var(--font-display)}
.wa-drop input{display:none}
.wa-files{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0 0;padding:0;list-style:none}
.wa-files li{display:flex;align-items:center;gap:.4rem;background:#fff;border:1px solid var(--wa-line);border-radius:100px;padding:.35rem .8rem;font-size:.82rem}

.wa-consent{display:flex;gap:.7rem;align-items:flex-start;font-size:.88rem;color:var(--wa-grey)}
.wa-consent input{margin-top:.25rem;width:18px;height:18px;accent-color:var(--wa-orange);flex:none}
.wa-consent label{font-family:var(--font-body);font-weight:400;color:var(--wa-grey);font-size:.88rem}

.wa-form-ok{background:var(--wa-green-soft);border:1px solid #CBE9B4;border-radius:var(--radius);padding:20px 22px}
.wa-form-ok h3{color:#2F6110;margin-bottom:.3em;font-size:1.05rem}
.wa-form-ok p{margin:0;color:#3E7B18;font-size:.94rem}
.wa-form-error{background:#FDECEA;border:1px solid #F5C6C0;border-radius:var(--radius);padding:16px 18px;color:#B3261E;font-size:.92rem;margin-bottom:18px}

.wa-form-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(28px,4vw,56px);align-items:start}
@media (max-width:940px){ .wa-form-layout{grid-template-columns:1fr} }
@media (max-width:640px){ .wa-row{grid-template-columns:1fr} }

/* ---------- Sélecteur de marque (réparation) ---------- */
.wa-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.wa-pick{border:1.5px solid var(--wa-line);background:#fff;border-radius:var(--radius);padding:16px 14px;cursor:pointer;text-align:left;display:grid;gap:4px;transition:all .22s var(--ease)}
.wa-pick:hover{border-color:var(--wa-ink)}
.wa-pick.is-active{border-color:var(--wa-orange);background:var(--wa-orange-soft)}
.wa-pick b{font-family:var(--font-display);font-size:.96rem;color:var(--wa-ink)}
.wa-pick span{font-size:.82rem;color:var(--wa-grey)}
