/* Required public donation-form layout, validation and accessibility behavior. */
.migla-donation-form,
.migla-donation-form *{box-sizing:border-box}
.migla-donation-form{

  width:min(100%,var(--migla-form-width));
  margin:2rem auto;
  padding:0;
  color:inherit;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  font:inherit;
  line-height:1.55;
}
.migla-donation-test-banner{
  margin:0 0 1.25rem;
  padding:.65rem .8rem;
  border:1px solid #d8c59a;
  background:#fffaf0;
  color:#6f5523;
  font-size:.85rem;
  font-weight:700;
}
.migla-donation-test-dot{display:inline-block;width:.55rem;height:.55rem;margin-right:.45rem;border-radius:50%;background:#c88120}
.migla-donation-form__intro{padding:0 0 1.25rem}
.migla-donation-kicker{display:block;margin:0 0 .4rem;color:var(--migla-muted);font-size:.88rem;font-weight:700}
.migla-donation-form h2{margin:0 0 .55rem;color:inherit;font:inherit;font-size:clamp(1.7rem,3vw,2.35rem);font-weight:750;line-height:1.15}
.migla-donation-form__intro p{max-width:62ch;margin:0;color:var(--migla-muted);font-size:1rem}
.migla-donation-form__body{padding:0}
.migla-donation-step-nav{display:flex;gap:.7rem;margin:0 0 1.5rem;padding:0;list-style:none}
.migla-donation-step-nav li{display:flex;align-items:center;gap:.45rem;color:var(--migla-muted);font-size:.92rem}
.migla-donation-step-nav li span{display:grid;place-items:center;width:1.75rem;height:1.75rem;border:1px solid var(--migla-border);border-radius:50%;background:transparent;font-size:.82rem;font-weight:700}
.migla-donation-step-nav li.is-current,.migla-donation-step-nav li.is-complete{color:var(--migla-text)}
.migla-donation-step-nav li.is-current span,.migla-donation-step-nav li.is-complete span{border-color:var(--migla-primary);background:var(--migla-primary);color:var(--migla-primary-text)}
.migla-donation-step[hidden]{display:none!important}
.migla-donation-section{min-width:0;margin:0;padding:1.15rem 0;border:0;border-top:1px solid var(--migla-border)}
.migla-donation-section legend{float:left;width:100%;margin:0 0 .9rem;padding:0;color:inherit;font-size:1rem;font-weight:750}
.migla-donation-section legend+*{clear:both}
.migla-donation-campaign-select{margin-bottom:1rem}
.migla-donation-amounts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}
.migla-donation-amount{position:relative;cursor:pointer}
.migla-donation-amount input{position:absolute;opacity:0;pointer-events:none}
.migla-donation-amount span{display:grid;place-items:center;min-height:3rem;padding:.6rem;border:1px solid var(--migla-border);border-radius:var(--migla-radius);background:transparent;color:inherit;font-weight:700}
.migla-donation-amount input:checked+span{border-color:var(--migla-primary);background:color-mix(in srgb,var(--migla-primary) 7%,transparent);color:var(--migla-primary)}
.migla-donation-custom-amount{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.2rem;color:var(--migla-muted);font-size:.95rem;font-weight:650}
.migla-donation-money-input{display:flex;align-items:center;width:min(220px,55%);border:1px solid var(--migla-border);border-radius:var(--migla-radius);background:var(--migla-input)}
.migla-donation-money-input b{padding-left:.8rem;color:var(--migla-muted)}
.migla-donation-money-input input{width:100%;min-height:2.8rem;padding:.65rem .75rem;border:0!important;outline:0;background:transparent;box-shadow:none!important;font:inherit}
.migla-donation-frequency{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}
.migla-donation-frequency label{display:block}
.migla-donation-frequency input{position:absolute;opacity:0}
.migla-donation-frequency span{display:grid;place-items:center;min-height:2.85rem;padding:.55rem;border:1px solid var(--migla-border);border-radius:var(--migla-radius);background:transparent;font-weight:650;cursor:pointer}
.migla-donation-frequency input:checked+span{border-color:var(--migla-primary);color:var(--migla-primary)}
.migla-donation-section-note{margin:.65rem 0 0;color:var(--migla-muted);font-size:.88rem}
.migla-donation-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--migla-field-gap)}
.migla-donation-field{display:flex;flex-direction:column;gap:.4rem;min-width:0;color:inherit;font-size:.96rem;font-weight:650}
.migla-donation-field--full{grid-column:1/-1}
.migla-donation-field b{color:var(--migla-error)}
.migla-donation-field input:not([type=checkbox]):not([type=radio]),
.migla-donation-field select,
.migla-donation-field textarea{
  width:100%;min-height:3rem;padding:.7rem .78rem;border:1px solid var(--migla-border);border-radius:var(--migla-radius);background:var(--migla-input);color:inherit;font:inherit;box-shadow:none
}
.migla-donation-field textarea{min-height:6rem;resize:vertical}
.migla-donation-field input:focus,.migla-donation-field select:focus,.migla-donation-field textarea:focus{border-color:var(--migla-primary);outline:2px solid color-mix(in srgb,var(--migla-primary) 18%,transparent);outline-offset:1px}
.migla-donation-field .has-error{border-color:var(--migla-error)!important;outline:2px solid color-mix(in srgb,var(--migla-error) 14%,transparent)!important}
.migla-donation-field>small{color:var(--migla-muted);font-size:.86rem;font-weight:400}
.migla-donation-checkbox{flex-direction:row;align-items:flex-start;gap:.65rem;padding:.35rem 0;font-weight:500}
.migla-donation-checkbox input{width:1.1rem;height:1.1rem;margin-top:.15rem;accent-color:var(--migla-primary)}
.migla-donation-option-row{display:flex;align-items:flex-start;gap:.7rem;margin:.75rem 0;padding:.75rem 0;border:0;border-top:1px solid var(--migla-border);background:transparent}
.migla-donation-option-row input{width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:var(--migla-primary)}
.migla-donation-option-row strong,.migla-donation-option-row small{display:block}
.migla-donation-option-row strong{font-size:.97rem}
.migla-donation-option-row small{margin-top:.15rem;color:var(--migla-muted);font-size:.86rem}
.migla-donation-dependent{margin:.25rem 0 1rem;padding:1rem 0;border-top:1px dashed var(--migla-border)}
.migla-donation-gateways{display:grid;gap:.55rem}
.migla-donation-gateway{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.75rem .8rem;border:1px solid var(--migla-border);border-radius:var(--migla-radius);background:transparent;cursor:pointer}
.migla-donation-gateway:has(input:checked){border-color:var(--migla-primary)}
.migla-donation-gateway input{width:1rem;height:1rem;accent-color:var(--migla-primary)}
.migla-donation-gateway span{display:flex;flex-direction:column}
.migla-donation-gateway small{color:var(--migla-muted);font-size:.84rem}
.migla-donation-gateway em{font-size:.72rem;font-style:normal;font-weight:700}
.migla-donation-hosted-payment{display:flex;align-items:flex-start;gap:.75rem;margin-top:.75rem;padding:.8rem;border-left:3px solid var(--migla-border);background:transparent;color:var(--migla-muted)}
.migla-donation-hosted-payment strong,.migla-donation-hosted-payment small{display:block}
.migla-donation-hosted-payment strong{color:inherit;font-size:.94rem}
.migla-donation-hosted-payment small{margin-top:.15rem;font-size:.84rem}
.migla-donation-summary{margin:1rem 0;padding:.85rem 0;border-top:1px solid var(--migla-border);border-bottom:1px solid var(--migla-border);background:transparent}
.migla-donation-summary div{display:flex;justify-content:space-between;gap:1rem;color:var(--migla-muted);font-size:.94rem}
.migla-donation-summary div+div{margin-top:.35rem}
.migla-donation-summary strong{color:inherit}
.migla-donation-summary .is-total{padding-top:.55rem;border-top:1px solid var(--migla-border)}
.migla-donation-summary .is-total strong{font-size:1.2rem}
.migla-donation-submit,.migla-donation-next,.migla-donation-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:var(--migla-button-height);padding:.7rem 1.15rem;border:1px solid var(--migla-primary);border-radius:var(--migla-radius);background:var(--migla-primary);color:var(--migla-primary-text);font:inherit;font-weight:700;cursor:pointer;box-shadow:none}
.migla-donation-submit{width:100%}
.migla-donation-secondary{border-color:var(--migla-border);background:transparent;color:inherit}
.migla-donation-step-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--migla-border)}
.migla-donation-next{margin-left:auto}
.migla-donation-submit:disabled{opacity:.65;cursor:wait}
.migla-donation-spinner{display:none;width:1rem;height:1rem;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:migla-spin .7s linear infinite}
.migla-donation-submit.is-loading .migla-donation-spinner{display:block}
@keyframes migla-spin{to{transform:rotate(360deg)}}
.migla-donation-secure-note{margin:.7rem 0 0;color:var(--migla-muted);text-align:center;font-size:.82rem}
.migla-donation-error-summary{margin:0 0 1rem;padding:.85rem;border-left:4px solid var(--migla-error);background:color-mix(in srgb,var(--migla-error) 5%,transparent);color:var(--migla-error)}
.migla-donation-success{padding:1.5rem 0;text-align:left}
.migla-donation-success__icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;margin:0 0 1rem;border-radius:50%;background:color-mix(in srgb,var(--migla-success) 10%,transparent);color:var(--migla-success);font-size:1.3rem;font-weight:800}
.migla-donation-success h3{margin:0 0 .5rem;font-size:1.65rem}
.migla-donation-success p{max-width:55ch;color:var(--migla-muted)}
.migla-donation-success dl{max-width:480px;margin:1rem 0;padding:.8rem 0;border-top:1px solid var(--migla-border);border-bottom:1px solid var(--migla-border)}
.migla-donation-success dl div{display:flex;justify-content:space-between;gap:1rem}
.migla-donation-success dl div+div{margin-top:.35rem}
.migla-donation-success dd{margin:0;font-weight:700}
.migla-donation-receipt-note{color:var(--migla-muted);font-size:.9rem}
.migla-donation-notice{padding:.85rem;border:1px solid #e0b56f;background:#fff7e8}
.migla-donation-progress{max-width:760px;padding:0;background:transparent;border:0}
.migla-donation-progress__head,.migla-donation-progress__meta{display:flex;justify-content:space-between;gap:1rem}
.migla-donation-progress__track{height:.65rem;margin:.65rem 0;background:color-mix(in srgb,var(--migla-border) 75%,transparent);overflow:hidden}
.migla-donation-progress__track span{display:block;height:100%;background:var(--migla-primary,#176b57)}
.migla-donation-progress__meta{color:var(--migla-muted);font-size:.88rem}
.migla-donation-circle{display:inline-flex;flex-direction:column;align-items:center;gap:.65rem}
.migla-donation-circle__ring{display:grid;place-items:center;width:var(--migla-circle-size);height:var(--migla-circle-size);border-radius:50%;background:conic-gradient(var(--migla-circle-color) calc(var(--migla-circle-percent)*1%),#e5ebe8 0);position:relative}
.migla-donation-circle__ring:before{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--wp--preset--color--base,#fff)}
.migla-donation-circle__ring>div{position:relative;z-index:1;text-align:center;padding:1rem}
.migla-donation-circle__ring strong,.migla-donation-circle__ring span{display:block}
.migla-donation-circle__ring strong{font-size:1.65rem}.migla-donation-circle__ring span{font-size:.82rem;color:#65716c}
.migla-donation-circle__meta{display:flex;gap:.75rem;color:#65716c;font-size:.86rem}
.migla-donation-donor-list{display:grid;gap:.7rem}.migla-donation-donor-list>div{padding-bottom:.7rem;border-bottom:1px solid #dde4e1}.migla-donation-donor-list strong,.migla-donation-donor-list span{display:block}.migla-donation-donor-list span{color:#65716c;font-size:.88rem}
.migla-donation-top-donors{margin:0;padding-left:1.3rem}.migla-donation-top-donors li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid #dde4e1}
@media(max-width:680px){.migla-donation-amounts{grid-template-columns:repeat(2,minmax(0,1fr))}.migla-donation-frequency{grid-template-columns:repeat(2,minmax(0,1fr))}.migla-donation-fields{grid-template-columns:1fr}.migla-donation-field--half,.migla-donation-field--full{grid-column:1}.migla-donation-step-nav{flex-wrap:wrap}.migla-donation-step-nav li strong{display:none}.migla-donation-step-actions{flex-direction:column-reverse}.migla-donation-next,.migla-donation-secondary{width:100%;margin:0}}

/* 0.4.1 validation clarity */
.migla-donation-field[hidden],
.migla-donation-dependent[hidden],
.migla-donation-field[data-condition-field][hidden]{display:none!important}
.migla-donation-field.has-error input:not([type=checkbox]):not([type=radio]),
.migla-donation-field.has-error select,
.migla-donation-field.has-error textarea{border-color:var(--migla-error)!important;outline:2px solid color-mix(in srgb,var(--migla-error) 14%,transparent)!important;outline-offset:1px}
.migla-donation-field.has-error>span,
.migla-donation-field.has-error>span strong{color:var(--migla-error)}
.migla-donation-field-error{display:block!important;width:100%;margin:.15rem 0 0;color:var(--migla-error)!important;font-size:.88rem!important;font-weight:650!important;line-height:1.4}

/* Public anti-spam field is intentionally unavailable to people and assistive technology. */
.migla-donation-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; opacity:0!important; pointer-events:none!important; }

/* Hosted gateway surfaces */
.migla-donation-gateway-panel {
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid var(--migla-border);
  border-radius: var(--migla-radius);
  background: var(--migla-input);
}

.migla-donation-gateway-panel[hidden],
.migla-donation-payment-loading[hidden] {
  display: none !important;
}

.migla-donation-payment-loading {
  margin-bottom: .75rem;
  color: var(--migla-muted);
  font-size: .92rem;
}

[data-stripe-payment-element],
[data-stripe-subscription-checkout],
[data-paypal-buttons] {
  min-height: 44px;
}

[data-stripe-subscription-checkout]:empty,
[data-stripe-payment-element]:empty,
[data-paypal-buttons]:empty {
  min-height: 0;
}

.migla-donation-gateway-panel iframe {
  max-width: 100%;
}
