div#transportbox, div#transferbox{box-sizing: border-box;}

table tr.tr_gray td *, table tr.tr_gray td.td_price {color:gray !important;}
table tr.tr_gray td {background:var(--shopion-surface-soft) !important}
table tr.tr_gray td.td_img {padding:5px 0 !important;text-align:let !important}
table tr.tr_gray td.td_img img {width:73px !important;height:auto;max-height:73px;float:left;margin:0 0 0 5px}
table tr.tr_color td *, table tr.tr_color td.td_price {color:var(--shopion-accent-alt) !important}
table.basket-table tr td div.pure-checkbox {position:absolute;z-index:1;left:-30px}
table tr.tr_gray td:first-child {border-left:1px solid #D7DADB !important}
table tr.tr_gray td:last-child {border-right:1px solid #D7DADB !important}
@media only screen and (max-width:700px){
  table tr.tr_gray td {background:#fff !important}
  table tr.tr_gray td:first-child {border-left:0px solid #D7DADB !important}
  table tr.tr_gray td:last-child {border-right:0px solid #D7DADB !important}
}


div.cart_sum {
	width: 100%;
}
div.cart_sum div {
  margin-top:0;
  border:1px solid #ddd;
  font-size:100%;
  padding:20px;
  background:#fff;
}
div.cart_sum div table tr td {
  padding:10px;
}
div.cart_sum table tr td.bold, div.cart_sum table tr td strong {font-weight:bold !important}
table tr.tr_items td {padding:10px 0}
div.cart_sum table tr.tr_items td {
  border-bottom:1px solid #efefef;
}
@media only screen and (max-width: 1160px){
  .cart_sum p.highlight {padding:0 !important;padding-bottom:10px !important}
}
@media only screen and (max-width: 550px){
  div.cart_sum table tr td {font-size:12px}
}
@media only screen and (max-width: 500px){
  .cart_sum p.highlight {padding-bottom:5px !important}
}

div.paymentitem {
  position:relative;
  padding: 13px 16px 13px 20px;
  background: #fff;
  border-top: 0;
  border-bottom: 1px solid #e8ecee;
  font-weight: 600;
  font-size: 100%;
  transition: box-shadow .15s ease, opacity .15s ease;
}
div.paymentitem:hover:not(.disabled) {
  background: #fff;
}
/* .active může zůstat z původní logiky košíku; žluté označení ale řídíme
   výhradně třídou .is-selected synchronizovanou se skutečně checked inputem. */
div.paymentitem.active:not(.disabled) {
  background: #fff;
  box-shadow: none;
}
div.paymentitem.is-selected:not(.disabled) {
  background: #fff;
  box-shadow: inset 3px 0 0 var(--shopion-accent);
}
/* Nedostupná volba může zůstat opticky zeslabená, ale bez žlutého označení. */
div.paymentitem.disabled,
div.paymentitem.active.disabled {
  background: #fff;
  box-shadow: none !important;
}
div.paymentitem.disabled:hover {
  background: #fff;
}
div.paymentitem:last-child {
  border-bottom: 0 none;
}
div.paymentitem .pointer {
  background: none;
  padding-left: 10px;
}
#transferbox,
#transportbox {
	width: 49%;
	float: left
}
#transportbox {
	float: right
}
@media screen and (max-width: 1000px) { 
  #transferbox,
  #transportbox {
    width: 100%;
    float: none
  }
}
div#transportbox, div#transferbox {
  border: 1px solid var(--shopion-dark);
  overflow: hidden;
  margin-bottom: 24px;
  background: #fff;
  box-shadow: 0 4px 16px rgba(28,47,58,.055);
  font-size:14px !important;
}
.sidebar.centre #transferbox,
.sidebar.centre #transportbox{
  width: 100%;
  float: none;
  border: 1px solid var(--shopion-dark);
}
p.tit {
  font-size: 18px !important;
  height: 58px !important;
  line-height: 58px !important;
  padding: 0 20px !important;
  margin: 0 !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .01em;
  color: #fff !important;
  background: var(--shopion-dark-bg);
  border-bottom: 1px solid #fff;
}
.sidebar.centre p.tit {
  background: var(--shopion-dark-bg);
  border-bottom:1px solid #fff;
}
p.tit.light {
  background: var(--shopion-dark-bg);
  border-bottom:1px solid #fff;
}
.div_payment.active a.longnote, .div_transport.active a.longnote {
  display:inline-block;
}
.gray.normal, .gray.normal {
	color: gray !important;
	font-size: 90%;
	line-height: 15px;
  padding-top:3Px;
  font-style:italic;
  padding-right:10px;
}
.gray.normal p {
	font-size: 100%;
}

div.paymentitem .width_auto .price-type {
	font-size: 90%;
	float:right !important;
  margin:0;
  color: #000;
  font-weight:600;
  padding-right:15Px;
}
div.paymentitem .width_auto {
  width:auto !important;
  display:block !important;
}
div label.disabled, div label.disabled.width_auto .price-type, div label.disabled .gray.normal  {
  color:silver !important;
  cursor:text !important;
}
.select_disabled {
  color:silver;
  cursor:text;
}

.transparent_background {
  filter: alpha(opacity=30);
  -moz-opacity:0.3;
  -khtml-opacity: 0.3;
  opacity: 0.3;
}
/* UPDATE */

section .layout-center #basket-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 420px;
  align-items: flex-start;
  gap: 45px;
  margin-bottom: 60px;
}

section .layout-center #basket-layout.on_one_page {
  /* One-page varianta má jediného přímého potomka .content.
     Dvousloupcové rozložení proto řeší až vnitřní .one-page-checkout-layout. */
  display: block;
  grid-template-columns: none;
  gap: 0;
}

/* =========================================================
   Jednostránkový checkout – desktop / 3 sloupce
   1) kontaktní + fakturační údaje
   2) doprava + platba
   3) sumarizace objednávky
   Mobilní layout zůstává beze změny.
   ========================================================= */
@media only screen and (min-width:1151px){
  section .layout-center #basket-layout.on_one_page{
    grid-template-columns:minmax(0,1fr);
    gap:0;
  }

  section .layout-center #basket-layout.on_one_page > .content{
    width:100%;
    min-width:0;
    padding-bottom:0;
  }

  section .layout-center #basket-layout.on_one_page form#form{
    width:100%;
    min-width:0;
    clear:both;
  }

  section .layout-center #basket-layout.on_one_page .one-page-checkout-layout{
    display:grid !important;
    grid-template-columns:minmax(0,.95fr) minmax(0,.88fr) minmax(0,1.17fr);
    gap:20px;
    align-items:start;
    width:100%;
    min-width:0;
    clear:both;
    margin-top:28px;
    box-sizing:border-box;
  }

  section .layout-center #basket-layout.on_one_page .one-page-checkout-main,
  section .layout-center #basket-layout.on_one_page .one-page-checkout-shipping,
  section .layout-center #basket-layout.on_one_page .one-page-checkout-summary{
    min-width:0;
    width:100%;
    box-sizing:border-box;
  }

  section .layout-center #basket-layout.on_one_page .one-page-checkout-main > .div100{
    width:100%;
    float:none;
    clear:both;
    box-sizing:border-box;
  }

  section .layout-center #basket-layout.on_one_page .one-page-checkout-main > .div100 + .div100{
    margin-top:28px;
  }

  section .layout-center #basket-layout.on_one_page .one-page-checkout-shipping > .sidebar,
  section .layout-center #basket-layout.on_one_page .one-page-checkout-summary > .sidebar,
  section .layout-center #basket-layout.on_one_page .one-page-checkout-summary > #sidebar{
    width:100%;
    max-width:none;
    min-width:0;
    float:none;
    position:static;
    top:auto;
    margin:0;
    box-sizing:border-box;
  }

  section .layout-center #basket-layout.on_one_page .one-page-checkout-shipping > .sidebar.centre{
    margin:0;
  }

  section .layout-center #basket-layout.on_one_page .one-page-checkout-shipping #transferbox,
  section .layout-center #basket-layout.on_one_page .one-page-checkout-shipping #transportbox{
    width:100%;
    float:none;
  }
}

@media only screen and (min-width:1151px) and (max-width:1399px){
  section .layout-center #basket-layout.on_one_page .one-page-checkout-layout{
    grid-template-columns:minmax(0,.92fr) minmax(0,.90fr) minmax(0,1.18fr);
    gap:16px;
  }
}

/* One-page desktop: pojistka proti starším globálním float/width pravidlům. */
@media only screen and (min-width:1151px){
  #basket-layout.on_one_page form#form > .one-page-checkout-layout{
    display:grid !important;
    grid-template-columns:minmax(0,.95fr) minmax(0,.88fr) minmax(0,1.17fr) !important;
    gap:20px !important;
    width:100% !important;
    max-width:none !important;
    align-items:start !important;
  }
  #basket-layout.on_one_page .one-page-checkout-layout > .one-page-checkout-main,
  #basket-layout.on_one_page .one-page-checkout-layout > .one-page-checkout-shipping,
  #basket-layout.on_one_page .one-page-checkout-layout > .one-page-checkout-summary{
    display:block;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    float:none !important;
    clear:none !important;
    margin:0 !important;
  }

  #basket-layout.on_one_page .one-page-checkout-summary,
  #basket-layout.on_one_page .one-page-checkout-summary *{
    min-width:0;
    box-sizing:border-box;
  }
  #basket-layout.on_one_page .one-page-checkout-summary p,
  #basket-layout.on_one_page .one-page-checkout-summary label,
  #basket-layout.on_one_page .one-page-checkout-summary a{
    overflow-wrap:anywhere;
    word-break:normal;
  }
  #basket-layout.on_one_page .one-page-checkout-shipping .sidebar{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    float:none !important;
    position:static !important;
    margin:0 !important;
  }

  /* Summary musi zustat ovladatelne JS sticky skriptem.
     position nesmi byt !important, jinak inline fixed/absolute z JS nefunguje. */
  #basket-layout.on_one_page .one-page-checkout-summary .sidebar,
  #basket-layout.on_one_page .one-page-checkout-summary #sidebar{
    width:100%;
    max-width:none !important;
    min-width:0 !important;
    float:none !important;
    position:static;
    margin:0 !important;
  }
}
@media only screen and (min-width:1151px) and (max-width:1399px){
  #basket-layout.on_one_page form#form > .one-page-checkout-layout{
    grid-template-columns:minmax(0,.92fr) minmax(0,.90fr) minmax(0,1.18fr) !important;
    gap:16px !important;
  }
}

@media only screen and (max-width: 1150px) {
  section .layout-center #basket-layout,
  section .layout-center #basket-layout.on_one_page {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 20px;
  }

  section .layout-center #basket-layout .content,
  section .layout-center #basket-layout .sidebar,
  section .layout-center #basket-layout #sidebar {
    width: 100% !important;
    min-width: 0;
  }
}

@media only screen and (max-width: 1150px){
  section .layout-center #basket-layout { grid-template-columns: 1fr!important; gap:20px;} 
  section .layout-center #basket-layout #sidebar{width:100%!important;}
  section .layout-center #basket-layout .sidebar{width:100%;}
  section .layout-center #basket-layout.on_one_page { gap:0 } 
  section .layout-center #basket-layout .content{padding-bottom:20px;}
  section .layout-center #basket-layout #order-sum{border:1px solid #D7DADB ; margin-bottom:25px;}
  section .layout-center #basket-layout #order-sum .wrap{padding:10px 20px 20px 20px}
}

section .layout-center #basket-layout .title{font-weight:700; text-align: left; font-size:26px; text-transform: uppercase; padding-left:0} 
section .layout-center #basket-layout .title::before {display:none;} 
section .layout-center #basket-layout .back-link{ font-size:14px; font-weight:600; display:inline-flex; align-items:center; gap:15px; margin:0px 0 0px 0; position:relative;  } 
section .layout-center #basket-layout .sidebar .back-link{  margin:5px 0 0px 0;  bottom:-10px; } 
section .layout-center #basket-layout .sidebar{ border:1px solid #D7DADB; position: sticky; top:20px; border-radius:0px; overflow: visible;} 
section .layout-center #basket-layout.on_one_page .sidebar{ border:1px solid var(--shopion-dark); } 
section .layout-center #basket-layout #sidebar{width:420px;} 
section .layout-center #basket-layout .sidebar.centre{border:0px none} 
section .layout-center #basket-layout .sidebar #coupon{width:100%!important}

div.cart_sum .spinner{position:relative; padding:0; border:0; background:transparent; width:30px; margin:0; padding:0 20px;} 
div.cart_sum .spinner div{ padding:0;} 
div.cart_sum .spinner .input-group-btn-vertical{border:0; background:transparent;}
div.cart_sum .spinner input{height:35px; font-size:14px;}
div.cart_sum .spinner .input-group-btn-vertical > .btn{height:35px; width:25px; background-size: 40% auto;}
div.cart_sum .spinner .input-group-btn-vertical > .btn:first-child{right:0; border-left:0}
div.cart_sum .spinner .input-group-btn-vertical > .btn:last-child{left:0; border-right:0}
div.cart_sum .col-quantity{padding-left:5px; width:70px;}
 
#basket-layout.on_one_page .div100 + .div100{margin-top:20px}
#basket-layout.on_one_page div.paymentitem {padding:13px 16px 13px 20px;}
#ajax_image_loader {display:none !important}

#basket-layout.on_one_page .div100 .highlight, #basket-layout.on_one_page form#SHOP_DELIVERY_COUNTRY .highlight {font-weight:bold !important;padding-top:0 !important;text-transform: uppercase}
#basket-layout.on_one_page .floating-label input, .on_one_page .floating-label select, .on_one_page .floating-label textarea {width:100% !important;}


/*section .layout-center #basket-layout.on_one_page .sidebar{width:33.33%} */
section .layout-center #basket-layout.on_one_page .sidebar .title {margin:0 !important;font-size:16px !important} 
section .layout-center #basket-layout.on_one_page .sidebar .basket-gift {margin-bottom:30px} 


.input-group-btn-vertical > .btn { margin:0; }
.input-group-btn-vertical > .btn:hover { margin:0; transform:none} 

section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner  .input-group-btn-vertical > .btn{ padding:0; border:0px;}

/*  // UPDATE */


@media only screen and (max-width: 600px){
  section .layout-center #basket-layout.on_one_page .sidebar .title {margin:15px 0 0 0 !important;font-size:16px !important} 
}

section .layout-center #basket-layout.on_one_page .highlight, section .layout-center #basket-layout.on_one_page p.tit {font-size:20px !important} 
@media only screen and (max-width: 1500px){
  section .layout-center #basket-layout.on_one_page .highlight, section .layout-center #basket-layout.on_one_page p.tit {font-size:20px !important} 
}
@media only screen and (max-width: 1300px){
  section .layout-center #basket-layout.on_one_page .highlight, section .layout-center #basket-layout.on_one_page p.tit {font-size:18px !important} 
}
@media only screen and (max-width: 1200px){
  section .layout-center #basket-layout.on_one_page .highlight, section .layout-center #basket-layout.on_one_page p.tit {font-size:17px !important} 
}
@media only screen and (max-width: 1150px){
  section .layout-center #basket-layout.on_one_page .highlight {line-height:20px;}
  section .layout-center #basket-layout.on_one_page p.tit {line-height:56px!important;} 
  #basket-layout.on_one_page p.tit.light {display:none}
}
@media only screen and (max-width: 1150px){
  .submit_spec.on_one_page{font-size:18px !important} 
}
@media only screen and (max-width: 550px){
  #basket-layout.on_one_page .div100 .highlight{margin-top:25px !important;margin-bottom:6px !important;text-align:center;} 
  section .layout-center #basket-layout.on_one_page .highlight {font-size:20px !important;text-align:center;}
  section .layout-center #basket-layout.on_one_page p.tit {font-size:18px !important;text-align:left!important;} 
  /*section .layout-center #main.nomargtop h1.center {display:none !important}*/
}

@media only screen and (max-width: 420px){
  .c-quantity-in-basket {font-size:12px !important}
}

section .layout-center #basket-layout .sidebar .button.last-step{font-size:20px; margin-top:10px;} 
section .layout-center #basket-layout .sidebar.top-margin{margin-top:27px;} 
section .layout-center #basket-layout .sidebar .wrap{padding:30px; border-bottom:1px solid #D7DADB;} 
section .layout-center #basket-layout .sidebar .wrap.gray{background: #FCFCFC;  color:#000;padding-bottom:40px} 
section .layout-center #basket-layout .sidebar .wrap:last-child{ border-bottom:0;} 
section .layout-center #basket-layout .sidebar .total-price{font-size:16px; font-weight:700; text-align: right; padding:15px 0; color:#000 } 
section .layout-center #basket-layout .sidebar .total-price strong{font-size:26px; } 
section .layout-center #basket-layout .sidebar .total-price .smaller{font-weight:300} 

section .layout-center #basket-layout .sidebar .pure-checkbox{ margin-top:10px; } 
section .layout-center #basket-layout .sidebar .pure-checkbox label{font-size:14px; line-height: 140%;} 


section .layout-center #basket-layout .sidebar .coupon-wrap{position:relative; padding:0; margin:0 0 30px 0;}
section .layout-center #basket-layout .sidebar #coupon{background: var(--shopion-white) url('../images/svg/coupon.svg') no-repeat left 12px center; box-sizing: border-box;  width:100%;   border:1px solid #D7DADB; border-radius: 0px;  height:46px; padding:0 50px 0 42px; font-size:14px !important; color:#000000; font-style:normal; font-family:'Poppins', sans-serif; font-weight:400 !important;}
section .layout-center #basket-layout .sidebar #coupon::-webkit-input-placeholder { /* Chrome */ color: #627a80; }
section .layout-center #basket-layout .sidebar #coupon:-ms-input-placeholder { /* IE 10+ */ color: #627a80; }
section .layout-center #basket-layout .sidebar #coupon::-moz-placeholder { /* Firefox 19+ */ color: #627a80; opacity: 1; }
section .layout-center #basket-layout .sidebar #coupon:-moz-placeholder { /* Firefox 4 - 18 */ color: #627a80; opacity: 1; }
section .layout-center #basket-layout .sidebar .coupon-wrap button.button{ box-sizing: border-box; position:absolute; right:0px; top:0px; height:46px; min-width:0;font-size:14px !important; }

section .layout-center #basket-layout .sidebar .icon-box{padding-left: 40px; position:relative; font-size:13px; margin-bottom: 15px;}
section .layout-center #basket-layout .sidebar .icon-box strong{font-size:16px; line-height: 16px; font-weight:700; display:block; padding-top:2px;}
section .layout-center #basket-layout .sidebar .icon-box img.icon{position:absolute; left:0; top:0}
section .layout-center #basket-layout .sidebar .icon-box .bar{height:6px; border-radius: 6px; background: #E0E0E0; margin-top:6px; margin-left:-40px; width:calc(100% + 40px); position:relative;}
section .layout-center #basket-layout .sidebar .icon-box .bar span{position:absolute; left:0; top:0; height:100%; background: var(--shopion-progress-accent); border-radius: 6px;}

section .layout-center #basket-layout .sidebar .icon-box.delivery img.icon{width:31px; left:-1px; top:2px}
section .layout-center #basket-layout .sidebar .icon-box.gift img.icon{width:22px; left:5px; top:-3px;}
section .layout-center #basket-layout .sidebar .icon-box.gift .bar span{background: #272941;}
section .layout-center #basket-layout .sidebar .icon-box.point { margin:30px 0 -5px 0}
section .layout-center #basket-layout .sidebar .icon-box.point img.icon{width:21px; left:6px; top:-4px; }

section .layout-center #basket-layout .sidebar .product-list-table {border-spacing:0; margin:0px; padding:0px;} 
section .layout-center #basket-layout .sidebar .product-list-table tr td{white-space: nowrap; border-bottom:1px solid #D7DADB; padding:15px 10px; font-size:14px;}
section .layout-center #basket-layout .sidebar .product-list-table tr td.image{ width:60px; padding-left:10px; padding-right:0px;} 
section .layout-center #basket-layout .sidebar .product-list-table tr td.image img{ width:100%; } 
section .layout-center #basket-layout .sidebar .product-list-table tr td.name{white-space: normal; padding-left:10px; font-size:13px; font-weight:500; line-height: 150%;} 
section .layout-center #basket-layout .sidebar .product-list-table tr td.price {text-align: right; line-height: 150%} 
section .layout-center #basket-layout .sidebar .product-list-table tr td.price .original-price{font-weight:500; text-decoration:line-through; } 
section .layout-center #basket-layout .sidebar .product-list-table tr td.price strong{font-weight:700; font-size:16px;} 
section .layout-center #basket-layout .sidebar .product-list-table tr td.price .quantity {display:block; font-size:14px; font-weight:500} 
section .layout-center #basket-layout .sidebar .product-list-table tr:nth-child(n+6) {display: none; }

section .layout-center #basket-layout .sidebar .show-more-wrap{padding:15px 0px; text-align:center; border-bottom: 1px solid #D7DADB; display:none;}

section .layout-center #basket-layout .sidebar .price-block {display:flex; flex-direction: column; width:100%; gap:10px; margin:-10px 0 23px 0;} 
section .layout-center #basket-layout .sidebar .price-block > div {display:flex; gap:20px;align-items:center; justify-content:space-between; font-size:14px; font-weight:500; line-height:26px; } 
section .layout-center #basket-layout .sidebar .price-block > div.total {font-size:18px; font-weight:700; } 
section .layout-center #basket-layout .sidebar .price-block > div.total span:last-child {font-size:26px;} 

section .layout-center #basket-layout .sidebar p {line-height: 140%; padding-bottom: 15px; color:#000000} 

section .layout-center #basket-layout .content{flex:1; } 
section .layout-center #basket-layout .content .pure-radiobutton{top:0 } 
section .layout-center #basket-layout .content .title{font-size:20px; margin-top: 30px; margin-bottom:0} 
section .layout-center #basket-layout .content .basket-list-table {margin-bottom: 40px; border-spacing:0; margin:0px; padding:0px;} 
section .layout-center #basket-layout .content .basket-list-table tr td{white-space: nowrap; border-bottom:1px solid #D7DADB; font-size:14px;}

section .layout-center #basket-layout .content .basket-list-table tr td.image{ padding:10px 10px;width:60px; padding-left:10px; padding-right:0px;} 
section .layout-center #basket-layout .content .basket-list-table tr td.image img{ width:85%; height:auto} 
section .layout-center #basket-layout .content .basket-list-table tr td.name{padding:10px 10px;white-space: normal; padding-left:0;padding-right:10px; font-size:13px; line-height: 150%;} 
section .layout-center #basket-layout .content .basket-list-table tr.insurance td{background: #F6F6F6!important;} 
section .layout-center #basket-layout .content .basket-list-table tr.insurance .pure-checkbox input[type="checkbox"] + label{font-size:15px; font-weight:600; color:gray !important} 
section .layout-center #basket-layout .content .basket-list-table tr.insurance .pure-checkbox input[type="checkbox"] + label span{font-size:80%; font-weight:400; display:block;} 
section .layout-center #basket-layout .content .basket-list-table tr.insurance .pure-checkbox input[type="checkbox"] + label::before{top:calc(50% - 12px);}
section .layout-center #basket-layout .content .basket-list-table tr.insurance .pure-checkbox input[type="checkbox"] + label::after{top: calc(50% - 12px )}


section .layout-center #basket-layout .content .basket-list-table tr td.availability{padding:10px 10px;font-weight:600;white-space: normal; color:#009504; text-align: center;} 
section .layout-center #basket-layout .content .basket-list-table tr td.price {padding:10px 10px;text-align: right !important; font-weight:bold;line-height: 130%} 
section .layout-center #basket-layout .content .basket-list-table tr td.price .original-price{font-weight:500; text-decoration:line-through; } 
section .layout-center #basket-layout .content .basket-list-table tr td.price strong{font-weight:700; font-size:16px;} 
section .layout-center #basket-layout .content .basket-list-table tr td.action {padding:0 0;width:20px !important;padding-right:10px;text-align:right;} 
section .layout-center #basket-layout .content .basket-list-table tr td.action img {width:16px;height:auto} 
section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner{position:relative;} 


section .layout-center #basket-layout .content .basket-list-table tr td.quantity   {padding:10px 10px;width:90px;}
section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner  {min-width:50px;width:100%;  position:relative; left:0; top:0px; margin:0px 0px 0px 0px; display:inline-block; float:left; }
section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner  label{position:absolute; right:100%; top:0px; line-height: 44px;  padding-right:10px;}
section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner  input {-webkit-appearance: none; -moz-appearance: none; appearance: none;text-align: center; box-sizing: border-box;border:1px solid #D7DADB; border-radius:0px; background:var(--shopion-white); padding:0 0px 0px 0px!important; height:34px; width:100%!important; margin:0; display:block; color:#000000; font-size:13px !important; font-weight:600; position:relative; }
section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner  .input-group-btn-vertical > .btn{width:23px; padding:0; height:32px; border-radius:0px; border:0px;background-color:transparent;  background-size: 10px auto}
section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner  .input-group-btn-vertical > .btn:first-child{right:1px; top:1px; background-position: left center}
section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner  .input-group-btn-vertical > .btn:last-child{left:1px; top:1px; background-position: right center}


section .layout-center .basket-gift{display:flex;flex-wrap: wrap;  gap:10px; width:100%; align-items: stretch;margin-top:10px; }
section .layout-center .basket-gift > .item{display:flex; flex:1;  gap:10px; align-items: center; border:1px solid #D7DADB; background:#FCFCFC; border-radius: 0px; padding:15px 20px; cursor:pointer}
section .layout-center .basket-gift > .item.none{flex:1; }
section .layout-center .basket-gift > .item .image{width:60px;}
section .layout-center .basket-gift > .item .image img{width:100%;}
section .layout-center .basket-gift > .item .desc {flex:1}
section .layout-center .basket-gift > .item .desc .price{display:block; text-align: right; font-weight:700; padding-top: 5px;}
section .layout-center .basket-gift > .item:has(input[type="radio"]:checked) {background: var(--shopion-white); }

/* Sidebar â€“ poloĹľky pod sebou */
section .layout-center #basket-layout.on_one_page .sidebar .basket-gift{
  flex-direction: column;
  flex-wrap: nowrap;
}
section .layout-center #basket-layout.on_one_page .sidebar .basket-gift > .item{
  width: auto;
  flex: none;
  padding:10px 15px;
}
section .layout-center #basket-layout.on_one_page .sidebar .basket-gift > .item .desc .price{text-align: left}
section .layout-center #basket-layout.on_one_page .sidebar .basket-gift label {position:relative;top:-10px}
section .layout-center #basket-layout .content .pure-checkbox input[type="radio"]:not(.transport_input):not(.payment_input) + label, 
section .layout-center #basket-layout .content .pure-radiobutton input[type="radio"]:not(.transport_input):not(.payment_input) + label{height:18px; padding-left:18px;}

@media only screen and (max-width: 1200px){
  section .layout-center #basket-layout .content .basket-list-table tr td.name{font-size:13px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.availability{font-size:12px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.action img{width:15px;}
}
@media only screen and (max-width: 1050px){
  section .layout-center #basket-layout{flex-direction:column}
  section .layout-center #basket-layout > div{lex-basis: 100%;width:100%;}
  section .layout-center #basket-layout .sidebar, section .layout-center #basket-layout.on_one_page .sidebar{width:100%;}
  section .layout-center #basket-layout .content .basket-list-table tr td.action{padding-right:0}
  section .layout-center #basket-layout .content .basket-list-table tr:not(.insurance) td.image{padding-left:0}
}
@media only screen and (max-width: 850px){
  section .layout-center #basket-layout .sidebar.top-margin{margin-top:0}
}
@media only screen and (max-width: 700px){
  section .layout-center #basket-layout .back-link{font-size:12px;}
}
@media only screen and (max-width: 650px){
  section .layout-center #basket-layout .content .basket-list-table tr td.name{font-size:12px; padding-left:0; padding-right:0}
  section .layout-center #basket-layout .content .basket-list-table tr td{font-size:12px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.price strong{font-size:14px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.action {width:10px;padding:0 !important;text-align:center;}
  section .layout-center #basket-layout .content .basket-list-table tr td.action img{width:15px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.quantity{padding-right:0; padding-left:0px; width:70px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.image{width:45px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner input{height:35px; font-size:12px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner .input-group-btn-vertical > .btn{height:33px;width:33px;z-index:999 !important;}
  section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner  .input-group-btn-vertical > .btn:first-child{right:-3px;background-position:center center }
  section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner  .input-group-btn-vertical > .btn:last-child{left:-3px; background-position:center center}
  section .layout-center .basket-gift{flex-direction: column}
}
@media only screen and (max-width: 600px){
  section .layout-center #basket-layout .sidebar .wrap.gray{padding-bottom:20px} 
  section .layout-center #basket-layout .sidebar .coupon-wrap{margin:10px 0 20px 0;}
  section .layout-center #basket-layout .sidebar .wrap{padding:10px 20px;}
  section .layout-center #basket-layout .sidebar .back-link{bottom:0; margin-top:10px;}
}

@media only screen and (max-width: 550px){
  section .layout-center #basket-layout .sidebar p{font-size:12px;}
  section .layout-center #basket-layout .sidebar .button.last-step{font-size:16px;}
}
@media only screen and (max-width: 450px){
  
  section .layout-center #basket-layout .sidebar .product-list-table tr td.name{font-size:11px;}
  section .layout-center #basket-layout{margin-bottom: 30px; gap:30px;}
  section .layout-center #basket-layout .sidebar .product-list-table tr td.image{width:40px;padding-left:0}
  section .layout-center #basket-layout .sidebar .product-list-table tr td{font-size:12px;}
  section .layout-center #basket-layout .sidebar .product-list-table tr td.price .quantity{font-size:12px;}
  section .layout-center #basket-layout .sidebar .product-list-table tr td.price strong{font-size:14px;}
  section .layout-center #basket-layout .sidebar .price-block {gap:0px; margin-bottom:15px;}
  section .layout-center #basket-layout .sidebar .price-block > div{font-size:12px;}
  section .layout-center #basket-layout .sidebar .price-block > div.total{font-size:14px;}
  section .layout-center #basket-layout .sidebar .price-block > div.total span:last-child{font-size:20px;}

  section .layout-center #basket-layout .sidebar #coupon{font-size:12px;}
  section .layout-center #basket-layout .sidebar .coupon-wrap button.button{padding:0px 15px; font-size:12px;}
  section .layout-center #basket-layout .sidebar .button.btn-big{padding:0px; font-size:14px;}
  section .layout-center #basket-layout .back-link{font-size:12px;}
  section .layout-center #basket-layout .sidebar .icon-box{font-size:12px;}
  section .layout-center #basket-layout .sidebar .total-price{font-size:14px;}

  section .layout-center #basket-layout .content .basket-list-table tr td.availability{font-size:10px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.name{font-size:10px;}
  section .layout-center #basket-layout .content .basket-list-table tr td{font-size:10px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.price {font-size:12px;}
  section .layout-center #basket-layout .content .basket-list-table tr td.image{width:75px !important;}

  section .layout-center .basket-gift > .item{font-size:12px;}
  section .layout-center .basket-gift > .item .image{width:45px;}
}
@media only screen and (max-width: 420px){
  section .layout-center #basket-layout .content .basket-list-table tr td.image{width:45px !important;}
}
@media only screen and (max-width: 380px){
  /*section .layout-center #basket-layout .content .basket-list-table tr td.image{display:none}*/
  section .layout-center #basket-layout .content .basket-list-table tr td.name{padding-left:5px} 
  section .layout-center #basket-layout .content .basket-list-table tr td.action{padding-right:5px} 
}
@media only screen and (max-width: 700px) {

  section .layout-center #basket-layout .content .basket-list-table,
  section .layout-center #basket-layout .content .basket-list-table thead,
  section .layout-center #basket-layout .content .basket-list-table tbody,
  section .layout-center #basket-layout .content .basket-list-table tr,
  section .layout-center #basket-layout .content .basket-list-table th,
  section .layout-center #basket-layout .content .basket-list-table td {
    display: block;
    width: auto;
    box-sizing: border-box;
  }

  section .layout-center #basket-layout .content .basket-list-table thead {
    display: none;
  }

  section .layout-center #basket-layout .content .basket-list-table tr {
    display: grid;
    grid-template-columns: 140px 105px minmax(80px, 1fr) 28px;
    grid-template-areas:
      "image name name action"
      "image availability availability availability"
      "image quantity price price";
    gap: 7px 14px;
    padding: 16px 0 18px 0;
    border-bottom: 1px solid #e5e5e5;
    align-items: start;
  }
  section .layout-center #basket-layout .content .basket-list-table tbody > tr[style*="border:0"],
  section .layout-center #basket-layout .content .basket-list-table tbody > tr:has(> td[colspan="6"]:only-child) {
    display: none !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr.tr_gray {
    display: grid !important;
    grid-template-columns: 82px minmax(0, 1fr) auto !important;
    grid-template-areas: "image name price" !important;
    gap: 8px !important;
    padding: 8px 0 10px 0 !important;
    min-height: 0 !important;
    align-items: center !important;
    border-bottom: 1px solid #e5e5e5 !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr.tr_gray td {
    padding: 0 !important;
    border-bottom: 0 !important;
    min-height: 0 !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr.tr_gray td.image {
    grid-area: image !important;
    width: 82px !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr.tr_gray td.image img {
    width: 72px !important;
    max-width: 72px !important;
    height: 72px !important;
    max-height: 72px !important;
    object-fit: contain !important;
    margin: 0 !important;
    float: none !important;
    display: block !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr.tr_gray td.name {
    grid-area: name !important;
    align-self: center !important;
    padding: 0 !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr.tr_gray td.price {
    grid-area: price !important;
    align-self: center !important;
    display: block !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr.tr_gray td.action,
  section .layout-center #basket-layout .content .basket-list-table tr.tr_gray .price_mj {
    display: none !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr.tr_gray .pure-checkbox {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr.tr_gray .pure-checkbox label {
    line-height: 1.25 !important;
  }
  section .layout-center #basket-layout .content .basket-list-table tr td {
    padding: 0 !important;
    border-bottom: 0 !important;
    white-space: normal !important;
    text-align: left !important;
    min-width: 0;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.image {
    grid-area: image;
    width: 140px !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.image img {
    width: 125px !important;
    max-width: 125px !important;
    height: 125px !important;
    object-fit: contain;
    display: block;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.name {
    grid-area: name;
    font-size: 15px !important;
    line-height: 1.28 !important;
    padding-right: 4px !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.name a {
    font-size: 15px !important;
    line-height: 1.28 !important;
    font-weight: 800;
    display: block;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.availability {
    grid-area: availability;
    font-size: 13px !important;
    line-height: 1.3;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.quantity {
    grid-area: quantity;
    width: auto !important;
    padding: 10px 0 0 0 !important;
    align-self: start;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.quantity .spinner {
    width: 95px;
    max-width: 95px;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.price {
    grid-area: price;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    font-size: 16px !important;
    line-height: 35px;
    font-weight: 800;
    text-align: right !important;
    white-space: nowrap !important;
    overflow: visible !important;
    padding: 10px 0 0 0 !important;
    align-self: start;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.action {
    grid-area: action;
    width: 28px !important;
    text-align: right !important;
    padding: 0 !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.action img {
    width: 18px !important;
    max-width: 18px !important;
    height: auto;
  }

  section .layout-center #basket-layout .content .basket-list-table .price_mj {
    display: none !important;
  }
}
@media only screen and (max-width: 450px) {

  section .layout-center #basket-layout .content .basket-list-table tr:not(.tr_gray) {
    grid-template-columns: 105px 95px minmax(70px, 1fr) 28px;
    grid-template-areas:
      "image name name action"
      "image availability availability availability"
      "image quantity price price";
    gap: 6px 12px;
  }

  section .layout-center #basket-layout .content .basket-list-table tr:not(.tr_gray) td.image {
    width: 105px !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr:not(.tr_gray) td.image img {
    width: 95px !important;
    max-width: 95px !important;
    height: 95px !important;
    object-fit: contain;
  }

  section .layout-center #basket-layout .content .basket-list-table tr td.name a {
    font-size: 14px !important;
    line-height: 1.28 !important;
  }

  section .layout-center #basket-layout .content .basket-list-table tr:not(.tr_gray) td.price {
    font-size: 15px !important;
    text-align: right !important;
    line-height: 35px;
  }
}


.cart_box {
  --cart-step-size: 34px;
  --cart-line-height: 2px;
  --cart-line-top: 15px;
  --cart-line-gap: 8px;

  margin: -20px 0 38px 0;
  width: 100%;
  min-height: 82px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
  gap: 0;
  padding: 14px 0 12px 0;
  box-sizing: border-box;
  position: relative;
  z-index: 9000;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
}

/* Pokud je v HTML vložený spojovací <span>, schová se. Čáry se kreslí přímo přes kroky, takže funguje staré i nové HTML. */
.cart_box > .cart_step_line {
  display: none !important;
}

.cart_box > div {
  position: relative;
  z-index: 2;
  min-width: 0;
  display: grid;
  grid-template-rows: var(--cart-step-size) auto;
  justify-items: center;
  align-items: start;
  gap: 7px;
  color: #999;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 600;
  text-align: center;
}

.cart_box > div:not(:last-child)::before,
.cart_box > div:not(:last-child)::after {
  content: "";
  position: absolute;
  left: calc(50% + var(--cart-line-gap));
  right: calc(-50% + var(--cart-line-gap));
  top: var(--cart-line-top);
  height: var(--cart-line-height);
  border-radius: 99px;
  pointer-events: none;
  transform-origin: left center;
}

.cart_box > div:not(:last-child)::before {
  background: #e5e5e5;
  z-index: 0;
}

.cart_box > div:not(:last-child)::after {
  background: var(--shopion-accent);
  z-index: 1;
  transform: scaleX(0);
}

.cart_box > .cart_box_item_selected::after,
.cart_box > .cart_step_item.cart_box_item_selected::after {
  animation: cartLineFillNext 2.2s ease-in-out infinite !important;
}

.cart_box > .cart_box_item_done::after,
.cart_box > .cart_step_item.cart_box_item_done::after {
  transform: scaleX(1) !important;
}

.cart_box_item_selected {
  color: var(--shopion-text) !important;
  font-weight: 800 !important;
}

.cart_box_item_done {
  color: var(--shopion-text) !important;
  font-weight: 700 !important;
}

.cart_box_item a,
.cart_box_item_done a,
.cart_box_item_selected a {
  color: inherit !important;
  text-decoration: none;
  font-weight: inherit;
}

.cart_big,
.cart_small {
  width: var(--cart-step-size);
  height: var(--cart-step-size);
  line-height: var(--cart-step-size);
  margin: 0;
  display: inline-block;
  text-align: center !important;
  border-radius: 50%;
  font-weight: 800;
  font-size: 14px;
  position: relative;
  z-index: 4;
  box-sizing: border-box;
  transition: transform .25s ease, background .25s ease, color .25s ease, box-shadow .25s ease;
}

.cart_big {
  background: var(--shopion-text);
  color: #fff !important;
  box-shadow: 0 0 0 4px rgba(209,142,40,.20);
  animation: cartStepPulse 1.8s ease-in-out infinite;
}

.cart_small {
  background: #aaa;
  color: #fff !important;
}

.cart_box_item_done .cart_small {
  background: var(--shopion-text);
  color: #fff !important;
  box-shadow: none !important;
}

.cart_step_label {
  display: inline-block;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cart_step_link {
  display: grid;
  grid-template-rows: var(--cart-step-size) auto;
  justify-items: center;
  align-items: start;
  gap: 7px;
  color: inherit !important;
  text-decoration: none !important;
}

.cart_step_link:hover .cart_small {
  transform: scale(1.08);
}

@keyframes cartLineFillNext {
  0% { transform: scaleX(0); }
  72% { transform: scaleX(1); }
  100% { transform: scaleX(1); }
}

@keyframes cartStepPulse {
  0%, 100% { box-shadow: 0 0 0 4px rgba(209,142,40,.16); }
  50% { box-shadow: 0 0 0 6px rgba(209,142,40,.25); }
}

@media screen and (max-width: 820px) {
  .cart_box {
    --cart-step-size: 30px;
    --cart-line-top: 13px;
    --cart-line-gap: 5px;
    min-height: 72px;
    margin: -10px 0 8px 0;
    padding: 10px 0 7px 0;
  }

  .cart_box > div,
  .cart_step_link {
    grid-template-rows: var(--cart-step-size) 24px;
    gap: 6px;
    font-size: 12px;
    line-height: 1.15;
  }

  .cart_big,
  .cart_small {
    font-size: 13px;
  }

  .cart_big {
    box-shadow: 0 0 0 4px rgba(209,142,40,.18);
  }

  .cart_step_label {
    min-height: 24px;
    max-height: 24px;
    line-height: 1.15;
    white-space: nowrap;
  }
}

@media screen and (max-width: 600px) {
  .cart_box {
    --cart-step-size: 24px;
    --cart-line-top: 10px;
    --cart-line-gap: 4px;
    min-height: 68px;
    margin-bottom: 4px;
    padding: 8px 0 6px 0;
  }

  .cart_box > div,
  .cart_step_link {
    grid-template-rows: var(--cart-step-size) 24px;
    gap: 4px;
    font-size: 10px;
  }

  .cart_big,
  .cart_small {
    font-size: 11px;
  }

  .cart_big {
    box-shadow: 0 0 0 3px rgba(209,142,40,.18);
  }

  .cart_step_label {
    min-height: 24px;
    max-height: 24px;
    white-space: normal;
  }
}

@media screen and (max-width: 420px) {
  .cart_box > div,
  .cart_step_link {
    font-size: 9px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cart_big,
  .cart_box > .cart_box_item_selected::after,
  .cart_box > .cart_step_item.cart_box_item_selected::after {
    animation: none !important;
  }
}

/* Dokončená objednávka */
.order-finished-modern {
  max-width: 1180px;
  margin: 0px auto 70px auto;
  padding: 0 18px;
  box-sizing: border-box;
  color: var(--shopion-text);
}

.order-finished-modern * {
  box-sizing: border-box;
}

.order-finished-modern .of-hero {
  text-align: center;
  margin-bottom: 50px;
}

.order-finished-modern .of-hero h1 {
  margin: 18px 0 10px 0;
  padding: 0;
  text-align: center;
  font-size: 34px;
  line-height: 1.2;
  font-weight: 800;
  text-transform: none;
}

.order-finished-modern .of-hero p {
  margin: 0 auto;
  padding: 0;
  max-width: 760px;
  font-size: 18px;
  line-height: 1.6;
  color: #474747;
}

.order-finished-modern .of-hero p strong {
  color: var(--shopion-text);
  font-weight: 800;
}

.order-finished-modern .of-check {
  width: 74px;
  height: 74px;
  border-radius: 50%;
  background: #087d12;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.order-finished-modern .of-check::after {
  content: "";
  width: 30px;
  height: 16px;
  border-left: 7px solid #fff;
  border-bottom: 7px solid #fff;
  transform: rotate(-45deg);
  margin-top: -5px;
}

.order-finished-modern .of-check--error {
  background: #cc0000;
  color: #fff;
  font-size: 40px;
  line-height: 74px;
  font-weight: 800;
}

.order-finished-modern .of-check--error::after {
  display: none;
}

.order-finished-modern .of-pay-button {
  display: inline-block;
  margin-top: 25px;
  background:var(--shopion-button-bg);
  color:var(--shopion-button-text) !important;
  text-decoration: none;
  line-height: 52px;
  min-height: 52px;
  padding: 0 34px;
  font-size: 18px;
  font-weight: 800;
  text-transform: uppercase;
  transition: all .25s;
}

.order-finished-modern .of-pay-button:hover {
  background:var(--shopion-button-hover-bg);
  text-decoration: none;
}

.order-finished-modern .of-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 24px;
  align-items: start;
  margin-bottom: 24px;
}

.order-finished-modern .of-main-card,
.order-finished-modern .of-side-card,
.order-finished-modern .of-products-card {
  background: #fff;
  border: 1px solid #e7e7e7;
  box-shadow: 0 12px 34px rgba(0,0,0,.055);
}

.order-finished-modern .of-card-title {
  padding: 22px 26px;
  border-bottom: 1px solid #ededed;
  font-size: 21px;
  font-weight: 800;
  line-height: 1.25;
  text-align: left;
}

.order-finished-modern .of-card-title span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
  padding: 0 8px;
  margin-left: 8px;
  background: var(--shopion-accent);
  color:var(--shopion-accent-text);
  border-radius: 28px;
  font-size: 13px;
  line-height: 28px;
  vertical-align: middle;
}

.order-finished-modern .of-summary {
  padding: 10px 26px 26px 26px;
}

.order-finished-modern .of-detail-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 25px;
  padding: 16px 0;
  border-bottom: 1px solid #efefef;
  font-size: 15px;
  line-height: 1.45;
}

.order-finished-modern .of-detail-row:last-child {
  border-bottom: 0 none;
}

.order-finished-modern .of-detail-row span {
  color: #686868;
}

.order-finished-modern .of-detail-row strong {
  color: var(--shopion-text);
  font-weight: 800;
  text-align: right;
}

.order-finished-modern .of-detail-row--total strong {
  font-size: 24px;
  line-height: 1.15;
}

.order-finished-modern .of-bank-box {
  background: #fafafa;
  border: 1px solid #e9e9e9;
  padding: 16px 18px;
  margin: 10px 0 8px 0;
}

.order-finished-modern .of-bank-box > div {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 7px 0;
  font-size: 14px;
}

.order-finished-modern .of-bank-box span {
  color: #686868;
}

.order-finished-modern .of-bank-box strong {
  text-align: right;
  font-weight: 800;
}

.order-finished-modern .of-qr {
  text-align: center;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #efefef;
}

.order-finished-modern .of-qr p {
  padding: 0 0 12px 0 !important;
  margin: 0 !important;
  font-weight: 800;
}

.order-finished-modern .of-qr img,
.order-finished-modern .of-qr svg {
  max-width: 190px;
  height: auto;
}

.order-finished-modern .of-actions {
  padding: 18px 26px 26px 26px;
  display: flex;
  flex-direction: column;
  gap: 11px;
}

.order-finished-modern .of-actions a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 48px;
  padding: 0 16px;
  border: 1px solid #e1e1e1;
  background: #fafafa;
  color: var(--shopion-text) !important;
  text-decoration: none;
  font-size: 15px;
  font-weight: 800;
  transition: all .25s;
}

.order-finished-modern .of-actions a::after {
  content: "›";
  font-size: 26px;
  line-height: 1;
  font-weight: 300;
}

.order-finished-modern .of-actions a:hover {
  background: var(--shopion-accent);
  border-color: var(--shopion-accent);
  text-decoration: none;
}

.order-finished-modern .of-products-card {
  margin-top: 24px;
}

.order-finished-modern .of-products {
  padding: 0 26px;
}

.order-finished-modern .of-product {
  display: grid;
  grid-template-columns: 86px minmax(0,1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 18px 0;
  border-bottom: 1px solid #efefef;
}

.order-finished-modern .of-product:last-child {
  border-bottom: 0 none;
}

.order-finished-modern .of-product__image {
  width: 86px;
  height: 86px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fafafa;
  border: 1px solid #ededed;
  overflow: hidden;
}

.order-finished-modern .of-product__image img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  display: block;
}

.order-finished-modern .of-product__name {
  display: inline-block;
  color: var(--shopion-text) !important;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 800;
  text-decoration: none;
}

.order-finished-modern .of-product__name:hover {
  text-decoration: underline;
}

.order-finished-modern .of-product__code,
.order-finished-modern .of-product__desc {
  margin-top: 5px;
  font-size: 13px;
  line-height: 1.45;
  color: #777;
}

.order-finished-modern .of-product__meta {
  min-width: 145px;
  text-align: right;
}

.order-finished-modern .of-product__meta span {
  display: block;
  color: #777;
  font-size: 14px;
  line-height: 1.4;
}

.order-finished-modern .of-product__meta strong {
  display: block;
  margin-top: 3px;
  color: var(--shopion-text);
  font-size: 17px;
  line-height: 1.25;
  font-weight: 800;
}

.order-finished-modern .of-bottom {
  text-align: center;
  margin-top: 30px;
}

.order-finished-modern .of-bottom .submit_spec2 {
  float: none;
  display: inline-block;
  margin: 0 auto;
}

@media only screen and (max-width: 900px) {
  .order-finished-modern .of-grid {
    grid-template-columns: 1fr;
  }
}

@media only screen and (max-width: 650px) {
  .order-finished-modern {
    padding: 0 10px;
  }

  .order-finished-modern .of-hero {
    margin-bottom: 30px;
  }

  .order-finished-modern .of-hero h1 {
    font-size: 27px;
  }

  .order-finished-modern .of-hero p {
    font-size: 15px;
  }

  .order-finished-modern .of-check {
    width: 62px;
    height: 62px;
  }

  .order-finished-modern .of-check::after {
    width: 25px;
    height: 13px;
    border-left-width: 6px;
    border-bottom-width: 6px;
  }

  .order-finished-modern .of-card-title {
    padding: 18px;
    font-size: 19px;
    text-align:center;
  }

  .order-finished-modern .of-summary,
  .order-finished-modern .of-actions,
  .order-finished-modern .of-products {
    padding-left: 18px;
    padding-right: 18px;
  }

  .order-finished-modern .of-detail-row,
  .order-finished-modern .of-bank-box > div {
    display: block;
    text-align:center;
  }

  .order-finished-modern .of-detail-row strong,
  .order-finished-modern .of-bank-box strong {
    display: block;
    text-align: center;
    margin-top: 4px;
  }

  .order-finished-modern .of-product {
    grid-template-columns: 74px minmax(0,1fr);
    gap: 14px;
    align-items: start;
  }

  .order-finished-modern .of-product__image {
    width: 74px;
    height: 74px;
  }

  .order-finished-modern .of-product__meta {
    grid-column: 2;
    min-width: 0;
    text-align: left;
    margin-top: -6px;
  }
}



.delivery-country-form {
  margin: 0 0 30px 0;
}

.delivery-country-box {
  position: relative;
  max-width: 100%;
  padding: 22px;
  border: 1px solid #e3e5e8;
  background: #fff;
  box-shadow: 0 10px 30px rgba(18, 19, 20, .08);
  box-sizing: border-box;
}

.delivery-country-heading {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  color: var(--shopion-text);
}

.delivery-country-heading-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  background: #f2f3f4;
  color: var(--shopion-accent);
}

.delivery-country-heading strong {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 700;
}

.delivery-country-heading small {
  display: block;
  margin-top: 3px;
  color: #555;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 400;
}

.delivery-country-select {
  position: relative;
  z-index: 150;
}

.delivery-country-trigger {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 62px;
  padding: 10px 58px 10px 16px;
  border: 2px solid var(--shopion-text);
  background: #fff;
  color: var(--shopion-text);
  cursor: pointer;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
  font-size: 17px;
  font-weight: 700;
  text-align: left;
  text-transform: none;
}

.delivery-country-trigger:hover,
.delivery-country-select.is-open .delivery-country-trigger {
  border-color: var(--shopion-accent);
  background: #fff;
}

.delivery-country-trigger-main {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 14px;
}

.delivery-country-trigger img,
.delivery-country-option img,
.delivery-country-placeholder-flag {
  display: block;
  width: 36px;
  height: 24px;
  flex: 0 0 36px;
  object-fit: cover;
  border: 1px solid rgba(0, 0, 0, .12);
  box-sizing: border-box;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .08);
}

.delivery-country-placeholder-flag {
  background: linear-gradient(135deg, #f0f0f0 0 48%, #ddd 48% 52%, #f0f0f0 52% 100%);
}

.delivery-country-arrow {
  position: absolute;
  right: 20px;
  top: 50%;
  width: 10px;
  height: 10px;
  margin-top: -7px;
  border-right: 2px solid var(--shopion-text);
  border-bottom: 2px solid var(--shopion-text);
  transform: rotate(45deg);
  transition: transform .2s ease, margin .2s ease;
}

.delivery-country-select.is-open .delivery-country-arrow {
  margin-top: -2px;
  transform: rotate(225deg);
}

.delivery-country-dropdown {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 8px);
  display: none;
  max-height: 390px;
  overflow-y: auto;
  padding: 8px;
  border: 1px solid #dfe1e4;
  background: #fff;
  box-shadow: 0 18px 45px rgba(18, 19, 20, .18);
  box-sizing: border-box;
}

.delivery-country-select.is-open .delivery-country-dropdown {
  display: block;
}

.delivery-country-option {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  min-height: 52px;
  padding: 10px 48px 10px 12px;
  border: 0;
  border-bottom: 1px solid #f0f1f2;
  background: #fff;
  color: var(--shopion-text);
  cursor: pointer;
  font-family: 'Poppins', sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  text-align: left;
  text-transform: none;
  transition: background .15s ease, color .15s ease;
}

.delivery-country-option:last-child {
  border-bottom: 0;
}

.delivery-country-option:hover,
.delivery-country-option.is-selected {
  background: var(--shopion-surface-muted);
  color: var(--shopion-text);
}

.delivery-country-option.is-selected {
  font-weight: 700;
}

.delivery-country-check {
  position: absolute;
  right: 16px;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-top: -12px;
  background: var(--shopion-accent);
  color: #fff;
  font-size: 14px;
  line-height: 24px;
}

@media only screen and (max-width: 600px) {
  .delivery-country-form {
    margin: 0 0 20px 0;
  }

  .delivery-country-box {
    padding: 16px;
  }

  .delivery-country-heading-icon {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
  }

  .delivery-country-heading strong {
    font-size: 17px;
  }

  .delivery-country-heading small {
    font-size: 12px;
  }

  .delivery-country-trigger {
    min-height: 56px;
    padding-left: 12px;
    font-size: 15px;
  }

  .delivery-country-dropdown {
    max-height: 330px;
  }
}

/* =========================================================
   Skupiny dopravců v košíku
   Radius je záměrně pouze v samostatném radius.css.
   ========================================================= */
#transferbox .transport-group{
  margin:12px 16px 0;
  border:1px solid #dde3e6;
  overflow:hidden;
  background:#fff;
  box-shadow:0 1px 3px rgba(26,43,52,.035);
}
#transferbox .transport-group:last-child{
  margin-bottom:16px;
}
#transferbox .transport-group-toggle{
  display:flex;
  width:100%;
  min-height:56px;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:13px 18px;
  border:0;
  background:#f6f7f8;
  color:#17191b;
  font:inherit;
  font-size:15px;
  font-weight:700;
  line-height:1.3;
  text-align:left;
  cursor:pointer;
  box-sizing:border-box;
  transition:background-color .15s ease;
}
#transferbox .transport-group-toggle:hover{
  background:#f3f5f6;
}
#transferbox .transport-group.is-disabled > .transport-group-toggle,
#transferbox .transport-group.is-disabled > .transport-group-toggle:hover{
  background:#f6f7f8;
  color:#a9afb3;
  cursor:default;
}
#transferbox .transport-group.is-disabled .transport-group-title{
  color:#a9afb3;
  text-decoration:line-through;
  text-decoration-thickness:1px;
}
#transferbox .transport-group.is-disabled .transport-group-arrow{
  color:#b7bdc1;
}
#transferbox .transport-group.is-open > .transport-group-toggle{
  background:#f6f7f8;
  border-bottom:1px solid #e2e6e8;
}
#transferbox .transport-group-title{
  min-width:0;
}
#transferbox .transport-group-arrow{
  width:9px;
  height:9px;
  flex:0 0 9px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  transition:transform .2s ease;
  margin:-5px 3px 0 0;
}
#transferbox .transport-group.is-open > .transport-group-toggle .transport-group-arrow{
  transform:rotate(225deg);
  margin:5px 3px 0 0;
}
/* Položky jsou přes celou šířku skupiny, odsazení zůstává pouze nahoře. */
#transferbox .transport-group-items{
  padding:10px 0 0;
  background:#fff;
}
#transferbox .transport-group-items > .paymentitem{
  margin:0;
  padding-left:20px;
  padding-right:16px;
  background:#fff;
}
#transferbox .transport-group-items > .paymentitem:hover:not(.disabled),
#transferbox .transport-group-items > .paymentitem.active,
#transferbox .transport-group-items > .paymentitem.active.disabled,
#transferbox .transport-group-items > .paymentitem.disabled,
#transferbox .transport-group-items > .paymentitem.is-selected{
  background:#fff;
}
#transferbox .transport-group-items > .paymentitem.active:not(.disabled){
  box-shadow:none;
}
#transferbox .transport-group-items > .paymentitem.is-selected:not(.disabled){
  box-shadow:inset 3px 0 0 var(--shopion-accent);
}
#transferbox .transport-group-items > .paymentitem.active.disabled,
#transferbox .transport-group-items > .paymentitem.is-selected.disabled,
#transferbox .transport-group-items > .paymentitem.disabled{
  box-shadow:none !important;
}
#transferbox .transport-group-items > .paymentitem:last-child{
  border-bottom:0;
}

@media only screen and (max-width:700px){
  div#transportbox,
  div#transferbox{
    margin-bottom:18px;
    box-shadow:0 2px 10px rgba(28,47,58,.05);
  }
  p.tit{
    height:54px!important;
    line-height:54px!important;
    padding:0 16px!important;
    font-size:18px!important;
    text-align:left!important;
  }
  #basket-layout.on_one_page div.paymentitem{
    padding:12px 12px 12px 16px;
  }
  #transferbox .transport-group{
    margin:10px 10px 0;
  }
  #transferbox .transport-group:last-child{
    margin-bottom:10px;
  }
  #transferbox .transport-group-toggle{
    min-height:52px;
    padding:11px 14px;
    font-size:16px;
  }
  #transferbox .transport-group-items{
    padding:9px 0 0;
  }
  #transferbox .transport-group-items > .paymentitem{
    margin:0;
    padding-left:16px;
    padding-right:12px;
  }
}


/* =========================================================
   One-page checkout desktop v6
   - vyvazeni 3 sloupcu
   - sumarizace znovu sticky
   - oprava quantity spinneru v sumarizaci
   Radius zustava pouze v radius.css.
   ========================================================= */
@media only screen and (min-width:1151px){
  section .layout-center #basket-layout.on_one_page .one-page-checkout-layout,
  #basket-layout.on_one_page form#form > .one-page-checkout-layout{
    grid-template-columns:minmax(0,.92fr) minmax(0,.98fr) minmax(0,1.10fr) !important;
    gap:18px !important;
  }

  /* Doprava/platba zustava normalne v toku. */
  #basket-layout.on_one_page .one-page-checkout-shipping > .sidebar,
  #basket-layout.on_one_page .one-page-checkout-shipping > .sidebar.centre{
    position:static !important;
    top:auto !important;
  }

  /* Sumarizace byla drive plovouci - vratime sticky pouze na desktopu. */
  #basket-layout.on_one_page .one-page-checkout-summary{
    align-self:start !important;
    min-width:0 !important;
  }
  #basket-layout.on_one_page .one-page-checkout-summary > #sidebar,
  #basket-layout.on_one_page .one-page-checkout-summary > .sidebar{
    position:sticky;
    top:20px;
    align-self:start !important;
    width:100%;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
  }

  /* Spinner mnozstvi v sumarizaci - samostatne minus / hodnota / plus. */
  #basket-layout.on_one_page .one-page-checkout-summary td.col-quantity{
    width:88px !important;
    min-width:88px !important;
    padding:0 10px !important;
    vertical-align:middle !important;
  }
  #basket-layout.on_one_page .one-page-checkout-summary .spinner.on-one-page{
    position:relative !important;
    display:block !important;
    width:82px !important;
    min-width:82px !important;
    height:36px !important;
    margin:0 auto !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-sizing:border-box !important;
  }
  #basket-layout.on_one_page .one-page-checkout-summary .spinner.on-one-page input.c-quantity-in-basket{
    display:block !important;
    width:82px !important;
    min-width:82px !important;
    height:36px !important;
    margin:0 !important;
    padding:0 26px !important;
    box-sizing:border-box !important;
    border:1px solid #d7dadb !important;
    background:#fff !important;
    color:#17191b !important;
    font-size:14px !important;
    font-weight:600 !important;
    line-height:34px !important;
    text-align:center !important;
    -moz-appearance:textfield !important;
    appearance:textfield !important;
  }
  #basket-layout.on_one_page .one-page-checkout-summary .spinner.on-one-page input.c-quantity-in-basket::-webkit-inner-spin-button,
  #basket-layout.on_one_page .one-page-checkout-summary .spinner.on-one-page input.c-quantity-in-basket::-webkit-outer-spin-button{
    -webkit-appearance:none !important;
    margin:0 !important;
  }
  #basket-layout.on_one_page .one-page-checkout-summary .spinner.on-one-page .input-group-btn-vertical{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:82px !important;
    height:36px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    pointer-events:none;
  }
  #basket-layout.on_one_page .one-page-checkout-summary .spinner.on-one-page .input-group-btn-vertical > .btn{
    position:absolute !important;
    top:1px !important;
    width:25px !important;
    height:34px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background-color:transparent !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;
    background-size:10px auto !important;
    box-shadow:none !important;
    pointer-events:auto;
  }
  #basket-layout.on_one_page .one-page-checkout-summary .spinner.on-one-page .input-group-btn-vertical > .btn:first-child{
    left:auto !important;
    right:1px !important;
    border-left:1px solid #eceeef !important;
  }
  #basket-layout.on_one_page .one-page-checkout-summary .spinner.on-one-page .input-group-btn-vertical > .btn:last-child{
    left:1px !important;
    right:auto !important;
    border-right:1px solid #eceeef !important;
  }
}

@media only screen and (min-width:1151px) and (max-width:1399px){
  section .layout-center #basket-layout.on_one_page .one-page-checkout-layout,
  #basket-layout.on_one_page form#form > .one-page-checkout-layout{
    grid-template-columns:minmax(0,.90fr) minmax(0,1fr) minmax(0,1.10fr) !important;
    gap:14px !important;
  }
}

/* =========================================================
   One-page checkout v14 - finalni desktop floating summary
   Plovouci logiku resi specializovany JS bez ResizeObserveru.
   ========================================================= */
@media only screen and (max-width:600px){
  #basket-layout.on_one_page .delivery-country-form{
    margin-top:-10px !important;
  }

  #basket-layout.on_one_page .one-page-checkout-shipping{
    margin-top:20px !important;
  }

  #basket-layout.on_one_page .one-page-checkout-summary{
    margin-top:20px !important;
  }
}

@media only screen and (min-width:1151px){
  section .layout-center #basket-layout.on_one_page,
  section .layout-center #basket-layout.on_one_page form#form,
  section .layout-center #basket-layout.on_one_page .one-page-checkout-layout{
    overflow:visible !important;
  }

  #basket-layout.on_one_page form#form > .one-page-checkout-layout{
    align-items:start !important;
  }

  #basket-layout.on_one_page .one-page-checkout-summary{
    position:relative !important;
    align-self:stretch !important;
    min-width:0 !important;
    overflow:visible !important;
  }

  #basket-layout.on_one_page .one-page-checkout-summary > #sidebar,
  #basket-layout.on_one_page .one-page-checkout-summary > .sidebar{
    position:static !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    transform:none !important;
    box-sizing:border-box !important;
    overflow:visible !important;
  }
}


/* ===== V2 accent text overrides: white text on accent / gradient backgrounds ===== */
.order-finished-modern .of-card-title span,
.order-finished-modern .of-card-title span *,
.order-finished-modern .of-actions a:hover,
.order-finished-modern .of-actions a:hover *,
.delivery-country-check,
.delivery-country-check * {
  color: var(--shopion-accent-text) !important;
}


/* ===== V2 final basket gradient refinements ===== */
/* 6) Aktivni krok kosiku: bez puvodniho zluteho halo/ramecku */
.cart_big,
.cart_box_item_selected .cart_big,
.cart_step_item.cart_box_item_selected .cart_big {
  box-shadow: none !important;
  animation: none !important;
}

/* Pro jistotu uz zadne zlute halo ani v keyframe fallbacku */
@keyframes cartStepPulse {
  0%, 50%, 100% { box-shadow: none; }
}


/* DARK GREEN + GOLD THEME – pouze barvy */
div.paymentitem.is-selected:not(.disabled) {
  background: linear-gradient(90deg,var(--shopion-accent-soft) 0%,#ffffff 68%);
  box-shadow: inset 3px 0 0 var(--shopion-accent);
}
div#transportbox,
div#transferbox,
.sidebar.centre #transferbox,
.sidebar.centre #transportbox {
  border-color: var(--shopion-dark);
}
p.tit,
.sidebar.centre p.tit {
  background: var(--shopion-dark-bg);
  border-bottom-color: #31564c;
}
.delivery-country-heading-icon {
  background: var(--shopion-accent-soft);
  color: var(--shopion-accent);
}
.delivery-country-trigger:hover,
.delivery-country-select.is-open .delivery-country-trigger {
  border-color: var(--shopion-accent);
}
.delivery-country-option:hover,
.delivery-country-option.is-selected {
  background: linear-gradient(90deg,var(--shopion-accent-soft),#fff);
  color: var(--shopion-text);
}

/* ===== BASKET: hlavicky dopravy/platby tmave zelenym gradientem ===== */
p.tit,
.sidebar.centre p.tit,
p.tit.light {
  background:var(--shopion-header-bg) !important;
  color:#fff !important;
  border-bottom-color:rgba(255,255,255,.20) !important;
}

