/* Frontend */
.kb-bundles-box{border:1px solid #e6f0e8;border-radius:12px;padding:14px;margin:18px 0;background:#f7fbf8}
.kb-bundles-box .kb-title{font-size:18px;margin:4px 0 12px 0;text-align:center}
.kb-options{display:flex;flex-direction:column;gap:12px}
.kb-option{display:block}
.kb-option input{display:none}
.kb-option-card{display:flex;justify-content:space-between;align-items:center;border:2px solid #8bd49a;background:#fff;border-radius:12px;padding:14px 16px;transition:box-shadow .2s,border-color .2s;position:relative}
.kb-option input:checked + .kb-option-card{box-shadow:0 8px 20px rgba(0,0,0,.06);border-color:#1f7a3b}
.kb-option .kb-option-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.kb-qty{font-weight:700;font-size:20px}
.kb-badge{background:#e7f7ea;color:#1f7a3b;padding:6px 10px;border-radius:8px;font-size:12px}
.kb-option-right{text-align:right;display:flex;flex-direction:column;gap:3px;align-items:flex-end}
.kb-price{font-weight:800;font-size:22px}
.kb-strike{text-decoration:line-through;opacity:.6}
.kb-save{font-size:12px;opacity:.9}
.kb-bogo{margin-top:16px}
.kb-bogo-select{width:100%;max-width:400px}
.kb-loop-widget{display:flex;gap:6px;align-items:center;margin-top:6px}
.kb-loop-widget .kb-loop-chip{border:1px solid #8bd49a;border-radius:10px;padding:1px 6px;font-size:11px}

/* Responsive tweaks */
@media (max-width: 640px){
  .kb-option-card{flex-direction:column; align-items:flex-start; gap:8px}
  .kb-option-right{align-items:flex-start; text-align:left}
  .kb-price{font-size:20px}
  .kb-qty{font-size:18px}
}
