.wcfpm-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px;
  z-index: 99999;
}
.wcfpm-overlay.is-open{ display:flex; }

.wcfpm-modal{
  width: min(520px, 100%);
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
  padding: 18px 18px 14px;
  position: relative;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
.wcfpm-close{
  position:absolute;
  top:10px; right:10px;
  border:0; background:transparent;
  font-size:22px; line-height:1;
  cursor:pointer;
}
.wcfpm-title{ margin:0 0 10px; font-size:18px; }
.wcfpm-body{ margin:8px 0 12px; }
.wcfpm-row{ display:flex; align-items:center; gap:10px; }
.wcfpm-input{
  flex:1 1 auto;
  font-size:16px;
  padding:10px 12px;
  border:1px solid #d7d7d7;
  border-radius:10px;
  outline:none;
}
.wcfpm-input:focus{ border-color:#999; }
.wcfpm-currency{ font-size:16px; opacity:.8; }
.wcfpm-min{ margin-top:8px; font-size:13px; opacity:.8; }
.wcfpm-error{ margin-top:10px; font-size:13px; color:#b00020; }
.wcfpm-actions{ display:flex; justify-content:flex-end; gap:10px; }
.wcfpm-actions button{
  border-radius:10px;
  padding:10px 12px;
  cursor:pointer;
  border:1px solid #d7d7d7;
  background:#f6f6f6;
}
.wcfpm-actions .wcfpm-confirm{
  background:#111; color:#fff; border-color:#111;
}
.wcfpm-actions .wcfpm-confirm:disabled{ opacity:.6; cursor:not-allowed; }
