.timePickerWrap{
	display: none !important;
}

body.in-krok-1 #checkoutSidebar{
	display: none !important;
}
.in-krok-1 .cart-content{
	background: none;
}
body.in-krok-1 #select-country-payment{
	display: none !important;
}
body.in-krok-1 .co-delivery-method, .remove-item:before{
	display: none !important;
}
tr.removeable .remove-item{
	opacity: 1 !important;
	float: right;
}
.checkout-box-wrapper{
	margin-top: 20px !important;
}
.cart-header .step strong,
body.in-kosik ol.cart-header .step a span,
body.in-kosik ol.cart-header .step.completed a span{
	color: #BBB4E4 !important;
	font-weight: bold;
}
.cart-header .step.active strong{
	color: #5240B2 !important;
	font-weight: bold;
}
.p-total .price-final{
	padding-top: 10px;
}

.cart-table tr>td.p-total{
	text-align: center;
}
body.in-krok-1 .co-payment-method, .cart-content .price-wrapper, .cart-content .next-step--cart{
	display: none !important;
}
.availability-label{
  display: flex;
  gap: 10px;
}
.cart-table .p-quantity .quantity, .quantity-form .quantity .decrease:before, .quantity-form .quantity .increase:before{
	background: #F1F0FA;
}

.cart-header{
	background: none !important;
	border: none !important;
}
ol.cart-header li a span:before, ol.cart-header li strong span:before{
	display: none !important;
}
body.id--9, body.id--16, body.id--17{
	background: #f7f7f7 !important;
}
body.id--9 header#header .container,
body.id--16 header#header .container,
body.id--17 header#header .container{
	border: none !important;
}
.id--9 div#content-wrapper .content-inner, .id--16 div#content-wrapper .content-inner, .id--17 div#content-wrapper .content-inner{
	margin: 0 !important;
}
.in-kosik .cart-row>div.col-md-4, .summary-wrapper{
	background: #f7f7f7 !important;
	margin: 0;
  padding: 0;
}
.cart-row{
	display: flex;justify-content: center;
}
.cart-table tr td span.quantity{
	padding: 8px 10px;
}
.custom-min-order-box{
	margin-bottom: 20px;
}
.cart-table tr td .price-text{
	padding-left: 0 !important;
}


.cart-summary-box {
  background: #E9E3F6 !important;
  padding: 20px;
  border-radius: 12px;
  font-size: 14px;
  line-height: 1.4;
  color: #1a1a1a;
}

.cart-summary-header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: bold;
  margin-bottom: 12px;
}

.cart-summary-icon {
  width: 24px;
  height: 24px;
  background: url('data:image/svg+xml;utf8,<svg width="24" height="24" ... />') no-repeat center;
  background-size: contain;
}

.cart-summary-row {
  display: flex;
  justify-content: space-between;
  margin: 4px 0;
}

.cart-summary-separator {
  border: none;
  border-top: 1px solid rgba(0,0,0,0.1);
  margin: 12px 0;
}

.cart-summary-total {
  display: flex;
  justify-content: space-between;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 4px;
}

.cart-summary-sub {
  font-size: 13px;
  opacity: 0.8;
  margin-bottom: 16px;
}

.cart-summary-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.btn-cart-summary {
  display: block;
  text-align: center;
  padding: 12px;
  border-radius: 8px;
  font-weight: bold;
  text-decoration: none;
}

.btn-cart-summary.primary {
  background: #F5F2FC;
  color: #999;
}

.btn-cart-summary.secondary {
  border: 1px solid #5240B2;
  color: #5240B2;
  background: transparent;
}

.site-msg-custom.step-1{
	display: none;
}

.id--17 #checkoutContent .cart-content{
	padding-top: 20px !important;
}
.in-krok-2 .checkout-box{
	display: none;
}
.id--17 input.form-control{
	background: #F1F0FA;
}
#checkoutSidebar .cart-content{
	background: #E4E1F4;
}
#checkoutSidebar h4{
	color: #000;
}
.next-step--step-2 {
  display: flex;
  flex-direction: column;
  gap: 12px; /* medzera medzi tlačidlami */
}

.next-step--step-2 .btn {
  display: block;
  width: 100%;
  border-radius: 8px;
  text-align: center;
}
	.bw-day.today {
  color:#5240B2;
  border-radius: 6px;
	}
	.bw-day.today .d {
	  color: #5240B2;
	}
/* Chrome, Safari, Edge */
.bf-slots::-webkit-scrollbar {
  width: 6px;              /* tenký */
  height: 6px;
}

.bf-slots::-webkit-scrollbar-track {
  background: transparent; /* priehľadný podklad */
}

.bf-slots::-webkit-scrollbar-thumb {
  background-color: #5240B2; 
  border-radius: 4px;
}

/* Firefox */
.bf-slots {
  scrollbar-width: thin;                  /* tenký */
  scrollbar-color: #5240B2 transparent;   /* palec + podklad */
}

.next-step--step-2 .btn-conversion {
  background: #f8f6fd;
  border: 1px solid #d3cde6;
  color: #fff;
  font-weight: 600;
}

.next-step--step-2 .next-step-back {
  background: #f0ecfb;
  border: 1px solid #d3cde6;
  color: #351f9e;
  font-weight: 600;
}
.order-button-text{
	font-size: 14px !important;
	vertical-align: bottom !important;
  text-transform: capitalize !important;
}

#booking-flow { border-radius:14px; padding:16px; margin-top:16px }
    #booking-flow * { box-sizing:border-box; touch-action: manipulation }
    .bf-steps { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:14px; display: none; }
    .bf-step { padding:8px 12px; border:1px solid #5240b2; border-radius:999px; font-size:13px }
    .bf-step.active { border-color:#111827 }
    .bf-step.done { background:#f3f4f6 }
    .bf-grid { display:grid; grid-template-columns: 1fr 220px; gap:20px; background:#fff;    padding: 15px; border-radius: 20px; }
    .bf-sidebar { border-left:1px solid #f0f2f5; padding-left:14px }
    .bf-h1 { font-size:22px; font-weight:800; margin:4px 0 12px; text-align: center; }
    .bf-muted { color:#6b7280 }
    .bf-error { color:#b91c1c; font-size:13px; margin-top:8px }
    .bf-recap { margin-top:12px; border-top:1px dashed #5240b2; padding-top:10px; display:grid; gap:6px }
    .bf-footer { display:flex; justify-content:space-between; gap:8px; margin-top:12px }
    .bf-btn { padding:12px 16px; color: #5240b2; border:1px solid #5240b2; border-radius:10px; background:none; cursor:pointer; font-weight:600; min-height:44px }
    .bf-btn-primary { background: #5240b2; color: #fff; }
    .bw-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; gap:8px }
    .bw-month { font-weight:400; font-size:24px; }
    .bw-nav{ display: flex; gap:20px;}
    .bw-nav button { padding: 8px 12px;
    border: none;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    font-family: monospace;
    color: #5240B2;
    font-size: 30px;
    min-height: 40px;
    min-width: 44px; }
    .bw-nav button:disabled {
		  color: #A096D9 !important;
		  cursor: not-allowed; /* voliteľné */
		}

    .bw-weekdays { display:grid; grid-template-columns:repeat(7,1fr); gap:6px; margin-top:6px; font-size:11px; opacity:.7; text-transform:uppercase; letter-spacing:.04em }
    .bw-weekdays div{
    	width: 44px;
    }
    .bw-day.pickup-highlight {
		  background-color: #F1F0FA !important;
		  color: #5240B2;
		  border-radius: 44px; /* voliteľne, aby to bolo krajšie */
		}
    .bw-calendar { display:grid; grid-template-columns:repeat(7,1fr); gap:6px }
    .bw-day { display:grid; place-items:center; gap:2px; border: none; height:44px; width: 44px; border-radius:44px; text-align:center; cursor:pointer; background:#fff }
    .bw-day .d { font-size:15px; font-weight:800 }
    .bw-day.muted { opacity:.4 }
    .bw-day[aria-disabled="true"] { opacity:.35; cursor:not-allowed }
    .bw-day[aria-selected="true"] { background: #5240b2; color:#fff; box-shadow:0 0 0 2px rgba(0,0,0,.06) inset }

    .bf-slots-title { font-weight:700; margin-bottom:6px }
    .bf-slots { display:flex; flex-direction:column; gap:8px; max-height:370px; overflow:auto; -webkit-overflow-scrolling:touch }
    .bf-slot { background: none; color:#5240b2; font-weight: bold; padding:12px 14px; border:1px solid #BBB4E4; border-radius:10px; cursor:pointer; text-align:left; min-height:44px }
    .bf-slot[aria-selected="true"] { background: #5240b2; color:#fff; border-color:#111827; box-shadow:0 0 0 2px rgba(0,0,0,.06) inset }

    .bf-list { display:grid; gap:10px }
    .bf-item { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:12px; border:1px solid #e5e7eb; border-radius:12px; cursor:pointer; background:#fff; min-height:56px }
    .bf-item[aria-selected="true"] { background:#5240b2; color:#fff; box-shadow:0 0 0 2px rgba(0,0,0,.06) inset }
    .bf-item .bf-name { font-weight:700 }
    .bf-item .bf-price { opacity:.8 }
		.bf-name {
		  display: inline-flex;
		  align-items: center;
		  gap: 8px;
		}
		
		.bf-name .bf-icon img {
		  width: 31px;
		  border-radius: 8px;
		  height: auto;
		  display: block;
		}
		.bf-sidebar{
			position: relative;
		}
		.bf-sidebar::after {
		  content: "";
		  position: absolute;
		  left: 0;
		  right: 0;
		  bottom: 0;
		  height: 40px; /* výška fade efektu */
		  pointer-events: none; /* aby sa dalo scrollovať cez overlay */
		  background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
		}
		.discount-coupon input{
			background: #F1F0FA;
	    border: none;
	    border-radius: 8px;
		}
		.discount-coupon form .btn{
			margin-left: 10px;
			background: none !important;
    	color: #5240B2 !important;
		}
    .bf-hide-original { position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
    .co-delivery-method h4, .co-payment-method h4 { display:none !important }

    /* ======= Mobile tweaks ======= */
    @media (max-width: 768px){
      #booking-flow { padding:12px }
      .bf-h1 { font-size:20px }
      .bf-grid { grid-template-columns: 1fr; gap:12px }
      .bf-sidebar { border-left:none; padding-left:0 }
      .bf-steps { flex-wrap:nowrap; overflow:auto; -webkit-overflow-scrolling:touch; white-space:nowrap; padding-bottom:4px; margin-bottom:10px }
      .bf-step { flex:0 0 auto }
      .bw-weekdays { gap:4px; font-size:10px }
      .bw-calendar { gap:4px }
      .bw-day { height:40px; border-radius:44px }
      .bf-slots { max-height:300px }
      .bf-item { padding:10px }
      .bf-name { font-size:14px }
      .bf-footer { flex-direction:column; position:sticky; bottom:0; background:#fff; padding-bottom:8px; z-index:10 }
      .bf-btn { width:100% }
      .bw-head { flex-wrap:wrap }
    }

    /* mobile tweaks */
@media (max-width: 768px){
  #booking-flow { padding:12px }
  .bf-grid { grid-template-columns: 1fr; gap:12px }
  .bf-sidebar { border-left:none; padding-left:0 }
  .bf-steps { flex-wrap:nowrap; overflow:auto; -webkit-overflow-scrolling:touch; white-space:nowrap; padding-bottom:4px; margin-bottom:10px }
  .bf-step { flex:0 0 auto }

  .bf-slots { max-height:300px }

  /* CTA tlačidlá hneď za obsahom, pod slotmi */
  .bf-footer { 
    flex-direction:column; 
    background:#fff; 
    gap:8px; 
    margin-top:16px; 
    position:static;   /* ⬅️ už nie sticky */
    bottom:auto;
    padding:0;
  }
  .bf-btn { width:100% }
}


    @media (max-width: 380px){
      .bf-h1 { font-size:18px }
      .bw-day { height:36px }
      .bf-step { font-size:12px; padding:6px 10px }
    }
    
    
    @media (max-width: 767px) {
    .cart-table tr>td:nth-child(2n), .cart-table tr>td:nth-child(odd).p-total {
        text-align: left;
    }
    .ordering-process .quantity-form .quantity .decrease, .ordering-process .quantity-form .quantity .increase{
    	height: auto;
    }
    .ordering-process .quantity-form .quantity .decrease:before, .ordering-process .quantity-form .quantity .increase:before {
        line-height: 2;
    }
    .id--9 ol.cart-header li::after, .id--16 ol.cart-header li::after, .id--17 ol.cart-header li::after{
    	right: 0;
    }
    .cart-title-with-icon{
    	margin-left: 20px;
    }
    .cart-table tr td.p-quantity.p-cell{
	    display: flex;
    	align-items: center;
    }
    .p-total .price-final{
    	margin-left: 15px;
    }
    .cart-content h2{
    	text-align: center;
    }
    .bf-grid {
        grid-template-columns: 1fr !important;
        gap: 12px;
    }
    .bf-slots {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    max-height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
		}
}