/* ActionAid Donation Widget — single Gravity Form version */

.aa-donation-widget,
.aa-donation-widget * {
  box-sizing: border-box;
}

.aa-donation-widget-warning {
  padding: 16px;
  border: 1px solid #d63638;
  color: #d63638;
  background: #fff5f5;
}

/*
 * Donation UI is injected inside a Gravity Forms HTML field.
 * Scope selectors through .aa-donation-widget and .aa-donation-ui so GF Orbital/theme
 * button styles do not override the Elementor styling controls.
 */
.aa-donation-widget .aa-donation-ui {
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 100%;
}

.aa-donation-widget .aa-donation-ui .aa-frequency {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  overflow: visible;
  padding-top: 16px;
}

.aa-donation-widget .aa-donation-ui .aa-frequency-option,
.aa-donation-widget .aa-donation-ui .aa-amount-option {
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid currentColor;
  background: #fff;
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font: inherit;
  line-height: 1.2;
  min-height: 48px;
  padding: 14px 18px;
  text-align: center;
  text-decoration: none;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  width: 100%;
  min-height: 44px !important;
}

.aa-donation-widget .aa-donation-ui .aa-frequency-option {
  position: relative;
  overflow: visible;
}

.aa-donation-widget .aa-donation-ui .aa-frequency-label {
  display: inline-block;
}

.aa-donation-widget .aa-donation-ui .aa-frequency-badge {
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  line-height: 1;
  white-space: nowrap;
  pointer-events: none;

  /* Defaults, overridden by Elementor controls */
  background-color: #fff;
  color: inherit;
}

.aa-donation-widget .aa-donation-ui .aa-frequency-option:hover,
.aa-donation-widget .aa-donation-ui .aa-amount-option:hover,
.aa-donation-widget .aa-donation-ui .aa-frequency-option:focus-visible,
.aa-donation-widget .aa-donation-ui .aa-amount-option:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

.aa-donation-widget .aa-donation-ui .aa-frequency-option .aa-frequency-badge {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

/* Default active colours — wrapped in :where() so specificity = 0,0,0,0 and
   any Elementor style-control rule with real specificity wins cleanly. */
:where(.aa-donation-widget .aa-donation-ui .aa-frequency-option.is-active,
       .aa-donation-widget .aa-donation-ui .aa-amount-option.is-active,
       .aa-donation-widget .aa-donation-ui .aa-custom-amount-wrap.is-active .aa-custom-amount-input-wrap) {
  background: #111;
  border-color: #111;
  color: #fff;
}

.aa-donation-widget .aa-donation-ui .aa-custom-amount-wrap.is-active .aa-custom-amount-input-wrap {
  background: #111;
  border-color: #111;
  color: #fff;
}

.aa-donation-widget .aa-donation-ui .aa-custom-amount-wrap.is-active .aa-custom-amount-currency,
.aa-donation-widget .aa-donation-ui .aa-custom-amount-wrap.is-active .aa-custom-amount-input {
  color: #fff !important;
}

.aa-donation-widget .aa-donation-ui .aa-custom-amount-wrap.is-active .aa-custom-amount-input::placeholder {
  color: rgba(255, 255, 255, 0.7) !important;
  opacity: 1 !important;
}

.aa-donation-widget .aa-donation-ui .aa-amount-panel[hidden] {
  display: none !important;
}

.aa-donation-widget .aa-donation-ui .aa-amount-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
	height: 44px;
}

.aa-donation-widget .aa-donation-ui .aa-frequency-description:empty,
.aa-donation-widget .aa-donation-ui .aa-amount-description:empty {
  display: none;
}

.aa-donation-widget .aa-donation-ui .aa-frequency-description,
.aa-donation-widget .aa-donation-ui .aa-amount-description {
  display: block;
  width: 100%;
}

.aa-donation-widget .aa-donation-ui .aa-custom-amount-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}

.aa-donation-widget .aa-donation-ui .aa-custom-amount-label {
  display: inline-block;
}

.aa-donation-widget .aa-donation-ui .aa-custom-amount-input-wrap {
  align-items: center;
  background: #fff;
  border: 1px solid currentColor;
  display: flex;
  min-height: 48px;
  padding: 0 14px;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
  width: 100%;
}

.aa-donation-widget .aa-donation-ui .aa-custom-amount-currency {
  flex: 0 0 auto;
  margin-right: 8px;
}

.aa-donation-widget .aa-donation-ui .aa-custom-amount-input {
  appearance: textfield;
  -webkit-appearance: none;
  background: transparent;
  border: 0;
  box-shadow: none;
  flex: 1 1 auto;
  min-height: 46px;
  min-width: 0;
  outline: 0;
  padding: 0;
  width: 100%;
}

.aa-donation-widget .aa-donation-ui .aa-custom-amount-input::-webkit-outer-spin-button,
.aa-donation-widget .aa-donation-ui .aa-custom-amount-input::-webkit-inner-spin-button {
  appearance: none;
  -webkit-appearance: none;
  margin: 0;
}

/* Gravity Forms base styles */

.aa-hide-required-legend .gform_required_legend {
  display: none !important;
}

.aa-hide-progress-bar .gf_progressbar_wrapper,
.aa-hide-progress-bar .gf_page_steps,
.aa-hide-progress-bar .gf_step {
  display: none !important;
}

.aa-hide-labels .gform_wrapper .gfield_label,
.aa-hide-labels .gform_wrapper .gform-field-label:not(.gfield_consent_label):not(.gform-field-label--type-inline),
.aa-hide-labels .gform_wrapper legend.gfield_label {
  display: none !important;
}

.aa-hide-placeholders .gform_wrapper input::placeholder,
.aa-hide-placeholders .gform_wrapper textarea::placeholder {
  color: transparent !important;
  opacity: 0 !important;
}

.aa-donation-widget .gform_wrapper,
.aa-donation-widget .gf_progressbar_wrapper,
.aa-donation-widget .gform_page_footer,
.aa-donation-widget .gform-page-footer,
.aa-donation-widget .gform_footer {
  visibility: visible !important;
  opacity: 1 !important;
}

.aa-donation-widget .gform_page_footer,
.aa-donation-widget .gform-page-footer,
.aa-donation-widget .gform_footer {
  display: flex !important;
  gap: 12px;
  flex-wrap: wrap;
}

.aa-donation-widget .gform_wrapper .gfield_visibility_hidden {
  display: none !important;
}

.aa-donation-widget .gform_validation_errors,
.aa-donation-widget .validation_message {
  display: block;
}

/* Added Gravity Forms custom styles */

.aa-donation-widget .gf_progressbar_wrapper {
  background-color: var(--e-global-color-29e742a) !important;
  padding: 20px;
  margin: 0;
}

.aa-donation-widget .gf_progressbar_title {
  text-align: center;
}

.aa-donation-widget .gform_confirmation_wrapper {
  padding: 40px !important;
  text-align: center !important;
}

.aa-donation-widget .gform_confirmation_wrapper .gform_confirmation_message a {
  color: inherit;
  text-decoration: underline;
}

.aa-donation-widget .gform_fields {
  row-gap: 16px !important;
}

.aa-donation-widget input,
.aa-donation-widget label {
  font-family: var(--e-global-typography-4a9b7ab-font-family), Sans-serif;
  font-size: 16px !important;
  line-height: 1;
}

.aa-donation-widget .gfield--type-html:not(.aa-donation-ui-mount) {
  text-align: center;
}

.aa-donation-widget .gfield--type-html:not(.aa-donation-ui-mount) a {
  color: inherit;
  text-decoration: underline;
}

.aa-donation-widget input[type="button"],
.aa-donation-widget input[type="submit"],
.aa-donation-widget .gform_previous_button,
.aa-donation-widget .gform_next_button {
  height: 44px !important;
  width: 100% !important;
  border-radius: 50px !important;
  padding-top: 4px !important;
  font-family: var(--e-global-typography-0f6fe52-font-family), Sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 1px !important;
}

.aa-donation-widget .gform_previous_button {
  background: var(--e-global-color-6d8aabd) !important;
  border: 2px solid var(--e-global-color-6d8aabd) !important;
  color: var(--e-global-color-704c23d) !important;
}

.aa-donation-widget .gform_validation_errors {
  margin-block: 0 !important;
  border: none !important;
  background: var(--e-global-color-29e742a) !important;
  color: var(--e-global-color-704c23d) !important;
}

.aa-donation-widget .gfield--type-image_choice .gfield_radio {
  display: flex !important;
  justify-content: space-between !important;
  gap: 5px !important;
}

.aa-donation-widget .gfield--type-image_choice .gchoice {
  inline-size: calc(20% - 5px) !important;
  max-inline-size: calc(20% - 5px) !important;
  min-inline-size: calc(20% - 5px) !important;
}

.aa-donation-widget .gfield--type-image_choice.gfield--image-choice-appearance-card .gchoice {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.aa-donation-widget .gfield--type-image_choice.gfield--image-choice-appearance-card .gfield-image-choice-wrapper-outer {
  padding: 0 !important;
  border: none !important;
}

.aa-donation-widget .gfield--type-image_choice .gfield-choice-image-wrapper {
  aspect-ratio: auto !important;
}

.aa-donation-widget .gfield--type-image_choice .gfield-image-choice-wrapper-inner {
  display: none !important;
}

.aa-donation-widget .gfield--type-image_choice .gchoice:where(:has(input:checked))::after {
  display: none !important;
}

/* Corrected selected image choice border */
.aa-donation-widget .gfield-image-choice-wrapper-outer:has(.gfield-choice-input:checked) .gfield-choice-image-wrapper {
  border: 2px solid #ff0000 !important;
  box-sizing: border-box !important;
  border-radius: 8px !important;
}

.aa-donation-widget .ginput_container_total input {
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  height: auto !important;
  background: transparent !important;
}

.aa-donation-widget .ginput_container_total input:focus {
  border: none !important;
}

.aa-donation-widget .aa-donation-product .ginput_product_price_wrapper {
	display: none;
}

.aa-donation-widget .consider-monthly-note {
  border: 2px solid transparent;
  transition: border-color 0.2s ease;
}

/* Adjusted from ".frequency" to ".aa-native-frequency" */
.aa-donation-widget:has(.aa-native-frequency .gfield-choice-input[value="one-time"]:checked) .consider-monthly-note {
  border-color: var(--e-global-color-ebe57ad);
}

.aa-donation-widget .gform-page-footer {
  flex-direction: column-reverse !important;
}

.aa-donation-widget .gfield_consent_label {
  font-size: 14px !important;
  line-height: 1.4 !important;
  color: inherit !important;
}

.aa-donation-widget .gfield_consent_label a {
  color: inherit !important;
  text-decoration: underline !important;
}

/* This overrides the earlier validation error block intentionally */
.aa-donation-widget .gform_validation_errors {
  margin: 0 !important;
  background: #fff !important;
  border-radius: 20px 20px 0 0;
}

.aa-donation-widget .gfield_description.validation_message {
  border: 2px solid var(--e-global-color-ebe57ad) !important;
}

.aa-donation-widget select {
  display: flex;
  align-items: center;
}

.aa-donation-widget .aa-custom-amount-wrap input {
  outline: none !important;
}


/* Below form content */

.aa-donation-widget .aa-below-form-content[hidden],
.aa-donation-widget .aa-below-form-content.is-hidden {
  display: none !important;
}

.aa-donation-widget .aa-below-form-content {
  width: 100%;
  margin-top: 16px;
}

.aa-donation-widget .aa-below-form-content-inner {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}

.aa-donation-widget .aa-below-form-image {
  display: block;
  margin: 0;
  width: 100%;
}

.aa-donation-widget .aa-below-form-image img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

.aa-donation-widget .aa-below-form-text {
  display: block;
  width: 100%;
}

.aa-donation-widget .aa-below-form-text > :first-child {
  margin-top: 0;
}

.aa-donation-widget .aa-below-form-text > :last-child {
  margin-bottom: 0;
}

.aa-donation-widget .aa-below-form-text a {
  color: inherit;
  text-decoration: underline;
}

/* Responsive */

@media (max-width: 767px) {
  .aa-donation-widget .aa-donation-ui .aa-frequency,
  .aa-donation-widget .aa-donation-ui .aa-amount-options {
    grid-template-columns: 1fr 1fr;
  }

  .aa-donation-widget .aa-donation-ui .aa-frequency {
    padding-top: 16px;
  }

  .aa-donation-widget .gfield--type-image_choice .gfield_radio {
    flex-wrap: wrap !important;
  }

  .aa-donation-widget .gfield--type-image_choice .gchoice {
    inline-size: calc(50% - 5px) !important;
    max-inline-size: calc(50% - 5px) !important;
    min-inline-size: calc(50% - 5px) !important;
  }
}

/* Trigger button (popup display mode) */

.aa-donation-trigger-wrap {
  width: 100%;
}

.aa-donation-trigger {
  cursor: pointer;
  border: none;
}

.aa-donation-trigger .aa-trigger-icon {
  display: inline-flex;
  align-items: center;
}

.aa-donation-trigger .aa-trigger-icon svg {
  fill: currentColor;
}

/* Popup (popup display mode) */

.aa-donation-popup[hidden] {
  display: none !important;
}

.aa-donation-popup {
  position: fixed;
  inset: 0;
  z-index: 100000000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.aa-donation-popup__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  border: 0;
  padding: 0;
  cursor: pointer;
}

.aa-donation-popup__dialog {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 100%;
  max-height: calc(100svh - 90px - 40px);
  overflow-y: auto;
  background: #fff;
  border-radius: 12px;
  padding: 32px;
	margin-top: 90px;
  -webkit-overflow-scrolling: touch;
}

.aa-donation-popup__close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 0 !important;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.06);
  color: inherit;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}

.aa-donation-popup__body {
  width: 100%;
}

.aa-donation-status {
  margin: 0;
  padding: 24px 0;
  text-align: center;
}

.aa-donation-status--error {
  color: #d63638;
}

.aa-donation-status--loading {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 48px 0;
}

.aa-donation-spinner {
  display: inline-block;
  width: 32px;
  height: 32px;
  border: 3px solid rgba(0, 0, 0, 0.15);
  border-top-color: currentColor;
  border-radius: 50%;
  animation: aa-donation-spin 0.8s linear infinite;
}

.gform-theme--foundation .gform_ppcp_smart_payment_buttons.medium {
	inline-size: 100% !important;
}
.gform-theme--foundation .gform_page_footer .gform_ppcp_smart_payment_buttons {
	margin-inline: 0 !important;
}

@keyframes aa-donation-spin {
  to {
    transform: rotate(360deg);
  }
}

.aa-donation-visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

body.aa-donation-popup-lock {
  overflow: hidden;
}

@media (max-width: 767px) {
  .aa-donation-popup {
    padding: 12px;
  }

  .aa-donation-popup__dialog {
    padding: 24px;
  }
}