.bcw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin:20px 0;}
.bcw-card{position:relative;display:flex;border-radius:14px;overflow:hidden;box-shadow:0 4px 20px rgba(124,58,237,.10),0 1px 3px rgba(0,0,0,.04);background:#fff;border:1px solid #f0eaff;transition:transform .2s ease,box-shadow .2s ease;}
.bcw-card:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(124,58,237,.18),0 2px 6px rgba(0,0,0,.06);}
.bcw-card-left{position:relative;background:linear-gradient(160deg,#7c3aed,#a855f7);color:#fff;min-width:110px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 8px;text-align:center;overflow:hidden;}
.bcw-card-left:before{content:'';position:absolute;top:-40%;left:-40%;width:120%;height:120%;background:radial-gradient(circle,rgba(255,255,255,.18) 0%,transparent 60%);}
.bcw-amount{font-weight:800;font-size:18px;line-height:1.2;position:relative;z-index:1;}
.bcw-min{font-size:11px;opacity:.9;margin-top:6px;position:relative;z-index:1;}
.bcw-card-right{flex:1;padding:12px 14px;display:flex;flex-direction:column;gap:6px;position:relative;}
.bcw-card-notch-top,.bcw-card-notch-bottom{position:absolute;left:104px;width:16px;height:16px;background:#f6f6f9;border-radius:50%;z-index:2;}
.bcw-card-notch-top{top:-8px;}
.bcw-card-notch-bottom{bottom:-8px;}
.bcw-badge{display:inline-block;font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px;margin-right:4px;width:fit-content;}
.bcw-badge-row{display:flex;flex-wrap:wrap;gap:4px;}
.bcw-badge-event{background:#fde68a;color:#92400e;}
.bcw-badge-running{background:#dcfce7;color:#166534;}
.bcw-badge-upcoming{background:#dbeafe;color:#1e40af;}
.bcw-badge-expired{background:#f3f4f6;color:#6b7280;}
.bcw-badge-type{background:#ede9fe;color:#5b21b6;}
.bcw-countdown{font-size:11px;font-weight:600;margin:0;color:#b45309;}
.bcw-countdown-upcoming{color:#1e40af;}
.bcw-countdown-expired{color:#9ca3af;}
.bcw-claimed-wrap{display:flex;align-items:center;gap:6px;}
.bcw-claimed-bar{flex:1;height:5px;background:#f3f4f6;border-radius:10px;overflow:hidden;}
.bcw-claimed-fill{height:100%;background:linear-gradient(90deg,#a855f7,#7c3aed);}
.bcw-claimed-text{font-size:10px;color:#6b7280;white-space:nowrap;}
.bcw-banner-text{font-size:13px;color:#333;margin:2px 0 4px;}
.bcw-btn{border:none;border-radius:8px;padding:8px 14px;font-weight:700;font-size:12px;cursor:pointer;width:fit-content;}
.bcw-btn-collect{background:#7c3aed;color:#fff;}
.bcw-btn-collect:hover{background:#6d28d9;}
.bcw-btn-disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed;}
.bcw-code-row{display:flex;gap:8px;align-items:center;}
.bcw-code{background:#f3e8ff;color:#7c3aed;padding:6px 10px;border-radius:6px;font-weight:700;letter-spacing:1px;font-size:12px;border:1px dashed #a855f7;}
.bcw-btn-copy{background:#111827;color:#fff;}
.bcw-status-expired{opacity:.6;}
.bcw-wallet-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin:16px 0;}
.bcw-wallet-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0;}
.bcw-wallet-controls{display:flex;gap:8px;flex-wrap:wrap;}
.bcw-search{padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:12px;min-width:180px;}
.bcw-sort{padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:12px;background:#fff;}
.bcw-tab{padding:8px 16px;border-radius:30px;background:#f3f4f6;font-size:13px;font-weight:700;cursor:pointer;color:#374151;}
.bcw-tab.active{background:#7c3aed;color:#fff;}
.bcw-panel{display:none;}
.bcw-panel.active{display:block;}
.bcw-box-title{font-size:15px;font-weight:500;margin:0 0 10px;color:#1f2937;}
.bcw-empty{padding:30px;text-align:center;color:#9ca3af;font-size:14px;}
.bcw-product-box{border:1px solid #e9d5ff;border-radius:10px;padding:10px 12px;margin:14px 0;background:linear-gradient(135deg,#faf7ff,#f5f0ff);max-width:340px;box-shadow:0 1px 6px rgba(124,58,237,.08);}
.bcw-product-box-title{display:block;font-size:12px;font-weight:700;color:#7c3aed;margin-bottom:8px;}
.bcw-mini-list{display:flex;flex-direction:column;gap:6px;}
.bcw-mini{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px dashed #c4b5fd;border-radius:8px;background:#fff;font-size:12px;flex-wrap:wrap;}
.bcw-mini-amount{font-weight:800;color:#7c3aed;white-space:nowrap;}
.bcw-mini-min{color:#6b7280;font-size:11px;flex:1;}
.bcw-mini-btn{border:none;border-radius:6px;padding:5px 10px;font-weight:700;font-size:11px;cursor:pointer;background:#7c3aed;color:#fff;white-space:nowrap;}
.bcw-mini-btn.bcw-btn-copy{background:#111827;}
.bcw-mini-code{background:#f3e8ff;color:#7c3aed;padding:4px 8px;border-radius:5px;font-weight:700;letter-spacing:1px;font-size:11px;}
.bcw-mini-used{color:#9ca3af;font-size:11px;font-weight:600;white-space:nowrap;}
@media (max-width:480px){
	.bcw-grid{grid-template-columns:1fr;gap:12px;}
	.bcw-card{flex-direction:column;}
	.bcw-card-left{min-width:100%;flex-direction:row;justify-content:center;gap:10px;padding:10px;}
	.bcw-card-notch-top,.bcw-card-notch-bottom{display:none;}
	.bcw-card-right{padding:12px;}
	.bcw-wallet-tabs{gap:6px;}
	.bcw-tab{padding:7px 12px;font-size:12px;flex:1 1 auto;text-align:center;}
	.bcw-code-row{flex-wrap:wrap;}
	.bcw-btn{width:100%;text-align:center;}
	.bcw-code{flex:1;text-align:center;}
	.bcw-mini{font-size:11px;}
}
@media (min-width:481px) and (max-width:768px){
	.bcw-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));}
}

/* Checkout / Cart coupon widget */
.bcw-checkout-widget{max-width:420px;margin:0 0 20px;font-family:inherit;}
.bcw-checkout-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;background:#fff;border:1.5px dashed #a855f7;border-radius:10px;padding:10px 16px;cursor:pointer;font-size:13px;font-weight:700;color:#5b21b6;transition:box-shadow .2s ease,border-color .2s ease;}
.bcw-checkout-toggle:hover{border-color:#7c3aed;box-shadow:0 2px 10px rgba(124,58,237,.12);}
.bcw-checkout-toggle-left{display:flex;align-items:center;gap:8px;}
.bcw-checkout-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:linear-gradient(160deg,#7c3aed,#a855f7);color:#fff;font-size:12px;}
.bcw-checkout-arrow{transition:transform .25s ease;color:#7c3aed;font-size:12px;}
.bcw-checkout-widget.open .bcw-checkout-arrow{transform:rotate(180deg);}
.bcw-checkout-panel{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.bcw-checkout-widget.open .bcw-checkout-panel{max-height:900px;}
.bcw-checkout-item{background:#fff;border:1px solid #f0eaff;border-radius:10px;padding:12px 14px;margin-top:10px;box-shadow:0 2px 10px rgba(124,58,237,.06);}
.bcw-checkout-amount{font-size:18px;font-weight:800;color:#7c3aed;}
.bcw-checkout-desc{font-size:12px;color:#6b7280;margin:2px 0 10px;}
.bcw-checkout-min{display:block;font-size:11px;color:#9ca3af;margin-top:2px;}
.bcw-checkout-code-row{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#faf7ff;border-radius:8px;padding:8px 10px;}
.bcw-checkout-code{font-weight:800;letter-spacing:1px;font-size:12px;color:#374151;}
.bcw-checkout-apply{background:linear-gradient(160deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:6px;padding:7px 16px;font-weight:700;font-size:12px;cursor:pointer;transition:transform .15s ease;}
.bcw-checkout-apply:hover{transform:translateY(-1px);}
.bcw-checkout-apply:disabled{opacity:.6;cursor:not-allowed;transform:none;}
.bcw-checkout-apply.applied{background:#16a34a;}
.bcw-checkout-msg{font-size:11px;margin-top:6px;}
.bcw-checkout-msg.success{color:#166534;}
.bcw-checkout-msg.error{color:#b91c1c;}
@media (max-width:480px){
	.bcw-checkout-widget{max-width:100%;}
	.bcw-checkout-code-row{flex-direction:column;align-items:stretch;}
	.bcw-checkout-apply{width:100%;}
}

/* Product page uses the same widget but slightly narrower */
.bcw-widget-product{max-width:360px;margin:16px 0;}

/* Product page — compact one-line rows: "text - Collect" */
/* !important used deliberately: WooCommerce themes (e.g. Motta) style all
   buttons/boxes with high-specificity rules that were overriding this
   widget, stretching buttons full-width and inflating box height. */
.bcw-line-list{display:flex!important;flex-direction:column!important;gap:6px!important;margin:14px 0!important;max-width:340px!important;width:auto!important;}
.bcw-line{display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:8px!important;padding:7px 12px!important;border:1px dashed #c4b5fd!important;border-radius:8px!important;background:#faf7ff!important;font-size:12px!important;width:auto!important;max-width:100%!important;box-sizing:border-box!important;margin:0!important;list-style:none!important;}
.bcw-line-text{color:#5b21b6!important;font-weight:700!important;display:inline!important;width:auto!important;float:none!important;}
.bcw-line-btn{display:inline-block!important;border:none!important;border-radius:6px!important;padding:5px 12px!important;font-weight:700!important;font-size:11px!important;cursor:pointer!important;background:#7c3aed!important;color:#fff!important;white-space:nowrap!important;flex-shrink:0!important;width:auto!important;min-width:0!important;height:auto!important;line-height:normal!important;text-transform:none!important;margin:0!important;float:none!important;}
.bcw-line-btn.bcw-btn-copy{background:#111827!important;}
.bcw-line-code{background:#f3e8ff!important;color:#7c3aed!important;padding:4px 8px!important;border-radius:5px!important;font-weight:700!important;letter-spacing:1px!important;font-size:11px!important;flex-shrink:0!important;display:inline-block!important;width:auto!important;}
.bcw-line-used{color:#9ca3af!important;font-size:11px!important;font-weight:600!important;flex-shrink:0!important;}
@media (max-width:480px){
	.bcw-line-list{max-width:100%;}
	.bcw-line{flex-wrap:wrap;}
	.bcw-line-text{white-space:normal;}
}
