/* vitalplanet.sk | košík, objednávka a okno „Pridané do košíka“ | Developed by NETMALL s.r.o. */
:root{--vp-g:#4f9a28;--vp-gd:#3b7a1c;--vp-gl:#f3f9ee;--vp-b:#e4eadc;--vp-t:#2b2b2b;--vp-m:#6b6b6b}

/* ---------- 1. kroky objednávky (košík → doprava → údaje) ---------- */
body .cart-header .step a,body .cart-header .step strong{color:var(--vp-m);font-weight:600}
body .cart-header .step a:before,body .cart-header .step strong:before{transition:background-color .2s,box-shadow .2s}
body .cart-header .step:not(.active):not(.completed) a:before,body .cart-header .step:not(.active):not(.completed) strong:before{background:#eceee9;color:#8d938a}
body .cart-header .step.completed a,body .cart-header .step.completed strong{color:var(--vp-gd)}
body .cart-header .step.active a,body .cart-header .step.active strong{color:var(--vp-t);font-weight:800}
body .cart-header .step.active a:before,body .cart-header .step.active strong:before{box-shadow:0 0 0 5px rgba(79,154,40,.16)}

/* ---------- 2. košík – tabuľka s tovarom ---------- */
body .cart-inner .cart-table{width:100%;background:#fff;border:1px solid var(--vp-b);border-radius:16px;border-collapse:separate;border-spacing:0;overflow:hidden}
body .cart-table .cart-table-header td{padding:14px 14px 12px;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--vp-m);border-bottom:1px solid var(--vp-b)}
body .cart-table tr.removeable td{padding:16px 14px;border-bottom:1px solid #eef1ea;transition:background-color .15s}
body .cart-table tr.removeable:last-child td{border-bottom:0}
body .cart-table tr.removeable:hover td{background:#fafcf8}
body .cart-table .cart-p-image img{border:1px solid var(--vp-b);border-radius:10px;background:#fff}
body .cart-table .p-name .main-link{font-size:15px;line-height:1.35;font-weight:700;color:var(--vp-t);text-decoration:none}
body .cart-table .p-name .main-link:hover{color:var(--vp-gd)}
body .cart-table .p-name .show-related{font-size:13px;color:var(--vp-gd)}
body .cart-table .availability-label{font-size:13px}
/* počet kusov ako pilulka – rovnako ako na detaile produktu */
body .cart-table .quantity{border:1px solid var(--vp-b);border-radius:24px;overflow:hidden;background:#fff}
body .cart-table .quantity input.amount{border:0;background:transparent;font-weight:700;font-size:15px}
body .cart-table .quantity .increase,body .cart-table .quantity .decrease{background:transparent;border:0;color:var(--vp-gd);font-weight:700}
body .cart-table .quantity .increase:hover,body .cart-table .quantity .decrease:hover{background:var(--vp-gl)}
body .cart-table .p-price .price-final{font-size:15px;font-weight:600;color:#3f3f3f}
body .cart-table .p-price .unit-value{font-size:13px;color:var(--vp-m)}
body .cart-table .p-total .price-final{font-size:17px;font-weight:800;color:var(--vp-t)}
body .cart-table .remove-item{color:#a3a3a3;transition:color .15s}
body .cart-table .remove-item:hover{color:#d64545}

/* ---------- 3. bonusový program (košík aj okno po pridaní) ---------- */
/* doplnok vykresľoval kartu s čiernym pozadím, zosúlaďujeme ju so zvyškom webu */
body .mehub-bonus-cart-container h4,body .mehub-bonus-advanced-cart-container h4{margin:0 0 8px;font-size:14px;font-weight:700;color:var(--vp-t)}
body .mehub-bonus-cart-container .card,body .mehub-bonus-advanced-cart-container .card{background:var(--vp-gl)!important;color:#3b6b1c!important;border:1px solid #d9e8cc!important;border-radius:14px!important;box-shadow:none!important}
body .mehub-bonus-cart-container .card-title,body .mehub-bonus-advanced-cart-container .card-title{padding-bottom:0;font-size:14px;color:#3b6b1c!important}
body .mehub-bonus-cart-container .card-text,body .mehub-bonus-advanced-cart-container .card-text{font-size:13.5px;color:#3b6b1c!important}
body .mehub-bonus-cart-container .card b,body .mehub-bonus-advanced-cart-container .card b{color:var(--vp-gd)!important;font-weight:800}

body .mehub-bonus-cart-container{margin:18px 0 0}

/* ---------- 4. košík – kupón, dátum doručenia, súhrn ---------- */
body .coupon-input .toggle-coupon-input-button{color:var(--vp-gd);font-weight:600}
body .delivery-time{font-size:14px;color:var(--vp-m)}
body .delivery-time strong{color:var(--vp-t)}
body .row.summary{margin-top:18px}
body .row.summary .price-wrapper{padding:16px 20px;background:var(--vp-gl);border:1px solid #d9e8cc;border-radius:16px}
body .row.summary .price-label.price-primary{font-size:13px;color:var(--vp-m)}
body .row.summary .price.price-primary{font-size:30px;line-height:1.1;font-weight:800;color:var(--vp-t)}
body .row.summary .price-label.price-secondary,body .row.summary .price.price-secondary{font-size:13px;color:var(--vp-m)}

/* ---------- 5. tlačidlá v procese objednávky ---------- */
body .next-step .btn-conversion,body .next-step .next-step-forward{border-radius:26px!important;padding:14px 30px!important;font-size:16px;font-weight:700;letter-spacing:.2px;box-shadow:0 4px 14px rgba(79,154,40,.32);transition:transform .15s,box-shadow .15s}
body .next-step .btn-conversion:hover,body .next-step .next-step-forward:hover{transform:translateY(-1px);box-shadow:0 7px 20px rgba(79,154,40,.42)}
body .next-step .next-step-back{border-radius:26px!important;padding:13px 24px!important;background:#fff!important;border:1px solid var(--vp-b)!important;color:var(--vp-t)!important;font-weight:600;transition:background-color .15s,border-color .15s,color .15s}
body .next-step .next-step-back:hover{background:var(--vp-gl)!important;border-color:#cfe3bf!important;color:var(--vp-gd)!important}

/* ---------- 6. objednávka krok 1 – sekcie dopravy a platby ---------- */
body .order-delivery-payment-form .co-box{margin-bottom:18px;padding:18px 20px;background:#fff;border:1px solid var(--vp-b);border-radius:16px}
body .order-delivery-payment-form .co-box > h2.order-icon{margin:0 0 14px;font-size:19px;line-height:1.3;font-weight:800;color:var(--vp-t)}
/* jedna možnosť dopravy / platby ako dlaždica */
body .shipping-billing-table .radio-wrapper{margin:0 0 10px;background:#fff;border:1px solid var(--vp-b);border-radius:14px;transition:border-color .18s,background-color .18s,box-shadow .18s}
body .shipping-billing-table .radio-wrapper:hover{border-color:#cfe3bf;box-shadow:0 4px 14px rgba(40,70,20,.08)}
body .shipping-billing-table .radio-wrapper.active{border-color:var(--vp-g);background:var(--vp-gl)}
body .shipping-billing-table .radio-wrapper > label{align-items:center;gap:14px;padding:14px 18px 14px 48px!important}
body .shipping-billing-table .radio-wrapper > label .payment-info{flex:1 1 auto;min-width:0}
/* prepínač */
body .shipping-billing-table .radio-wrapper > label:before{left:18px;top:19px;width:20px;height:20px;border:2px solid #c6cfbc;background:#fff}
body .shipping-billing-table .radio-wrapper.active > label:before{border-color:var(--vp-g)}
body .shipping-billing-table .radio-wrapper > label:after{left:23px;top:24px;width:10px;height:10px;border:0;background:var(--vp-g);opacity:0;transition:opacity .15s}
body .shipping-billing-table .radio-wrapper.active > label:after,body .shipping-billing-table .radio-wrapper input:checked + label:after{opacity:1}
/* texty */
body .shipping-billing-table .shipping-billing-name{font-size:15px;line-height:1.35;font-weight:700;color:var(--vp-t)}
body .shipping-billing-table .shipp-info-dm{display:block;margin:5px 0 0;font-size:13px;line-height:1.55;color:var(--vp-m)}
body .shipping-billing-table .payment-logo img{max-height:26px;width:auto}
body .shipping-billing-table .payment-shipping-price{margin-left:auto;font-size:16px;font-weight:800;color:var(--vp-t);white-space:nowrap}
/* odkaz „Zvoľte odberné miesto“ ako tlačidlo */
body .shipping-billing-table .sublabel.new-gen-choose{margin-top:9px;width:auto!important;max-width:none!important;border:0!important;padding:0!important}
body .shipping-billing-table .sublabel.new-gen-choose a{display:inline-block;width:auto;white-space:nowrap;padding:7px 15px;background:#fff;border:1px solid var(--vp-g);border-radius:20px;color:var(--vp-gd);font-size:13px;font-weight:700;text-decoration:none;transition:background-color .15s,color .15s}
body .shipping-billing-table .sublabel.new-gen-choose a:hover{background:var(--vp-g);color:#fff}

/* ---------- 7. objednávka krok 1 – zhrnutie objednávky ---------- */
body .order-summary .order-summary-inner{padding:18px 20px;background:#fff;border:1px solid var(--vp-b)!important;border-radius:16px;box-shadow:0 2px 12px rgba(40,70,20,.07)}
body .order-summary .order-summary-inner > h2.h4{margin:0 0 12px;padding:0 0 12px;font-size:18px;font-weight:800;color:var(--vp-t);border-bottom:1px solid var(--vp-b)}
body .order-summary .order-summary-item,body .order-summary .order-recapitulation{border-top-color:#eef1ea!important}
body .order-summary .cart-item-name a{font-size:14px;line-height:1.4;font-weight:600;color:var(--vp-t);text-decoration:none}
body .order-summary .cart-item-name a:hover{color:var(--vp-gd)}
body .order-summary .cart-item-amount,body .order-summary .cart-item-price{font-size:14px;color:#3f3f3f}
body .order-summary .order-summary-item.helper{font-size:15px}
body .order-summary .recapitulation-single{font-size:14px;color:#3f3f3f}
body .order-summary .order-summary-item.price .price-wrapper{margin-top:4px;padding:14px 16px;background:var(--vp-gl);border:1px solid #d9e8cc;border-radius:14px}
body .order-summary .order-summary-item.price .price-label.price-primary{font-size:13px;color:var(--vp-m)}
body .order-summary .order-summary-item.price .price.price-primary{font-size:28px;line-height:1.1;font-weight:800;color:var(--vp-t)}
body .order-summary .order-summary-item.price .price-label.price-secondary,body .order-summary .order-summary-item.price .price.price-secondary{font-size:13px;color:var(--vp-m)}

/* ---------- 8. okno „Pridané do košíka“ ---------- */
body .advanced-order{padding:4px 0 8px}
body .advanced-order .h1{position:relative;margin:0 0 10px;padding-top:54px;font-size:25px;line-height:1.25;font-weight:800;color:var(--vp-t);text-align:center}
body .advanced-order .h1:before{content:"";position:absolute;top:0;left:50%;width:44px;height:44px;margin-left:-22px;border-radius:50%;background:var(--vp-g) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center/22px 22px no-repeat;box-shadow:0 6px 18px rgba(79,154,40,.3)}
body .advanced-order > .h2{margin:0 0 14px;font-size:16.5px;line-height:1.4;font-weight:600;color:#3f3f3f;text-align:center}
body .advanced-order .advancedOrder__buttons{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin:22px 0 4px}
body .advanced-order .advancedOrder__buttons .btn{border-radius:26px!important;padding:13px 28px!important;font-size:15px;font-weight:700;letter-spacing:.2px;transition:transform .15s,box-shadow .15s,background-color .15s,color .15s,border-color .15s}
body .advanced-order .advancedOrder__buttons .next-step-back{background:#fff!important;border:1px solid var(--vp-b)!important;color:var(--vp-t)!important}
body .advanced-order .advancedOrder__buttons .next-step-back:hover{background:var(--vp-gl)!important;border-color:#cfe3bf!important;color:var(--vp-gd)!important}
body .advanced-order .advancedOrder__buttons .btn-conversion{box-shadow:0 4px 14px rgba(79,154,40,.32)}
body .advanced-order .advancedOrder__buttons .btn-conversion:hover{transform:translateY(-1px);box-shadow:0 7px 20px rgba(79,154,40,.42)}
body .advanced-order .advanced-order-suggestion{position:relative;margin:34px 0 22px;padding-top:26px;font-size:21px;line-height:1.3;font-weight:800;color:var(--vp-t);text-align:center;border-top:1px solid var(--vp-b)}
body .advanced-order .advanced-order-suggestion:after{content:"";display:block;width:50px;height:3px;margin:11px auto 0;border-radius:3px;background:linear-gradient(90deg,var(--vp-g),#8cc63f)}
/* dlaždice odporúčaných produktov – rovnaké ako pri súvisiacom tovare */
body .advanced-order .products-additional .product{padding:6px 7px}
body .advanced-order .products-additional .product .p{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--vp-b);border-radius:16px;padding:10px 11px 14px;transition:box-shadow .22s,transform .22s,border-color .22s}
body .advanced-order .products-additional .product:hover .p{border-color:#cfe3bf;box-shadow:0 10px 24px rgba(40,70,20,.13);transform:translateY(-3px)}
body .advanced-order .products-additional .product .image{display:block;overflow:hidden;border-radius:12px}
body .advanced-order .products-additional .product .image img{transition:transform .35s ease}
body .advanced-order .products-additional .product:hover .image img{transform:scale(1.05)}
body .advanced-order .products-additional .product .name{font-size:14px;line-height:1.35;font-weight:600;color:var(--vp-t)}
body .advanced-order .products-additional .product .p-bottom{margin-top:8px;padding-top:9px;border-top:1px dashed #e8ece2}
body .advanced-order .products-additional .product .price-final,body .advanced-order .products-additional .product .price-final strong{font-size:18px;font-weight:800;color:var(--vp-t)}
body .advanced-order .products-additional .product .price-standard{font-size:13px;color:#8a8a8a;text-decoration:line-through}
body .advanced-order .products-additional .product .flag{border-radius:12px;padding:3px 10px;font-size:11px;font-weight:700}

/* ---------- 10. objednávka krok 2 – údaje o zákazníkovi ---------- */
/* výzva na prihlásenie */
body .sending-order .helper{margin:0 0 18px;padding:14px 18px;background:var(--vp-gl);border:1px solid #d9e8cc;border-radius:14px;font-size:14px;line-height:1.55;color:#3b6b1c}
body .sending-order .helper a{color:var(--vp-gd);font-weight:700}
/* sekcie formulára ako karty */
body .sending-order .cart-content > .co-box,body .sending-order .cart-content > fieldset.co-box{margin:0 0 18px;padding:18px 20px;background:#fff;border:1px solid var(--vp-b);border-radius:16px}
body .sending-order .co-box > h2,body .sending-order .co-box h2.header-billing{margin:0 0 14px;font-size:19px;line-height:1.3;font-weight:800;color:var(--vp-t)}
body .sending-order .co-billing-address > fieldset.box{margin:0;padding:0;border:0;background:transparent}
body .sending-order .form-legend{margin:0 0 10px;font-size:12.5px;color:var(--vp-m)}
/* vstupné polia */
body .sending-order .form-control{border:1px solid var(--vp-b);border-radius:12px;background:#fff;transition:border-color .15s,box-shadow .15s}
body .sending-order .form-control:focus{border-color:var(--vp-g);box-shadow:0 0 0 3px rgba(79,154,40,.14);outline:0}
body .sending-order .smart-label-wrapper label{color:var(--vp-m)}
/* bonusový program – vonkajšia karta zelená, vnútorná (modrá od doplnku) sa zruší */
body .sending-order .mehub-bonus-checkout-container{background:var(--vp-gl)!important;border-color:#d9e8cc!important}
body .sending-order .mehub-bonus-checkout-container .card{background:transparent!important;border:0!important;box-shadow:none!important}
body .sending-order .mehub-bonus-checkout-container,body .sending-order .mehub-bonus-checkout-container .card,body .sending-order .mehub-bonus-checkout-container .card-title,body .sending-order .mehub-bonus-checkout-container .card-text,body .sending-order .mehub-bonus-checkout-container b{color:#3b6b1c!important}
body .sending-order .mehub-bonus-checkout-container a{color:var(--vp-gd)!important;font-weight:700}
/* nadpis doplnku má ikonu z neexistujúceho znaku – zobrazoval sa ako prázdny štvorček */
body .sending-order .mehub-bonus-checkout-container h4:before{display:none}
/* zaškrtávacie polia (súhlasy, newsletter, iná adresa) */
body .cart-content .consents label:before,body .sending-order label.whole-width:before{border:1px solid #c6cfbc!important;border-radius:5px!important}
body .cart-content .consents input:checked + label:before,body .sending-order input:checked + label.whole-width:before{border-color:var(--vp-g)!important}
body .cart-content .consents input:checked + label:after,body .sending-order input:checked + label.whole-width:after{background:var(--vp-g)!important;border-radius:3px}
body .cart-content .consents label,body .sending-order label.whole-width{font-size:13.5px;line-height:1.5;color:#3f3f3f}
body .cart-content .consents a,body .sending-order label.whole-width a{color:var(--vp-gd)}
/* tlačidlo Objednať s dvojriadkovým popisom */
body .next-step .next-step-finish{border-radius:26px!important;padding:14px 30px!important;font-size:16px;font-weight:700;box-shadow:0 4px 14px rgba(79,154,40,.32);transition:transform .15s,box-shadow .15s}
body .next-step .next-step-finish:hover{transform:translateY(-1px);box-shadow:0 7px 20px rgba(79,154,40,.42)}
body .next-step--step-2 .next-step-finish .order-button-suffix{display:block;font-size:11.5px;font-weight:600;opacity:.9}
/* riadok „Celkom za tovar“ v zhrnutí nemá byť zelený */
body .order-summary .order-summary-item.helper,body .order-summary .order-summary-item.helper strong,body .order-summary .order-summary-item.helper div{color:var(--vp-t)}

/* ---------- 9. mobil ---------- */
@media (max-width:767px){
body .cart-header .step a,body .cart-header .step strong{font-size:12.5px}
body .cart-table tr.removeable{display:grid!important;grid-template-columns:72px minmax(0,1fr) auto;grid-column-gap:12px;align-items:start;padding:14px 12px}
body .cart-table tr.removeable td{width:auto!important;max-width:none!important;min-width:0;flex:none!important;padding:0;border:0}
body .cart-table .cart-p-image{grid-column:1;grid-row:1/span 3}
body .cart-table .cart-p-image img{max-width:72px;height:auto}
body .cart-table .p-name{grid-column:2/span 2;grid-row:1;position:relative;padding-right:34px!important;font-size:14.5px}
body .cart-table .p-name .delete-cart-item{position:absolute;top:-2px;right:0;margin:0}
body .cart-table .p-price{grid-column:2/span 2;grid-row:2;margin-top:2px;text-align:left!important}
body .cart-table .p-quantity{grid-column:2;grid-row:3;margin-top:10px}
body .cart-table .p-total{grid-column:3;grid-row:3;margin-top:10px;align-self:center;text-align:right!important}
body .row.summary .price-wrapper{padding:14px 16px}
body .row.summary .price.price-primary{font-size:26px}
body .next-step{display:flex;flex-direction:column-reverse;gap:10px}
body .next-step .btn-conversion,body .next-step .next-step-forward,body .next-step .next-step-back{width:100%;justify-content:center;text-align:center}
body .order-delivery-payment-form .co-box{padding:14px 14px;border-radius:14px}
body .shipping-billing-table .radio-wrapper > label{flex-wrap:wrap;align-items:flex-start;gap:8px;padding:13px 14px 13px 42px!important}
body .shipping-billing-table .radio-wrapper > label .payment-info{flex:0 0 100%}
body .shipping-billing-table .payment-logo{order:0;flex:0 0 auto;margin-right:auto}
body .shipping-billing-table .payment-shipping-price{order:1;margin-left:auto;align-self:center}
body .shipping-billing-table .radio-wrapper > label:before{left:14px;top:17px}
body .shipping-billing-table .radio-wrapper > label:after{left:19px;top:22px}
body .shipping-billing-table .payment-shipping-price{font-size:15px}
body .order-summary .order-summary-inner{padding:14px 16px;border-radius:14px}
body .sending-order .cart-content > .co-box,body .sending-order .cart-content > fieldset.co-box{padding:14px;border-radius:14px}
body .sending-order .co-box > h2,body .sending-order .co-box h2.header-billing{font-size:17.5px}
body .sending-order .helper{padding:12px 14px;font-size:13.5px}
body .advanced-order .h1{font-size:21px;padding-top:48px}
body .advanced-order .h1:before{width:38px;height:38px;margin-left:-19px;background-size:19px 19px}
body .advanced-order .advancedOrder__buttons{flex-direction:column-reverse;gap:10px}
body .advanced-order .advancedOrder__buttons .btn{width:100%;text-align:center}
body .advanced-order .advanced-order-suggestion{margin:26px 0 18px;font-size:18.5px}
}
