.rggwp-adapter {
  width:100%;
  max-width:1040px;
  margin:0 auto;
  font-family:"Ubuntu", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.rggwp-checkout[hidden] {
  display:none !important;
}

.rggwp-checkout {
  width:100%;
  padding:clamp(18px, 2.7vw, 30px);
  color:#000000;
  background:#ffffff;
  border:1px solid #fe884f;
  border-radius:28px;
  box-sizing:border-box;
  scroll-margin-top:96px;
}

.rggwp-checkout *,
.rggwp-checkout *::before,
.rggwp-checkout *::after {
  box-sizing:border-box;
}

.rggwp-checkout__header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:10px;
}

.rggwp-checkout__eyebrow {
  display:inline-flex;
  width:fit-content;
  margin:0 0 8px;
  padding:6px 11px;
  color:#fe884f;
  background:#ffffff;
  border:1px solid #fe884f;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.07em;
  line-height:1.2;
  text-transform:uppercase;
}

.rggwp-checkout__title {
  margin:0;
  color:#000000;
  font-size:clamp(25px, 3vw, 34px);
  line-height:1.08;
  letter-spacing:-.035em;
}

.rggwp-checkout__notice p {
  margin:9px 0 0;
  color:#000000;
  line-height:1.5;
}


.rggwp-checkout__close {
  width:42px;
  height:42px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  padding:0;
  color:#000000;
  background:#ffffff;
  border:1px solid #000000;
  border-radius:50%;
  font:inherit;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}

.rggwp-checkout__close:hover,
.rggwp-checkout__close:focus-visible {
  color:#ffffff;
  background:#fe884f;
  border-color:#fe884f;
}

.rggwp-checkout__close:focus-visible,
.rggwp-checkout__title:focus-visible {
  outline:3px solid #fe884f;
  outline-offset:4px;
}

.rggwp-checkout__give {
  width:100%;
  margin-top:6px;
  overflow:hidden;
}

.rggwp-checkout__give .give-embed-form-wrapper,
.rggwp-checkout__give iframe[name="give-embed-form"] {
  width:100% !important;
  max-width:100% !important;
}

.rggwp-checkout__notice {
  margin-top:14px;
  padding:14px 16px;
  background:#ffffff;
  border:1px solid #fe884f;
  border-radius:16px;
}


@media (max-width:760px) {
  .rggwp-checkout {
    padding:18px 14px;
    border-radius:22px;
  }

  .rggwp-checkout__header {
    gap:12px;
  }
}

/* v1.0.2: keep the GiveWP checkout in the original Rocket Generation card. */
.rggwp-adapter--inline-replacement {
  width:100%;
  max-width:none;
  margin:0;
}

.rggwp-adapter--inline-replacement .rggwp-checkout {
  padding:0;
  border:0;
  border-radius:0;
}

.rggwp-adapter--inline-replacement .rggwp-checkout__give {
  overflow:hidden;
}


/* v1.0.6: compact the in-card checkout without making the payment flow cramped. */
.rggwp-adapter--inline-replacement .rggwp-checkout__header {
  margin-bottom:4px;
}

.rggwp-adapter--inline-replacement .rggwp-checkout__give {
  margin-top:0;
}

#rocket-generation-page .donation-widget.rggwp-checkout-active {
  padding:clamp(14px, 1.55vw, 20px);
}

#rocket-generation-page .support-card.rggwp-checkout-active {
  gap:clamp(18px, 2.4vw, 34px);
  padding:clamp(22px, 3vw, 34px);
}

@media (max-width:760px) {
  #rocket-generation-page .donation-widget.rggwp-checkout-active {
    padding:14px;
  }

  #rocket-generation-page .support-card.rggwp-checkout-active {
    padding:18px;
    gap:18px;
  }
}


/* v1.0.7: branded success confirmation overlay. */
body.rggwp-success-open {
  overflow:hidden;
}

.rggwp-success-modal[hidden] {
  display:none !important;
}

.rggwp-success-modal {
  position:fixed;
  inset:0;
  z-index:100000;
  display:grid;
  place-items:center;
  padding:20px;
}

.rggwp-success-modal__backdrop {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  background:rgba(0,0,0,.42);
  backdrop-filter:blur(4px);
  cursor:pointer;
}

.rggwp-success-modal__dialog {
  position:relative;
  width:min(92vw, 500px);
  padding:28px;
  color:#000000;
  background:#ffffff;
  border:1px solid #fe884f;
  border-radius:28px;
  box-shadow:0 28px 70px rgba(0,0,0,.24);
}

.rggwp-success-modal__close {
  position:absolute;
  top:14px;
  right:14px;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  padding:0;
  color:#000000;
  background:#ffffff;
  border:1px solid #000000;
  border-radius:50%;
  font:inherit;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}

.rggwp-success-modal__close:hover,
.rggwp-success-modal__close:focus-visible {
  color:#ffffff;
  background:#fe884f;
  border-color:#fe884f;
}

.rggwp-success-modal__eyebrow {
  width:fit-content;
  margin:0 0 9px;
  padding:6px 11px;
  color:#fe884f;
  border:1px solid #fe884f;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.2;
  text-transform:uppercase;
}

.rggwp-success-modal__title {
  max-width:360px;
  margin:0 56px 10px 0;
  color:#000000;
  font-size:clamp(26px, 4vw, 34px);
  line-height:1.08;
  letter-spacing:-.035em;
}

.rggwp-success-modal__text {
  margin:0 0 16px;
  color:#000000;
  font-size:16px;
  line-height:1.48;
}

.rggwp-success-modal__amount-card {
  display:grid;
  gap:5px;
  margin-bottom:16px;
  padding:15px 16px;
  background:#ffffff;
  border:1px solid #fe884f;
  border-radius:18px;
}

.rggwp-success-modal__amount-card span {
  color:#000000;
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.rggwp-success-modal__amount-card strong {
  color:#fe884f;
  font-size:24px;
  line-height:1.2;
}

.rggwp-success-modal__ok {
  width:100%;
  min-height:56px;
  padding:13px 20px;
  color:#ffffff;
  background:#fe884f;
  border:0;
  border-radius:999px;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}

.rggwp-success-modal__ok:hover,
.rggwp-success-modal__ok:focus-visible {
  background:#fe884f;
  outline:3px solid #fe884f;
  outline-offset:3px;
}

@media (max-width:560px) {
  .rggwp-success-modal {
    padding:14px;
  }

  .rggwp-success-modal__dialog {
    width:100%;
    padding:22px;
    border-radius:22px;
  }
}
