/* 1.2.8: native WooCommerce product cards. No custom card/grid styles. */
.sw-rewards-balance-card{padding:25px;background:#edf8f8;border-radius:12px;margin-bottom:18px}
.sw-rewards-balance-card span{display:block;color:#5f777b}
.sw-rewards-balance-card strong{display:block;font-size:40px;margin:7px 0}
.sw-rewards-balance-card p{margin:0;font-size:13px}
.sw-rewards-table-wrap{overflow-x:auto}
.sw-rewards-table-wrap table{width:100%}
.sw-rewards-shop{width:100%;max-width:100%;min-width:0}
.sw-rewards-shop-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:0 0 20px}
.sw-rewards-shop-heading h2{margin:0 0 6px}
.sw-rewards-shop-heading p{margin:0;color:#52676d}
.sw-rewards-shop-points{background:#edf8f8;padding:12px 20px;border-radius:10px;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.sw-rewards-shop-points span{color:#3b6065;font-size:13px}
.sw-rewards-shop-points strong{font-size:24px;font-variant-numeric:tabular-nums}
.sw-rewards-shop-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:0 0 20px}
.sw-rewards-shop-controls label{font-size:13px;font-weight:600;display:flex;gap:6px;flex-direction:column}
.sw-rewards-shop-controls select{min-width:145px;max-width:100%;font-size:14px}
.sw-rewards-shop-controls .sw-rewards-affordable{flex-direction:row;align-items:center;padding:10px 0}
/* Preserve WoodMart/Shoptimizer/WooCommerce .products grid, card and review CSS. */
.sw-rewards-native-shop ul.products{clear:both}
.sw-rewards-native-shop .woocommerce-pagination{clear:both;margin:22px 0}
@media(max-width:520px){.sw-rewards-shop-controls{gap:9px}.sw-rewards-shop-controls select{min-width:110px}.sw-rewards-shop-points{padding:9px 12px}.sw-rewards-shop-points strong{font-size:20px}}

.sw-rewards-earn-preview{display:flex;gap:3px;align-items:center;flex-wrap:wrap;font-size:13px;color:#303842;margin:7px 0 13px;line-height:1.45}
.sw-rewards-earn-preview strong{font-weight:700}
.sw-rewards-earn-preview[hidden]{display:none!important}
.sw-rewards-earn-preview .sw-rewards-earn-coin{margin-right:4px}
.sw-rewards-redeem-price-info{margin:10px 0;font-size:14px}
.sw-rewards-redeem-price-info small{display:block;font-size:12px;color:#65747a}
/* Storefront 的 after_meta 插槽：PHP 首屏在 BCH 价格卡片内部输出，不用 JS 移动。 */
.bch-ppc__main > .sw-rewards-earn-preview{margin:7px 0 0;line-height:1.4;min-width:0}
/* 旧版 Storefront 未提供插槽时，保留 WooCommerce 购买区域的兜底间距。 */
.bch-ppc + .sw-rewards-earn-preview{margin:7px 0 13px}
/* 独立的积分兑换入口，不能覆盖普通 WooCommerce 购买表单 */
.sw-rewards-redeem-single{border:1px solid #dce8e9;border-radius:10px;padding:15px;margin:15px 0 22px;clear:both}
.sw-rewards-redeem-single h3{font-size:17px;margin:0 0 9px}
.sw-rewards-redeem-single p{margin:0 0 10px}
.sw-rewards-redeem-single small{font-size:12px;color:#65747a;display:block;margin-top:8px}
.sw-rewards-redeem-single .sw-rewards-redeem-form{margin:0!important}
.sw-rewards-redeem-form button[disabled]{opacity:.5;cursor:not-allowed}

/* 1.2.4: WooCommerce 主购买按钮由主题控制。兑换模式绝不修改按钮颜色、尺寸、圆角和布局。 */
.sw-rewards-points-value{display:inline-flex;gap:4px;font-weight:700;white-space:nowrap;color:var(--bch-ppc-color-sale,var(--wd-primary-color,#168a9a))}
.sw-rewards-points-value--debit{color:#b45309}
.sw-rewards-points-value-number{font-variant-numeric:tabular-nums}
.sw-rewards-points-value-unit{color:var(--bch-ppc-color-regular,#8e969e);font-size:.82em;font-weight:500;text-decoration:none} 
.sw-rewards-points-summary .sw-rewards-points-value,.sw-rewards-points-balance .sw-rewards-points-value,.sw-rewards-points-earn .sw-rewards-points-value{justify-content:flex-end}

.sw-rewards-points-summary th,.sw-rewards-points-balance th,.sw-rewards-points-earn th{font-weight:600}
.sw-rewards-order-points{padding:10px;border:1px solid #d8eef0;border-radius:8px}
.sw-rewards-mixed-redeem{border:0!important;padding:0!important;margin:0!important;background:transparent!important;box-shadow:none!important}
.sw-rewards-mixed-redeem:not(:has(.sw-rewards-points-add,.sw-rewards-login-points)){display:none!important}
.sw-rewards-mixed-redeem .sw-rewards-points-add,.sw-rewards-mixed-redeem .sw-rewards-login-points{display:block;margin-top:9px}
.sw-rewards-points-context.single-product .bch-ppc,
.sw-rewards-points-context.single-product .bch-ppc-mobile-timer-wrap,
.sw-rewards-points-context.single-product .summary .woocommerce-variation-price,
.sw-rewards-points-context.single-product .summary .sw-rewards-earn-preview{display:none!important}
/* 详情提示：紧接 Woo 数量控件后、主购买按钮之前。不接管按钮 / 收藏样式。 */
.sw-rewards-points-context.single-product .summary .sw-rewards-points-purchase-hint{
  display:flex;align-items:center;min-width:0;width:100%;flex:0 0 100%;grid-column:1/-1;
  clear:both;box-sizing:border-box;margin:12px 0 10px;padding:0;
  color:inherit;font-size:14px;font-weight:400;line-height:1.5;
}
.sw-rewards-points-purchase-hint .sw-rewards-points-price-html{display:inline-flex;align-items:baseline;gap:0;flex-wrap:wrap}
.sw-rewards-points-purchase-hint .sw-rewards-points-price-coin{margin-right:8px;align-self:center;font-size:18px;line-height:1}
.sw-rewards-points-purchase-hint .sw-rewards-points-price-number{color:inherit;font-size:inherit;font-weight:650;font-variant-numeric:tabular-nums}
.sw-rewards-points-purchase-hint .sw-rewards-points-copy-prefix,
.sw-rewards-points-purchase-hint .sw-rewards-points-copy-suffix{white-space:pre-wrap}
.sw-rewards-points-purchase-hint .sw-rewards-points-unavailable{color:#bc3347}
.sw-rewards-points-purchase-hint [hidden]{display:none!important}
/* 商品归档继续使用主题原生 price HTML，仅统一积分数值与单位颜色。 */
.woocommerce ul.products li.product .price .sw-rewards-points-price-html,
.sw-rewards-points-shop-archive .product .price .sw-rewards-points-price-html{display:inline-flex;gap:0;align-items:baseline;flex-wrap:wrap}
.sw-rewards-points-price-html .sw-rewards-points-price-coin{margin-right:5px;color:#e0b33b}
.sw-rewards-points-price-html .sw-rewards-points-price-number{color:var(--wd-primary-color,var(--bch-ppc-color-sale,#ec1670));font-variant-numeric:tabular-nums}
.sw-rewards-points-price-html .sw-rewards-points-copy-prefix,
.sw-rewards-points-price-html .sw-rewards-points-copy-suffix{color:var(--bch-ppc-color-regular,#9ca3af);font-weight:500;white-space:pre-wrap;text-decoration:none}
.sw-rewards-points-shop-archive .product .price .woocommerce-Price-amount{display:none!important}
/* 1.2.5: asynchronous cart feedback; native WooCommerce button styling remains untouched. */
.sw-rewards-ajax-cart-message{font-size:13px;line-height:1.5;margin:9px 0 0;clear:both}
.sw-rewards-ajax-cart-message[hidden]{display:none!important}
.sw-rewards-ajax-cart-message.sw-rewards-ajax-cart-success{color:#24824e}
.sw-rewards-ajax-cart-message.sw-rewards-ajax-cart-error{color:#bc3347}
.sw-rewards-ajax-cart-message a{margin-left:9px;text-decoration:underline;color:inherit}

/* 1.4.0: My Points — 仅限定当前会员积分中心，不覆盖 Woo 原生账户布局。 */
.sw-rewards-points-account{width:100%;min-width:0;max-width:100%}
.sw-rewards-points-account .sw-rewards-balance-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0 0 24px;padding:22px}
.sw-rewards-points-account .sw-rewards-balance-card strong{margin:0;font-variant-numeric:tabular-nums}
.sw-rewards-points-account .sw-rewards-balance-card .button{margin-top:11px}
.sw-rewards-points-account .sw-rewards-points-section{margin:0 0 30px;min-width:0}
.sw-rewards-points-account .sw-rewards-points-section-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.sw-rewards-points-account .sw-rewards-points-section-header h3{margin:0}
.sw-rewards-points-account .sw-rewards-points-section-header>span,.sw-rewards-points-account .sw-rewards-points-muted{color:#64767c;font-size:13px}
.sw-rewards-points-account .sw-rewards-table-wrap{max-width:100%;overflow-x:auto}
.sw-rewards-points-account .shop_table{margin:0;width:100%}
.sw-rewards-points-account .shop_table th,.sw-rewards-points-account .shop_table td{vertical-align:middle}
.sw-rewards-points-account .sw-rewards-points-event-note{display:block;color:#64767c;font-size:12px;margin-top:3px;overflow-wrap:anywhere}
.sw-rewards-points-account .sw-rewards-points-delta{font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
.sw-rewards-points-account .sw-rewards-points-delta.is-credit{color:#24824e}
.sw-rewards-points-account .sw-rewards-points-delta.is-debit{color:inherit}
.sw-rewards-points-account .sw-rewards-points-pagination{margin:14px 0 4px}
.sw-rewards-points-account .sw-rewards-points-pagination ul{display:flex;gap:5px;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.sw-rewards-points-account .sw-rewards-points-pagination .page-numbers a,.sw-rewards-points-account .sw-rewards-points-pagination .page-numbers span{display:block;padding:5px 10px;text-decoration:none;border:1px solid currentColor;border-radius:4px}
.sw-rewards-points-account .sw-rewards-points-rules ul{padding-left:20px}
.sw-rewards-points-account .sw-rewards-points-rules li{margin:0 0 8px}
@media(max-width:600px){.sw-rewards-points-account .sw-rewards-balance-card{padding:16px}.sw-rewards-points-account .shop_table th,.sw-rewards-points-account .shop_table td{font-size:13px}}

