/* EJABH Donation UI 1.1 — resilient overrides loaded after the legacy layer. */
:root {
  --ejabh-surface: #ffffff;
  --ejabh-soft: #f3f9f7;
  --ejabh-line: #dcebe7;
  --ejabh-ink: #173f38;
  --ejabh-muted: #6f8580;
  --ejabh-shadow: 0 22px 60px rgba(11, 91, 78, .13);
}

.ejabh-du-goal,
.ejabh-du-donors {
  border: 1px solid rgba(15, 118, 110, .12) !important;
  border-radius: 28px !important;
  box-shadow: var(--ejabh-shadow) !important;
}

.ejabh-du-heading {
  min-height: 112px;
  padding: 24px 25px;
  background: #0f766e;
  background: linear-gradient(125deg, #075f59 0%, var(--ejabh-primary, #0f766e) 52%, #169d8e 100%);
}

.ejabh-du-heading::after {
  position: absolute;
  inset: auto -45px -90px auto;
  width: 185px;
  height: 185px;
  content: "";
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 50%;
  box-shadow: 0 0 0 28px rgba(255, 255, 255, .035);
  pointer-events: none;
}

.ejabh-du-heading h3 {
  font-size: clamp(20px, 2.2vw, 26px) !important;
  letter-spacing: -.02em !important;
}

.ejabh-du-heading p {
  margin-top: 3px !important;
  font-size: clamp(12px, 1.45vw, 16px) !important;
}

.ejabh-du-live {
  z-index: 2;
  padding: 8px 12px;
  white-space: nowrap;
}

.ejabh-du-numbers {
  gap: 12px;
  padding: 24px 23px 17px;
}

.ejabh-du-numbers > div {
  padding: 16px 10px;
  background: linear-gradient(180deg, #fff, #f4faf8);
  border-color: var(--ejabh-line);
  border-radius: 17px;
  box-shadow: 0 7px 18px rgba(19, 78, 68, .045);
}

.ejabh-du-numbers span {
  font-size: 12px;
}

.ejabh-du-numbers strong,
.ejabh-du-numbers strong .woocommerce-Price-amount,
.ejabh-du-numbers strong bdi {
  display: inline-flex !important;
  align-items: baseline;
  justify-content: center;
  gap: 4px;
  color: var(--ejabh-primary, #0f766e) !important;
  font-size: clamp(15px, 2vw, 20px) !important;
  line-height: 1.35 !important;
  white-space: nowrap;
}

.ejabh-du-track {
  height: 24px;
  margin: 4px 23px 20px;
  overflow: hidden;
  background: #e8f1ef;
  border: 1px solid #dce9e6;
}

.ejabh-du-track > span {
  background: linear-gradient(90deg, #08766a, #18ac98 72%, var(--ejabh-accent, #d4af37));
  box-shadow: 0 0 18px rgba(24, 172, 152, .38);
}

.ejabh-du-track > b {
  color: #16473f;
  font-size: 12px;
  mix-blend-mode: normal;
}

.ejabh-du-cta {
  min-height: 59px !important;
  letter-spacing: 0 !important;
  background: linear-gradient(110deg, #087268, #14aa98) !important;
  box-shadow: 0 13px 28px rgba(9, 120, 106, .25) !important;
}

.ejabh-du-style-glass {
  background: linear-gradient(145deg, rgba(255, 255, 255, .88), rgba(239, 251, 248, .72)) !important;
  border-color: rgba(255, 255, 255, .9) !important;
  box-shadow: 0 26px 70px rgba(8, 91, 78, .16) !important;
  backdrop-filter: blur(20px);
}

.ejabh-du-style-glass .ejabh-du-heading {
  background: linear-gradient(125deg, rgba(5, 92, 84, .96), rgba(16, 157, 140, .88));
}

.ejabh-du-style-glass .ejabh-du-numbers > div,
.ejabh-du-style-glass .ejabh-du-donor.is-latest {
  background: rgba(255, 255, 255, .72);
  border-color: rgba(255, 255, 255, .95);
  backdrop-filter: blur(12px);
}

.ejabh-du-style-minimal {
  border-width: 0 0 3px !important;
  border-color: var(--ejabh-primary, #0f766e) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

.ejabh-du-style-minimal .ejabh-du-heading {
  min-height: 90px;
  color: var(--ejabh-ink);
  background: #fff;
  border-bottom: 1px solid var(--ejabh-line);
}

.ejabh-du-style-minimal .ejabh-du-heading h3 {
  color: var(--ejabh-ink) !important;
}

.ejabh-du-style-minimal .ejabh-du-heading p {
  color: var(--ejabh-muted) !important;
}

.ejabh-du-style-minimal .ejabh-du-icon,
.ejabh-du-style-minimal .ejabh-du-live {
  color: var(--ejabh-primary, #0f766e);
  background: var(--ejabh-soft);
  border-color: var(--ejabh-line);
}

/* Donation Platform form — the original button text is never hidden. */
.ejabh-du-form {
  --form-primary: var(--ejabh-primary, #0f766e);
  width: 100%;
  color: var(--ejabh-ink);
  font-family: Cairo, Tajawal, Arial, sans-serif;
}

.ejabh-du-form .wcdp-variation-heading,
.ejabh-du-form .wcdp_variation_heading,
.ejabh-du-form .wcdp-heading,
.ejabh-du-form legend {
  margin: 0 0 16px !important;
  color: var(--ejabh-ink) !important;
  font-size: clamp(20px, 2.2vw, 27px) !important;
  font-weight: 900 !important;
  line-height: 1.45 !important;
  text-align: start !important;
}

.ejabh-du-form .wcdp_amount {
  gap: 11px !important;
  padding: 17px !important;
  background: linear-gradient(145deg, #f8fcfb, #eff7f5) !important;
  border: 1px solid var(--ejabh-line) !important;
  border-radius: 22px !important;
  box-shadow: 0 12px 34px rgba(11, 91, 78, .08) !important;
}

.ejabh-du-form .wcdp-button-label,
.ejabh-du-form .wcdp_label_custom_amount {
  min-height: 62px !important;
  color: #173f38 !important;
  background: #fff !important;
  border: 1px solid #d7e6e2 !important;
  border-radius: 15px !important;
  box-shadow: 0 5px 14px rgba(15, 79, 68, .04) !important;
  font-size: 20px !important;
  font-weight: 800 !important;
}

.ejabh-du-form .wcdp-button-label:hover,
.ejabh-du-form .wcdp_label_custom_amount:hover {
  border-color: var(--form-primary) !important;
  box-shadow: 0 9px 19px rgba(15, 118, 110, .12) !important;
  transform: translateY(-1px);
}

.ejabh-du-form .wcdp_amount input[type="radio"]:checked + .wcdp-button-label,
.ejabh-du-form .wcdp_amount input[type="radio"]:checked + .wcdp_label_custom_amount {
  color: #fff !important;
  background: linear-gradient(135deg, #096e65, #139d8e) !important;
  border-color: transparent !important;
  box-shadow: 0 10px 22px rgba(10, 126, 112, .22) !important;
}

.ejabh-du-form .wcdp_amount input[type="radio"]:checked + .wcdp-button-label *,
.ejabh-du-form .wcdp_amount input[type="radio"]:checked + .wcdp_label_custom_amount * {
  color: #fff !important;
}

.ejabh-du-form .wcdp-button,
.ejabh-du-form button.wcdp-button,
.ejabh-du-form .single_add_to_cart_button,
.ejabh-du-form button[type="submit"] {
  display: flex !important;
  width: 100% !important;
  min-height: 60px !important;
  margin-top: 20px !important;
  padding: 15px 24px !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  color: #fff !important;
  background: linear-gradient(110deg, #087268, #14aa98) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: 0 14px 29px rgba(8, 114, 104, .24) !important;
  font-family: inherit !important;
  font-size: 19px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.ejabh-du-form .wcdp-button::after,
.ejabh-du-form .single_add_to_cart_button::after {
  display: none !important;
  content: none !important;
}

.ejabh-du-form .wcdp-button > *,
.ejabh-du-form .single_add_to_cart_button > * {
  opacity: 1 !important;
  visibility: visible !important;
  font-size: inherit !important;
}

/* Custom amount must stay readable when "Other" is selected. */
.ejabh-du-form .wcdp_label_custom_amount,
.ejabh-du-form .wcdp_amount input[type="radio"]:checked + .wcdp_label_custom_amount {
  color: var(--ejabh-ink) !important;
  background: #fff !important;
  border: 2px solid var(--form-primary) !important;
}

.ejabh-du-form .wcdp_label_custom_amount *,
.ejabh-du-form .wcdp_amount input[type="radio"]:checked + .wcdp_label_custom_amount *,
.ejabh-du-form .wcdp_donation_amount_field,
.ejabh-du-form input.wcdp_donation_amount_field {
  color: #173f38 !important;
  background: #fff !important;
  caret-color: var(--form-primary) !important;
  -webkit-text-fill-color: #173f38 !important;
  opacity: 1 !important;
}

.ejabh-du-form .wcdp_donation_amount_field::placeholder {
  color: #70847f !important;
  -webkit-text-fill-color: #70847f !important;
  opacity: 1 !important;
}

html body .ejabh-du-form .wcdp_amount input[type="radio"]:checked + .wcdp_label_custom_amount .wcdp_donation_amount_field,
html body .ejabh-du-form .wcdp_amount input[type="radio"]:checked + .wcdp_label_custom_amount .woocommerce-Price-currencySymbol {
  color: #173f38 !important;
  background: #fff !important;
  -webkit-text-fill-color: #173f38 !important;
}

/* Remove the original plugin check/selection badge that overlaps the amount. */
html body .ejabh-du-form .wcdp-button-label::before,
html body .ejabh-du-form .wcdp-button-label::after,
html body .ejabh-du-form .wcdp_label_custom_amount::before,
html body .ejabh-du-form .wcdp_label_custom_amount::after {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  content: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body .ejabh-du-form .wcdp_amount input[type="radio"] {
  position: absolute !important;
  width: 1px !important;
  min-width: 1px !important;
  max-width: 1px !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  opacity: 0 !important;
}

html body .ejabh-du-form .wcdp-button-label > i,
html body .ejabh-du-form .wcdp-button-label > svg,
html body .ejabh-du-form .wcdp-button-label > .check,
html body .ejabh-du-form .wcdp-button-label > .checked,
html body .ejabh-du-form .wcdp-button-label > .checkmark,
html body .ejabh-du-form .wcdp-button-label > .wcdp-check,
html body .ejabh-du-form .wcdp-button-label > [class*="check"],
html body .ejabh-du-form .wcdp-button-label > [class*="selected"] {
  display: none !important;
}

html body .ejabh-du-form .wcdp-button-label .woocommerce-Price-amount,
html body .ejabh-du-form .wcdp-button-label .woocommerce-Price-amount *,
html body .ejabh-du-form .wcdp-button-label bdi {
  position: static !important;
  z-index: 2 !important;
  color: inherit !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

html body .ejabh-du-form .wcdp_cu_field {
  display: flex !important;
  width: 100% !important;
  min-height: 56px !important;
  padding: 0 18px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  color: #173f38 !important;
  background: #fff !important;
}

html body .ejabh-du-form .wcdp_cu_field .woocommerce-Price-currencySymbol {
  position: static !important;
  flex: 0 0 auto !important;
  color: #173f38 !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  -webkit-text-fill-color: #173f38 !important;
}

html body .ejabh-du-form input.wcdp_donation_amount_field {
  width: min(180px, 100%) !important;
  min-width: 0 !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 6px 10px !important;
  color: #173f38 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 8px !important;
  outline: 0 !important;
  box-shadow: none !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-align: center !important;
  appearance: textfield !important;
  -moz-appearance: textfield !important;
  -webkit-text-fill-color: #173f38 !important;
}

html body .ejabh-du-form input.wcdp_donation_amount_field::-webkit-inner-spin-button,
html body .ejabh-du-form input.wcdp_donation_amount_field::-webkit-outer-spin-button {
  margin: 0 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

/* Elementor donation buttons. */
.ejabh-du-button-widget {
  display: flex;
  align-items: center;
}

.ejabh-du-standalone-button {
  display: inline-flex;
  min-width: 170px;
  min-height: 56px;
  padding: 14px 24px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  color: var(--ejabh-button-color, #fff) !important;
  background: var(--ejabh-button-bg, #0f766e) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--ejabh-button-bg, #0f766e), transparent 72%) !important;
  font-family: var(--ejabh-button-font, Cairo, Tajawal, Arial, sans-serif) !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  cursor: pointer;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.ejabh-du-standalone-button:hover {
  color: var(--ejabh-button-color, #fff) !important;
  background: var(--ejabh-button-hover, #14a996) !important;
  transform: translateY(-2px);
}

.ejabh-du-standalone-button.is-sticky {
  position: fixed !important;
  top: var(--ejabh-button-offset, 45%) !important;
  z-index: 99980 !important;
  min-width: 0;
  min-height: 52px;
  padding: 12px 17px;
  writing-mode: vertical-rl;
  transform: translateY(-50%);
  border-radius: 16px 0 0 16px !important;
}

.ejabh-du-standalone-button.is-sticky:hover {
  transform: translateY(-50%) translateX(-3px);
}

.ejabh-du-standalone-button.is-sticky.side-right {
  right: 0 !important;
}

.ejabh-du-standalone-button.is-sticky.side-left {
  left: 0 !important;
  writing-mode: vertical-lr;
  border-radius: 0 16px 16px 0 !important;
}

.ejabh-du-standalone-button.is-sticky.side-left:hover {
  transform: translateY(-50%) translateX(3px);
}

.ejabh-du-warning {
  padding: 13px 15px;
  color: #7a4d00;
  background: #fff7df;
  border: 1px solid #f0d892;
  border-radius: 10px;
  font: 700 13px/1.6 Cairo, Arial, sans-serif;
}

/* The native Donation Platform shortcode receives the campaign theme too. */
.ejabh-du-native-form {
  width: 100%;
  padding: clamp(16px, 2.4vw, 26px);
  background: #fff;
  border: 1px solid var(--ejabh-line);
  border-radius: 26px;
  box-shadow: var(--ejabh-shadow);
}

.ejabh-du-native-form.ejabh-du-style-elegant {
  background:
    linear-gradient(90deg, var(--ejabh-accent, #d4af37), #f2d780, var(--ejabh-primary, #0f766e)) top / 100% 4px no-repeat,
    #fff;
}

.ejabh-du-native-form.ejabh-du-style-glass {
  background: linear-gradient(145deg, rgba(235, 251, 247, .86), rgba(255, 255, 255, .74));
  border-color: rgba(255, 255, 255, .92);
  box-shadow: 0 27px 70px rgba(8, 91, 78, .16);
  backdrop-filter: blur(20px);
}

.ejabh-du-native-form.ejabh-du-style-minimal {
  padding-inline: 0;
  background: transparent;
  border-width: 0 0 3px;
  border-color: var(--ejabh-primary, #0f766e);
  border-radius: 0;
  box-shadow: none;
}

/* Ready-made form variants. */
.ejabh-du-form--glass .wcdp_amount {
  background: linear-gradient(135deg, rgba(236, 252, 248, .88), rgba(255, 255, 255, .72)) !important;
  border-color: rgba(255, 255, 255, .8) !important;
  box-shadow: 0 20px 50px rgba(10, 82, 70, .13) !important;
  backdrop-filter: blur(18px);
}

.ejabh-du-form--glass .wcdp-button-label,
.ejabh-du-form--glass .wcdp_label_custom_amount {
  background: rgba(255, 255, 255, .82) !important;
}

.ejabh-du-form--minimal .wcdp_amount {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.ejabh-du-form--minimal .wcdp-button-label,
.ejabh-du-form--minimal .wcdp_label_custom_amount {
  border-radius: 9px !important;
  box-shadow: none !important;
}

/* Cart and checkout inherit the first campaign's chosen theme. */
body.ejabh-du-checkout.ejabh-du-lang-ar .woocommerce,
body.ejabh-du-checkout.ejabh-du-lang-ar .wc-block-checkout,
body.ejabh-du-checkout.ejabh-du-lang-ar .wc-block-cart {
  direction: rtl;
  text-align: right;
}

body.ejabh-du-checkout.ejabh-du-lang-en .woocommerce,
body.ejabh-du-checkout.ejabh-du-lang-en .wc-block-checkout,
body.ejabh-du-checkout.ejabh-du-lang-en .wc-block-cart {
  direction: ltr;
  text-align: left;
}

body.ejabh-du-checkout .woocommerce-checkout,
body.ejabh-du-checkout .woocommerce-cart-form,
body.ejabh-du-checkout .cart_totals,
body.ejabh-du-checkout .wc-block-checkout__main,
body.ejabh-du-checkout .wc-block-checkout__sidebar,
body.ejabh-du-checkout .wc-block-cart-items,
body.ejabh-du-checkout .wc-block-cart__totals-title {
  font-family: Cairo, Tajawal, Arial, sans-serif;
}

body.ejabh-du-checkout .woocommerce-billing-fields,
body.ejabh-du-checkout .woocommerce-shipping-fields,
body.ejabh-du-checkout #order_review,
body.ejabh-du-checkout .cart_totals,
body.ejabh-du-checkout .wc-block-checkout__main,
body.ejabh-du-checkout .wc-block-checkout__sidebar {
  padding: clamp(16px, 3vw, 28px);
  background: #fff;
  border: 1px solid var(--ejabh-line);
  border-radius: 22px;
  box-shadow: 0 15px 42px rgba(11, 91, 78, .08);
}

body.ejabh-du-checkout input:not([type="checkbox"]):not([type="radio"]),
body.ejabh-du-checkout select,
body.ejabh-du-checkout textarea {
  min-height: 50px;
  padding: 11px 14px;
  background: #fbfdfc;
  border: 1px solid #d7e5e1;
  border-radius: 12px;
  box-shadow: none;
}

body.ejabh-du-checkout input:not([type="checkbox"]):not([type="radio"]):focus,
body.ejabh-du-checkout select:focus,
body.ejabh-du-checkout textarea:focus {
  border-color: var(--ejabh-primary, #0f766e);
  outline: 3px solid rgba(15, 118, 110, .11);
}

/* Never stretch WooCommerce payment/shipping radio controls. */
body.ejabh-du-checkout input[type="radio"],
body.ejabh-du-checkout .input-radio,
body.ejabh-du-checkout .wc-block-components-radio-control__input {
  position: static !important;
  display: inline-block !important;
  width: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  max-height: 18px !important;
  margin: 0 7px !important;
  padding: 0 !important;
  vertical-align: middle !important;
  appearance: auto !important;
  -webkit-appearance: radio !important;
  accent-color: var(--ejabh-primary, #0f766e);
  background: transparent !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  transform: none !important;
}

body.ejabh-du-checkout input[type="checkbox"],
body.ejabh-du-checkout .input-checkbox {
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  padding: 0 !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  accent-color: var(--ejabh-primary, #0f766e);
  box-shadow: none !important;
}

/* Keep Stripe Elements and the newer Payment Element at a usable height. */
body.ejabh-du-checkout :is(.wc-stripe-elements-field,.StripeElement,#stripe-card-element,#wc-stripe-card-element) {
  min-height: 44px !important;
  padding: 12px 14px !important;
  background: #fff !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
}

body.ejabh-du-checkout :is(.wc-stripe-elements-field,.StripeElement,#stripe-card-element,#wc-stripe-card-element) iframe {
  display: block !important;
  width: 100% !important;
  min-height: 20px !important;
}

body.ejabh-du-checkout #place_order,
body.ejabh-du-checkout .checkout-button,
body.ejabh-du-checkout .wc-block-components-checkout-place-order-button {
  min-height: 57px !important;
  color: #fff !important;
  background: linear-gradient(110deg, #087268, #14aa98) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: 0 13px 27px rgba(8, 114, 104, .22) !important;
  font-weight: 900 !important;
}

body.ejabh-du-checkout .ejabh-campaign-item.ejabh-item-ar {
  direction: rtl;
  text-align: right;
}

body.ejabh-du-checkout .ejabh-campaign-item.ejabh-item-en {
  direction: ltr;
  text-align: left;
}

body.ejabh-du-checkout .ejabh-campaign-item .variation {
  display: inline-flex;
  margin-top: 7px;
  padding: 5px 9px;
  color: var(--ejabh-primary, #0f766e);
  background: #edf8f5;
  border: 1px solid #d4ebe5;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
}

body.ejabh-du-theme-glass {
  background-image: radial-gradient(circle at 10% 10%, rgba(20, 170, 152, .08), transparent 32%);
}

body.ejabh-du-theme-glass .woocommerce-billing-fields,
body.ejabh-du-theme-glass .woocommerce-shipping-fields,
body.ejabh-du-theme-glass #order_review,
body.ejabh-du-theme-glass .cart_totals,
body.ejabh-du-theme-glass .wc-block-checkout__main,
body.ejabh-du-theme-glass .wc-block-checkout__sidebar {
  background: rgba(255, 255, 255, .82);
  border-color: rgba(255, 255, 255, .9);
  box-shadow: 0 22px 58px rgba(11, 91, 78, .13);
  backdrop-filter: blur(18px);
}

body.ejabh-du-theme-minimal .woocommerce-billing-fields,
body.ejabh-du-theme-minimal .woocommerce-shipping-fields,
body.ejabh-du-theme-minimal #order_review,
body.ejabh-du-theme-minimal .cart_totals,
body.ejabh-du-theme-minimal .wc-block-checkout__main,
body.ejabh-du-theme-minimal .wc-block-checkout__sidebar {
  padding-inline: 0;
  border-width: 0 0 2px;
  border-radius: 0;
  box-shadow: none;
}

@media (max-width: 650px) {
  .ejabh-du-heading {
    min-height: 96px;
    padding: 18px 15px;
  }

  .ejabh-du-live {
    font-size: 9px;
  }

  .ejabh-du-numbers {
    gap: 7px;
    padding: 15px 11px 13px;
  }

  .ejabh-du-numbers > div {
    padding: 11px 4px;
  }

  .ejabh-du-numbers strong,
  .ejabh-du-numbers strong .woocommerce-Price-amount,
  .ejabh-du-numbers strong bdi {
    font-size: 13px !important;
  }

  .ejabh-du-track {
    margin-inline: 12px;
  }

  .ejabh-du-form .wcdp_amount {
    gap: 8px !important;
    padding: 11px !important;
  }

  .ejabh-du-form .wcdp-button-label,
  .ejabh-du-form .wcdp_label_custom_amount {
    min-height: 54px !important;
    font-size: 16px !important;
  }
}

/* =========================================================
   Six unmistakably different visual themes.
   Kept at the end and intentionally specific so Elementor/theme CSS
   cannot flatten every choice into the same design.
========================================================= */
html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-elegant {
  --ejabh-primary: #0f766e;
  --ejabh-accent: #d4af37;
  background: #fff !important;
  border: 1px solid #d8ebe6 !important;
  border-radius: 28px !important;
  box-shadow: 0 22px 60px rgba(11,91,78,.13) !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-elegant .ejabh-du-heading {
  background: linear-gradient(125deg,#075f59,#0f766e 55%,#1aa18f) !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-glass {
  --ejabh-primary: #087f8c;
  --ejabh-accent: #67e8f9;
  background: linear-gradient(145deg,rgba(236,254,255,.82),rgba(255,255,255,.62)) !important;
  border: 1px solid rgba(255,255,255,.92) !important;
  border-radius: 34px !important;
  box-shadow: 0 28px 80px rgba(8,127,140,.18) !important;
  backdrop-filter: blur(22px) saturate(1.15) !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-glass .ejabh-du-heading {
  margin: 12px !important;
  min-height: 96px !important;
  background: linear-gradient(125deg,rgba(8,127,140,.88),rgba(14,165,183,.72)) !important;
  border: 1px solid rgba(255,255,255,.38) !important;
  border-radius: 24px !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-minimal {
  --ejabh-primary: #111827;
  --ejabh-accent: #0f766e;
  background: #fff !important;
  border: 0 !important;
  border-bottom: 4px solid #0f766e !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-minimal .ejabh-du-heading {
  min-height: 84px !important;
  color: #111827 !important;
  background: #fff !important;
  border-bottom: 1px solid #e5e7eb !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-minimal .ejabh-du-heading h3 { color:#111827 !important; }
html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-minimal .ejabh-du-heading p { color:#6b7280 !important; }

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-royal {
  --ejabh-primary: #172554;
  --ejabh-accent: #f6c453;
  background: linear-gradient(145deg,#fffdf5,#fff) !important;
  border: 2px solid #e9c766 !important;
  border-radius: 20px !important;
  box-shadow: 0 24px 65px rgba(23,37,84,.2) !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-royal .ejabh-du-heading {
  background: linear-gradient(120deg,#0f172a,#172554 62%,#273a7a) !important;
  border-bottom: 4px solid #e9c766 !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-sunset {
  --ejabh-primary: #be123c;
  --ejabh-accent: #fb923c;
  background: #fff7ed !important;
  border: 0 !important;
  border-radius: 34px 12px 34px 12px !important;
  box-shadow: 0 25px 70px rgba(190,18,60,.18) !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-sunset .ejabh-du-heading {
  background: linear-gradient(120deg,#9f1239,#e11d48 55%,#f97316) !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-midnight {
  --ejabh-primary: #2dd4bf;
  --ejabh-accent: #67e8f9;
  --e-text: #ecfeff;
  --e-muted: #94a3b8;
  color: #ecfeff !important;
  background: radial-gradient(circle at 85% 0,#15344a,#07151d 55%,#02070a) !important;
  border: 1px solid rgba(45,212,191,.36) !important;
  border-radius: 24px !important;
  box-shadow: 0 25px 80px rgba(2,7,10,.48),0 0 35px rgba(45,212,191,.08) !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-midnight .ejabh-du-heading {
  background: rgba(3,16,24,.78) !important;
  border-bottom: 1px solid rgba(45,212,191,.25) !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-midnight :is(.ejabh-du-numbers>div,.ejabh-du-donor,.ejabh-du-donor-amount) {
  color: #e6fffb !important;
  background: rgba(15,38,50,.76) !important;
  border-color: rgba(45,212,191,.2) !important;
}

html body :is(.ejabh-du-goal,.ejabh-du-donors).ejabh-du-style-midnight :is(.ejabh-du-donor-name strong,.ejabh-du-numbers strong) { color:#5eead4 !important; }

/* Donation form themes. */
html body .ejabh-du-native-form.ejabh-du-style-glass,
html body .ejabh-du-style-glass .ejabh-du-form--glass .wcdp_amount {
  background: linear-gradient(145deg,rgba(236,254,255,.82),rgba(255,255,255,.62)) !important;
  border: 1px solid rgba(255,255,255,.95) !important;
  border-radius: 32px !important;
  box-shadow: 0 28px 75px rgba(8,127,140,.17) !important;
  backdrop-filter: blur(22px) !important;
}

html body .ejabh-du-native-form.ejabh-du-style-minimal,
html body .ejabh-du-form--minimal .wcdp_amount {
  background: transparent !important;
  border-width: 0 0 3px !important;
  border-color: #0f766e !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body .ejabh-du-native-form.ejabh-du-style-royal {
  --form-primary: #172554;
  background: linear-gradient(145deg,#fffdf5,#fff) !important;
  border: 2px solid #e9c766 !important;
  border-radius: 20px !important;
  box-shadow: 0 24px 65px rgba(23,37,84,.18) !important;
}

html body .ejabh-du-form--royal .wcdp_amount { background:#fffaf0 !important;border:1px solid #e9c766 !important; }
html body .ejabh-du-form--royal :is(.wcdp-button,button[type="submit"]) { background:linear-gradient(110deg,#0f172a,#263a78) !important;border:1px solid #e9c766 !important;border-radius:12px !important; }

html body .ejabh-du-native-form.ejabh-du-style-sunset {
  --form-primary: #be123c;
  background: #fff7ed !important;
  border: 0 !important;
  border-radius: 34px 12px 34px 12px !important;
  box-shadow: 0 25px 70px rgba(190,18,60,.16) !important;
}

html body .ejabh-du-form--sunset .wcdp_amount { background:linear-gradient(145deg,#fff1f2,#fff7ed) !important;border-color:#fecdd3 !important; }
html body .ejabh-du-form--sunset :is(.wcdp-button,button[type="submit"]) { background:linear-gradient(110deg,#be123c,#f97316) !important;border-radius:18px 6px 18px 6px !important; }

html body .ejabh-du-native-form.ejabh-du-style-midnight {
  --form-primary: #2dd4bf;
  color: #e6fffb !important;
  background: radial-gradient(circle at 85% 0,#15344a,#07151d 58%,#02070a) !important;
  border: 1px solid rgba(45,212,191,.36) !important;
  border-radius: 24px !important;
  box-shadow: 0 25px 80px rgba(2,7,10,.45) !important;
}

html body .ejabh-du-form--midnight :is(.wcdp-variation-heading,.wcdp-heading,legend) { color:#e6fffb !important; }
html body .ejabh-du-form--midnight .wcdp_amount { background:rgba(6,24,32,.8) !important;border-color:rgba(45,212,191,.28) !important; }
html body .ejabh-du-form--midnight :is(.wcdp-button-label,.wcdp_label_custom_amount) { color:#dffdfa !important;background:#102a35 !important;border-color:#235563 !important; }
html body .ejabh-du-form--midnight .ejabh-du-other-copy { color:#e6fffb !important;text-shadow:0 1px 1px rgba(0,0,0,.35) !important; }
html body .ejabh-du-form--midnight :is(.wcdp-button,button[type="submit"]) { color:#042f2e !important;background:linear-gradient(110deg,#2dd4bf,#67e8f9) !important;border-radius:12px !important; }

/* Standalone and sticky Elementor button themes. */
html body .ejabh-du-button-widget.ejabh-du-style-glass .ejabh-du-standalone-button {
  color: #075985 !important;
  background: rgba(255,255,255,.72) !important;
  border: 1px solid rgba(8,145,178,.35) !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 38px rgba(8,145,178,.16) !important;
  backdrop-filter: blur(16px) !important;
}

html body .ejabh-du-button-widget.ejabh-du-style-minimal .ejabh-du-standalone-button {
  color: var(--ejabh-button-bg,#0f766e) !important;
  background: transparent !important;
  border: 2px solid var(--ejabh-button-bg,#0f766e) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

html body .ejabh-du-button-widget.ejabh-du-style-royal .ejabh-du-standalone-button {
  color: #fff8dd !important;
  background: linear-gradient(110deg,#0f172a,#263a78) !important;
  border: 1px solid #e9c766 !important;
  border-radius: 12px !important;
  box-shadow: 0 16px 35px rgba(23,37,84,.28) !important;
}

html body .ejabh-du-button-widget.ejabh-du-style-sunset .ejabh-du-standalone-button {
  color: #fff !important;
  background: linear-gradient(110deg,#be123c,#f97316) !important;
  border-radius: 18px 6px 18px 6px !important;
  box-shadow: 0 16px 36px rgba(190,18,60,.26) !important;
}

html body .ejabh-du-button-widget.ejabh-du-style-midnight .ejabh-du-standalone-button {
  color: #042f2e !important;
  background: linear-gradient(110deg,#2dd4bf,#67e8f9) !important;
  border: 1px solid #99f6e4 !important;
  border-radius: 12px !important;
  box-shadow: 0 0 28px rgba(45,212,191,.32) !important;
}

/* Keep the sticky tab readable in the same direction as its label. */
html body .ejabh-du-standalone-button.is-sticky {
  transform: translateY(-50%) !important;
}

html body .ejabh-du-standalone-button.is-sticky:hover {
  transform: translateY(-50%) translateX(-3px) !important;
}

html body .ejabh-du-standalone-button.is-sticky .ejabh-du-button-icon {
  display: inline-grid !important;
  place-items: center !important;
  transform: scale(1) !important;
  transform-origin: center !important;
  animation: ejabh-du-icon-pulse 2.4s ease-in-out infinite !important;
}

/* Clear, centered custom-amount wording. */
html body .ejabh-du-form #wcdp_other[data-ejabh-label]::after,
html body .ejabh-du-form .wcdp_label_custom_amount[data-ejabh-label]::after {
  display: none !important;
  content: none !important;
}

html body .ejabh-du-form .ejabh-du-other-target {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  padding: 10px 16px !important;
}

html body .ejabh-du-form .ejabh-du-other-copy {
  display: block !important;
  width: auto !important;
  flex: 0 0 auto !important;
  color: inherit !important;
  background: transparent !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.45 !important;
  text-align: start !important;
  white-space: nowrap !important;
}

html body .ejabh-du-form .ejabh-du-other-target .wcdp_cu_field,
html body .ejabh-du-form .ejabh-du-other-target .wcdp_donation_amount_field {
  width: auto !important;
  min-width: 0 !important;
  flex: 1 1 180px !important;
}

html body .ejabh-du-form .ejabh-du-original-other-copy {
  display: none !important;
}

html body .ejabh-du-form .ejabh-du-form-intro {
  margin: 0 0 14px !important;
  padding: 0 !important;
  color: inherit !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.8 !important;
  text-align: center !important;
}

@keyframes ejabh-du-icon-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.12); }
}

html body .ejabh-du-standalone-button.is-sticky,
html body .ejabh-du-standalone-button.is-sticky:hover {
  box-shadow: none !important;
  filter: none !important;
}

@media (prefers-reduced-motion: reduce) {
  html body .ejabh-du-standalone-button.is-sticky .ejabh-du-button-icon {
    animation: none !important;
  }
}

@media (max-width: 520px) {
  html body .ejabh-du-form .ejabh-du-other-target {
    gap: 8px !important;
    padding-inline: 10px !important;
  }

  html body .ejabh-du-form .ejabh-du-other-copy {
    font-size: 13px !important;
  }
}

/* User-selected form button colors/font always win; each property is opt-in. */
html body .ejabh-du-native-form.ejabh-du-button-bg-custom .ejabh-du-form :is(.wcdp-button,button.wcdp-button,.single_add_to_cart_button,button[type="submit"]) {
  background: var(--ejabh-form-button-bg) !important;
}

html body .ejabh-du-native-form.ejabh-du-button-color-custom .ejabh-du-form :is(.wcdp-button,button.wcdp-button,.single_add_to_cart_button,button[type="submit"]) {
  color: var(--ejabh-form-button-color) !important;
}

html body .ejabh-du-native-form.ejabh-du-button-font-custom .ejabh-du-form :is(.wcdp-button,button.wcdp-button,.single_add_to_cart_button,button[type="submit"]) {
  font-family: var(--ejabh-form-button-font) !important;
}

/* Button-specific classes avoid backdrop-filter trapping position:fixed. */
html body .ejabh-du-button-widget.ejabh-du-button-style-glass .ejabh-du-standalone-button {
  color: var(--ejabh-button-color,#075985) !important;
  background: var(--ejabh-button-bg,rgba(255,255,255,.72)) !important;
  background: color-mix(in srgb,var(--ejabh-button-bg,#0891b2),transparent 68%) !important;
  border: 1px solid color-mix(in srgb,var(--ejabh-button-bg,#0891b2),#fff 55%) !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 38px color-mix(in srgb,var(--ejabh-button-bg,#0891b2),transparent 78%) !important;
  backdrop-filter: blur(16px) !important;
}

html body .ejabh-du-button-widget.ejabh-du-button-style-minimal .ejabh-du-standalone-button {
  color: var(--ejabh-button-color,#0f766e) !important;
  background: color-mix(in srgb,var(--ejabh-button-bg,#0f766e),transparent 90%) !important;
  border: 2px solid var(--ejabh-button-bg,#0f766e) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

html body .ejabh-du-button-widget.ejabh-du-button-style-royal .ejabh-du-standalone-button {
  color: var(--ejabh-button-color,#fff8dd) !important;
  background: linear-gradient(110deg,var(--ejabh-button-bg,#0f172a),color-mix(in srgb,var(--ejabh-button-bg,#263a78),#000 25%)) !important;
  border: 1px solid #e9c766 !important;
  border-radius: 12px !important;
  box-shadow: 0 16px 35px color-mix(in srgb,var(--ejabh-button-bg,#172554),transparent 70%) !important;
}

html body .ejabh-du-button-widget.ejabh-du-button-style-sunset .ejabh-du-standalone-button {
  color: var(--ejabh-button-color,#fff) !important;
  background: linear-gradient(110deg,var(--ejabh-button-bg,#be123c),color-mix(in srgb,var(--ejabh-button-bg,#f97316),#ffb347 45%)) !important;
  border-radius: 18px 6px 18px 6px !important;
  box-shadow: 0 16px 36px color-mix(in srgb,var(--ejabh-button-bg,#be123c),transparent 72%) !important;
}

html body .ejabh-du-button-widget.ejabh-du-button-style-midnight .ejabh-du-standalone-button {
  color: var(--ejabh-button-color,#042f2e) !important;
  background: linear-gradient(110deg,var(--ejabh-button-bg,#2dd4bf),color-mix(in srgb,var(--ejabh-button-bg,#67e8f9),#fff 35%)) !important;
  border: 1px solid color-mix(in srgb,var(--ejabh-button-bg,#2dd4bf),#fff 50%) !important;
  border-radius: 12px !important;
  box-shadow: 0 0 28px color-mix(in srgb,var(--ejabh-button-bg,#2dd4bf),transparent 68%) !important;
}

html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button:hover {
  color: var(--ejabh-button-color,#fff) !important;
  background: var(--ejabh-button-hover,#14a996) !important;
}

html body .ejabh-du-standalone-button .ejabh-du-button-content {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

/* Lightweight Fundraise Up-style fixed tab: solid color and no costly effects. */
html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky,
html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky:hover {
  color: var(--ejabh-button-color,#fff) !important;
  background: var(--ejabh-button-bg,#0f766e) !important;
  border: 0 !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.18) !important;
  filter: none !important;
  backdrop-filter: none !important;
}

html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky {
  display: flex !important;
  width: 58px !important;
  min-width: 58px !important;
  min-height: 164px !important;
  padding: 15px 10px !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  writing-mode: horizontal-tb !important;
  border-radius: 20px 0 0 20px !important;
  font-size: 16px !important;
  letter-spacing: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(-50%) !important;
  transition: background-color .12s ease,transform .12s ease !important;
  animation: none !important;
  overflow: hidden !important;
}

html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky.side-left {
  border-radius: 0 18px 18px 0 !important;
}

html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky:hover {
  color: var(--ejabh-button-color,#fff) !important;
  background: var(--ejabh-button-hover,#14a996) !important;
  transform: translateY(-50%) translateX(-3px) !important;
}

html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky.side-left:hover {
  transform: translateY(-50%) translateX(3px) !important;
}

html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky .ejabh-du-button-content {
  display: inline-flex !important;
  width: max-content !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: row !important;
  gap: 9px !important;
  direction: ltr !important;
  writing-mode: horizontal-tb !important;
  white-space: nowrap !important;
  transform-origin: center !important;
}

html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky.side-right .ejabh-du-button-content {
  transform: rotate(90deg) !important;
}

html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky.side-left .ejabh-du-button-content {
  transform: rotate(-90deg) !important;
}

html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky .ejabh-du-button-icon {
  writing-mode: horizontal-tb !important;
  transform: none !important;
  animation: none !important;
  color: #ff3152 !important;
  font-size: 19px !important;
  line-height: 1 !important;
}

html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky .ejabh-du-button-text {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
  unicode-bidi: isolate !important;
}

html body .ejabh-du-standalone-button.is-sticky .ejabh-du-button-text[dir="rtl"] { direction: rtl !important; }
html body .ejabh-du-standalone-button.is-sticky .ejabh-du-button-text[dir="ltr"] { direction: ltr !important; }

html body .ejabh-du-button-widget.ejabh-du-sticky-mounted {
  position: static !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  contain: none !important;
}

/* High-contrast custom amount label for Arabic and English midnight forms. */
html body .ejabh-du-form.ejabh-du-form--midnight .ejabh-du-other-target .ejabh-du-other-copy {
  color: #ecfeff !important;
  opacity: 1 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.65) !important;
}

/* Automatic Stripe Express Checkout bar on product and checkout pages. */
html body #ejabh-fixed-express-pay {
  position: fixed !important;
  inset: auto 0 0 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 99990 !important;
  display: none !important;
  width: auto !important;
  min-width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important;
  background: rgba(255,255,255,.98) !important;
  border: 0 !important;
  border-top: 1px solid #dce8e5 !important;
  box-shadow: 0 -8px 28px rgba(16,47,42,.12) !important;
  box-sizing: border-box !important;
  direction: ltr !important;
  transform: none !important;
  overflow: visible !important;
}

html body #ejabh-fixed-express-pay.ejabh-express-visible {
  display: block !important;
}

html body.ejabh-has-fixed-express-pay {
  padding-bottom: 92px !important;
}

html body #ejabh-fixed-express-pay > .ejabh-du-express-provider {
  display: block !important;
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  float: none !important;
  position: static !important;
  transform: none !important;
}

html body.ejabh-has-fixed-express-pay #wc-stripe-express-checkout-button-separator {
  display: none !important;
}

html body #ejabh-fixed-express-pay #wc-stripe-express-checkout-element {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

html body #ejabh-fixed-express-pay #wc-stripe-express-checkout-element-applePay,
html body #ejabh-fixed-express-pay #wc-stripe-express-checkout-element-googlePay,
html body #ejabh-fixed-express-pay #wc-stripe-express-checkout-element .StripeElement,
html body #ejabh-fixed-express-pay #wc-stripe-express-checkout-element .__PrivateStripeElement {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body #ejabh-fixed-express-pay #wc-stripe-express-checkout-element iframe {
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body #ejabh-fixed-express-pay #wc-stripe-express-checkout-element > :only-child {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
}

@media (max-width: 480px) {
  html body #ejabh-fixed-express-pay {
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom)) !important;
  }
  html body #ejabh-fixed-express-pay #wc-stripe-express-checkout-element {
    gap: 8px !important;
  }
}

/* Donor amounts behave as calm, accessible quick-donation buttons. */
html body .ejabh-du-donors button.ejabh-du-donor-amount {
  appearance: none !important;
  display: block !important;
  min-width: 96px !important;
  margin: 0 !important;
  padding: 8px 11px !important;
  color: var(--ejabh-primary,#0f766e) !important;
  background: #fff !important;
  border: 1px solid color-mix(in srgb,var(--ejabh-primary,#0f766e),#fff 72%) !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 12px rgba(15,118,110,.08) !important;
  font: inherit !important;
  text-align: center !important;
  cursor: pointer !important;
  transition: border-color .2s ease,background-color .2s ease,box-shadow .2s ease !important;
}

html body .ejabh-du-donors button.ejabh-du-donor-amount:hover,
html body .ejabh-du-donors button.ejabh-du-donor-amount:focus-visible {
  background: color-mix(in srgb,var(--ejabh-primary,#0f766e),#fff 93%) !important;
  border-color: var(--ejabh-primary,#0f766e) !important;
  box-shadow: 0 6px 16px rgba(15,118,110,.14) !important;
  outline: none !important;
}

html body .ejabh-du-donors button.ejabh-du-donor-amount.is-loading {
  opacity: .62 !important;
  cursor: wait !important;
}

html body .ejabh-du-donors button.ejabh-du-donor-amount small,
html body .ejabh-du-donors button.ejabh-du-donor-amount strong {
  pointer-events: none !important;
}

/* 2.4.4 campaign card: light, compact and close to the supplied reference. */
html body section.ejabh-du-goal[class*="ejabh-du-style-"] {
  --goal-ink: #123f39;
  --goal-muted: #6d837f;
  width: 100% !important;
  max-width: 920px !important;
  padding: 0 clamp(16px,3vw,30px) 20px !important;
  overflow: hidden !important;
  color: var(--goal-ink) !important;
  background:
    radial-gradient(circle at 0 0,rgba(20,184,166,.09) 0 82px,transparent 83px),
    linear-gradient(145deg,#f7fffd,#effbf8) !important;
  border: 1px solid rgba(15,157,143,.48) !important;
  border-top: 4px solid var(--ejabh-primary,#0f8f83) !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 42px rgba(13,91,80,.11) !important;
  font-family: Cairo,Tajawal,Arial,sans-serif !important;
  backdrop-filter: none !important;
}

html body section.ejabh-du-goal[class*="ejabh-du-style-"] .ejabh-du-heading {
  min-height: 112px !important;
  margin: 0 !important;
  padding: 24px 0 17px !important;
  color: var(--goal-ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}

html body section.ejabh-du-goal .ejabh-du-heading::after { display: none !important; }
html body section.ejabh-du-goal .ejabh-du-heading h3 {
  color: var(--goal-ink) !important;
  font-size: clamp(22px,3vw,31px) !important;
  line-height: 1.35 !important;
}
html body section.ejabh-du-goal .ejabh-du-heading p {
  color: var(--goal-muted) !important;
  font-size: clamp(12px,1.5vw,15px) !important;
}
html body section.ejabh-du-goal .ejabh-du-icon {
  width: 52px !important;
  height: 52px !important;
  flex: 0 0 52px !important;
  color: var(--goal-ink) !important;
  background: linear-gradient(145deg,rgba(255,255,255,.92),rgba(204,250,242,.9)) !important;
  border: 1px solid rgba(15,157,143,.27) !important;
  border-radius: 15px !important;
  box-shadow: inset 0 1px 0 #fff,0 6px 14px rgba(11,105,93,.08) !important;
}
html body section.ejabh-du-goal .ejabh-du-live { display: none !important; }

html body section.ejabh-du-goal .ejabh-du-goal-summary {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 20px !important;
  margin: 4px 0 10px !important;
}
html body section.ejabh-du-goal .ejabh-du-goal-summary > div:last-child { text-align: end !important; }
html body section.ejabh-du-goal .ejabh-du-goal-summary > div > span {
  display: block !important;
  margin-bottom: 3px !important;
  color: var(--goal-muted) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}
html body section.ejabh-du-goal .ejabh-du-goal-summary strong,
html body section.ejabh-du-goal .ejabh-du-goal-summary .woocommerce-Price-amount,
html body section.ejabh-du-goal .ejabh-du-goal-summary bdi {
  color: var(--ejabh-primary,#078f82) !important;
  font-size: clamp(20px,3.4vw,34px) !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}
html body section.ejabh-du-goal .ejabh-du-goal-summary > div:last-child strong,
html body section.ejabh-du-goal .ejabh-du-goal-summary > div:last-child .woocommerce-Price-amount,
html body section.ejabh-du-goal .ejabh-du-goal-summary > div:last-child bdi {
  color: var(--goal-ink) !important;
  font-size: clamp(16px,2.3vw,23px) !important;
}

html body section.ejabh-du-goal .ejabh-du-track {
  height: 23px !important;
  margin: 8px 0 9px !important;
  overflow: hidden !important;
  background: linear-gradient(180deg,#dce8e5,#cfdcda) !important;
  border: 1px solid #b8c9c5 !important;
  border-radius: 999px !important;
  box-shadow: inset 0 2px 4px rgba(15,48,43,.12),0 1px 0 #fff !important;
}
html body section.ejabh-du-goal .ejabh-du-track > span {
  background: linear-gradient(90deg,#16b6a5,var(--ejabh-primary,#078f82)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.45),0 0 12px rgba(15,157,143,.28) !important;
}
html body section.ejabh-du-goal .ejabh-du-track > b { display: none !important; }
html body section.ejabh-du-goal .ejabh-du-progress-copy {
  margin: 0 0 18px !important;
  color: var(--goal-muted) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-align: center !important;
}

html body section.ejabh-du-goal .ejabh-du-numbers {
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 12px !important;
  padding: 0 !important;
}
html body section.ejabh-du-goal .ejabh-du-numbers > div {
  position: relative !important;
  min-height: 88px !important;
  padding: 15px 12px !important;
  overflow: hidden !important;
  background: linear-gradient(145deg,rgba(255,255,255,.96),rgba(247,252,251,.92)) !important;
  border: 1px solid rgba(15,157,143,.28) !important;
  border-radius: 15px !important;
  box-shadow: inset 0 1px 0 #fff,0 7px 16px rgba(13,91,80,.06) !important;
}
html body section.ejabh-du-goal .ejabh-du-numbers > div > span:not(.ejabh-du-stat-icon) {
  margin-bottom: 5px !important;
  color: var(--goal-muted) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}
html body section.ejabh-du-goal .ejabh-du-numbers .ejabh-du-stat-icon {
  position: absolute !important;
  inset-block-start: 50% !important;
  inset-inline-end: 14px !important;
  display: grid !important;
  width: 35px !important;
  height: 35px !important;
  margin: 0 !important;
  place-items: center !important;
  background: #e5f7f3 !important;
  border-radius: 10px !important;
  font-size: 17px !important;
  transform: translateY(-50%) !important;
}
html body section.ejabh-du-goal .ejabh-du-numbers strong,
html body section.ejabh-du-goal .ejabh-du-numbers strong * {
  color: var(--goal-ink) !important;
  font-size: clamp(14px,1.8vw,18px) !important;
}
html body section.ejabh-du-goal :is(.ejabh-du-goal-summary,.ejabh-du-numbers) .woocommerce-Price-currencySymbol {
  display: inline !important;
  margin: 0 !important;
  color: inherit !important;
  font-size: inherit !important;
}
html body section.ejabh-du-goal .ejabh-du-numbers > div { padding-inline-end: 55px !important; }

html body section.ejabh-du-goal .ejabh-du-impact {
  margin: 17px 0 !important;
  padding: 12px 16px !important;
  color: var(--goal-ink) !important;
  background: linear-gradient(90deg,rgba(207,245,238,.78),rgba(224,250,246,.9)) !important;
  border: 1px solid rgba(15,157,143,.25) !important;
  border-radius: 13px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-align: center !important;
}
html body section.ejabh-du-goal .ejabh-du-impact span { margin-inline-end: 7px !important; }
html body section.ejabh-du-goal .ejabh-du-secure {
  margin: 12px 0 0 !important;
  color: var(--goal-muted) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-align: center !important;
}
html body section.ejabh-du-goal .ejabh-du-secure span { margin-inline-end: 5px !important; }

/* Fast glass highlight: gradients only, no continuous animation or blur. */
html body :is(.ejabh-du-cta,.ejabh-du-standalone-button:not(.is-sticky),.ejabh-du-form .wcdp-button,.ejabh-du-form .single_add_to_cart_button,.ejabh-du-form button[type="submit"]) {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42),0 12px 25px rgba(8,100,88,.2) !important;
}
html body :is(.ejabh-du-cta,.ejabh-du-standalone-button:not(.is-sticky),.ejabh-du-form .wcdp-button,.ejabh-du-form .single_add_to_cart_button,.ejabh-du-form button[type="submit"])::before {
  position: absolute !important;
  inset: 2px 8% auto !important;
  z-index: -1 !important;
  height: 42% !important;
  content: "" !important;
  background: linear-gradient(180deg,rgba(255,255,255,.43),rgba(255,255,255,.06)) !important;
  border-radius: 999px 999px 45% 45% !important;
  pointer-events: none !important;
}
html body section.ejabh-du-goal .ejabh-du-cta {
  width: 100% !important;
  min-height: 64px !important;
  margin: 0 !important;
  background: linear-gradient(105deg,var(--ejabh-primary,#078f82),#16b7a5) !important;
  border-radius: 16px !important;
  font-size: clamp(18px,2vw,22px) !important;
}

/* Donation amount picker: larger numbers and glossy, clearly selected tiles. */
html body .ejabh-du-form :is(.wcdp-variation-heading,.wcdp_variation_heading,.wcdp-heading,legend) {
  width: max-content !important;
  max-width: 100% !important;
  margin: 0 auto 18px !important;
  padding: 8px 18px !important;
  background: linear-gradient(180deg,#fff,#f5faf8) !important;
  border: 1px solid #d7e8e4 !important;
  border-radius: 999px !important;
  box-shadow: inset 0 1px 0 #fff,0 7px 18px rgba(12,83,72,.07) !important;
  font-size: clamp(19px,2.4vw,27px) !important;
  text-align: center !important;
}
html body .ejabh-du-form .wcdp_amount {
  gap: 10px !important;
  padding: clamp(12px,2vw,17px) !important;
  background: linear-gradient(145deg,rgba(255,252,240,.8),rgba(231,250,247,.82)) !important;
  border-top: 4px solid transparent !important;
  border-image: linear-gradient(90deg,#e5bd3a,#2dd4bf,#087f73) 1 !important;
  border-radius: 19px !important;
  box-shadow: 0 14px 30px rgba(13,91,80,.08) !important;
}
html body .ejabh-du-form .wcdp-button-label {
  position: relative !important;
  min-height: 64px !important;
  overflow: hidden !important;
  color: #152035 !important;
  background: linear-gradient(180deg,#fff,#f9fbfb) !important;
  border: 1px solid #d8e5e3 !important;
  border-radius: 14px !important;
  box-shadow: inset 0 1px 0 #fff,0 5px 12px rgba(15,68,60,.05) !important;
  font-size: clamp(20px,2.3vw,25px) !important;
  font-weight: 900 !important;
}
html body .ejabh-du-form .wcdp-button-label::before {
  position: absolute !important;
  inset: 2px 8% auto !important;
  display: block !important;
  height: 38% !important;
  content: "" !important;
  background: linear-gradient(180deg,rgba(255,255,255,.75),rgba(255,255,255,0)) !important;
  border-radius: 999px !important;
  pointer-events: none !important;
}
html body .ejabh-du-form .wcdp_amount input[type="radio"]:checked + .wcdp-button-label {
  color: #fff !important;
  background: linear-gradient(120deg,#168e82,#2ec9b8 58%,#e2c545) !important;
  border-color: rgba(255,255,255,.5) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.5),0 10px 20px rgba(15,118,110,.2) !important;
}
html body .ejabh-du-form .ejabh-du-other-target {
  min-height: 65px !important;
  background: linear-gradient(180deg,#fff,#fbfdfd) !important;
  border-width: 1px !important;
  border-color: #d7e4e2 !important;
  border-radius: 14px !important;
  box-shadow: inset 0 1px 0 #fff,0 5px 12px rgba(15,68,60,.05) !important;
}
html body .ejabh-du-form .ejabh-du-other-copy { font-size: clamp(15px,1.8vw,19px) !important; }

/* Small Fundraise Up-style fixed tab that hugs the edge and avoids page copy. */
html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky,
html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky:hover {
  width: 46px !important;
  min-width: 46px !important;
  min-height: 132px !important;
  padding: 11px 7px !important;
  color: var(--ejabh-button-color,#fff) !important;
  background: var(--ejabh-button-bg,#0f8f3b) !important;
  border: 0 !important;
  box-shadow: 0 3px 10px rgba(0,0,0,.2) !important;
  filter: none !important;
  backdrop-filter: none !important;
  font-size: 14px !important;
  line-height: 1 !important;
  overflow: hidden !important;
}
html body .ejabh-du-button-widget .ejabh-du-standalone-button.is-sticky.side-right {
  right: 0 !important;
  border-radius: 9px 0 0 9px !important;
}
html body .ejabh-du-button-widget .ejabh-du-standalone-button.is-sticky.side-left {
  left: 0 !important;
  border-radius: 0 9px 9px 0 !important;
}
html body .ejabh-du-standalone-button.is-sticky::before { display: none !important; content: none !important; }
html body .ejabh-du-button-widget .ejabh-du-standalone-button.is-sticky .ejabh-du-button-content {
  display: inline-flex !important;
  width: max-content !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  direction: ltr !important;
  white-space: nowrap !important;
}
html body .ejabh-du-button-widget[dir="rtl"] .ejabh-du-standalone-button.is-sticky.side-right .ejabh-du-button-content { transform: rotate(90deg) !important; }
html body .ejabh-du-button-widget[dir="ltr"] .ejabh-du-standalone-button.is-sticky.side-right .ejabh-du-button-content { transform: rotate(-90deg) !important; }
html body .ejabh-du-button-widget[dir="rtl"] .ejabh-du-standalone-button.is-sticky.side-left .ejabh-du-button-content { transform: rotate(-90deg) !important; }
html body .ejabh-du-button-widget[dir="ltr"] .ejabh-du-standalone-button.is-sticky.side-left .ejabh-du-button-content { transform: rotate(90deg) !important; }
html body .ejabh-du-button-widget .ejabh-du-standalone-button.is-sticky .ejabh-du-button-text,
html body .ejabh-du-button-widget .ejabh-du-standalone-button.is-sticky .ejabh-du-button-icon {
  display: inline-block !important;
  margin: 0 !important;
  color: inherit !important;
  font-size: inherit !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  transform: none !important;
  animation: none !important;
}

@media (max-width: 650px) {
  html body section.ejabh-du-goal[class*="ejabh-du-style-"] { padding-inline: 13px !important; border-radius: 17px !important; }
  html body section.ejabh-du-goal .ejabh-du-heading { min-height: 94px !important; padding-block: 18px 12px !important; }
  html body section.ejabh-du-goal .ejabh-du-numbers { gap: 7px !important; }
  html body section.ejabh-du-goal .ejabh-du-numbers > div { min-height: 98px !important; padding: 11px 5px 9px !important; }
  html body section.ejabh-du-goal .ejabh-du-numbers .ejabh-du-stat-icon {
    position: static !important;
    width: 29px !important;
    height: 29px !important;
    margin: 0 auto 5px !important;
    font-size: 14px !important;
    transform: none !important;
  }
  html body section.ejabh-du-goal .ejabh-du-numbers > div > span:not(.ejabh-du-stat-icon) { font-size: 10px !important; }
  html body section.ejabh-du-goal .ejabh-du-numbers strong,
  html body section.ejabh-du-goal .ejabh-du-numbers strong * { font-size: 12px !important; }
  html body section.ejabh-du-goal .ejabh-du-impact { font-size: 11px !important; }
  html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky,
  html body .ejabh-du-button-widget[class*="ejabh-du-button-style-"] .ejabh-du-standalone-button.is-sticky:hover {
    width: 42px !important;
    min-width: 42px !important;
    min-height: 122px !important;
    padding: 9px 6px !important;
    font-size: 13px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .ejabh-du-form .wcdp-button-label,
  html body section.ejabh-du-goal .ejabh-du-track > span,
  html body :is(.ejabh-du-cta,.ejabh-du-standalone-button) { transition: none !important; }
}
#ejabh-fixed-express-pay.ejabh-express-amount-syncing {
	pointer-events: none;
	opacity: .72;
}
