/* ============================================================
   Kuycon — Buy box collante (sticky) sur les fiches produit
   Barre bas d'écran : prix + note + stock + Ajouter au panier.
   Portée : classes #kc-buybox / .kc-bb-* uniquement (inoffensif ailleurs).
   ============================================================ */

/* la barre reste sous la bulle de chat (#kct-widget, z-index 9998) */
#kc-buybox {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 9997;
  transform: translateY(110%);
  transition: transform .35s cubic-bezier(.22, 1, .36, 1);
  background: rgba(255, 255, 255, .9);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  backdrop-filter: saturate(180%) blur(20px);
  border-top: 1px solid rgba(0, 0, 0, .08);
  box-shadow: 0 -6px 24px rgba(0, 0, 0, .08);
  font-family: Manrope, sans-serif; color: #232323;
}
#kc-buybox.kc-show { transform: translateY(0); }

.kc-bb-in {
  max-width: 1200px; margin: 0 auto;
  display: flex; align-items: center; gap: 18px; padding: 10px 22px;
}
.kc-bb-thumb {
  width: 46px; height: 46px; border-radius: 10px; object-fit: cover;
  background: #f4f4f4; flex: 0 0 auto;
}
.kc-bb-id { min-width: 0; }
.kc-bb-title {
  font-weight: 700; font-size: 15px; line-height: 1.15;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.kc-bb-rate {
  display: flex; align-items: center; gap: 5px;
  font-size: 12.5px; color: #555; margin-top: 2px;
}
.kc-bb-stars { color: #f5a623; letter-spacing: 1px; font-size: 12px; }

.kc-bb-mid { display: flex; align-items: center; gap: 22px; margin-left: auto; }
.kc-bb-price { display: flex; flex-direction: column; line-height: 1.1; }
.kc-bb-from { font-size: 11px; color: #777; }
.kc-bb-amt { font-weight: 800; font-size: 19px; white-space: nowrap; }

.kc-bb-stock {
  display: flex; align-items: center; gap: 6px;
  color: #1a8f4c; font-weight: 600; font-size: 12.5px; white-space: nowrap;
}
.kc-bb-stock i {
  width: 8px; height: 8px; border-radius: 50%; background: #22c55e;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, .18); flex: 0 0 auto;
}
.kc-bb-cta {
  background: #0070f3; color: #fff; border: 0; border-radius: 980px;
  font-family: inherit; font-weight: 600; font-size: 15px;
  padding: 13px 30px; white-space: nowrap; cursor: pointer;
  text-decoration: none; display: inline-flex; align-items: center; gap: 9px;
  transition: transform .15s ease, background .15s ease;
}
.kc-bb-cta:hover { background: #0060d0; transform: translateY(-1px); }
.kc-bb-cta:focus-visible { outline: 3px solid rgba(0, 112, 243, .4); outline-offset: 2px; }

/* la page ne doit pas cacher son dernier contenu derrière la barre */
body.page-product { padding-bottom: 74px; }
/* remonter la bulle de chat au-dessus de la barre */
body.page-product #kct-widget { bottom: 88px !important; }

@media (max-width: 720px) {
  .kc-bb-in { gap: 12px; padding: 8px 14px; }
  .kc-bb-thumb, .kc-bb-rate { display: none; }
  .kc-bb-mid { gap: 12px; width: 100%; }
  .kc-bb-amt { font-size: 17px; }
  .kc-bb-stock { display: none; }
  .kc-bb-cta { padding: 12px 18px; font-size: 14px; flex: 1; justify-content: center; }
  .kc-bb-title { font-size: 14px; }
  body.page-product { padding-bottom: 66px; }
  body.page-product #kct-widget { bottom: 78px !important; }
}
