:root {
  --oc-commerce-action: #d93025;
  --oc-commerce-action-hover: #b5251d;
  --oc-commerce-border: #d9d6d2;
  --oc-commerce-text: #3b3b3b;
}

.oc-gdpr-contact-notice {
  margin: 0 0 1.25rem;
  padding: 0.85rem 1rem;
  border-left: 4px solid var(--oc-commerce-action);
  background: #f5f4f2;
  color: var(--oc-commerce-text);
  font-weight: 600;
}

/* Český obsah a vzhled jednoduchého upozornění IQIT Cookie Law. */
#iqitcookielaw {
  border-left: 4px solid #f05a22 !important;
  color: #f4f2ef !important;
  background: #3b3b3b !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .2);
}

#iqitcookielaw p {
  margin: 0 0 10px !important;
  color: #f4f2ef !important;
  line-height: 1.55;
}

#iqitcookielaw p a {
  color: #f58220 !important;
  font-weight: 700;
  text-decoration: underline !important;
}

#iqitcookielaw-accept {
  border-color: #d93025 !important;
  background: #d93025 !important;
  color: #fff !important;
  font-weight: 700;
}

#iqitcookielaw-accept:hover,
#iqitcookielaw-accept:focus-visible {
  border-color: #b5251d !important;
  background: #b5251d !important;
}

/* Specifické prvky šablony, které mají vlastní starou oranžovou. */
html body .cart-content .cart-content-btn a.btn.btn-primary,
html body .cart-buttons a.btn.btn-primary {
  border-color: var(--oc-commerce-action) !important;
  background: var(--oc-commerce-action) !important;
  color: #fff !important;
  box-shadow: none !important;
}

html body .cart-content .cart-content-btn a.btn.btn-primary:hover,
html body .cart-content .cart-content-btn a.btn.btn-primary:focus-visible,
html body .cart-buttons a.btn.btn-primary:hover,
html body .cart-buttons a.btn.btn-primary:focus-visible {
  border-color: var(--oc-commerce-action-hover) !important;
  background: var(--oc-commerce-action-hover) !important;
  color: #fff !important;
}

html body .oc-global-nav-products > a.nav-link,
html body .oc-global-nav-eshop > a.nav-link {
  color: #f58220 !important;
}

html body .oc-global-nav-eshop > a.nav-link {
  border: 2px solid #f05a22 !important;
  font-weight: 800 !important;
}

html body .oc-global-nav-item > a.nav-link:hover,
html body .oc-global-nav-item > a.nav-link:focus-visible,
html body .oc-global-nav-products > a.nav-link:hover,
html body .oc-global-nav-products > a.nav-link:focus-visible,
html body .oc-global-nav-eshop > a.nav-link:hover,
html body .oc-global-nav-eshop > a.nav-link:focus-visible {
  border-color: #f05a22 !important;
  color: #f58220 !important;
}

html body .oc-global-nav-item.oc-global-nav-eshop > a.nav-link,
html body .oc-global-nav-item.oc-global-nav-eshop > a.nav-link:visited {
  border: 1px solid #fff !important;
  background: #d44312 !important;
  color: #fff !important;
  font-size: 14px !important;
}

html body .oc-global-nav-item.oc-global-nav-eshop > a.nav-link:hover,
html body .oc-global-nav-item.oc-global-nav-eshop > a.nav-link:focus-visible {
  border-color: #fff !important;
  background: #b9360d !important;
  color: #fff !important;
}

/* Hlavní akce e-shopu mají jednu sytou červenooranžovou. */
#cart-toogle,
#search_widget form button[type="submit"],
.search-widget form button[type="submit"],
body.page-product .product-add-to-cart .add-to-cart,
body.page-product button.add-to-cart,
#blockcart-modal .cart-content-btn .btn-primary,
body#cart .checkout .btn-primary,
body#cart a.btn-primary,
body#checkout .btn-primary,
body#checkout .checkout-step .continue,
body#checkout .payment-confirmation button,
body#checkout button[type="submit"],
body#order-confirmation .btn-primary {
  border-color: var(--oc-commerce-action) !important;
  background: var(--oc-commerce-action) !important;
  color: #fff !important;
  box-shadow: none !important;
}

#cart-toogle:hover,
#cart-toogle:focus-visible,
#search_widget form button[type="submit"]:hover,
#search_widget form button[type="submit"]:focus-visible,
.search-widget form button[type="submit"]:hover,
.search-widget form button[type="submit"]:focus-visible,
body.page-product .product-add-to-cart .add-to-cart:hover,
body.page-product .product-add-to-cart .add-to-cart:focus-visible,
#blockcart-modal .cart-content-btn .btn-primary:hover,
#blockcart-modal .cart-content-btn .btn-primary:focus-visible,
body#cart .checkout .btn-primary:hover,
body#cart .checkout .btn-primary:focus-visible,
body#checkout .btn-primary:hover,
body#checkout .btn-primary:focus-visible,
body#checkout .checkout-step .continue:hover,
body#checkout .checkout-step .continue:focus-visible,
body#checkout .payment-confirmation button:hover,
body#checkout .payment-confirmation button:focus-visible,
body#checkout button[type="submit"]:hover,
body#checkout button[type="submit"]:focus-visible {
  border-color: var(--oc-commerce-action-hover) !important;
  background: var(--oc-commerce-action-hover) !important;
  color: #fff !important;
}

#cart-toogle *,
#search_widget form button[type="submit"] *,
.search-widget form button[type="submit"] *,
body.page-product .product-add-to-cart .add-to-cart *,
#blockcart-modal .cart-content-btn .btn-primary *,
body#cart .checkout .btn-primary *,
body#checkout .btn-primary *,
body#checkout .checkout-step .continue *,
body#checkout .payment-confirmation button *,
body#checkout button[type="submit"] * {
  color: #fff !important;
}

/* Návratové akce jsou bílé s barevným rámečkem. */
#blockcart-modal .cart-content-btn .btn-secondary,
body#cart a.btn-secondary,
.oc-checkout-back {
  display: inline-flex !important;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px 18px !important;
  border: 2px solid var(--oc-commerce-action) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--oc-commerce-action) !important;
  font-weight: 700;
  text-decoration: none !important;
  box-shadow: none !important;
}

#blockcart-modal .cart-content-btn .btn-secondary:hover,
#blockcart-modal .cart-content-btn .btn-secondary:focus-visible,
body#cart a.btn-secondary:hover,
body#cart a.btn-secondary:focus-visible,
.oc-checkout-back:hover,
.oc-checkout-back:focus-visible {
  border-color: var(--oc-commerce-action-hover) !important;
  background: #fff4f2 !important;
  color: var(--oc-commerce-action-hover) !important;
}

.oc-checkout-back-row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 0 20px;
  padding: 0 0 16px;
  border-bottom: 1px solid var(--oc-commerce-border);
}

.oc-checkout-continue-shopping {
  display: inline-flex !important;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px 18px !important;
  border: 2px solid var(--oc-commerce-action) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--oc-commerce-action) !important;
  font-weight: 700;
  text-decoration: none !important;
}

.oc-checkout-continue-shopping:hover,
.oc-checkout-continue-shopping:focus-visible {
  border-color: var(--oc-commerce-action-hover) !important;
  background: #fff4f2 !important;
  color: var(--oc-commerce-action-hover) !important;
}

/* The checkout theme has a more specific link-color rule; keep both navigation actions identical. */
body#checkout #main .checkout-step .content .oc-checkout-back-row > a.oc-checkout-continue-shopping {
  color: var(--oc-commerce-action) !important;
}

body#checkout #main .checkout-step .content .oc-checkout-back-row > a.oc-checkout-continue-shopping:hover,
body#checkout #main .checkout-step .content .oc-checkout-back-row > a.oc-checkout-continue-shopping:focus-visible {
  color: var(--oc-commerce-action-hover) !important;
}

body#checkout .cart-summary-products .oc-checkout-edit-prominent {
  display: inline-flex !important;
  align-items: center;
  gap: 5px;
  margin-left: 12px;
  min-height: 38px;
  padding: 8px 13px;
  border: 2px solid var(--oc-commerce-action) !important;
  border-radius: 0;
  background: #fff4f2 !important;
  color: var(--oc-commerce-action) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

/* Clear guidance for the two mandatory acknowledgements in the customer step. */
body#checkout #main .oc-checkout-required-consent {
  margin: 6px 0;
  padding: 9px 11px;
  border-left: 3px solid transparent;
  transition: border-color .15s ease, background-color .15s ease;
}

body#checkout #main .oc-checkout-required-consent.oc-checkout-consent-missing {
  border-left-color: var(--oc-commerce-action);
  background: #fff1ef;
}

body#checkout #main .oc-checkout-required-badge {
  display: inline-block;
  margin-left: 7px;
  padding: 2px 7px;
  border: 1px solid var(--oc-commerce-action);
  color: var(--oc-commerce-action);
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.25;
  text-transform: uppercase;
}

body#checkout #main .oc-checkout-consent-error {
  margin: 10px 0 12px;
  padding: 10px 12px;
  border-left: 4px solid var(--oc-commerce-action);
  background: #fff1ef;
  color: var(--oc-commerce-action) !important;
  font-weight: 700;
}

/* Present the native PrestaShop address workflow in customer language. */
body#checkout #main .oc-addresses-simplified .oc-checkout-address-heading {
  margin: 4px 0 16px;
  padding: 7px 0 7px 12px;
  border-left: 4px solid var(--oc-commerce-action);
  color: var(--oc-commerce-text) !important;
  font-size: 20px;
  font-weight: 700;
}

body#checkout #main .oc-addresses-simplified .address-alias,
body#checkout #main .oc-addresses-simplified .oc-hidden-address-option {
  display: none !important;
}

body#checkout #main .oc-addresses-simplified .oc-address-card-hidden {
  display: none !important;
}

body#checkout #main .oc-addresses-simplified .oc-address-picker-toggle,
body#checkout #main .oc-addresses-simplified a.oc-address-edit-prominent {
  display: inline-flex !important;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  margin: -6px 0 16px;
  padding: 8px 14px !important;
  border: 2px solid var(--oc-commerce-action) !important;
  background: #fff !important;
  color: var(--oc-commerce-action) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.25;
  text-decoration: none !important;
  cursor: pointer;
}

body#checkout #main .oc-addresses-simplified a.oc-address-edit-prominent {
  margin: 4px 0 0;
}

body#checkout #main .oc-addresses-simplified .oc-address-picker-toggle:hover,
body#checkout #main .oc-addresses-simplified .oc-address-picker-toggle:focus-visible,
body#checkout #main .oc-addresses-simplified a.oc-address-edit-prominent:hover,
body#checkout #main .oc-addresses-simplified a.oc-address-edit-prominent:focus-visible {
  border-color: var(--oc-commerce-action-hover) !important;
  background: #fff4f2 !important;
  color: var(--oc-commerce-action-hover) !important;
}

body#checkout #main .oc-addresses-simplified a.oc-different-delivery-link {
  display: inline-flex !important;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px 16px !important;
  border: 2px solid var(--oc-commerce-action) !important;
  background: #fff !important;
  color: var(--oc-commerce-action) !important;
  font-weight: 700;
  text-decoration: none !important;
}

body#checkout #main .oc-addresses-simplified a.oc-different-delivery-link:hover,
body#checkout #main .oc-addresses-simplified a.oc-different-delivery-link:focus-visible {
  border-color: var(--oc-commerce-action-hover) !important;
  background: #fff4f2 !important;
  color: var(--oc-commerce-action-hover) !important;
}

@media (max-width: 575.98px) {
  body#checkout #main .oc-addresses-simplified a.oc-different-delivery-link,
  body#checkout #main .oc-addresses-simplified .oc-address-picker-toggle,
  body#checkout #main .oc-addresses-simplified a.oc-address-edit-prominent {
    width: 100%;
  }
}

/* Read-only breakdown of metered cart lines; native price and quantity stay intact. */
.oc-metered-cart-breakdown {
  margin-top: 7px;
  color: #333 !important;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}

#blockcart-content .oc-metered-cart-breakdown,
.cart-summary-products .oc-metered-cart-breakdown {
  width: 100%;
  margin-top: 4px;
  color: #555 !important;
  font-size: 11px;
  font-weight: 600;
}

body#checkout .cart-summary-products .oc-checkout-edit-prominent:hover,
body#checkout .cart-summary-products .oc-checkout-edit-prominent:focus-visible {
  border-color: var(--oc-commerce-action-hover) !important;
  background: var(--oc-commerce-action) !important;
  color: #fff !important;
}

body#checkout .cart-summary-products .oc-checkout-edit-prominent .step-edit {
  color: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
}

/* Celá volná plocha karty vede na produkt. */
.product-miniature.oc-product-card-clickable {
  cursor: pointer;
}

/* Oblíbené a porovnání mají odlišné, snadno rozpoznatelné barvy. */
.btn-iqitwishlist-add,
.js-iqitwishlist-add,
.btn-iqitwishlist-add i,
.js-iqitwishlist-add i,
.btn-iqitwishlist-add svg,
.js-iqitwishlist-add svg {
  color: #d93025 !important;
  fill: currentColor !important;
}

.btn-iqitcompare-add,
.js-iqitcompare-add,
.btn-iqitcompare-add i,
.js-iqitcompare-add i,
.btn-iqitcompare-add svg,
.js-iqitcompare-add svg {
  color: #198754 !important;
  fill: currentColor !important;
}

.btn-iqitwishlist-add,
.js-iqitwishlist-add,
.btn-iqitcompare-add,
.js-iqitcompare-add {
  font-size: 18px !important;
}

/* Plovoucí porovnání: čitelnější název a větší náhledy vybraných produktů. */
#iqitcompare-floating-wrapper {
  font-size: 14px !important;
}

#iqitcompare-floating-wrapper img {
  width: 40px !important;
  height: 40px !important;
  margin-left: 6px !important;
  border: 1px solid var(--oc-commerce-border) !important;
  background: #fff;
  object-fit: cover;
}

/* V kartách zůstává pouze hlavní obrázek, bez výměny při najetí. */
.product-miniature .product-thumbnail img.product-image-secondary,
.product-miniature .product-thumbnail img.js-product-thumbnail-second,
.product-miniature .product-thumbnail > img:nth-of-type(n + 2),
.product-miniature .product-thumbnail > picture:nth-of-type(n + 2) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.product-miniature .product-thumbnail > img:first-of-type,
.product-miniature .product-thumbnail > picture:first-of-type img {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}

.product-miniature:hover .product-thumbnail > img:first-of-type,
.product-miniature:focus-within .product-thumbnail > img:first-of-type,
.product-miniature:hover .product-thumbnail > picture:first-of-type img,
.product-miniature:focus-within .product-thumbnail > picture:first-of-type img {
  opacity: 1 !important;
  transform: none !important;
}

/* Karty doporučených a souvisejících produktů potřebují vlastní prostor. */
body.page-product #main .products-grid .js-product-miniature-wrapper,
body#cart #main .products-grid .js-product-miniature-wrapper,
#blockcart-modal .products-grid .js-product-miniature-wrapper {
  box-sizing: border-box !important;
  padding: 7px !important;
}

body.page-product #main .products-grid .product-miniature,
body#cart #main .products-grid .product-miniature,
#blockcart-modal .products-grid .product-miniature {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  overflow: hidden;
  border: 1px solid var(--oc-commerce-border) !important;
  border-radius: 3px;
  background: #fff !important;
  box-shadow: 0 3px 10px rgba(59, 59, 59, .11);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

body.page-product #main .products-grid .product-miniature:hover,
body.page-product #main .products-grid .product-miniature:focus-within,
body#cart #main .products-grid .product-miniature:hover,
body#cart #main .products-grid .product-miniature:focus-within,
#blockcart-modal .products-grid .product-miniature:hover,
#blockcart-modal .products-grid .product-miniature:focus-within {
  border-color: #bdb8b3 !important;
  box-shadow: 0 7px 17px rgba(59, 59, 59, .16);
  transform: translateY(-2px);
}

body.page-product #main .products-grid .product-thumbnail,
body#cart #main .products-grid .product-thumbnail,
#blockcart-modal .products-grid .product-thumbnail {
  display: flex !important;
  align-items: center;
  justify-content: center;
  margin: 8px !important;
  overflow: hidden;
  background: #fff !important;
}

body.page-product #main .products-grid .product-description,
body#cart #main .products-grid .product-description,
#blockcart-modal .products-grid .product-description {
  padding-right: 12px !important;
  padding-left: 12px !important;
  background: #fff !important;
}

@media (max-width: 767px) {
  body.page-product #main .products-grid .js-product-miniature-wrapper,
  body#cart #main .products-grid .js-product-miniature-wrapper,
  #blockcart-modal .products-grid .js-product-miniature-wrapper {
    padding: 5px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.page-product #main .products-grid .product-miniature,
  body#cart #main .products-grid .product-miniature,
  #blockcart-modal .products-grid .product-miniature {
    transition: none;
  }
}
.oc-stock-count {
  background: #2e9d4d !important;
  color: #fff !important;
}

#product-availability.oc-production-stock {
  background: #2e9d4d !important;
  color: #fff !important;
}

.oc-production-contact {
  margin: 14px 0 20px;
}

.oc-production-contact p {
  margin: 0 0 10px;
  color: #595959;
  font-size: 14px;
  line-height: 1.5;
}

.oc-sold-out-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 14px 0 20px;
}

.oc-sold-out-action {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 11px 18px;
  border: 1px solid #c9c9c9;
  background: #fff;
  color: #e54411 !important;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none !important;
  transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.oc-sold-out-action:visited {
  color: #e54411 !important;
}

.oc-sold-out-action:hover,
.oc-sold-out-action:focus-visible {
  border-color: #e54411;
  background: #f8f8f8;
  color: #e54411 !important;
  transform: translateY(-1px);
}

@media (max-width: 767px) {
  .oc-sold-out-actions,
  .oc-sold-out-action,
  .oc-production-contact {
    width: 100%;
  }
}
.oc-contact-product-context {
  margin: 0 0 20px;
  padding: 14px 16px;
  border-left: 4px solid #e54411;
  background: #f5f3f1;
  color: #34373b;
  line-height: 1.55;
}

.oc-contact-product-context strong {
  font-weight: 700;
}

.oc-contact-product-context a {
  color: #d84612;
  font-weight: 700;
  text-decoration: underline;
}
