/* Free Shipping Progress v1.5.0 — Info Media BG. All selectors scoped. */
#imfsp-root[hidden], #imfsp-root [hidden] { display: none !important; }
#imfsp-root.imfsp-widget {
  display: block; box-sizing: border-box; width: 100%; max-width: 100%;
  margin: 15px auto 24px; padding: 6px 10px 0; color: #53565a;
  font-family: inherit; font-size: 16px; text-align: center;
  clear: both; float: none; line-height: 1.4;
}
#imfsp-root *, #imfsp-root *::before, #imfsp-root *::after { box-sizing: border-box; }
#imfsp-root .imfsp-progress {
  position: relative; width: min(100%, 496px); max-width: 100%; height: 7px;
  background: var(--imfsp-track, #d2d2d2); margin: 5px auto 27px; border-radius: 0;
}
#imfsp-root .imfsp-progress-fill {
  display: block; height: 100%; background: var(--imfsp-fill, #ed6a5f);
  transition: width .35s ease; max-width: 100%; min-width: 0;
}
#imfsp-root .imfsp-progress-badge {
  position: absolute; top: 50%; transform: translate(-50%, -50%);
  display: inline-flex; align-items: center; justify-content: center;
  width: 25px; height: 25px; border: 1px solid var(--imfsp-fill, #ed6a5f);
  background: #fff; border-radius: 50%; color: #616161; font-size: 9px;
  font-weight: 400; line-height: 1; white-space: nowrap;
  transition: left .35s ease; z-index: 1;
}
#imfsp-root .imfsp-message { line-height: 1.5; overflow-wrap: anywhere; }
#imfsp-root .imfsp-intro, #imfsp-root .imfsp-middle { font-weight: 400; }
#imfsp-root .imfsp-amount { font-weight: 400; color: var(--imfsp-amount, #da537a); font-size: 21px; margin: 0 2px; }
#imfsp-root .imfsp-reward, #imfsp-root .imfsp-complete-message { font-weight: 700; color: #53565a; }
#imfsp-root .imfsp-note { margin-top: 5px; color: #777; font-size: 12px; }
#imfsp-root .imfsp-preview-note { margin-top: 5px; color: #777; font-size: 11px; line-height: 1.4; }
#imfsp-root .imfsp-preview-note[hidden] { display: none !important; }
@media (max-width: 767px) {
  #imfsp-root.imfsp-widget { padding: 3px 2px 0; margin: 12px auto 17px; font-size: 14px; }
  #imfsp-root .imfsp-progress { width: calc(100% - 28px); margin-bottom: 24px; }
  #imfsp-root .imfsp-amount { font-size: 18px; }
}

/* Only the purchase-controls group gains a full-width first row for the widget.
   The promotion stays OUTSIDE this group; both scripts now have stable anchors. */
.imfsp-purchase-slot { flex-wrap: wrap; }
.imfsp-purchase-slot > #imfsp-root { width: 100%; flex: 0 0 100%; grid-column: 1 / -1; min-width: 0; order: -9999; }
