.wcbp-wrap{ color: var(--wcbp-text); }

/* Hint / Notice box (Cart + Checkout + Blocks) */
.wcbp-hint{
  padding: 10px 12px;
  border: 1px solid var(--wcbp-border);
  background: var(--wcbp-bg);
  border-radius: 10px;
  margin: 10px 0;

  /* Ensure icon (often injected by theme via ::before) is left,
     and content is right in one column. */
  display:flex;
  align-items:flex-start;
  gap: 10px;
}
.wcbp-content{ display:flex; flex-direction:column; gap: 6px; min-width:0; }
.wcbp-main{ font-weight: 600; }
.wcbp-small{ font-size: 12px; opacity: .8; }

/* Classic Cart/Checkout totals row: force single stacked row (no split columns) */
.woocommerce table.shop_table tr.wcbp-row th,
.woocommerce table.shop_table tr.wcbp-row td{
  display:block;
  width:100%;
  text-align:left;
}
.woocommerce table.shop_table tr.wcbp-row th{ padding-bottom:6px; }
.woocommerce table.shop_table tr.wcbp-row td{ padding-top:0; }

/* Dashboard UI */
.wcbp-cards{ display:grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 12px; margin: 10px 0 20px; }
.wcbp-card{ border: 1px solid var(--wcbp-border); background: var(--wcbp-bg); border-radius: 14px; padding: 14px; }
.wcbp-card-title{ font-size: 13px; opacity: .8; margin-bottom: 8px; }
.wcbp-big{ font-size: 28px; font-weight: 700; color: var(--wcbp-primary); }
.wcbp-code{ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-weight: 700; }
.wcbp-staffles{ display:grid; gap: 10px; margin-bottom: 20px; }
.wcbp-staffle{ display:flex; align-items:center; justify-content:space-between; border:1px solid var(--wcbp-border); background:var(--wcbp-bg); padding: 12px; border-radius: 12px; }
.wcbp-coupon-grid{ display:grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 10px; }
.wcbp-coupon{ border:1px solid var(--wcbp-border); background:var(--wcbp-bg); padding: 12px; border-radius: 12px; }
.wcbp-coupon.is-open{ box-shadow: 0 0 0 2px color-mix(in srgb, var(--wcbp-accent) 35%, transparent); }
.wcbp-coupon.is-used{ opacity: .65; }
.wcbp-table td, .wcbp-table th{ vertical-align: top; }

.wcbp-accordion .wcbp-details{ border:1px solid var(--wcbp-border); border-radius: 12px; background: var(--wcbp-bg); padding: 10px 12px; margin: 8px 0; }
.wcbp-details summary{ list-style:none; cursor:pointer; display:flex; justify-content:space-between; gap:12px; font-weight:600; }
.wcbp-details summary::-webkit-details-marker{ display:none; }
.wcbp-order-pts{ color: var(--wcbp-primary); }

.wcbp-code-line{ display:flex; gap:8px; align-items:baseline; }
.wcbp-code-label{ font-size:12px; opacity:.8; }
.wcbp-actions{ display:flex; gap:10px; margin-top:10px; flex-wrap:wrap; }
.wcbp-actions .button{ margin:0; }

.wcbp-ref-line{ word-break: break-word; }
.wcbp-ref-label{ opacity:.75; margin-right:6px; }
.wcbp-ref-url{ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }

/* Product points: neutral text (no box / no icon) */
.wcbp-product-points{ margin: 10px 0 0 0; padding: 0; border: 0; background: transparent; font: inherit; color: inherit; }

.wcbp-info{ margin: 8px 0 14px 0; }
.wcbp-range-row{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.wcbp-range-input{ max-width: 140px; }
.wcbp-range-result{ margin-right:auto; }

/* Range redeem clamp highlight */
.wcbp-range-input.wcbp-clamped{ outline: 2px solid currentColor; outline-offset: 2px; }

/* My Account layout: use full content width */
.woocommerce-MyAccount-content .wcbp-wrap{ width:100%; max-width:100%; }
.wcbp-wrap{ display:block; }
.wcbp-main{ width:100%; }
.wcbp-stats{ display:grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap:16px; margin-bottom: 22px; }
.wcbp-ref-card{ width:100%; max-width:100%; }
