.ejr-pay-flow .ejr-pay-form {
  display: grid;
  gap: 9px;
  margin-top: 24px;
}
.ejr-pay-flow .ejr-pay-form > label:not(.ejr-pay-consent) {
  color: #173a55;
  font-size: 15px;
  font-weight: 700;
  margin-top: 11px;
}
.ejr-pay-flow .ejr-pay-form > input:not([type="hidden"]),
.ejr-pay-flow .ejr-pay-form > select {
  display: block;
  width: 100%;
  max-width: none;
  min-height: 49px;
  padding: 11px 13px;
  color: #1d3345;
  background: #fff;
  border: 1px solid #9cb5c8;
  border-radius: 6px;
  font: inherit;
  box-sizing: border-box;
}
.ejr-pay-flow .ejr-pay-form > input:focus-visible,
.ejr-pay-flow .ejr-pay-form > select:focus-visible {
  outline: 3px solid #a5dcff;
  outline-offset: 2px;
}
.ejr-pay-flow .ejr-pay-consent {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  font-size: 14px;
  line-height: 1.5;
  margin-top: 16px;
}
.ejr-pay-flow .ejr-pay-consent input { flex: 0 0 auto; margin-top: 4px; }
.ejr-pay-flow .ejr-payment-note { font-size: 14px; color: #536b7f; line-height: 1.55; }
.ejr-pay-flow .ejr-payment-success { padding: 13px 16px; color: #175d42; background: #eaf8ef; border-radius: 6px; }
.ejr-pay-flow .ejr-pay-bank { margin-top: 29px; padding: 22px; border: 1px solid #d4e6ee; border-radius: 9px; background: #f7fbfd; }
.ejr-pay-flow .ejr-pay-bank h3 { margin-top: 0; }
.ejr-pay-flow .ejr-pay-bank dl { margin: 16px 0 0; }
.ejr-pay-flow .ejr-pay-bank dl > div { display: grid; grid-template-columns: minmax(120px, 1fr) minmax(0, 2fr); gap: 12px; padding: 10px 0; border-top: 1px solid #dbe6ee; overflow-wrap: anywhere; }
.ejr-pay-flow .ejr-pay-bank dt { color: #576c7d; }
.ejr-pay-flow .ejr-pay-bank dd { margin: 0; font-weight: 700; }
.ejr-pay-flow .ejr-pay-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.ejr-pay-flow .ejr-payment-choices { display: flex; flex-wrap: wrap; gap: 12px; }
@media (max-width: 600px) {
  .ejr-pay-flow .ejr-pay-bank { padding: 16px; }
  .ejr-pay-flow .ejr-pay-bank dl > div { grid-template-columns: 1fr; gap: 2px; }
}

/* Single-page checkout: keep the default French Qonto button one click away. */
.ejr-pay-direct-widget [hidden] { display: none !important; }
.ejr-pay-direct .ejr-payment-choices { display: flex; flex-wrap: wrap; gap: 12px; }
.ejr-pay-direct .ejr-pay-field-label { display: block; margin: 18px 0 8px; font-weight: 700; color: #173a55; }
.ejr-pay-direct .ejr-pay-direct-country,
.ejr-pay-direct .ejr-pay-direct-other-input {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  min-height: 49px;
  padding: 11px 13px;
  border: 1px solid #9cb5c8;
  border-radius: 6px;
  background: #fff;
  color: #1d3345;
  font: inherit;
}
.ejr-pay-direct .ejr-pay-direct-confirm { display: flex; gap: 10px; align-items: flex-start; margin: 16px 0; font-size: 14px; line-height: 1.5; }
.ejr-pay-direct .ejr-pay-direct-confirm input { flex: 0 0 auto; margin-top: 4px; }
.ejr-pay-direct .ejr-pay-terms { display:flex; gap:11px; align-items:flex-start; margin:20px 0 10px; padding:14px; border:1px solid #c9dce9; border-radius:6px; background:#f7fbfd; font-size:14px; line-height:1.6; }
.ejr-pay-direct .ejr-pay-terms input { flex:0 0 auto; width:18px; height:18px; margin:3px 0 0; accent-color:#0877c9; }
.ejr-pay-direct .ejr-pay-terms a { color:#0066ad; text-decoration:underline; }
.ejr-pay-direct .ejr-pay-terms input:focus-visible { outline:3px solid #e5ac38; outline-offset:3px; }
.ejr-pay-direct .ejr-payment-note { margin: 14px 0; font-size: 14px; color: #536b7f; line-height: 1.55; }
.ejr-pay-direct .ejr-pay-bank { margin-top: 26px; padding: 22px; border: 1px solid #d4e6ee; border-radius: 9px; background: #f7fbfd; }
.ejr-pay-direct .ejr-pay-bank h3 { margin-top: 0; }
.ejr-pay-direct .ejr-pay-bank dl > div { display: grid; grid-template-columns: minmax(120px, 1fr) minmax(0, 2fr); gap: 12px; padding: 10px 0; border-top: 1px solid #dbe6ee; overflow-wrap: anywhere; }
.ejr-pay-direct .ejr-pay-bank dt { color: #576c7d; }
.ejr-pay-direct .ejr-pay-bank dd { margin: 0; font-weight: 700; }
@media (max-width: 600px) {
  .ejr-pay-direct .ejr-pay-bank { padding: 16px; }
  .ejr-pay-direct .ejr-pay-bank dl > div { grid-template-columns: 1fr; gap: 2px; }
}
