/* =====================================================================
   Cleno.cz – košík a objednávka
   Krok 1 Košík · Krok 2 Doprava a platba · Krok 3 Informace o vás · Dokončení
   Bílé zaoblené karty, jemné modré okraje, tmavě modré texty, zelená tlačítka
   ===================================================================== */
:root{
  --clc-head:#163d5c;
  --clc-blue:#239ceb;
  --clc-blue-d:#0b6fb0;
  --clc-text:#6b7682;
  --clc-border:#e0eef9;
  --clc-line:#eef3f8;
  --clc-soft:#f5faff;
  --clc-green:#1f9d3a;
  --clc-red:#e5484d;
}

/* =====================================================================
   KROKY NAHOŘE (1 Košík › 2 Doprava a platba › 3 Informace o vás)
   ===================================================================== */
.cart-header{
  display:flex !important;gap:12px;
  margin:6px 0 34px !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  list-style:none;
}
.cart-header::before,.cart-header::after{display:none !important;}
.cart-header .step{
  flex:1 1 0;
  float:none !important;
  width:auto !important;
  margin:0 !important;padding:0 !important;
  background:none !important;
}
.cart-header .step::after{display:none !important;}
.cart-header .step > a,
.cart-header .step > strong{
  position:relative;
  display:flex !important;align-items:center;
  height:64px !important;
  padding:0 18px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:18px !important;
  background:#fff !important;
  color:var(--clc-text) !important;
  font-size:15px !important;font-weight:700 !important;
  text-decoration:none !important;
  transition:border-color .2s,background .2s;
}
.cart-header .step > a::before,
.cart-header .step > strong::before{display:none !important;}
.cart-header .step span{display:flex !important;align-items:center;}
.cart-header .step span::before{
  flex:0 0 34px;
  width:34px !important;height:34px !important;
  margin-right:12px !important;
  display:inline-flex !important;align-items:center;justify-content:center;
  border:0 !important;
  border-radius:50% !important;
  background:#eef3f8 !important;
  color:var(--clc-text) !important;
  font-size:14px !important;font-weight:800 !important;
  line-height:34px !important;
  text-align:center;
}
/* aktivní krok */
.cart-header .step.active > a,
.cart-header .step.active > strong{
  border-color:#bcd9ef !important;
  background:#eef6fd !important;
  color:var(--clc-head) !important;
}
.cart-header .step.active span::before{
  background:linear-gradient(135deg,#239ceb 0%,#0b6fb0 100%) !important;
  color:#fff !important;
}
/* hotový krok – zelená fajfka */
.cart-header .step.completed > a,
.cart-header .step.completed > strong{color:var(--clc-head) !important;}
.cart-header .step.completed > a:hover{border-color:#bcd9ef !important;}
.cart-header .step.completed span::before{
  background:#e7f6ec !important;
  color:var(--clc-green) !important;
  font-size:12px !important;
}

/* =====================================================================
   SPOLEČNÉ – karty, nadpisy, tlačítka
   ===================================================================== */
#cart-wrapper .co-box,
.ordering-process .co-box,
#checkoutContent .co-box{
  margin:0 0 20px !important;
  padding:28px 30px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:22px !important;
  background:#fff !important;
  box-shadow:none !important;
}
#checkoutContent .co-box h2,
.ordering-process .co-box h2,
#checkoutContent .co-box .h4{
  display:flex;align-items:center;gap:10px;
  margin:0 0 18px !important;
  padding:0 !important;
  color:var(--clc-head) !important;
  font-size:21px !important;font-weight:800 !important;
  letter-spacing:-.01em;
}
#checkoutContent .co-box h2::before,
.ordering-process .co-box h2::before{
  display:inline-flex !important;align-items:center;justify-content:center;
  flex:0 0 32px;
  width:32px;height:32px;
  margin:0 !important;
  border-radius:10px;
  background:#eef6fd;
  color:var(--clc-blue-d) !important;
  font-size:15px !important;font-weight:800 !important;
}

/* hlavní tlačítko Pokračovat / Odeslat objednávku */
.next-step-forward,
#continue-order-button,
#orderFormButton,
#submit-order{
  display:inline-flex !important;align-items:center;justify-content:center;gap:10px;
  width:100% !important;
  min-height:58px !important;height:auto !important;
  padding:0 24px !important;
  border:0 !important;
  border-radius:16px !important;
  background:linear-gradient(135deg,#34c759 0%,#1f9d3a 100%) !important;
  color:#fff !important;
  font-size:17px !important;font-weight:800 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  box-shadow:0 12px 24px -14px rgba(31,157,58,.9) !important;
  transition:filter .2s,transform .2s;
}
.next-step-forward:hover,#continue-order-button:hover,#orderFormButton:hover,#submit-order:hover{filter:brightness(1.06);transform:translateY(-1px);}
.next-step-forward *{color:#fff !important;}

/* Zpět / Zpět do obchodu */
.next-step-back{
  display:inline-flex !important;align-items:center;justify-content:center;gap:8px;
  width:100% !important;
  margin-top:12px !important;
  padding:12px 0 !important;
  border:0 !important;
  background:none !important;
  color:var(--clc-blue-d) !important;
  font-size:14px !important;font-weight:700 !important;
  text-transform:none !important;
  text-decoration:none !important;
}
.next-step-back *{color:inherit !important;text-transform:none !important;text-decoration:none !important;}
.next-step-back:hover{color:var(--clc-blue) !important;}

/* =====================================================================
   KROK 1 – KOŠÍK
   ===================================================================== */
.cart-table{
  width:100%;
  margin:0 0 22px !important;
  border:1px solid var(--clc-border) !important;
  border-collapse:separate !important;border-spacing:0;
  border-radius:22px !important;
  background:#fff !important;
  overflow:hidden;
}
.cart-table tr{border:0 !important;}
.cart-table tr + tr td{border-top:1px solid var(--clc-line) !important;}
.cart-table td{padding:18px 12px !important;vertical-align:middle !important;border-bottom:0 !important;}
.cart-table td:first-child{padding-left:20px !important;}
.cart-table td:last-child{padding-right:20px !important;}

/* obrázek */
.cart-table .cart-p-image a{
  display:flex !important;align-items:center;justify-content:center;
  width:72px !important;height:72px !important;
  padding:6px;
  border:1px solid #e6eef6;
  border-radius:14px;
  background:#fff;
}
.cart-table .cart-p-image img{max-width:100% !important;max-height:100% !important;object-fit:contain;}

/* název dostane víc místa, dostupnost bez ikonky šablony */
.cart-table .p-name{width:38%;}
.cart-table td.p-availability::before{display:none !important;}
.cart-table .cart-p-image{width:88px !important;}

/* název */
.cart-table .p-name .main-link{
  color:var(--clc-head) !important;
  font-size:15px !important;font-weight:800 !important;
  line-height:1.35 !important;
  text-decoration:none !important;
}
.cart-table .p-name .main-link:hover{color:var(--clc-blue-d) !important;}
.cart-table .p-name .show-related{
  display:inline-block;
  margin-top:6px;
  color:var(--clc-blue-d) !important;
  font-size:13px !important;font-weight:700;
  text-decoration:none !important;
}

/* dostupnost – zelený štítek s tečkou */
.cart-table .p-availability .availability-label{
  display:inline-flex !important;align-items:center;gap:6px;
  padding:4px 10px 4px 8px !important;
  border:0 !important;
  border-radius:20px;
  background:#e7f6ec;
  color:var(--clc-green) !important;
  font-size:12.5px !important;font-weight:800 !important;
  text-decoration:none !important;
  white-space:nowrap;
}
.cart-table .p-availability .availability-label::before{
  content:"" !important;
  width:7px;height:7px;
  margin:0 !important;
  border-radius:50%;
  background:currentColor;
  font-size:0 !important;
}

/* počet kusů − 1 + */
.cart-table .p-quantity .p-label{display:none !important;}
.cart-table .quantity{
  position:relative !important;
  display:block;
  width:112px !important;height:46px !important;
  padding:0 !important;
  border:1px solid #d7e6f3 !important;
  border-radius:13px !important;
  background:#fff !important;
  overflow:hidden;
}
.cart-table .quantity label{display:block;height:100%;margin:0;}
.cart-table .quantity input{
  width:100% !important;height:100% !important;
  padding:0 34px !important;
  border:0 !important;
  background:transparent !important;
  color:var(--clc-head) !important;
  font-size:15px !important;font-weight:800 !important;
  text-align:center;
  -moz-appearance:textfield;
}
.cart-table .quantity input::-webkit-outer-spin-button,
.cart-table .quantity input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.cart-table .quantity .increase,
.cart-table .quantity .decrease{
  position:absolute !important;top:5px !important;bottom:5px !important;
  width:30px !important;height:auto !important;
  display:flex !important;align-items:center;justify-content:center;
  margin:0 !important;padding:0 !important;
  border:0 !important;
  border-radius:9px !important;
  background:transparent !important;
  color:var(--clc-head) !important;
  font-size:18px !important;font-weight:600 !important;line-height:1 !important;
}
.cart-table .quantity .decrease{left:4px !important;right:auto !important;}
.cart-table .quantity .increase{right:4px !important;left:auto !important;}
.cart-table .quantity .increase:hover,
.cart-table .quantity .decrease:hover{background:#eef6fd !important;color:var(--clc-blue-d) !important;}
.cart-table .quantity .increase *,
.cart-table .quantity .decrease *{color:inherit !important;font-size:inherit !important;}

/* ceny */
.cart-table .p-price,
.cart-table .p-price *{color:var(--clc-text) !important;font-size:13px !important;font-weight:600 !important;white-space:nowrap;}
.cart-table td.p-total{position:relative;white-space:nowrap;text-align:right;padding-right:62px !important;}
.cart-table .p-total form{position:absolute !important;left:auto !important;right:18px !important;top:50% !important;transform:translateY(-50%);margin:0 !important;}
.cart-table .p-total .price-final{
  color:var(--clc-head) !important;
  font-size:18px !important;font-weight:800 !important;
  letter-spacing:-.01em;
}

/* odstranit – kulaté tlačítko s křížkem */
.cart-table .remove-item{
  width:32px !important;height:32px !important;
  margin:0 !important;
  display:inline-flex !important;align-items:center;justify-content:center;
  vertical-align:middle;
  border:0 !important;
  border-radius:50% !important;
  background:#f3f7fb !important;
  color:var(--clc-text) !important;
  transition:background .2s,color .2s;
}
.cart-table .remove-item::before{color:inherit !important;font-size:11px !important;}
.cart-table .remove-item:hover{background:#fdecec !important;color:var(--clc-red) !important;}

/* doporučujeme přidat k nákupu (doplněk fvStudio) */
.fvDoplnek.fvDoplnek-upsell{
  margin:0 0 22px !important;
  padding:24px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:22px !important;
  background:#fff !important;
  box-shadow:none !important;
}
.fvDoplnek-upsell h4{
  margin:0 0 16px !important;
  color:var(--clc-head) !important;
  font-size:19px !important;font-weight:800 !important;
}
.fvDoplnek-upsell .fvDoplnek-produkt{
  margin:0 0 10px !important;
  padding:14px 16px !important;
  border:1px solid #e6eef6 !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:none !important;
  transition:border-color .2s,background .2s;
}
.fvDoplnek-upsell .fvDoplnek-produkt:last-child{margin-bottom:0 !important;}
.fvDoplnek-upsell .fvDoplnek-produkt:hover{border-color:#cfe2f2 !important;background:var(--clc-soft) !important;}
.fvDoplnek-upsell .fvDoplnek-product-image{
  width:60px !important;height:60px !important;
  padding:4px;
  border:1px solid #e6eef6;
  border-radius:12px;
  background:#fff;
  object-fit:contain;
}
.fvDoplnek-upsell .fvDoplnek-text .name{
  color:var(--clc-head) !important;
  font-size:14.5px !important;font-weight:800 !important;
  text-transform:none !important;
  text-decoration:none !important;
}
.fvDoplnek-upsell .fvDoplnek-text:hover .name{color:var(--clc-blue-d) !important;}
.fvDoplnek-upsell .common_price{color:#9aa6b2 !important;font-size:13px !important;text-decoration:line-through;white-space:nowrap;margin:0 6px !important;}
.fvDoplnek-upsell .price,.fvDoplnek-upsell .action_price{white-space:nowrap;}
.fvDoplnek-upsell .price,
.fvDoplnek-upsell .action_price{color:var(--clc-green) !important;font-size:15px !important;font-weight:800 !important;}
.fvDoplnek-upsell .fvDoplnek-description{color:var(--clc-text) !important;font-size:13px !important;line-height:1.5 !important;}
.fvDoplnek-upsell .fvDoplnek-variant-checkbox{
  width:20px;height:20px;
  accent-color:var(--clc-green);
  cursor:pointer;
}

/* slevový kupón + doprava zdarma */
.cart-summary{margin:0 0 20px !important;}
.cart-summary .extras-wrapper{
  padding:20px 24px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:22px !important;
  background:var(--clc-soft) !important;
}
.cart-summary .extras-col{display:flex !important;flex-wrap:wrap;align-items:center;gap:16px 28px;}
.cart-summary .extras-col > div{flex:1 1 260px;width:auto !important;margin:0 !important;float:none !important;}
.discount-coupon .input-group{display:flex !important;gap:8px;width:100% !important;}
.discount-coupon .input-group > *{position:static !important;float:none !important;}
.discount-coupon .form-control{width:auto !important;min-width:0;}
.discount-coupon .form-control{
  flex:1 1 auto;
  height:48px !important;
  padding:0 16px !important;
  border:1px solid #d7e6f3 !important;
  border-radius:13px !important;
  background:#fff !important;
  color:var(--clc-head) !important;
  font-size:14px !important;
  box-shadow:none !important;
}
.discount-coupon .form-control:focus{border-color:var(--clc-blue) !important;box-shadow:0 0 0 3px rgba(35,156,235,.15) !important;}
.discount-coupon .btn{
  flex:0 0 auto;
  height:48px !important;
  padding:0 20px !important;
  border:0 !important;
  border-radius:13px !important;
  background:var(--clc-head) !important;
  color:#fff !important;
  font-size:14px !important;font-weight:800 !important;
  text-transform:none !important;
}
.discount-coupon .btn:hover{background:var(--clc-blue-d) !important;}
.cart-summary .extra.delivery,
.cart-summary .extra.delivery *{color:var(--clc-head) !important;font-size:14px !important;}
.cart-summary .extra.delivery strong{font-weight:800 !important;}
.cart-summary .extra.delivery > span::before{color:var(--clc-blue-d) !important;}
.cart-summary .price-range{
  height:8px !important;
  margin-top:10px !important;
  border-radius:8px !important;
  background:#e3ecf5 !important;
  overflow:hidden;
}
.cart-summary .price-range > div{
  height:100% !important;
  border-radius:8px !important;
  background:linear-gradient(90deg,#8fd0f7 0%,#239ceb 45%,#0b6fb0 100%) !important;
}

/* =====================================================================
   PRAVÝ SLOUPEC – pomoc, souhrn, pokračovat (všechny kroky)
   ===================================================================== */
.sidebar-in-cart .box,
#checkoutSidebar .checkout-box,
#checkoutSidebar .order-summary-inner,
.summary-wrapper .box{
  margin:0 0 16px !important;
  padding:22px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:22px !important;
  background:#fff !important;
  box-shadow:none !important;
}
.sidebar-in-cart .cart-content,
#checkoutSidebar .cart-content{padding:0 !important;background:none !important;border:0 !important;}
#checkoutSidebar .checkout-box > .box,
.sidebar-in-cart .checkout-box-wrapper .box{margin:0 !important;padding:0 !important;border:0 !important;}

/* Potřebujete pomoc? */
.contact-box h2,
.contact-box .h4{
  margin:0 0 4px !important;
  color:var(--clc-head) !important;
  font-size:17px !important;font-weight:800 !important;
}
.contact-box strong{color:var(--clc-head) !important;}
.contact-box ul{margin:14px 0 0 !important;padding:14px 0 0 !important;border-top:1px solid var(--clc-line);}
.contact-box li{margin:0 0 8px !important;}
.contact-box li,.contact-box li a,.contact-box li span{color:var(--clc-head) !important;font-size:14px !important;font-weight:700 !important;text-decoration:none !important;}
.contact-box li ::before{color:var(--clc-blue-d) !important;}

/* souhrn ceny */
.price-wrapper{display:grid !important;grid-template-columns:1fr auto;align-items:baseline;gap:4px 10px;}
.price-wrapper .price-label{color:var(--clc-text) !important;font-size:13.5px !important;font-weight:600 !important;}
.price-wrapper .price-primary.price-label{color:var(--clc-head) !important;font-weight:800 !important;}
.price-wrapper .price.price-primary,
.price-wrapper .price.price-primary *{color:var(--clc-head) !important;font-size:24px !important;font-weight:800 !important;letter-spacing:-.02em;}
.price-wrapper .price.price-secondary,
.price-wrapper .price.price-secondary *{color:var(--clc-text) !important;font-size:13px !important;font-weight:600 !important;}
.summary-wrapper .next-step,
#checkoutSidebar .next-step{margin:18px 0 0 !important;padding:0 !important;}

/* Rekapitulace objednávky (krok 2 a 3) */
.order-summary-inner h2,
.order-summary-inner .h4{
  margin:0 0 14px !important;
  color:var(--clc-head) !important;
  font-size:18px !important;font-weight:800 !important;
}
.order-summary-inner .cart-item{padding:0 0 12px !important;margin:0 0 12px !important;border-bottom:1px solid var(--clc-line) !important;}
.order-summary-inner .cart-item-name a{color:var(--clc-head) !important;font-size:13.5px !important;font-weight:700 !important;text-decoration:none !important;}
.order-summary-inner .cart-item-amount,
.order-summary-inner .cart-item-amount *{color:var(--clc-text) !important;font-size:13px !important;}
.order-summary-inner .cart-item-price{color:var(--clc-head) !important;font-size:14px !important;font-weight:800 !important;}
.order-summary-inner .order-summary-item{padding:12px 0 !important;border-top:0 !important;border-bottom:1px solid var(--clc-line) !important;}
.order-summary-inner .order-summary-item,
.order-summary-inner .order-summary-item strong{color:var(--clc-head) !important;font-size:14px !important;}
.order-summary-inner .order-summary-item.price{border-bottom:0 !important;padding-bottom:0 !important;}
.order-recapitulation{padding:12px 0 !important;border-bottom:1px solid var(--clc-line) !important;}
.order-recapitulation .recapitulation-single{margin:0 0 10px !important;padding:0 !important;border:0 !important;}
.order-recapitulation .recapitulation-single.last{margin-bottom:0 !important;}
.recapitulation-shipping-billing-label{color:var(--clc-text) !important;font-size:12.5px !important;font-weight:600 !important;}
.recapitulation-shipping-billing-info,
.recapitulation-shipping-billing-info *{color:var(--clc-head) !important;font-size:13.5px !important;font-weight:700 !important;}

/* =====================================================================
   KROK 2 – DOPRAVA A PLATBA
   ===================================================================== */
/* informační lišta (Doprava nad 1000 Kč zdarma) */
.site-msg-custom{
  margin:0 0 20px !important;
  padding:14px 20px !important;
  border:1px solid #cfe9d6 !important;
  border-radius:16px !important;
  background:#effaf2 !important;
  color:#17672b !important;
}
.site-msg-custom::before{color:var(--clc-green) !important;}
.site-msg-custom p,.site-msg-custom strong{margin:0 !important;color:#17672b !important;font-size:14.5px !important;}

/* volby dopravy a platby jako karty */
.shipping-billing-table .radio-wrapper{
  margin:0 0 10px !important;
  padding:0 20px !important;
  border:1px solid #e3ecf5 !important;
  border-radius:16px !important;
  background:#fff !important;
  transition:border-color .2s,background .2s,box-shadow .2s;
}
.shipping-billing-table .radio-wrapper:last-child{margin-bottom:0 !important;}
.shipping-billing-table .radio-wrapper:hover{border-color:#bcd9ef !important;}
.shipping-billing-table .radio-wrapper.active{
  border-color:var(--clc-blue) !important;
  background:linear-gradient(135deg,#f2f8fe 0%,#ffffff 100%) !important;
  box-shadow:0 0 0 3px rgba(35,156,235,.12) !important;
}
.shipping-billing-table .radio-wrapper.inactive,
.shipping-billing-table .radio-wrapper.disabled{opacity:.55;}
.shipping-billing-table label{
  display:flex !important;align-items:center;gap:16px;
  min-height:72px;
  padding:14px 0 14px 36px !important;
  cursor:pointer;
}
/* vlastní kulatý přepínač */
.shipping-billing-table label::before{
  top:50% !important;margin-top:0 !important;transform:translateY(-50%) !important;
  width:22px !important;height:22px !important;
  border:2px solid #c9d9e8 !important;
  background:#fff !important;
}
.shipping-billing-table label::after{
  top:50% !important;margin-top:0 !important;transform:translateY(-50%) !important;left:6px !important;
  width:10px !important;height:10px !important;
  border-radius:50% !important;
  background:transparent !important;
  border:0 !important;
}
.shipping-billing-table .radio-wrapper.active label::before{border-color:var(--clc-blue) !important;}
.shipping-billing-table .radio-wrapper.active label::after{background:var(--clc-blue) !important;}

.shipping-billing-table .payment-logo{
  flex:0 0 76px;
  width:76px !important;height:44px !important;
  display:flex !important;align-items:center;justify-content:center;
  padding:4px 6px;
  border:1px solid #e6eef6;
  border-radius:11px;
  background:#fff;
}
.shipping-billing-table .payment-logo img{max-width:100% !important;max-height:100% !important;object-fit:contain;}
.shipping-billing-table .payment-info{flex:1 1 auto;min-width:0;}
.shipping-billing-table .shipping-billing-name{
  color:var(--clc-head) !important;
  font-size:15px !important;font-weight:800 !important;
  line-height:1.35 !important;
}
.shipping-billing-table .question-tooltip{
  width:18px !important;height:18px !important;
  border-radius:50% !important;
  background:#e6f0f9 !important;
  color:var(--clc-blue-d) !important;
  font-size:11px !important;line-height:18px !important;
}
.shipping-billing-table .sublabel{display:block;margin-top:4px;color:var(--clc-text) !important;font-size:13px !important;}
.shipping-billing-table .sublabel a{
  color:var(--clc-blue-d) !important;
  font-weight:700;
  text-decoration:none !important;
}
.shipping-billing-table .sublabel a:hover{color:var(--clc-blue) !important;}
.shipping-billing-table .payment-shipping-price{
  flex:0 0 auto;
  margin-left:auto;
  color:var(--clc-head) !important;
  font-size:15px !important;font-weight:800 !important;
  white-space:nowrap;
}
.shipping-billing-table .payment-shipping-price.for-free{
  padding:4px 10px;
  border-radius:20px;
  background:#e7f6ec;
  color:var(--clc-green) !important;
  font-size:12.5px !important;
  line-height:1.4 !important;
}

/* =====================================================================
   KROK 3 – INFORMACE O VÁS (formulář)
   ===================================================================== */
#checkoutContent label,
.ordering-process label{color:var(--clc-head) !important;font-size:14px !important;font-weight:700 !important;}
#checkoutContent .form-control,
#checkoutContent input[type="text"],
#checkoutContent input[type="email"],
#checkoutContent input[type="tel"],
#checkoutContent select,
#checkoutContent textarea{
  min-height:50px;
  padding:0 16px !important;
  border:1px solid #d7e6f3 !important;
  border-radius:13px !important;
  background:#fff !important;
  color:var(--clc-head) !important;
  font-size:15px !important;
  box-shadow:none !important;
  transition:border-color .2s,box-shadow .2s;
}
#checkoutContent textarea{padding:12px 16px !important;min-height:110px;}
#checkoutContent .form-control:focus,
#checkoutContent input:focus,
#checkoutContent select:focus,
#checkoutContent textarea:focus{
  border-color:var(--clc-blue) !important;
  box-shadow:0 0 0 3px rgba(35,156,235,.15) !important;
  outline:0;
}
#checkoutContent .form-control::placeholder{color:#9aa6b2;}
#checkoutContent .has-error .form-control,
#checkoutContent .form-control.error{border-color:var(--clc-red) !important;box-shadow:0 0 0 3px rgba(229,72,77,.12) !important;}
#checkoutContent .form-group{margin-bottom:16px !important;}
#checkoutContent .co-box .checkbox label,
#checkoutContent .co-box .radio label{font-weight:600 !important;}
#checkoutContent input[type="checkbox"],
#checkoutContent input[type="radio"]{accent-color:var(--clc-blue);}
#checkoutContent .co-box a{color:var(--clc-blue-d) !important;font-weight:700;text-decoration:none !important;}
#checkoutContent .co-box a:hover{color:var(--clc-blue) !important;}
#checkoutContent .co-box .btn-secondary,
#checkoutContent .co-box .btn-default{
  height:44px;
  padding:0 18px !important;
  border:1px solid #d7e6f3 !important;
  border-radius:12px !important;
  background:#fff !important;
  color:var(--clc-head) !important;
  font-weight:700 !important;
  text-transform:none !important;
}

/* zaškrtávací políčka (Nakupuji na firmu, Doručit jinam, souhlasy…) */
.cart-row input[type="checkbox"] + label::before{
  width:22px !important;height:22px !important;
  border:2px solid #c9d9e8 !important;
  border-radius:7px !important;
  background:#fff !important;
}
.cart-row input[type="checkbox"]:checked + label::after{
  width:22px !important;height:22px !important;
  border-radius:7px !important;
  background:var(--clc-blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 13px 13px no-repeat !important;
}
.cart-row label.whole-width{color:var(--clc-head) !important;font-size:14px !important;font-weight:600 !important;}

/* přihlášení – informační lišta nahoře */
#checkoutContent p.ucet{
  margin:0 0 20px !important;
  padding:14px 20px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:16px !important;
  background:var(--clc-soft) !important;
  color:var(--clc-head) !important;
  font-size:14.5px !important;
}
#checkoutContent p.ucet::before{color:var(--clc-blue-d) !important;}
#checkoutContent p.ucet a{color:var(--clc-blue-d) !important;font-weight:800;text-decoration:none !important;}

/* fakturační adresa – vnitřní rámeček pryč (karta už je kolem) */
#checkoutContent .co-box > fieldset.box{margin:0 !important;padding:0 !important;border:0 !important;background:none !important;}

/* telefon – vlajka a číslo jako jedno pole */
#checkoutContent .phone-combined-input{display:flex !important;}
#checkoutContent .phone-combined-input .country-flags{
  height:50px !important;
  border:1px solid #d7e6f3 !important;border-right:0 !important;
  border-radius:13px 0 0 13px !important;
  background:#f7fafd !important;
}
#checkoutContent .phone-combined-input input{border-radius:0 13px 13px 0 !important;}

/* souhlasy a obchodní podmínky v pravém sloupci */
#checkoutContent .co-box-additional::before{display:none !important;}
#checkoutSidebar .consents{
  margin:0 0 6px !important;
  padding:10px 12px !important;
  border-radius:12px !important;
  background:#f7fafd !important;
  color:var(--clc-text) !important;
  font-size:13px !important;
}
#checkoutSidebar .consents label,
#checkoutSidebar .consents p{color:var(--clc-text) !important;font-size:13px !important;font-weight:500 !important;line-height:1.5 !important;}
#checkoutSidebar .consents strong{color:var(--clc-head) !important;}
#checkoutSidebar .consents a{color:var(--clc-blue-d) !important;font-weight:700;text-decoration:none !important;}
#submit-order{flex-direction:column;gap:0;padding:10px 20px !important;}
#submit-order .order-button-suffix{font-size:12px !important;font-weight:600 !important;opacity:.85;text-transform:none !important;}

/* kontakt a cena v pravém sloupci – nic nepřetéká z karty */
.contact-box ul{width:auto !important;margin-left:-96px !important;margin-right:0 !important;}
.contact-box li{white-space:nowrap;}
.contact-box li,.contact-box li a,.contact-box li span{font-size:13.5px !important;}
.order-summary-inner .order-summary-item.price{
  width:auto !important;
  margin:0 !important;
  padding:14px 0 0 !important;
  background:none !important;
}

/* =====================================================================
   OPRAVY PO NASAZENÍ
   ===================================================================== */
/* žádné šedé pozadí ani čáry kolem tlačítek Pokračovat / Objednat */
.next-step,
#checkoutSidebar .next-step,
.summary-wrapper .next-step{border:0 !important;background:none !important;box-shadow:none !important;}

/* 1. krok – podpora jako karta se světle modrým pozadím */
.sidebar-in-cart .checkout-box-wrapper,
#checkoutSidebar .checkout-box{
  margin:0 0 16px !important;
  padding:20px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:22px !important;
  background:var(--clc-soft) !important;
}
.sidebar-in-cart .checkout-box-wrapper .box,
#checkoutSidebar .checkout-box .box{margin:0 !important;padding:0 !important;border:0 !important;background:none !important;}
.contact-box ul{border-top-color:#dceaf6 !important;background:none !important;}
.contact-box,.contact-box li{background:none !important;}

/* 1. krok – souhrn ceny jako samostatná karta, tlačítko Pokračovat pod ní zvlášť */
.summary-wrapper .box{margin:0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:none !important;}
.summary-wrapper .price-wrapper{
  padding:20px 22px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:22px !important;
  background:#fff !important;
}
.summary-wrapper .next-step{margin:14px 0 0 !important;}

/* souhlasy v pravém sloupci – bez rámečků, políčko zarovnané s prvním řádkem textu */
#checkoutSidebar .consents{
  margin:0 0 4px !important;
  padding:8px 2px !important;
  border:0 !important;
  border-radius:0 !important;
  background:none !important;
}
#checkoutSidebar .consents + .consents{border-top:1px solid var(--clc-line) !important;}
#checkoutSidebar .consents p{margin:0 !important;}
#checkoutSidebar .consents label{min-height:22px;padding-left:34px !important;}
#checkoutSidebar .consents label::before,
#checkoutSidebar .consents label::after{top:0 !important;transform:none !important;margin-top:0 !important;}

/* souhrn ceny – „Celkem“ nahoře, pod ním velká cena, dole cena bez DPH v jednom řádku */
.price-wrapper{margin:0 !important;gap:2px 10px !important;}
.price-wrapper .price-label.price-primary,
.price-wrapper .price.price-primary{grid-column:1 / -1;}
.price-wrapper .price.price-primary{margin:0 0 8px !important;line-height:1.15 !important;text-align:left !important;}
.price-wrapper .price-label,
.price-wrapper .price.price-secondary{white-space:nowrap;}
.price-wrapper .price.price-secondary{text-align:right;}

/* informační lišty – ikonka vlevo uprostřed, text vedle ní */
#checkoutContent p.ucet,
.site-msg-custom{position:relative;padding-left:52px !important;}
#checkoutContent p.ucet::before,
.site-msg-custom::before{left:18px !important;top:50% !important;transform:translateY(-50%) !important;margin:0 !important;}

/* mobil – okraje stránky, ať karty nesahají až k hraně displeje */
@media (max-width:767px){
  .cart-inner{padding-left:12px !important;padding-right:12px !important;}
}

/* odkaz Zpět bez podtržení, cena bez odsazení */
a.btn.next-step-back,
a.btn.next-step-back span{text-decoration:none !important;}
.price-wrapper .price{padding:0 !important;}

/* mobil – rozbalovací „Rekapitulace objednávky“ bez šedého pruhu */
@media (max-width:767px){
  #summary-box > h2,
  #summary-box > .h4{
    display:flex !important;align-items:center;justify-content:space-between;
    margin:0 0 12px !important;
    padding:0 !important;
    border:0 !important;
    background:none !important;
    color:var(--clc-head) !important;
    font-size:16px !important;
    text-decoration:none !important;
  }
  #summary-box > h2::after,#summary-box > .h4::after{color:var(--clc-blue-d) !important;}
}

/* slevový kupón – pole a tlačítko se vždy vejdou do boxu */
.discount-coupon,
.discount-coupon form{width:100% !important;max-width:100% !important;}
.discount-coupon .input-group{flex-wrap:nowrap !important;}
.discount-coupon .form-control{flex:1 1 0 !important;min-width:0 !important;}

/* doporučené doplňky – obrázek, vedle zaškrtávátko s názvem a cenou, pod tím popis */
.fvDoplnek-upsell .fvDoplnek-produkt form{display:flex !important;align-items:flex-start !important;gap:14px;}
.fvDoplnek-upsell .fvDoplnek-product-image{flex:0 0 60px;}
.fvDoplnek-upsell .fvcontent{flex:1 1 auto;min-width:0;}
.fvDoplnek-upsell .fvcontent .header{display:flex !important;align-items:flex-start;gap:10px;}
.fvDoplnek-upsell .fvcontent .header > span:first-child{flex:0 0 auto;padding-top:1px;}
.fvDoplnek-upsell .fvDoplnek-text{display:block !important;line-height:1.45 !important;}
.fvDoplnek-upsell .fvDoplnek-text .name{display:inline;margin-right:6px;}
.fvDoplnek-upsell .common_price{margin:0 6px 0 0 !important;}
.fvDoplnek-upsell .fvDoplnek-description{margin:6px 0 0 30px !important;padding:0 !important;}
@media (max-width:767px){
  .fvDoplnek-upsell .fvDoplnek-produkt form{gap:10px;}
  .fvDoplnek-upsell .fvDoplnek-product-image{flex-basis:52px;width:52px !important;height:52px !important;}
  .fvDoplnek-upsell .fvDoplnek-description{margin-left:0 !important;}
}

/* telefon – vlajka i číslo stejně vysoké, bez dvojité čáry */
#checkoutContent .phone-combined-input .country-flags,
#checkoutContent .phone-combined-input input{height:50px !important;min-height:50px !important;}
#checkoutContent .phone-combined-input .country-flags{display:flex !important;align-items:center;}
#checkoutContent .phone-combined-input input{border-left:0 !important;}

/* =====================================================================
   DOLADĚNÍ 2
   ===================================================================== */
/* víc místa mezi hlavičkou webu a kroky */
.cart-header{margin-top:30px !important;}

/* zákaznická podpora – všude stejně: bílá karta s jemným okrajem */
.sidebar-in-cart .checkout-box-wrapper,
#checkoutSidebar .checkout-box{background:#fff !important;}

#checkoutSidebar .contact-box h2,
#checkoutSidebar .contact-box .h4,
.sidebar-in-cart .contact-box h2,
.sidebar-in-cart .contact-box .h4{color:var(--clc-head) !important;}


/* vybraná doprava / platba – výraznější modrý přechod */
#checkoutContent .shipping-billing-table .radio-wrapper.active,
.shipping-billing-table .radio-wrapper.active{
  border-color:var(--clc-blue) !important;
  background:linear-gradient(135deg,#dcefff 0%,#eef7ff 55%,#f7fbff 100%) !important;
  box-shadow:0 0 0 3px rgba(35,156,235,.12) !important;
}

/* vybraná volba – šablona přes ni dává zelenou vrstvu, tu schovat */
.shipping-billing-table .radio-wrapper::after,
.shipping-billing-table .radio-wrapper::before{display:none !important;}

/* karty ve 3. kroku – stejná mezera nahoře i dole (poslední řádek bez spodního okraje) */
#checkoutContent .co-box .form-group:last-child,
#checkoutContent .co-box fieldset:last-child,
#checkoutContent .co-box fieldset > .form-group:last-child{margin-bottom:0 !important;}

/* informační lišta – ikonka napevno vlevo, text zarovnaný vlevo */
#checkoutContent p.ucet,
.site-msg-custom,
.site-msg-custom p{text-align:left !important;}
#checkoutContent p.ucet::before,
.site-msg-custom::before{position:absolute !important;display:block !important;float:none !important;}


/* =====================================================================
   IKONKY KONTROLY POLÍ (Foxentry) – zelená fajfka ve světle zeleném kolečku
   Pozici a velikost si Foxentry počítá samo, měníme jen vzhled (pozadí).
   ===================================================================== */
.foxentry-input-icon::before,
.foxentry-input-icon::after{display:none !important;}
div.foxentry-input-icon{
  background-color:transparent !important;
  background-position:center center,center center !important;
  background-repeat:no-repeat,no-repeat !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
div.foxentry-input-icon.foxentry-input-icon-valid{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231f9d3a' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E"),radial-gradient(circle at center,#e7f6ec 0 13px,transparent 13.5px) !important;
  background-size:12px 12px,28px 28px !important;
}
div.foxentry-input-icon.foxentry-input-icon-invalid{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e5484d' stroke-width='3.4' stroke-linecap='round'%3E%3Cpath d='M7 7l10 10M17 7L7 17'/%3E%3C/svg%3E"),radial-gradient(circle at center,#fdecec 0 13px,transparent 13.5px) !important;
  background-size:11px 11px,28px 28px !important;
}
div.foxentry-input-icon.foxentry-input-icon-warning{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c78200' stroke-width='3.2' stroke-linecap='round'%3E%3Cpath d='M12 6v8M12 18.5v.5'/%3E%3C/svg%3E"),radial-gradient(circle at center,#fff6e0 0 13px,transparent 13.5px) !important;
  background-size:12px 12px,28px 28px !important;
}
/* načítání (tmavé točící se kolečko vypadá jako černý puntík) – schovat */
div.foxentry-input-icon.foxentry-input-icon-loading{display:none !important;}
/* místo pro ikonku, ať nepřekrývá text */
#checkoutContent .foxentry-input{padding-right:46px !important;}

/* Novější Foxentry (SVG značky) – barvy bere z proměnných, které na cleno.cz chybí,
   takže by se kolečko vybarvilo černě. Doplníme je: zelená fajfka ve světle zeleném kolečku. */
:root{
  --fox-mark-success-bg-color:#e7f6ec;
  --fox-mark-success-symbol-color:#1f9d3a;
  --fox-mark-help-bg-color:#eef6fd;
  --fox-mark-help-symbol-color:#0b6fb0;
  --fox-mark-alert-bg-color:#fff6e0;
  --fox-mark-alert-symbol-color:#c78200;
  --fox-mark-error-bg-color:#fdecec;
  --fox-mark-error-symbol-color:#e5484d;
  --fox-input-help-border-color:#239ceb;
  --fox-input-error-border-color:#e5484d;
  --fox-input-alert-border-color:#e1a100;
  --fox-input-success-border-color:#1f9d3a;
  --fox-input-typing-border-color:#9fb3c4;
  --fox-message-alert-icon-color:#c78200;
  --fox-message-error-icon-color:#e5484d;
  --fox-loading-bg:#eef3f8;
  --fox-loading-color:#6b7682;
  --fox-delete-bg:#eef3f8;
  --fox-delete-hover-bg:#e3ecf5;
  --fox-delete-color:#6b7682;
  --fox-delete-hover-color:#163d5c;
  --fox-mark-z-index:10;
  --fox-loader-z-index:12;
  --fox-delete-z-index:11;
  /* bublina se zprávou (např. „E-mailová adresa neexistuje“) */
  --fox-message-z-index:30;
  --fox-message-alert-bg:#ffffff;
  --fox-message-alert-icon-color:#c78200;
  --fox-message-alert-icon-bg:#fff6e0;
  --fox-message-alert-text-color:#163d5c;
  --fox-message-error-bg:#ffffff;
  --fox-message-error-icon-color:#e5484d;
  --fox-message-error-icon-bg:#fdecec;
  --fox-message-error-text-color:#163d5c;
  --fox-message-info-bg:#ffffff;
  --fox-message-info-text-color:#163d5c;
  --fox-message-info-link-color:#0b6fb0;
  --fox-message-close-icon-color:#9aa6b2;
  --fox-message-close-icon-color-hover:#163d5c;
}
/* bublina Foxentry – bílá zaoblená karta nad ostatními poli */
.foxentry-message{z-index:30 !important;}
.foxentry-message .foxentry-message__content{
  align-items:center;
  position:relative !important;
  padding:10px 40px 10px 12px !important;
  border:1px solid #e0eef9 !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 14px 30px -14px rgba(14,47,75,.35) !important;
}
.foxentry-message.is-error .foxentry-message__content{border-color:#f5c6c8 !important;}
.foxentry-message.is-alert .foxentry-message__content{border-color:#f1dca6 !important;}
.foxentry-message:before{background:#fff !important;border-left:1px solid #e0eef9;border-top:1px solid #e0eef9;z-index:1;}
.foxentry-message.is-error:before{border-color:#f5c6c8;}
.foxentry-message.is-alert:before{border-color:#f1dca6;}
.foxentry-message p,
.foxentry-message .foxentry-message__txt{
  font-family:inherit !important;
  color:var(--clc-head) !important;
  font-size:13.5px !important;font-weight:700 !important;
  line-height:1.35 !important;
}
.foxentry-message .foxentry-message__close{
  position:absolute !important;
  top:50% !important;right:10px !important;bottom:auto !important;left:auto !important;
  width:22px !important;height:22px !important;
  margin:-11px 0 0 !important;
  transform:none !important;
  display:flex !important;align-items:center;justify-content:center;
  border-radius:50%;
  background:#f3f7fb;
}
.foxentry-message .foxentry-message__close svg{width:10px !important;height:10px !important;}
.foxentry-message .foxentry-message__close svg path{fill:#9aa6b2;}
.foxentry-message .foxentry-message__close:hover svg path{fill:var(--clc-head);}
/* pojistka i bez proměnných */
.foxentry-mark__success .foxentry-mark__bg{fill:var(--fox-mark-success-bg-color,#e7f6ec);}
.foxentry-mark__success .foxentry-mark__scale{fill:var(--fox-mark-success-symbol-color,#1f9d3a);}
.foxentry-mark__help .foxentry-mark__bg{fill:var(--fox-mark-help-bg-color,#eef6fd);}
.foxentry-mark__help .foxentry-mark__scale{fill:var(--fox-mark-help-symbol-color,#0b6fb0);}
.foxentry-mark__alert .foxentry-mark__bg{fill:var(--fox-mark-alert-bg-color,#fff6e0);}
.foxentry-mark__alert .foxentry-mark__scale{fill:var(--fox-mark-alert-symbol-color,#c78200);}
.foxentry-mark__error .foxentry-mark__bg{fill:var(--fox-mark-error-bg-color,#fdecec);}
.foxentry-mark__error .foxentry-mark__scale{fill:var(--fox-mark-error-symbol-color,#e5484d);}

/* chybová / upozorňující hláška pod polem */
#checkoutContent .validator-msg.msg-error,
#checkoutContent .js-validator-msg.msg-error,
#checkoutContent .validator-msg.msg-warning,
#checkoutContent .validator-msg.msg-info{
  height:auto !important;min-height:0 !important;
  margin:8px 0 0 !important;
  padding:9px 14px !important;
  border:1px solid #f5c6c8 !important;
  border-radius:12px !important;
  background:#fdecec !important;
  color:#b42328 !important;
  font-size:13px !important;font-weight:600 !important;
  line-height:1.45 !important;
}
#checkoutContent .validator-msg.msg-warning{border-color:#f1dca6 !important;background:#fff6e0 !important;color:#8a5a00 !important;}
#checkoutContent .validator-msg.msg-info{border-color:#cfe2f2 !important;background:#eef6fd !important;color:var(--clc-blue-d) !important;}
/* hláška u telefonu – zarovnat pod pole, ne pod popisek */
@media (min-width:768px){
  /* všechny hlášky v řádcích „popisek | pole“ zarovnat pod pole */
  #checkoutContent .form-group--inline .js-validator-msg,
  #checkoutContent .form-group--inline .validator-msg{margin-left:173px !important;max-width:336px;}
}
#checkoutContent .js-error-field{border-color:var(--clc-red) !important;box-shadow:0 0 0 3px rgba(229,72,77,.12) !important;}
#checkoutContent .js-validator-msg.msg-warning{border-color:#f1dca6 !important;background:#fff6e0 !important;color:#8a5a00 !important;}
#checkoutContent .validator-msg + input,
#checkoutContent .js-validator-msg + input,
#checkoutContent .validator-msg + .phone-combined-input{margin-bottom:0 !important;}

/* automatické vyplnění prohlížečem – bez žlutého pozadí */
#checkoutContent input:-webkit-autofill,
#checkoutContent input:-webkit-autofill:hover,
#checkoutContent input:-webkit-autofill:focus{
  -webkit-box-shadow:0 0 0 1000px #fff inset !important;
  -webkit-text-fill-color:var(--clc-head) !important;
  caret-color:var(--clc-head);
  transition:background-color 9999s ease-out 0s;
}

/* =====================================================================
   DOKONČENÍ OBJEDNÁVKY – /objednavka/dekujeme/
   ===================================================================== */
.in-dekujeme h1.sr-only{position:absolute !important;height:1px !important;padding:0 !important;margin:0 !important;overflow:hidden;}
.in-dekujeme #content .content-inner{
  max-width:760px !important;
  margin:36px auto 80px !important;
  padding:44px 40px 40px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:28px !important;
  background:#fff !important;
}
/* hlavička – zelená fajfka, nadpis, číslo objednávky */
.in-dekujeme .order-summary-heading{
  margin:0 0 10px !important;
  padding:86px 0 0 !important;
  color:var(--clc-head) !important;
  font-size:32px !important;font-weight:800 !important;
  letter-spacing:-.015em;
  text-align:center !important;
}
.in-dekujeme .order-summary-heading::before{
  width:68px !important;height:68px !important;
  line-height:68px !important;
  border-radius:50% !important;
  background:#e7f6ec !important;
  color:var(--clc-green) !important;
  font-size:24px !important;
  box-shadow:0 0 0 8px #f3fbf5 !important;
}
.in-dekujeme .recapitulation-wrapper{width:100% !important;max-width:none !important;margin:0 !important;padding:0 !important;border:0 !important;}
.in-dekujeme .reca-number{
  display:flex !important;justify-content:center;
  margin:0 0 30px !important;
  padding:0 0 30px !important;
  border-bottom:1px solid var(--clc-line) !important;
}
.in-dekujeme .reca-number::before{display:none !important;}
.in-dekujeme .reca-number strong{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 16px;
  border:1px solid var(--clc-border);
  border-radius:20px;
  background:var(--clc-soft);
  color:var(--clc-head) !important;
  font-size:15px !important;font-weight:800 !important;
  letter-spacing:.02em;
}
.in-dekujeme .reca-number strong::before{content:"Číslo objednávky";color:var(--clc-text);font-size:13px;font-weight:600;letter-spacing:0;}

/* karty Platba a doručení / Obsah objednávky */
.in-dekujeme .recapitulation-wrapper .co-box{
  width:100% !important;max-width:none !important;
  margin:0 0 18px !important;
  padding:24px 26px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:22px !important;
  background:#fff !important;
  box-shadow:none !important;
}
.in-dekujeme .recapitulation-wrapper .co-box h4{
  margin:0 0 14px !important;padding:0 !important;
  color:var(--clc-head) !important;
  font-size:19px !important;font-weight:800 !important;
}
.in-dekujeme .recapitulation-wrapper .co-box h4::before{display:none !important;content:none !important;}
.in-dekujeme .recapitulation-table{margin:0 !important;border:0 !important;background:none !important;}
.in-dekujeme .recapitulation-table th,
.in-dekujeme .recapitulation-table td{
  padding:12px 0 !important;
  border:0 !important;border-bottom:1px solid var(--clc-line) !important;
  background:none !important;
  vertical-align:middle !important;
}
.in-dekujeme .recapitulation-table tr:last-child th,
.in-dekujeme .recapitulation-table tr:last-child td{border-bottom:0 !important;padding-bottom:0 !important;}
.in-dekujeme .recapitulation-table th{color:var(--clc-text) !important;font-size:14px !important;font-weight:600 !important;text-align:left;}
.in-dekujeme .recapitulation-table td{text-align:right;}
.in-dekujeme .recapitulation-table td strong{color:var(--clc-head) !important;font-size:14.5px !important;font-weight:800 !important;}
.in-dekujeme .recapitulation-table tr:last-child td strong{font-size:20px !important;letter-spacing:-.01em;}

/* QR platba – samostatný světle modrý blok s kódem v bílé kartě */
.in-dekujeme .recapitulation-table:has(.qrcode),
.in-dekujeme .recapitulation-table:has(.qrcode) tbody{display:block !important;width:100% !important;}
.in-dekujeme .recapitulation-table:has(.qrcode){margin-top:12px !important;border-top:1px solid var(--clc-line) !important;}
.in-dekujeme .recapitulation-table:has(.qrcode) tr{
  display:flex !important;align-items:center;justify-content:space-between;gap:12px;
  border-bottom:1px solid var(--clc-line) !important;
}
.in-dekujeme .recapitulation-table:has(.qrcode) th,
.in-dekujeme .recapitulation-table:has(.qrcode) td{display:block !important;border:0 !important;}
.in-dekujeme .recapitulation-table tr:has(.qrcode){display:block !important;border-bottom:0 !important;}
.in-dekujeme .recapitulation-table tr:has(.qrcode) th{display:none !important;}
.in-dekujeme .recapitulation-table tr:has(.qrcode) td,
.in-dekujeme .recapitulation-table td:has(> .qrcode){
  display:block !important;
  width:100% !important;
  margin:14px 0 0 !important;
  padding:20px 18px 18px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:18px !important;
  background:var(--clc-soft) !important;
  text-align:center !important;
}
.in-dekujeme .recapitulation-table td:has(> .qrcode)::before{
  content:"Zaplaťte rychle QR platbou";
  display:block;
  margin:0 0 12px;
  color:var(--clc-head);
  font-size:16px;font-weight:800;
}
.in-dekujeme .recapitulation-table td:has(> .qrcode)::after{
  content:"Naskenujte kód v aplikaci své banky – číslo účtu, částka i variabilní symbol se vyplní samy.";
  display:block;
  max-width:340px;
  margin:12px auto 0;
  color:var(--clc-text);
  font-size:13px;font-weight:500;line-height:1.5;
}
.in-dekujeme img.qrcode{
  display:block !important;
  width:176px !important;height:176px !important;
  margin:0 auto !important;
  padding:12px !important;
  border:1px solid var(--clc-border) !important;
  border-radius:16px !important;
  background:#fff !important;
  image-rendering:pixelated;
}
/* variabilní symbol zvýraznit */
.in-dekujeme .recapitulation-table tr:has(+ tr .qrcode) td strong{
  padding:3px 10px;
  border-radius:8px;
  background:#eef6fd;
  color:var(--clc-blue-d) !important;
}

/* položky objednávky – malá fotka, název, počet a cena */
.in-dekujeme .co-order .cart-table{display:table !important;width:100% !important;margin:0 !important;border:0 !important;border-radius:0 !important;background:none !important;}
.in-dekujeme .co-order .cart-table tr{display:table-row !important;}
.in-dekujeme .co-order .cart-table td{
  display:table-cell !important;
  padding:12px 10px !important;
  border:0 !important;border-top:1px solid var(--clc-line) !important;
  vertical-align:middle !important;
}
.in-dekujeme .co-order .cart-table tr:first-child td{border-top:0 !important;padding-top:4px !important;}
.in-dekujeme .co-order .cart-table td:first-child{padding-left:0 !important;}
.in-dekujeme .co-order .cart-table td:last-child{padding-right:0 !important;}
.in-dekujeme .co-order .cart-table td.cart-p-image{width:78px !important;min-width:78px;padding-right:14px !important;}
.in-dekujeme .co-order .cart-table td.p-name{width:100% !important;}
.in-dekujeme .co-order .cart-table td.p-total,
.in-dekujeme .co-order .cart-table td:last-child:not(.p-quantity){white-space:nowrap;text-align:right;color:var(--clc-head) !important;font-size:15px !important;font-weight:800 !important;}
.in-dekujeme .co-order .cart-table td.p-total *{color:inherit !important;font-size:inherit !important;}
.in-dekujeme .co-order .cart-p-image img{
  display:block;
  width:64px !important;height:64px !important;
  padding:5px;
  border:1px solid #e6eef6;
  border-radius:12px;
  background:#fff;
  object-fit:contain;
}
.in-dekujeme .co-order .p-name,
.in-dekujeme .co-order .p-name *{color:var(--clc-head) !important;font-size:14.5px !important;font-weight:700 !important;line-height:1.4 !important;}
.in-dekujeme .co-order .p-quantity{white-space:nowrap;text-align:right;color:var(--clc-text) !important;font-size:13.5px !important;}
.in-dekujeme .co-order .p-quantity span{margin:0 4px;color:#c3ced8 !important;}
.in-dekujeme .co-order .p-quantity strong{color:var(--clc-head) !important;font-size:15px !important;font-weight:800 !important;}

/* poděkování a tlačítko */
.in-dekujeme .order-summary-item.total{margin:22px 0 4px !important;padding:0 !important;border:0 !important;color:var(--clc-text) !important;font-size:14.5px !important;text-align:center !important;}
.in-dekujeme .order-summary-item.summary-thx{margin:0 0 22px !important;padding:0 !important;border:0 !important;color:var(--clc-head) !important;font-size:20px !important;font-weight:800 !important;text-align:center !important;}
.in-dekujeme .order-complete-links{text-align:center !important;}
.in-dekujeme .order-complete-links p{margin:0 !important;}
.in-dekujeme .order-complete-links .btn{
  display:inline-flex !important;align-items:center;justify-content:center;gap:8px;
  height:52px !important;
  padding:0 28px !important;
  border:0 !important;
  border-radius:14px !important;
  background:linear-gradient(135deg,#34c759 0%,#1f9d3a 100%) !important;
  color:#fff !important;
  font-size:15.5px !important;font-weight:800 !important;
  text-transform:none !important;
  text-decoration:none !important;
  box-shadow:0 10px 20px -12px rgba(31,157,58,.9) !important;
}

/* =====================================================================
   TABLET + MOBIL
   ===================================================================== */
@media (max-width:1199px){
  /* v užším košíku schovat cenu za kus – víc místa pro název */
  .cart-table .p-price{display:none !important;}
}
@media (max-width:991px){
  .cart-header .step > a,
  .cart-header .step > strong{height:56px !important;padding:0 12px !important;font-size:13.5px !important;}
  .cart-header .step span::before{flex-basis:30px;width:30px !important;height:30px !important;line-height:30px !important;margin-right:9px !important;}
}

@media (max-width:767px){
  /* kroky – jen čísla, u aktivního kroku i název */
  .cart-header{gap:8px;margin:22px 0 20px !important;}

  /* iPhone přibližuje stránku u polí s písmem menším než 16 px – všechna pole 16 px */
  #checkoutContent input[type],
  #checkoutContent input.form-control,
  #checkoutContent select.form-control,
  #checkoutContent textarea.form-control,
  #checkoutContent select,
  #checkoutContent textarea,
  .discount-coupon input.form-control,
  .cart-table .quantity input{font-size:16px !important;}
  .cart-header .step{flex:0 0 auto;}
  .cart-header .step.active{flex:1 1 auto;}
  .cart-header .step > a,
  .cart-header .step > strong{height:50px !important;padding:0 8px !important;border-radius:14px !important;font-size:14px !important;}
  .cart-header .step:not(.active) span{font-size:0 !important;}
  .cart-header .step:not(.active) span::before{margin-right:0 !important;font-size:13px !important;}
  .cart-header .step.completed:not(.active) span::before{font-size:11px !important;}

  #checkoutContent .co-box,
  .ordering-process .co-box{padding:20px 16px !important;border-radius:18px !important;}
  #checkoutContent .co-box h2{font-size:18px !important;}

  /* košík – každá položka jako kompaktní karta: obrázek | název + dostupnost, dole počet a cena */
  .cart-table{display:block !important;border-radius:18px !important;}
  .cart-table tbody{display:block !important;}
  .cart-table tr.removeable{
    position:relative;
    display:grid !important;
    grid-template-columns:64px minmax(0,1fr);
    align-items:center;
    gap:6px 12px;
    padding:14px !important;
  }
  .cart-table tr + tr{border-top:1px solid var(--clc-line) !important;}
  .cart-table tr.removeable td,
  .cart-table tr.removeable td:first-child,
  .cart-table tr.removeable td:last-child,
  .cart-table tr.removeable td.p-total{
    display:block !important;
    width:auto !important;
    padding:0 !important;
    border:0 !important;
    text-align:left;
  }
  .cart-table .p-label,
  .cart-table tr.removeable td.p-price{display:none !important;}
  .cart-table tr.removeable td.cart-p-image{grid-column:1;grid-row:1 / 3;width:auto !important;align-self:start;}
  .cart-table .cart-p-image a{width:64px !important;height:64px !important;border-radius:12px;}
  .cart-table tr.removeable td.p-name{grid-column:2;grid-row:1;width:auto !important;padding-right:40px !important;}
  .cart-table .p-name .main-link{font-size:14px !important;}
  .cart-table .p-name .show-related{display:none !important;}
  .cart-table .p-availability{grid-column:2;grid-row:2;}
  .cart-table .p-quantity{grid-column:1 / -1;grid-row:3;justify-self:start;margin-top:6px;}
  .cart-table tr.removeable td.p-total{grid-column:1 / -1;grid-row:3;justify-self:end;margin-top:6px;position:static;}
  .cart-table .p-total form{top:14px !important;right:14px !important;transform:none;}
  .cart-table .quantity{width:108px !important;height:42px !important;}
  .cart-table .p-total .price-final{font-size:17px !important;}

  .fvDoplnek.fvDoplnek-upsell{padding:16px !important;border-radius:18px !important;}
  .fvDoplnek-upsell h4{font-size:17px !important;}
  .fvDoplnek-upsell .fvDoplnek-produkt{padding:12px !important;border-radius:14px !important;}

  .cart-summary .extras-wrapper{padding:16px !important;border-radius:18px !important;}

  .sidebar-in-cart .box,
  #checkoutSidebar .checkout-box,
  #checkoutSidebar .order-summary-inner,
  .summary-wrapper .price-wrapper{padding:18px !important;border-radius:18px !important;}

  /* doprava a platba */
  .shipping-billing-table .radio-wrapper{padding:0 14px !important;border-radius:14px !important;}
  .shipping-billing-table label{gap:10px;min-height:64px;padding:12px 0 12px 32px !important;flex-wrap:nowrap !important;}
  .shipping-billing-table .payment-logo{flex:0 0 52px !important;width:52px !important;height:34px !important;padding:3px 4px !important;}
  .shipping-billing-table .payment-info{flex:1 1 auto !important;width:auto !important;}
  .shipping-billing-table .shipping-billing-name{font-size:14px !important;}
  .shipping-billing-table .payment-shipping-price{flex:0 0 auto !important;width:auto !important;font-size:13.5px !important;}
  .shipping-billing-table .payment-shipping-price.for-free{padding:3px 8px !important;font-size:11px !important;}
  /* dokončení objednávky */
  .in-dekujeme #content .content-inner{margin:22px 12px 44px !important;padding:6px 0 0 !important;border:0 !important;border-radius:0 !important;background:none !important;}
  .in-dekujeme .recapitulation-table th{white-space:nowrap;padding-right:12px !important;}
  .in-dekujeme .recapitulation-table td{line-height:1.4 !important;}
  .in-dekujeme .order-summary-heading{padding-top:78px !important;font-size:25px !important;}
  .in-dekujeme .order-summary-heading::before{width:58px !important;height:58px !important;line-height:58px !important;font-size:20px !important;}
  .in-dekujeme .reca-number{margin-bottom:20px !important;padding-bottom:20px !important;}
  .in-dekujeme .recapitulation-wrapper .co-box{padding:18px 16px !important;border-radius:18px !important;}
  .in-dekujeme .recapitulation-table th,.in-dekujeme .recapitulation-table td{font-size:13.5px !important;}
  .in-dekujeme .co-order .cart-table td.cart-p-image{width:64px !important;min-width:64px;padding-right:10px !important;}
  .in-dekujeme .co-order .cart-table td.p-quantity{display:none !important;}
  .in-dekujeme .co-order .cart-p-image img{width:52px !important;height:52px !important;}
  .in-dekujeme .co-order .p-name,.in-dekujeme .co-order .p-name *{font-size:13.5px !important;}
  .in-dekujeme .order-complete-links .btn{width:100% !important;}
  .in-dekujeme img.qrcode{width:164px !important;height:164px !important;}
  .in-dekujeme .recapitulation-table td strong.nowrap{white-space:normal !important;word-break:break-all;}
}
