/* FABTRACK · Sticky Add to cart bar. Colours and sizes come from the settings as CSS variables. */
.fabtrack-sticky {
  --fs-bg: #fff; --fs-title: #0f172a; --fs-price: #0f172a; --fs-btn-bg: #111827; --fs-btn-color: #fff;
  --fs-radius: 12px; --fs-img: 56px; --fs-right-gap: 0px; --fs-img-border: rgba(15, 23, 42, .12); --fs-shadow: 0 -6px 20px rgba(15, 23, 42, .1);
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990;
  padding: 10px 14px calc(10px + env(safe-area-inset-bottom, 0px));
  background: var(--fs-bg); color: var(--fs-title); box-shadow: var(--fs-shadow);
  transform: translateY(110%); transition: transform .25s ease;
}
.fabtrack-sticky.is-visible { transform: translateY(0); }
.fabtrack-sticky[hidden] { display: none; }
.fabtrack-sticky__inner { display: flex; align-items: center; gap: 12px; max-width: 1100px; margin: 0 auto; padding-right: var(--fs-right-gap); }
.fabtrack-sticky__img { width: var(--fs-img); height: var(--fs-img); border-radius: var(--fs-radius); object-fit: cover; flex-shrink: 0; border: 1px solid var(--fs-img-border); background: #fff; }
.fabtrack-sticky__img--sample { background: linear-gradient(135deg, #e2e8f0, #f8fafc); display: block; }
.fabtrack-sticky__info { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: 2px; line-height: 1.25; }
.fabtrack-sticky__name { font-size: 14px; font-weight: 600; color: var(--fs-title); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; }
.fabtrack-sticky--lines-2 .fabtrack-sticky__name { -webkit-line-clamp: 2; }
.fabtrack-sticky__price { font-size: 16px; font-weight: 700; color: var(--fs-price); }
.fabtrack-sticky__price del { opacity: .55; font-weight: 400; font-size: 13px; margin-right: 4px; }
.fabtrack-sticky__price ins { text-decoration: none; }
.fabtrack-sticky__add {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; flex-shrink: 0; white-space: nowrap;
  min-height: 48px; padding: 0 22px; border: 0; border-radius: var(--fs-radius); cursor: pointer;
  background: var(--fs-btn-bg); color: var(--fs-btn-color); font-weight: 600; font-size: 15px; line-height: 1;
  transition: filter .15s ease, transform .1s ease;
}
.fabtrack-sticky__add:hover { filter: brightness(.93); }
.fabtrack-sticky__add:active { transform: scale(.97); }
.fabtrack-sticky__add:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.fabtrack-sticky__bag { flex-shrink: 0; }
/* preview inside the settings page */
.fabtrack-sticky--preview { position: static; transform: none; border-radius: 12px; border: 1px solid #e2e8f0; padding: 10px 12px; max-width: 420px; }
@media (min-width: 769px) {
  .fabtrack-sticky--mobile:not(.fabtrack-sticky--preview) { display: none !important; }
  .fabtrack-sticky__name { font-size: 15px; }
}
@media (max-width: 360px) {
  .fabtrack-sticky__add { padding: 0 14px; font-size: 14px; gap: 6px; }
  .fabtrack-sticky__bag { width: 18px; height: 18px; }
}
@media (prefers-reduced-motion: reduce) { .fabtrack-sticky { transition: none; } }
