.pair-form {
  display: grid;
  gap: 10px;
  margin-top: 20px;
  text-align: left;
}

.pair-form label {
  color: #3a3a3c;
  font-size: 12px;
  font-weight: 600;
}

.pair-form input {
  min-height: 44px;
  border: 1px solid #c7c7cc;
  border-radius: 10px;
  padding: 9px 12px;
  font-size: 18px;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.pair-form button {
  min-height: 44px;
  border: 0;
  border-radius: 10px;
  background: #0a84ff;
  color: #fff;
  font-weight: 650;
  cursor: pointer;
}

.pair-form button:disabled {
  background: #8e8e93;
  cursor: wait;
}

#pairMessage.pending {
  color: #8a5200;
  background: #fff7d6;
  border: 1px solid #f0c750;
  border-radius: 10px;
  padding: 12px;
}

#pairMessage.success {
  color: #176b35;
}

/* Rappel des engagements du prestataire avant la connexion et à chaque ouverture. */
.commitments-card {
  width: min(460px, 100%);
}

.commitments-gate h2 {
  margin: 18px 0 10px;
  font-size: 20px;
}

.locked-card .commitments-lead {
  margin: 0 0 12px;
  color: var(--ink);
  font-weight: 600;
  text-align: left;
}

.commitments-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left;
}

.commitments-list li {
  position: relative;
  padding-left: 20px;
  font-size: 15px;
  line-height: 1.45;
}

.commitments-list li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: .55em;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--blue);
}

.locked-card .commitments-note {
  margin-top: 12px;
  font-size: 12px;
}

/* Saisie du code à la main, repliée : le lien envoyé suffit (retour de Sophia, 14/10/2026). */
.pair-manual {
  margin-top: 18px;
  text-align: left;
}

.pair-manual summary {
  color: #0a5bd6;
  font-weight: 600;
  cursor: pointer;
}

.pair-help {
  margin: 0;
  color: #3a3a3c;
  font-size: 13px;
}
