/*
 * jagacheckout — potvrdenie pridania a spodná lišta (zadanie-kosik-pokladna, časť 2).
 * Farby a rozmery podľa canvasu „Košík a pokladňa — návrh" (Mobil — pridanie bez vyrušenia).
 */

/* ---------------------------------------------- 2.1 tlačidlo po pridaní */
.jcb-btn--added,
.jcb-btn--error {
  box-sizing: border-box;
  overflow: hidden;
  white-space: nowrap;
  transition: none;
  text-transform: none !important;
  letter-spacing: normal !important;
}
.jcb-btn--added,
.jcb-btn--added:hover,
.jcb-btn--added:focus {
  background: #F3FAF5 !important;
  color: #155C38 !important;
  border: 1.5px solid #1F7A4D !important;
  box-shadow: none !important;
}
.jcb-btn--error,
.jcb-btn--error:hover,
.jcb-btn--error:focus {
  background: #FDF2F2 !important;
  color: #8A1538 !important;
  border: 1.5px solid #B42318 !important;
  box-shadow: none !important;
}
.jcb-btn-in {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  max-width: 100%;
  font-weight: 700;
}
.jcb-btn--added .jcb-btn-in svg {
  flex-shrink: 0;
  color: #1F7A4D;
}
.jcb-btn-t {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

/* -------------------------------------------------- 2.2 spodná lišta */
.jcb {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1040;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 66px;
  padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
  background: #141414;
  color: #FFFFFF;
  font-family: inherit;
}
.jcb[hidden],
.jcb-spacer[hidden] {
  display: none !important;
}
.jcb-spacer {
  height: calc(66px + env(safe-area-inset-bottom, 0px));
}
.jcb-tick {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #1F7A4D;
  color: #FFFFFF;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  opacity: 0;
  transform: scale(.6);
  transition: opacity .15s ease, transform .15s ease;
}
.jcb--flash .jcb-tick {
  opacity: 1;
  transform: scale(1);
}
.jcb-text {
  flex-grow: 1;
  min-width: 0;
}
.jcb-main {
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.3;
  color: #FFFFFF;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.jcb-sub {
  /* Celá suma do minimálneho odberu musí byť čitateľná — radšej dva riadky
     než orezané číslo (pripomienka 4.1). */
  white-space: normal;
  overflow: visible;
  margin-top: 1px;
  font-size: 12px;
  line-height: 1.35;
  color: #B8B8B8;
  font-variant-numeric: tabular-nums;
}
.jcb--below .jcb-sub {
  color: #F5C77E;
}
.jcb-go,
.jcb-go:visited {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 8px;
  background: #C2006F;
  color: #FFFFFF !important;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none !important;
}
.jcb-go:hover,
.jcb-go:focus {
  background: #A0005C;
  color: #FFFFFF;
}
.jcb-go:focus-visible {
  outline: 2px solid #FFFFFF;
  outline-offset: 2px;
}
.jcb-head:focus-visible {
  outline: 2px solid #C2006F;
  outline-offset: 2px;
  border-radius: 8px;
}

/* Hlásenie pre čítačku — neviditeľné. */
.jcb-live {
  position: absolute !important;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

/* ------------------------------------- počítač: tlačidlo v hlavičke */
/* Košík v hlavičke (headcart.tpl, namiesto ps_shoppingcart). Rovnaká optická
   veľkosť ako lupa a postavička (19 px), rovnaká medzera medzi ikonami (34 px)
   a rovnaký stred na osi y. Väčšia klikacia plocha je z paddingu so zápornou
   okrajovou medzerou, nech neposúva ikonu. Ružový je len odznak. */
.jcb-headbox {
  display: inline-flex;
  align-items: center;
}
.header-right #_desktop_cart.jcb-headbox {
  margin-left: 34px !important;
  margin-right: 0 !important;
  padding: 0 !important;
}
/* Rovnako ako postavička v téme (.header-right #_user_info): 34 px, pod 1400 px 12 px. */
@media (max-width: 1399px) {
  .header-right #_desktop_cart.jcb-headbox {
    margin-left: 12px !important;
  }
}
.jcb-head,
.jcb-head:visited {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: content-box;
  width: 19px;
  height: 19px;
  padding: 8px;
  margin: -8px;
  color: inherit !important;
  text-decoration: none !important;
  vertical-align: middle;
  line-height: 0;
}
.jcb-head svg {
  display: block;
  width: 19px;
  height: 19px;
}
.jcb-head:hover {
  color: #C2006F !important;
}
/* Počítač: stred na osi y ako lupa a postavička (y 101 pri 1512 px). */
.header-right .jcb-head {
  top: -2px;
}
/* Počítač: čierna hlavička — biela ako lupa a postavička (téma im dáva bielu). */
.header-right .jcb-head,
.fixed-menu-right .jcb-head {
  color: #FFFFFF !important;
}
.header-right .jcb-head:hover,
.fixed-menu-right .jcb-head:hover {
  color: #C2006F !important;
}
/* Mobil: téma presunie obsah #_desktop_cart do #_mobile_cart (60 px hlavička; tento
   súbor sa načíta len pri novom košíku, keď je ps_shoppingcart vypnutý) — ikona na
   stred výšky ako hamburger vľavo, nie nalepená na vrch obrazovky (odznak by
   bol odrezaný). */
#_mobile_cart {
  height: 56px;
  display: flex;
  align-items: center;
}
/* Odznak na pravom hornom rohu ikony, celý vnútri klikacej plochy 35 × 35 px
   (aj pri „99+": 12 + 23 = 35 px). Ľavý okraj pevne — pri viacerých
   cifrách rastie doprava, nikdy za hranu obrazovky. */
.jcb-head-badge {
  position: absolute;
  top: 3px;
  left: 12px;
  min-width: 14px;
  height: 14px;
  padding: 0 2px; /* „99+" = 23 px: 12 + 23 = 35, celý v rámci bez ďalšej triedy */
  box-sizing: border-box;
  border-radius: 7px;
  background: #C2006F;
  color: #FFFFFF;
  font-size: 9.5px;
  font-weight: 700;
  line-height: 14px;
  text-align: center;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.jcb-head-badge[hidden] {
  display: none;
}
/* Spodná lišta len pod 992 px — na počítači je košík v hlavičke (návrh). */
@media (min-width: 992px) {
  .jcb,
  .jcb-spacer {
    display: none !important;
  }
}

@media (max-width: 991.98px) {
  .jcb-bar-on #scrolltopbtn {
    bottom: calc(var(--jcb-h, 66px) + 12px) !important;
  }
}

/* História objednávok: referencia zákazníka pri čísle + vyhľadávanie (3.8). */
.jc-hist-ref {
  margin-top: 2px;
  font-size: 12px;
  font-weight: 500;
  color: #6E6E6E;
}
.jc-hist-search {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin: 0 0 14px;
}
.jc-hist-search label {
  margin: 0;
  font-size: 13px;
}
.jc-hist-search input {
  flex: 1 1 240px;
  height: 42px;
  padding: 0 12px;
  border: 1px solid #DCDCDC;
  border-radius: 8px;
  font: inherit;
  font-size: 14px;
}
