/* =========================================================
   ZLATO Z OLIV — KOSIK CLEAN V11
   Vizualni vrstva pro Shoptet kosik / objednavku.
   Bez posunu obchodni logiky, cen, dostupnosti a ovladani.
   Aktivuje se jen kdyz JS prida html.zzo-checkout-v11.
   ========================================================= */
html.zzo-checkout-v11 {
  --zzo11-ink: #243611;
  --zzo11-green: #243611;
  --zzo11-gold: #c3a04b;
  --zzo11-line: #e8e3da;
  --zzo11-soft: #faf9f6;
  --zzo11-muted: #756f66;
  --zzo11-serif: Georgia, 'Times New Roman', serif;
}
html.zzo-checkout-v11 body,
html.zzo-checkout-v11 body #content,
html.zzo-checkout-v11 body .content-wrapper,
html.zzo-checkout-v11 body .content-inner {
  background-color: #fff;
}
html.zzo-checkout-v11 body #cart-wrapper,
html.zzo-checkout-v11 body #checkoutContent {
  color: var(--zzo11-ink);
}
/* Nadpisy jako na produktovych detailech. Nekolitna body typografie. */
html.zzo-checkout-v11 body #cart-wrapper h1,
html.zzo-checkout-v11 body #cart-wrapper h2,
html.zzo-checkout-v11 body #cart-wrapper h3,
html.zzo-checkout-v11 body #checkoutContent h1,
html.zzo-checkout-v11 body #checkoutContent h2,
html.zzo-checkout-v11 body .zzo-v11-summary h1,
html.zzo-checkout-v11 body .zzo-v11-summary h2,
html.zzo-checkout-v11 body .zzo-v11-summary h3,
html.zzo-checkout-v11 body .zzo-v11-recommendations h2,
html.zzo-checkout-v11 body .zzo-v11-recommendations h3 {
  font-family: var(--zzo11-serif) !important;
  font-weight: 700 !important;
  color: var(--zzo11-ink) !important;
  letter-spacing: -.02em;
}
/* Hlavni horizontalni benefitova lista */
html.zzo-checkout-v11 body .zzo-v11-benefits {
  background: #fff !important;
  border: 1px solid var(--zzo11-line) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  padding: 14px 20px !important;
  margin-bottom: 18px !important;
}
html.zzo-checkout-v11 body .zzo-v11-benefits > * {
  background: transparent !important;
  box-shadow: none !important;
}
html.zzo-checkout-v11 body .zzo-v11-benefits strong,
html.zzo-checkout-v11 body .zzo-v11-benefits b {
  font-size: 13px !important;
  color: var(--zzo11-ink) !important;
  font-weight: 700 !important;
}
html.zzo-checkout-v11 body .zzo-v11-benefits p,
html.zzo-checkout-v11 body .zzo-v11-benefits small {
  color: var(--zzo11-muted) !important;
  font-size: 12px !important;
}
/* Kroky objednavky — odstranit masivni vzhled, zachovat klikatelnost */
html.zzo-checkout-v11 body .zzo-v11-steps {
  gap: 10px !important;
  margin: 4px 0 22px !important;
  background: transparent !important;
}
html.zzo-checkout-v11 body .zzo-v11-steps > :is(a,div,li),
html.zzo-checkout-v11 body .zzo-v11-steps > :is(ul,ol) > :is(a,li,div) {
  background: #fff !important;
  border: 1px solid var(--zzo11-line) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
html.zzo-checkout-v11 body .zzo-v11-steps :is(a,div,span,strong,b) {
  font-family: inherit;
}
html.zzo-checkout-v11 body .zzo-v11-steps :is(a,strong,b) {
  color: var(--zzo11-ink);
}
html.zzo-checkout-v11 body .zzo-v11-steps :is(.active,.current,.is-active) {
  border-color: var(--zzo11-gold) !important;
  box-shadow: inset 0 2px 0 var(--zzo11-gold) !important;
}
html.zzo-checkout-v11 body .zzo-v11-steps :is(.number,.step-number,.step-num) {
  background: var(--zzo11-soft) !important;
  color: var(--zzo11-ink) !important;
  border-radius: 10px !important;
}
/* Produktove polozky — bile karty, prostor, ostre citelne nazvy */
html.zzo-checkout-v11 body .cart-table {
  background: transparent !important;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 10px !important;
}
html.zzo-checkout-v11 body :is(.cart-table tbody tr, .zzo-v11-item) {
  background: #fff !important;
  box-shadow: 0 2px 12px rgba(31,47,18,.035) !important;
}
html.zzo-checkout-v11 body .cart-table tbody tr > td {
  background: #fff !important;
  border-top: 1px solid var(--zzo11-line) !important;
  border-bottom: 1px solid var(--zzo11-line) !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}
html.zzo-checkout-v11 body .cart-table tbody tr > td:first-child {
  border-left: 1px solid var(--zzo11-line) !important;
  border-top-left-radius: 12px !important;
  border-bottom-left-radius: 12px !important;
}
html.zzo-checkout-v11 body .cart-table tbody tr > td:last-child {
  border-right: 1px solid var(--zzo11-line) !important;
  border-top-right-radius: 12px !important;
  border-bottom-right-radius: 12px !important;
}
/* Nezavisle od struktury Shoptet tabulky — pokud jsou radky uz vlastni karty */
html.zzo-checkout-v11 body :is(.cart-table tr.zzo-v11-item,.cart-table .removeable,.cart-row,.cart-product-row) {
  border-color: var(--zzo11-line) !important;
  border-radius: 12px !important;
}
html.zzo-checkout-v11 body .cart-table :is(.p-name,.p-name a,.cart-product-name,.cart-product-name a),
html.zzo-checkout-v11 body .zzo-v11-item :is(.p-name,.p-name a,.cart-product-name a) {
  font-family: var(--zzo11-serif) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: -.01em;
  color: var(--zzo11-ink) !important;
  text-decoration: none !important;
}
html.zzo-checkout-v11 body .cart-table :is(.p-name a,.cart-product-name a):hover {
  color: #8d742c !important;
}
html.zzo-checkout-v11 body .cart-table :is(.p-image img,.cart-product-image img) {
  display: block;
  max-width: 88px !important;
  max-height: 96px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}
html.zzo-checkout-v11 body .cart-table :is(.availability,.availability-amount,.availability-label) {
  color: #3c671e !important;
  font-size: 12px !important;
  font-weight: 600;
}
/* Mnozstvi — zjednodusit vzhled, zachovat standardni ovladani */
html.zzo-checkout-v11 body .cart-table :is(.quantity,.amount,.quantity-control),
html.zzo-checkout-v11 body .zzo-v11-item :is(.quantity,.amount,.quantity-control) {
  border-color: var(--zzo11-line) !important;
  border-radius: 9px !important;
  box-shadow: none !important;
}
html.zzo-checkout-v11 body .cart-table :is(input[type='number'],input.amount),
html.zzo-checkout-v11 body .zzo-v11-item :is(input[type='number'],input.amount) {
  background: #fff !important;
  color: var(--zzo11-ink) !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}
html.zzo-checkout-v11 body .cart-table :is(.increase,.decrease,.plus,.minus),
html.zzo-checkout-v11 body .zzo-v11-item :is(.increase,.decrease,.plus,.minus) {
  color: var(--zzo11-ink) !important;
  background: var(--zzo11-soft) !important;
}
html.zzo-checkout-v11 body .cart-table :is(.price,.price-final,.cart-product-price),
html.zzo-checkout-v11 body .zzo-v11-item :is(.price,.price-final,.cart-product-price) {
  color: var(--zzo11-ink) !important;
  font-weight: 700 !important;
}
/* Pravá rekapitulace — bily panel misto velke vyrazne krabice */
html.zzo-checkout-v11 body .zzo-v11-summary {
  background: #fff !important;
  border: 1px solid var(--zzo11-line) !important;
  border-top: 2px solid var(--zzo11-gold) !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 32px rgba(35,52,17,.045) !important;
  padding: 24px 26px !important;
}
html.zzo-checkout-v11 body .zzo-v11-summary h1,
html.zzo-checkout-v11 body .zzo-v11-summary h2,
html.zzo-checkout-v11 body .zzo-v11-summary h3,
html.zzo-checkout-v11 body .zzo-v11-summary .h4 {
  font-family: var(--zzo11-serif) !important;
  color: var(--zzo11-ink) !important;
  font-size: clamp(21px,1.7vw,27px) !important;
  line-height: 1.25 !important;
  text-transform: none !important;
  margin-bottom: 14px !important;
  letter-spacing: -.025em !important;
}
html.zzo-checkout-v11 body .zzo-v11-summary :is(.price,.price-final,.total-price,.cart-total-price) {
  font-weight: 700 !important;
  color: var(--zzo11-ink) !important;
}
html.zzo-checkout-v11 body .zzo-v11-summary :is(.btn-conversion,.btn-primary,.next-step,a.next-step) {
  background: var(--zzo11-green) !important;
  border-color: var(--zzo11-green) !important;
  color: #fff !important;
  border-radius: 9px !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: .01em !important;
  text-transform: none !important;
  text-indent: 0 !important;
}
html.zzo-checkout-v11 body .zzo-v11-summary :is(.btn-conversion,.btn-primary,.next-step,a.next-step):hover {
  background: #31491b !important;
  border-color: #31491b !important;
  color: #fff !important;
}
/* Text uvnitr tlacitek mel dostatecny kontrast */
html.zzo-checkout-v11 body .zzo-v11-summary :is(.btn-conversion,.btn-primary,.next-step,a.next-step) :is(span,strong,b,i) {
  color: inherit !important;
  opacity: 1 !important;
}
html.zzo-checkout-v11 body .zzo-v11-summary .zzo-v11-summary-benefits {
  padding: 10px 0 !important;
  margin: 18px 0 12px !important;
  background: #fff !important;
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow: none !important;
}
html.zzo-checkout-v11 body .zzo-v11-summary :is(.discount-coupon,.discount-coupon-wrapper,.discount-code,.discount-code-wrapper) {
  background: #fff !important;
  border-color: var(--zzo11-line) !important;
}
html.zzo-checkout-v11 body .zzo-v11-summary :is(input[type='text'],input[type='email'],input[type='tel']) {
  background: #fff !important;
  border: 1px solid var(--zzo11-line) !important;
  border-radius: 8px !important;
  color: var(--zzo11-ink) !important;
}
/* Doporuceni na stejnem bilem podkladu jako detail produktu */
html.zzo-checkout-v11 body .zzo-v11-recommendations {
  background: #fff !important;
  border: 1px solid var(--zzo11-line) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  padding: 22px 24px !important;
}
html.zzo-checkout-v11 body .zzo-v11-recommendations :is(h2,h3,.h2,.h3) {
  margin: 0 0 10px !important;
  font-family: var(--zzo11-serif) !important;
  font-size: clamp(23px,2vw,30px) !important;
  line-height: 1.2 !important;
  color: var(--zzo11-ink) !important;
  letter-spacing: -.02em;
}
html.zzo-checkout-v11 body :is(#cart-wrapper,#checkoutContent) :is(a,button,input,select,textarea):focus-visible {
  outline: 2px solid var(--zzo11-gold) !important;
  outline-offset: 2px;
}
/* Mensi obrazovky: zadna zmena Shoptet poradi a gridu */
@media (max-width: 991px) {
  html.zzo-checkout-v11 body .zzo-v11-summary {padding: 20px 18px !important;}
  html.zzo-checkout-v11 body .zzo-v11-benefits {padding: 10px 12px !important;}
  html.zzo-checkout-v11 body .cart-table :is(.p-name,.p-name a,.cart-product-name,.cart-product-name a) {font-size: 16px !important;}
}
@media (max-width: 767px) {
  html.zzo-checkout-v11 body .zzo-v11-steps {gap: 6px !important;margin-bottom: 14px !important;}
  html.zzo-checkout-v11 body .zzo-v11-summary {border-radius: 12px !important;padding: 18px 14px !important;}
  html.zzo-checkout-v11 body .zzo-v11-benefits {border-radius: 10px !important;}
  html.zzo-checkout-v11 body .zzo-v11-recommendations {padding: 16px !important;}
  html.zzo-checkout-v11 body .cart-table tbody tr > td {padding-top: 12px !important;padding-bottom: 12px !important;}
  html.zzo-checkout-v11 body .cart-table :is(.p-image img,.cart-product-image img) {max-width: 68px !important;max-height: 80px !important;}
}


/* =========================================================
   V11.1 – jednotné fajfky v horní liště a typografie kroků
   ========================================================= */

/* Jen tři HORNÍ benefity; boční výhody a ikony e-shopu zůstávají beze změny. */
html.zzo-checkout-v11 body .zzo-v11-benefits .zzo-v11-benefit-icon {
  position: relative !important;
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex: 0 0 36px !important;
  width: 36px !important;
  height: 36px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #faf8f2 !important;
  box-shadow: none !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  -webkit-text-fill-color: transparent !important;
}
/* Skrytí původního piktogramu v označeném elementu. */
html.zzo-checkout-v11 body .zzo-v11-benefits .zzo-v11-benefit-icon > * {
  visibility: hidden !important;
}
html.zzo-checkout-v11 body .zzo-v11-benefits .zzo-v11-benefit-icon::after {
  content: none !important;
  display: none !important;
}
html.zzo-checkout-v11 body .zzo-v11-benefits .zzo-v11-benefit-icon::before {
  content: "✓" !important;
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 19px !important;
  font-style: normal !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  color: #b98b24 !important;
  -webkit-text-fill-color: #b98b24 !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
/* Náhradní přeznačení, když je původní ikona jen CSS pseudo-element. */
html.zzo-checkout-v11 body .zzo-v11-benefits .zzo-v11-benefit-check-overlay {
  position: absolute !important;
  z-index: 2 !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: #faf8f2 !important;
  color: #b98b24 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 19px !important;
  line-height: 1 !important;
  pointer-events: none !important;
}

/* Všechny tři názvy kroků: stejná elegantní serifová rodina
   jako nadpisy a názvy produktů. Písmo se nepřenáší mimo checkout. */
html.zzo-checkout-v11 body .zzo-v11-steps,
html.zzo-checkout-v11 body .zzo-v11-steps :is(div,span,a,strong,b,em,li,small,p),
html.zzo-checkout-v11 body .zzo-v11-steps .zzo-v11-step-title {
  font-family: var(--zzo11-serif) !important;
  letter-spacing: -.015em !important;
}
html.zzo-checkout-v11 body .zzo-v11-steps .zzo-v11-step-title {
  color: var(--zzo11-ink) !important;
  font-family: var(--zzo11-serif) !important;
  font-size: clamp(19px, 1.25vw, 22px) !important;
  font-weight: 700 !important;
  line-height: 1.23 !important;
  text-transform: none !important;
}
/* Čísla kroků pro čitelnost a proporce. */
html.zzo-checkout-v11 body .zzo-v11-steps :is(.step-number,.step-num,.step-index,.number) {
  font-family: var(--zzo11-serif) !important;
  font-size: clamp(21px,1.4vw,24px) !important;
  font-weight: 700 !important;
}
@media (max-width: 767px) {
  html.zzo-checkout-v11 body .zzo-v11-steps .zzo-v11-step-title {font-size: 15px !important;line-height:1.2 !important;}
  html.zzo-checkout-v11 body .zzo-v11-benefits .zzo-v11-benefit-icon {width:32px!important;height:32px!important;flex-basis:32px!important;}
  html.zzo-checkout-v11 body .zzo-v11-benefits .zzo-v11-benefit-check-overlay {width:32px!important;height:32px!important;}
}
