/* MovingUP Bundles — base = "full" design; .pp-bundle-minimal overrides below */
.pp-bundle{margin:25px 0;clear:both;width:100%;box-sizing:border-box}
.pp-bundle *{box-sizing:border-box}
.pp-bundle-title{font-size:20px;margin:0 0 12px;font-weight:600}
.pp-bundle-set{border:1px solid #e5e5e5;border-radius:8px;padding:16px;margin-bottom:14px;background:#fff}
.pp-bundle-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.pp-bundle-name{font-weight:600;font-size:15px}
.pp-bundle-badge{background:#d9312b;color:#fff;font-weight:700;font-size:13px;padding:3px 8px;border-radius:12px}
.pp-bundle-body{display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.pp-bundle-items{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;flex:1 1 420px}
.pp-bundle-item{position:relative;width:150px;text-align:center;padding:8px;border-radius:6px;transition:opacity .2s}
.pp-bundle-item.pp-off{opacity:.4}
.pp-bundle-img img{max-width:100%;height:auto;display:block;margin:0 auto 6px}
.pp-bundle-pname{display:block;font-size:13px;line-height:1.3;color:inherit;margin-bottom:4px}
.pp-bundle-pname small{opacity:.7}
.pp-bundle-price{font-weight:600;font-size:14px}
.pp-bundle-opt{font-size:11px;color:#a66300;margin-top:3px}
.pp-bundle-check{position:absolute;top:4px;left:6px;margin:0;z-index:1}
.pp-bundle-check input{width:18px;height:18px;cursor:pointer}
.pp-bundle-plus{display:flex;align-items:center;font-size:24px;font-weight:300;color:#999}
.pp-bundle-summary{flex:0 1 240px;min-width:200px}
.pp-bundle-summary>div{margin-bottom:6px}
.pp-bundle-old{color:#888;font-size:13px}
.pp-bundle-new{font-size:15px}
.pp-bundle-new strong{font-size:20px}
.pp-bundle-save{color:#2e8b3d;font-weight:600;font-size:13px}
.pp-bundle-btn{width:100%;margin-top:6px;white-space:normal}
.pp-bundle-msg{font-size:13px;margin-top:6px}
.pp-bundle-msg.pp-ok{color:#2e8b3d}
.pp-bundle-msg.pp-err{color:#c0392b}
@media (max-width:600px){
  .pp-bundle-item{width:calc(50% - 20px)}
  .pp-bundle-plus{font-size:18px}
  .pp-bundle-summary{flex:1 1 100%}
}

/* ---------- Minimal design (default) ---------- */
.pp-bundle-minimal{margin:18px 0}
.pp-bundle-minimal .pp-bundle-title{font-size:15px;font-weight:600;margin:0 0 8px}
.pp-bundle-minimal .pp-bundle-set{border:0;border-top:1px solid #ececec;border-radius:0;padding:12px 0 4px;margin:0;background:none}
.pp-bundle-minimal .pp-bundle-head{margin-bottom:8px;gap:8px}
.pp-bundle-minimal .pp-bundle-name{font-size:13px}
.pp-bundle-minimal .pp-bundle-badge{background:none;color:#c62828;padding:0;font-size:12px;font-weight:600}
.pp-bundle-minimal .pp-bundle-body{gap:12px}
.pp-bundle-minimal .pp-bundle-items{gap:4px;flex:1 1 360px}
.pp-bundle-minimal .pp-bundle-item{width:96px;padding:4px}
.pp-bundle-minimal .pp-bundle-img img{width:64px;height:64px;object-fit:contain;margin-bottom:4px}
.pp-bundle-minimal .pp-bundle-pname{font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pp-bundle-minimal .pp-bundle-pname small{display:none}
.pp-bundle-minimal .pp-bundle-price{font-size:12px;font-weight:600}
.pp-bundle-minimal .pp-bundle-opt{font-size:10px}
.pp-bundle-minimal .pp-bundle-plus{font-size:16px;color:#bbb}
.pp-bundle-minimal .pp-bundle-check{top:2px;left:4px}
.pp-bundle-minimal .pp-bundle-check input{width:15px;height:15px}
.pp-bundle-minimal .pp-bundle-summary{flex:0 1 200px;min-width:180px;font-size:13px}
.pp-bundle-minimal .pp-bundle-summary>div{margin-bottom:3px}
.pp-bundle-minimal .pp-bundle-old{font-size:12px}
.pp-bundle-minimal .pp-bundle-new{font-size:13px}
.pp-bundle-minimal .pp-bundle-new strong{font-size:16px}
.pp-bundle-minimal .pp-bundle-save{font-size:12px}
.pp-bundle-minimal .pp-bundle-btn{font-size:13px;padding:7px 12px;border-radius:20px}
@media (max-width:600px){.pp-bundle-minimal .pp-bundle-item{width:calc(33% - 16px)}}


/* ---------- v1.3: sets stand out (both designs) ---------- */
.pp-bundle .pp-bundle-deal{border:1px solid #cdeedd;border-radius:12px;background:linear-gradient(180deg,#f3fbf7 0,#fff 70%);padding:16px 18px;margin:0 0 14px}
.pp-bundle .pp-bundle-deal .pp-bundle-head{margin-bottom:12px}
.pp-bundle .pp-bundle-deal .pp-bundle-name{font-size:15px;font-weight:700}
.pp-bundle .pp-bundle-deal .pp-bundle-badge{background:#e53935;color:#fff;padding:3px 10px;border-radius:999px;font-size:13px;font-weight:800;letter-spacing:.2px}
.pp-bundle .pp-bundle-deal .pp-bundle-item{background:#fff;border:1px solid #edf0ee;border-radius:10px}
.pp-bundle .pp-bundle-deal .pp-bundle-save{display:inline-block;background:#e8f7ee;color:#167a3e;border-radius:6px;padding:3px 8px;font-weight:700}
.pp-bundle .pp-bundle-deal .pp-bundle-new strong{color:#111}
.pp-bundle.pp-flash .pp-bundle-deal{box-shadow:0 0 0 3px rgba(229,57,53,.35);transition:box-shadow .3s}

/* teaser under the buy button */
.pp-bundle-teaser{display:flex;align-items:center;gap:10px;margin:12px 0;padding:10px 12px;border:1px dashed #f0b4b2;border-radius:10px;background:#fff7f6;color:#3b2a29;text-decoration:none;font-size:13px;line-height:1.4;clear:both}
.pp-bundle-teaser:hover{background:#fff0ee;text-decoration:none;color:#3b2a29}
.pp-bundle-teaser-ico{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#e53935;color:#fff}
.pp-bundle-teaser-text{flex:1 1 auto}
.pp-bundle-teaser-save{color:#c62828}
.pp-bundle-teaser-link{flex:0 0 auto;font-weight:700;color:#c62828;white-space:nowrap}

/* cart hints */
.pp-bundle-cart{margin:12px 0 18px;border:1px solid #cdeedd;border-radius:12px;background:#f6fcf9;padding:12px 14px}
.pp-bundle-cart-title{font-weight:700;font-size:14px;margin-bottom:6px}
.pp-bundle-cart-row{display:flex;align-items:center;gap:12px;padding:8px 0;border-top:1px solid #e3f3ea;font-size:13px;line-height:1.45}
.pp-bundle-cart-row:first-of-type{border-top:0}
.pp-bundle-cart-ico{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#e53935;color:#fff;font-weight:800;font-size:13px}
.pp-bundle-cart-row.pp-done .pp-bundle-cart-ico{background:#16a34a}
.pp-bundle-cart-text{flex:1 1 auto}
.pp-bundle-cart-items{display:flex;gap:4px}
.pp-bundle-cart-items img{width:44px;height:44px;object-fit:contain;border:1px solid #e6ece8;border-radius:8px;background:#fff}
.pp-bundle-cart-add{flex:0 0 auto;border-radius:8px}
@media (max-width:600px){.pp-bundle-cart-row{flex-wrap:wrap}.pp-bundle-cart-text{flex-basis:calc(100% - 40px)}}

/* full width wherever the theme puts it */
.pp-bundle{max-width:none;flex:1 1 100%;grid-column:1/-1}
