.customer-coupons { margin: 16px 0; padding: 16px 0; border-block: 1px solid #dce4e3; min-width: 0; }
.customer-coupons h2, .customer-coupons h3 { font-size: 18px; margin: 0 0 12px; letter-spacing: 0; }
.customer-coupons h2, .customer-coupons h3 { position: relative; }
.customer-coupons .shop-help { position: static; }
.customer-coupons .shop-help__popup { left: 0; transform: none; max-width: 100%; font-family: var(--shop-font-body); }
.customer-coupons .shop-help__trigger { flex-shrink: 0; }
.coupon-options { display: grid; gap: 0; }
.customer-coupons .coupon-card { display: flex; align-items: center; gap: 12px; padding: 10px; margin: 0; border: 0; border-bottom: 1px solid #e5e9e8; border-radius: 0; box-shadow: none; min-width: 0; background: white; cursor: pointer; }
.customer-coupons .coupon-card:has(input:checked) { background: #ecf7f4; }
.customer-coupons .coupon-card input { position: static; opacity: 1; appearance: auto; flex: 0 0 18px; width: 18px; height: 18px; margin: 0; accent-color: #087d70; }
.customer-coupons .coupon-card span { min-width: 0; overflow-wrap: anywhere; }
.customer-coupons small { display: block; color: #596763; font-size: 12px; }
.coupon-muted { color: #596763; font-size: 14px; }
.coupon-saving { margin-left: auto; white-space: nowrap; font-size: 14px; }
.order-coupon-callout, .payment-section .order-summary { overflow-wrap: anywhere; }
.order-payment-breakdown .order-row > :first-child { min-width: 0; overflow-wrap: anywhere; }
.order-payment-breakdown .order-row > :last-child { flex-shrink: 0; }
.payment-section .breakdown-label { min-width: 0; overflow-wrap: anywhere; }
.payment-section .breakdown-value { flex-shrink: 0; white-space: nowrap; margin-left: 12px; }
.coupon-actions, .coupon-summary { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin: 12px 0; }
.coupon-actions button { min-height: 40px; border-radius: 6px; }
.coupon-summary { padding-block: 12px; border-bottom: 1px solid #dce4e3; }
.coupon-summary a { margin-left: auto; }
.dashboard-rewards { display: grid; gap: 8px; margin: 14px 0 20px; }
.dashboard-reward { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 14px 16px; border: 1px solid #b7d9d1; border-left: 4px solid #087d70; border-radius: 8px; background: #f1faf7; color: #143140; }
.dashboard-reward--pending { border-color: #d8d6c8; border-left-color: #877b45; background: #fbfaf3; }
.dashboard-reward__icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: #d8f0e9; color: #087d70; font-size: 18px; }
.dashboard-reward--pending .dashboard-reward__icon { background: #eee9d2; color: #6d622f; }
.dashboard-reward__body { min-width: 0; }
.dashboard-reward__eyebrow { display: block; margin-bottom: 2px; color: #52605e; font-size: 12px; font-weight: 750; text-transform: uppercase; }
.dashboard-reward h2 { margin: 0; color: #143140; font-size: 20px; line-height: 1.25; letter-spacing: 0; }
.dashboard-reward p { margin: 4px 0 0; color: #465651; font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; }
.dashboard-reward small { display: block; margin-top: 3px; color: #596763; font-size: 12px; }
.dashboard-reward__actions { display: flex; flex-direction: column; align-items: center; gap: 7px; min-width: 150px; }
.dashboard-reward__details { color: #176b63; font-size: 13px; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.coupon-tabs { display: flex; gap: 20px; overflow-x: auto; margin-bottom: 12px; }
.coupon-tabs a { flex: 0 0 auto; padding: 8px 0; color: #52605e; }
.coupon-tabs a[aria-current="page"] { color: #087d70; border-bottom: 2px solid #087d70; font-weight: 700; }
.coupon-wallet-row { display: grid; grid-template-columns: minmax(150px, 1fr) minmax(180px, 2fr) 160px; gap: 16px; padding: 12px 0; border-bottom: 1px solid #e5e9e8; align-items: start; }
.coupon-wallet-row > * { min-width: 0; overflow-wrap: anywhere; }
[data-coupon-error]:empty { display: none; }
[data-coupon-error] { color: #92400e; margin: 8px 0 0; }
@media (max-width: 600px) {
  .coupon-wallet-row { grid-template-columns: 1fr; gap: 4px; }
  .dashboard-reward { grid-template-columns: 40px minmax(0, 1fr); padding: 12px; }
  .dashboard-reward__actions { grid-column: 1 / -1; width: 100%; align-items: stretch; min-width: 0; }
  .dashboard-reward__actions .shop-btn-pill { width: 100%; }
  .dashboard-reward__details { align-self: center; padding: 4px; }
}
