/* Przyklejony przycisk zakupu (AbabinkStickyCart). Kolor przycisku z motywu (.btn-primary). */
.abf-sticky{position:fixed;left:0;right:0;bottom:0;z-index:1040;display:grid;grid-template-columns:auto minmax(0,1fr) auto;
  gap:.75rem;align-items:center;background:#fff;border-top:1px solid var(--bs-border-color,#e5e5e5);
  box-shadow:0 -4px 16px rgba(0,0,0,.08);padding:.5rem max(1rem,env(safe-area-inset-right,0px)) calc(.5rem + env(safe-area-inset-bottom,0px)) max(1rem,env(safe-area-inset-left,0px))}
.abf-sticky[hidden]{display:none}
/* wejscie: pasek wysuwa sie od dolu (klasa dokladana przez JS po zdjeciu hidden), wyjscie odwrotnie */
.abf-sticky{transform:translateY(calc(100% + 12px));opacity:0;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .2s ease}
.abf-sticky.abf-sticky--in{transform:none;opacity:1}
@media (prefers-reduced-motion:reduce){.abf-sticky{transition:none}}
.abf-sticky__img{width:48px;height:48px;object-fit:cover;border-radius:.4rem}
.abf-sticky__img[hidden]{display:none}
.abf-sticky__info{min-width:0}
.abf-sticky__name{font-size:.9rem;font-weight:600;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.abf-sticky__meta{display:flex;gap:.5rem;align-items:baseline;font-size:.8rem;color:#555;min-width:0}
.abf-sticky__variant{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.abf-sticky__change{border:0;background:none;padding:0;color:var(--bs-link-color,var(--bs-primary));text-decoration:underline;font-size:inherit;white-space:nowrap;cursor:pointer}
.abf-sticky__change[hidden]{display:none}
.abf-sticky__buy{display:flex;align-items:center;gap:.75rem}
.abf-sticky__price{font-weight:700;white-space:nowrap}
.abf-sticky__btn{white-space:nowrap}
/* komputer: pasek wyposrodkowany do szerokosci tresci, a nie rozlany na caly monitor */
@media (min-width:992px){
  .abf-sticky{padding-left:max(1rem,calc((100vw - 1140px) / 2));padding-right:max(1rem,calc((100vw - 1140px) / 2))}
}
/* telefon: bez miniatury i ceny obok przycisku - liczy sie kciuk i czytelna nazwa */
@media (max-width:575.98px){
  .abf-sticky{grid-template-columns:minmax(0,1fr) auto;gap:.5rem}
  .abf-sticky__img{display:none}
  .abf-sticky__buy{flex-direction:column;align-items:stretch;gap:0}
  .abf-sticky__price{font-size:.8rem;text-align:right}
}
/* pasek nie zaslania konca strony ani ikony powrotu do zgod */
body.abf-sticky-on{padding-bottom:var(--abf-sticky-h,72px)}
body.abf-sticky-on .abc-reopen{bottom:calc(var(--abf-sticky-h,72px) + 10px)}
