/*!
 * cav-bundle.css — 3er-Paket-Builder UI. Briefing §6.1.
 */

/* selected card state in Paket-Modus */
.cav-paket-mode .cav-prod{ cursor:pointer; }
.cav-paket-mode .cav-prod__media{ position:relative; }
.cav-prod.cav-pkg-selected{ box-shadow: 0 0 0 3px var(--cav-navy), var(--cav-shadow-card); }
.cav-prod.cav-pkg-selected::after{
  content:"✓"; position:absolute; top:10px; right:10px; z-index:4;
  width:26px; height:26px; border-radius:50%; background: var(--cav-navy); color:#fff;
  display:flex; align-items:center; justify-content:center; font-weight:700;
}
.cav-paket-mode .cav-prod__cover, .cav-paket-mode .cav-prod__inner{ pointer-events:none; }
.cav-paket-mode .cav-prod.cav-pkg-selected .cav-prod__media::before{
  content:""; position:absolute; inset:0; z-index:3; background: rgba(42,58,82,.12);
}
/* hide quick-add in paket mode (cover-click is the action) */
.cav-paket-mode .cav-prod__add{ display:none; }

/* home-card (white card) variant in Paket-Modus */
.cav-paket-mode .cav-hcard{ cursor:pointer; }
.cav-hcard.cav-pkg-selected{ box-shadow:0 0 0 3px #2A3A52, 0 12px 30px -18px rgba(42,58,82,0.3) !important; }
.cav-hcard.cav-pkg-selected .cav-hcard__media::after{ content:"✓"; position:absolute; top:24px; right:24px; z-index:4; width:26px; height:26px; border-radius:50%; background:#2A3A52; color:#fff; display:flex; align-items:center; justify-content:center; font-weight:800; }
.cav-paket-mode .cav-hcard .add_to_cart_button{ display:none; }

/* sticky progress bar */
.cav-pkgbar{
  position:fixed; left:0; right:0; bottom:0; z-index:7800;
  background:#fff; border-top:1px solid var(--cav-card-border);
  box-shadow: 0 -14px 40px -24px rgba(42,58,82,.55);
  animation: cav-pkgbar-in .3s var(--cav-ease-bounce) both;
}
@keyframes cav-pkgbar-in{ from{ transform: translateY(100%); } to{ transform: none; } }
.cav-pkgbar--flash{ animation: cav-pkgbar-flash .4s; }
@keyframes cav-pkgbar-flash{ 0%,100%{ background:#fff; } 50%{ background: var(--cav-hafer-2); } }
.cav-pkgbar__in{ display:flex; align-items:center; gap:16px; padding:12px 20px; }
.cav-pkgbar__thumbs{ display:flex; gap:8px; }
.cav-pkg-thumb{ position:relative; width:44px; height:62px; border-radius:6px; overflow:hidden; background: var(--cav-hafer-2); flex:none; }
.cav-pkg-thumb img{ width:100%; height:100%; object-fit:cover; }
.cav-pkg-thumb button{ position:absolute; top:-2px; right:-2px; width:18px; height:18px; border-radius:50%; border:0; background: var(--cav-berry); color:#fff; font-size:12px; line-height:1; cursor:pointer; }
.cav-pkgbar__txt{ flex:1; min-width:0; }
.cav-pkgbar__txt strong{ display:block; color: var(--cav-navy); font-family: var(--cav-font-head); }
.cav-pkgbar__track{ height:6px; background: var(--cav-warm-light); border-radius:6px; margin-top:7px; overflow:hidden; }
.cav-pkgbar__fill{ height:100%; width:0; background: var(--cav-honey); border-radius:6px; transition: width .3s var(--cav-ease-bounce); }
.cav-pkgbar__close{ padding:8px 12px; }

@media (max-width:640px){
  .cav-pkgbar__in{ flex-wrap:wrap; gap:10px; }
  .cav-pkgbar__txt{ order:3; width:100%; }
  .cav-pkgbar__thumbs{ order:1; }
}
