.free-shipping-progress {
    --free-shipping-accent: #16834a;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    border: 1px solid color-mix(in srgb, var(--free-shipping-accent) 22%, #fff);
    border-radius: 13px;
    color: #245b3d;
    background: color-mix(in srgb, var(--free-shipping-accent) 5%, #fff);
}

.free-shipping-progress__icon {
    display: grid;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 11px;
    color: #fff;
    background: var(--free-shipping-accent);
    font-size: 19px;
}

.free-shipping-progress__content { display: grid; flex: 1; gap: 8px; min-width: 0; }
.free-shipping-progress__content > strong { color: #245b3d; font-size: 14px; font-weight: 500; line-height: 1.9; }
.free-shipping-progress__meter { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 10px; }
.free-shipping-progress__meter[hidden] { display: none !important; }
.free-shipping-progress__meter small { color: #53715f; font-size: 12px; white-space: nowrap; }
.free-shipping-progress__track { display: block; width: 100%; height: 7px; overflow: hidden; border-radius: 999px; background: color-mix(in srgb, var(--free-shipping-accent) 15%, #fff); }
.free-shipping-progress__track > span { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--free-shipping-accent); transition: width .25s ease; }
.free-shipping-progress.is-qualified { border-color: color-mix(in srgb, var(--free-shipping-accent) 30%, #fff); background: color-mix(in srgb, var(--free-shipping-accent) 8%, #fff); }
.cart-free-shipping { margin: 0 0 18px; }
.mini-cart-free-shipping { gap: 9px; margin-top: 10px; padding: 10px; border-radius: 11px; }
.mini-cart-free-shipping .free-shipping-progress__icon { flex-basis: 32px; width: 32px; height: 32px; border-radius: 9px; font-size: 16px; }
.mini-cart-free-shipping .free-shipping-progress__content > strong { font-size: 12px; line-height: 1.8; }
.mini-cart-free-shipping .free-shipping-progress__track { height: 5px; }
.free-shipping-checkout { display: flex; align-items: flex-start; gap: 9px; margin: 0 0 12px; padding: 12px 14px; border: 1px solid #d7eadf; border-radius: 11px; color: #315b42; background: #f3faf5; font-size: 13px; line-height: 1.9; }
.free-shipping-checkout .icon-truck { flex: 0 0 auto; margin-top: 3px; color: #16834a; font-size: 18px; }
.free-shipping-checkout.is-qualified { border-color: #b8dfc5; color: #1f6339; background: #edf8f0; }

@media (max-width: 575px) {
    .cart-free-shipping { gap: 9px; padding: 12px; }
    .cart-free-shipping .free-shipping-progress__icon { flex-basis: 34px; width: 34px; height: 34px; }
    .free-shipping-progress__content > strong { font-size: 13px; }
    .free-shipping-progress__meter { grid-template-columns: minmax(0, 1fr); gap: 5px; }
    .free-shipping-progress__meter small { white-space: normal; }
}

@media (prefers-reduced-motion: reduce) {
    .free-shipping-progress__track > span { transition: none; }
}
