/* Merchant palette stays scoped to the checkout; operational success/error states keep their meaning. */
#stpCheckoutModal .stp-modal-panel,#stpCheckoutModal .stp-modal-scroll,#stpCheckoutModal .stp-banner-head{background:var(--stp-ui-surface)!important;color:var(--stp-ui-text)!important}
#stpCheckoutModal :is(.stp-banner-fallback h2,.stp-payment-head h2,.stp-step-heading h3,.stp-mini-title strong,.stp-order-compact-copy strong,.stp-payment-copy strong,.stp-pay-guide-label strong,.stp-pay-destination-name strong,.stp-returning-delivery h3){color:var(--stp-ui-text)!important}
#stpCheckoutModal :is(.stp-step-heading small,.stp-payment-copy small,.stp-pay-holder,.stp-pay-holder b,.stp-pay-destination-name small,.stp-location-selected-meta,.stp-returning-delivery-place,.stp-delivery-memory-note){color:var(--stp-ui-muted)!important}
#stpCheckoutModal .stp-modal-panel :is(.stp-next-button,.stp-place-order,.stp-cod-step2-order){background:var(--stp-accent)!important;color:var(--stp-ui-button-text)!important;border-color:var(--stp-accent)!important;border-radius:var(--stp-ui-radius)!important}
#stpCheckoutModal .stp-modal-panel :is(.stp-next-button,.stp-place-order,.stp-cod-step2-order)>:is(span,small){color:inherit!important;overflow-wrap:anywhere;white-space:normal}
#stpCheckoutModal .stp-modal-panel :is(.stp-next-button,.stp-place-order,.stp-cod-step2-order):disabled{opacity:.55!important;cursor:not-allowed!important}
#stpCheckoutModal :is(.stp-use-saved-delivery,.stp-geo-confirm-use,.stp-agency-pick,.stp-agency-retry,.stp-retry-checkout,.stp-exit-accept){background:var(--stp-primary)!important;color:var(--stp-ui-button-text)!important;border-color:var(--stp-primary)!important;border-radius:var(--stp-ui-radius)!important;white-space:normal;overflow-wrap:anywhere}
#stpCheckoutModal .stp-modal-panel :is(.stp-back-button,.stp-change-location,.stp-step3-destination-edit,.stp-edit-saved-delivery,.stp-geo-confirm-manual,.stp-open-agency-picker,.stp-invoice-toggle,.stp-pay-amount-option),#stpCheckoutModal .stp-exit-decline{background:var(--stp-ui-secondary-bg)!important;color:var(--stp-primary)!important;border-color:var(--stp-ui-border)!important;border-radius:var(--stp-ui-radius)!important;white-space:normal;overflow-wrap:anywhere}
#stpCheckoutModal :is(.stp-forget-delivery,.stp-edit-customer){color:var(--stp-primary)!important;white-space:normal;overflow-wrap:anywhere}
#stpCheckoutModal :is(.stp-back-button,.stp-change-location,.stp-step3-destination-edit,.stp-edit-saved-delivery,.stp-geo-confirm-manual,.stp-invoice-toggle){min-height:44px!important}
#stpCheckoutModal .stp-modal-close,#stpCheckoutModal .stp-inline-agency-close{background:var(--stp-ui-secondary-bg)!important;color:var(--stp-primary)!important;border-color:var(--stp-ui-border)!important}
#stpCheckoutModal :is(.stp-payment-option,.stp-shipping-option,.stp-pay-destination-card,.stp-returning-delivery,.stp-location-selected){border-color:var(--stp-ui-border)!important;border-radius:var(--stp-ui-radius)!important}
#stpCheckoutModal :is(.stp-payment-option.is-selected,.stp-shipping-option.is-selected,.stp-pay-origin-option.is-selected,.stp-pay-amount-option.is-selected){border-color:var(--stp-primary)!important;background:color-mix(in srgb,var(--stp-primary) 7%,var(--stp-ui-surface))!important}
#stpCheckoutModal :is(.stp-pay-origin-option,.stp-pay-amount-option){border-radius:var(--stp-ui-radius)!important}
#stpCheckoutModal .stp-pay-origin-option.is-selected{box-shadow:inset 0 0 0 1px var(--stp-primary)!important}
#stpCheckoutModal .stp-pay-destination-card{background:var(--stp-ui-surface)!important}
#stpCheckoutModal .stp-pay-help>summary,#stpCheckoutModal .stp-pay-qr-disclosure>summary{color:var(--stp-primary)!important}
#stpCheckoutModal .stp-copy-pay{border-radius:var(--stp-ui-radius)!important}
#stpCheckoutModal .stp-copy-pay:not(.is-copied):not(.is-copy-error){background:var(--stp-ui-bank-bg)!important;color:var(--stp-ui-bank-text)!important;border-color:color-mix(in srgb,var(--stp-ui-bank-text) 50%,var(--stp-ui-bank-bg))!important}
#stpCheckoutModal .stp-copy-pay.is-branded:not(.is-copied):not(.is-copy-error){background:var(--stp-ui-wallet-bg)!important;color:var(--stp-ui-wallet-text)!important;border-color:color-mix(in srgb,var(--stp-ui-wallet-text) 50%,var(--stp-ui-wallet-bg))!important}
#stpCheckoutModal .stp-receipt-upload{border-radius:var(--stp-ui-radius)!important}
#stpCheckoutModal .stp-receipt-upload:not(.is-success):not(.is-error):not(.is-uploading){background:var(--stp-ui-receipt-bg)!important;border-color:var(--stp-ui-receipt-text)!important}
#stpCheckoutModal .stp-receipt-upload:not(.is-success):not(.is-error):not(.is-uploading) :is(.stp-receipt-title,.stp-receipt-desc){color:var(--stp-ui-receipt-text)!important}
#stpCheckoutModal .stp-receipt-upload:not(.is-success):not(.is-error):not(.is-uploading) .stp-receipt-icon{background:var(--stp-ui-receipt-text)!important;color:var(--stp-ui-receipt-bg)!important}
#stpCheckoutModal :is(button,label,input):focus-visible{outline-color:var(--stp-primary)!important}

/* Two immediately available ways to choose a district, with no extra screen. */
#stpCheckoutModal .stp-use-location{display:grid!important;grid-template-columns:46px minmax(0,1fr) 16px!important;align-items:center!important;gap:12px!important;width:100%!important;min-height:90px!important;margin:4px 0 0!important;padding:17px 14px!important;text-align:left!important;border:1px solid color-mix(in srgb,var(--stp-primary) 35%,var(--stp-ui-border))!important;border-radius:var(--stp-ui-radius)!important;background:var(--stp-ui-location-bg)!important;box-shadow:0 4px 12px #173d2f08!important}
#stpCheckoutModal .stp-use-location:hover{background:var(--stp-ui-location-bg)!important;border-color:var(--stp-primary)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--stp-primary) 15%,transparent)!important}
#stpCheckoutModal .stp-use-location-icon{width:46px!important;height:46px!important;margin:0!important;border-radius:12px!important;background:var(--stp-primary)!important;color:var(--stp-ui-button-text)!important}
#stpCheckoutModal .stp-use-location-icon svg{width:25px;height:25px}
#stpCheckoutModal .stp-use-location-copy{align-items:flex-start!important;text-align:left!important;gap:5px!important}
#stpCheckoutModal .stp-use-location-copy strong{font-size:16px!important;line-height:1.3!important;color:var(--stp-ui-text)!important;overflow-wrap:anywhere}
#stpCheckoutModal .stp-use-location-copy small{font-size:12px!important;line-height:1.45!important;color:var(--stp-ui-muted)!important;overflow-wrap:anywhere}
#stpCheckoutModal .stp-location-chevron{font-size:26px;line-height:1;color:var(--stp-primary)}
#stpCheckoutModal .stp-location-or{width:100%!important;margin:12px 0!important;gap:12px!important;font-size:12px!important;text-transform:none!important;color:var(--stp-ui-muted)!important}
#stpCheckoutModal .stp-location-or:before,#stpCheckoutModal .stp-location-or:after{background:var(--stp-ui-border)!important}
#stpCheckoutModal .stp-district-card{padding:16px 14px;border:1px solid var(--stp-ui-border);border-radius:var(--stp-ui-radius);background:var(--stp-ui-surface)}
#stpCheckoutModal .stp-district-label{display:flex;align-items:center;gap:9px;margin:0 0 12px;cursor:text;color:var(--stp-ui-text)!important;font-size:15px!important;font-weight:650!important;line-height:1.4;overflow-wrap:anywhere}
#stpCheckoutModal .stp-district-label svg{width:22px;height:22px;flex:none;color:var(--stp-primary)}
#stpCheckoutModal .stp-district-card .stp-location-search-wrap{display:flex!important;align-items:center!important;width:100%!important;margin:0!important;min-height:52px!important;border:1px solid var(--stp-ui-border)!important;border-radius:var(--stp-ui-radius)!important;background:var(--stp-ui-surface)!important}
#stpCheckoutModal .stp-district-card .stp-location-search-wrap:focus-within{border-color:var(--stp-primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--stp-primary) 14%,transparent)!important}
#stpCheckoutModal .stp-district-search-icon{width:20px;height:20px;margin-left:12px;flex:none;color:var(--stp-ui-muted)}
#stpCheckoutModal .stp-district-card input#stp_location_search{flex:1;font-size:16px!important;line-height:1.4!important;min-width:0!important;text-align:left!important;padding:12px 10px!important;color:var(--stp-ui-text)!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}
#stpCheckoutModal .stp-district-card input#stp_location_search::placeholder{font-size:14px!important;color:var(--stp-ui-muted)!important;opacity:1}
#stpCheckoutModal #stpDistrictHint{display:block;margin:9px 0 0;font-size:12px!important;line-height:1.45!important;color:var(--stp-ui-muted)!important}
#stpCheckoutModal .stp-district-card .stp-location-results{margin-top:12px;background:var(--stp-ui-surface);border-color:var(--stp-ui-border);border-radius:var(--stp-ui-radius);max-height:220px}
#stpCheckoutModal .stp-district-card .stp-location-option{min-height:54px;background:var(--stp-ui-surface);border-color:var(--stp-ui-border);padding:11px 12px!important}
#stpCheckoutModal .stp-district-card .stp-location-option strong{color:var(--stp-ui-text)!important;font-size:14px!important}
#stpCheckoutModal .stp-district-card .stp-location-option small{color:var(--stp-ui-muted)!important;font-size:12px!important}
#stpCheckoutModal .stp-district-card .stp-location-option:hover{background:var(--stp-ui-location-bg)}
#stpCheckoutModal .stp-geo-confirm{width:100%!important;border-color:var(--stp-ui-border)!important;background:var(--stp-ui-location-bg)!important;border-radius:var(--stp-ui-radius)!important}
#stpCheckoutModal .stp-geo-confirm-actions{width:100%;gap:8px!important}
#stpCheckoutModal .stp-geo-confirm-actions button{min-height:44px!important;padding:10px!important;font-size:12px!important;line-height:1.4!important}
#stpCheckoutModal .stp-geo-status{width:100%!important;font-size:12px!important;line-height:1.5!important}
@media(max-width:360px){#stpCheckoutModal .stp-use-location{grid-template-columns:40px minmax(0,1fr) 12px!important;gap:9px!important;padding:14px 12px!important}#stpCheckoutModal .stp-use-location-icon{width:40px!important;height:40px!important}#stpCheckoutModal .stp-use-location-copy strong{font-size:15px!important}}
