/* ============================================================================
   StopkoveFrezy.cz — Vlastní CSS (Webareal Uranium / uraniumred)
   ============================================================================
   Instance:  CZ https://www.stopkovefrezy.cz  →  /fotky101456/design_setup/css/user_defined.css
   Admin:     Design webu → Vlastní soubor CSS  (vložit CELÝ tento soubor)
   SK (.eu):  stejný obsah zvlášť do SK adminu (jiná fotky{ID} cesta)

   Brand:     docs/brand-guidelines/stopkove-frezy.md
   Platforma: docs/platforms/webareal-uranium-stopkovefrezy.md
   HTML HP:   docs/content-pages/stopkovefrezy/cz/homepage-usp.html

   Jak číst / editovat (AI i člověk):
   - Sekce mají kotvy SF-00 … SF-40 — hledej „SF-35“ atd.
   - Neměň pořadí sekcí bez důvodu; detaily produktu (SF-10) a HP order (SF-20)
     jsou křehké vůči CSS šablony (order: initial !important).
   - Tokeny měň jen v SF-00; zbytek používá var(--sf-*).

   Obsah:
   SF-00  Design tokens + fonty + ikony
   SF-01  Globální utility / skrytí
   SF-02  Levé menu — aktivní kategorie (bez bílého pozadí)
   SF-05  Horní article menu (#new_top_menu)
   SF-10  Detail produktu — cenový box
          (+ ceníková s DPH přes common-price-vat.js)
          (+ Cena na dotaz přes cena-na-dotaz.js)
   SF-15  Detail produktu — layout, popisek, parametry (sf-pd-*)
   SF-20  Homepage — pořadí bloků (flex order)
   SF-30  Homepage — sekce (nadpisy, bannery, USP odkazy)
   SF-35  Produktové náhledy — sjednocení .product + .product3
          (+ Cena na dotaz na kartách)
   SF-40  Blog
   SF-50  Mobilní menu (≤767px)

   HTML vzor popisku: product-description-template.html
   ============================================================================ */


/* ==========================================================================
   SF-00 — Design tokens + fonty + ikony
   Brand: purple #8F338B · gray #E7E4E7 · text #333 / #666 · Poppins
   ========================================================================== */

@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css");
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap");

:root {
  --sf-purple: #8F338B;
  --sf-gray: #E7E4E7;
  --sf-muted: #666666;
  --sf-text: #333333;
  --sf-hero: #F8F7F7;
  --sf-white: #FFFFFF;
  --sf-sale: #D24950;
  --sf-radius: 10px;
  --sf-radius-sm: 6px;
  --sf-font: Poppins, Arial, Helvetica, sans-serif;
}

html body,
html body input,
html body button,
html body select,
html body textarea {
  font-family: var(--sf-font);
}


/* ==========================================================================
   SF-01 — Globální utility / skrytí
   ========================================================================== */

/* „Zvolte kategorii“ nad levým menu — duplicitní vůči menu samotnému */
.title_left_eshop {
  display: none !important;
}


/* ==========================================================================
   SF-02 — Levé menu — aktivní / otevřená kategorie
   Uranium/jave dává .leftmenu2Act / .leftmenuAct bílé (nebo tmavé) pozadí.
   Necháme jen fialový text z admin barev, bez výplně řádku.
   ========================================================================== */

html body #page #left-box .leftmenu2 li.leftmenu2Act,
html body #page #left-box .leftmenu2 ul ul li.leftmenu2Act,
html body #page #left-box .leftmenu li.leftmenuAct,
html body #page #left-box li.leftmenuAct,
html body #page #left-box .leftmenu2 li.leftmenu2Act > a,
html body #page #left-box .leftmenu li.leftmenuAct > a {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}


/* ==========================================================================
   SF-05 — Horní article menu (#new_top_menu)
   Uranium DOM: #new_top_menu > #new_template_row > ul > li (+ vnořené ul)
   Šablonové styly cílí na staré #main-menu → vlastní CSS nutné.
   Jednoduchý pruh jako dřív + typografie / hover / dropdown + oddělovače.
   Mobil: schovat (ResponsiveMenu / hamburger).
   ========================================================================== */

html body #page .myheader #new_top_menu {
  order: 2 !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--sf-gray) !important;
  box-sizing: border-box !important;
  z-index: 40 !important;
}

/* Stejný kontejner jako #aroundpage / .navigate_bar (Uranium shared rule) */
html body #page .myheader #new_top_menu #new_template_row {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 0.35rem !important;
  width: 100% !important;
  max-width: 95% !important;
  margin: 0 auto !important;
  padding: 0 0.95rem !important;
  box-sizing: border-box !important;
}

/* Každá položka = vlastní <ul> — šířka podle obsahu, doleva */
html body #page .myheader #new_top_menu #new_template_row > ul {
  display: flex !important;
  flex: 0 0 auto !important;
  position: relative !important;
  float: none !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  font-size: inherit !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

html body #page .myheader #new_top_menu #new_template_row > ul > li {
  display: flex !important;
  flex: 0 0 auto !important;
  position: relative !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* —— Home (domeček) —— */
html body #page .myheader #new_top_menu .eshop-menu-home > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-height: 2.6rem !important;
  margin: 0 !important;
  padding: 0.5rem 0.85rem !important;
  color: var(--sf-text) !important;
  font-size: 0 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  background: transparent !important;
  border: none !important;
  box-sizing: border-box !important;
  transition: color 0.15s ease !important;
}

html body #page .myheader #new_top_menu .eshop-menu-home > a::before {
  content: "\F425" !important; /* bi-house */
  font-family: "bootstrap-icons" !important;
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  color: inherit !important;
  background: none !important;
  speak: none !important;
}

html body #page .myheader #new_top_menu .eshop-menu-home > a:hover,
html body #page .myheader #new_top_menu .eshop-menu-home > a:focus-visible {
  color: var(--sf-purple) !important;
  background: transparent !important;
  outline: none !important;
}

/* —— Textové položky —— */
html body #page .myheader #new_top_menu #new_template_row > ul > li:not(.eshop-menu-home) > a.top_parent,
html body #page .myheader #new_top_menu #new_template_row > ul > li:not(.eshop-menu-home) > a.top_parent_act {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.35rem !important;
  width: auto !important;
  min-height: 2.6rem !important;
  margin: 0 !important;
  padding: 0.55rem 1rem !important;
  color: var(--sf-text) !important;
  font-family: var(--sf-font) !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.01em !important;
  text-decoration: none !important;
  text-transform: none !important;
  text-align: left !important;
  white-space: nowrap !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-sizing: border-box !important;
  transition: color 0.15s ease !important;
}

html body #page .myheader #new_top_menu #new_template_row > ul > li:not(.eshop-menu-home) > a.top_parent:hover,
html body #page .myheader #new_top_menu #new_template_row > ul > li:not(.eshop-menu-home) > a.top_parent:focus-visible,
html body #page .myheader #new_top_menu #new_template_row > ul > li:not(.eshop-menu-home) > a.top_parent_act,
html body #page .myheader #new_top_menu #new_template_row > ul > li:not(.eshop-menu-home):hover > a.top_parent,
html body #page .myheader #new_top_menu #new_template_row > ul > li:not(.eshop-menu-home):focus-within > a.top_parent {
  color: var(--sf-purple) !important;
  background: transparent !important;
  outline: none !important;
}

/* Chevron u položek s podmenu */
html body #page .myheader #new_top_menu #new_template_row > ul > li:has(> ul) > a.top_parent::after,
html body #page .myheader #new_top_menu #new_template_row > ul > li:has(> ul) > a.top_parent_act::after {
  content: "\F282" !important; /* bi-chevron-down */
  font-family: "bootstrap-icons" !important;
  font-size: 0.65rem !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  opacity: 0.55 !important;
  speak: none !important;
}

/* Dropdown */
html body #page .myheader #new_top_menu #new_template_row > ul > li > ul {
  display: none !important;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  transform: none !important;
  z-index: 200 !important;
  min-width: 14rem !important;
  margin: 0 !important;
  padding: 0.35rem 0 !important;
  list-style: none !important;
  background: var(--sf-white) !important;
  border: 1px solid var(--sf-gray) !important;
  border-radius: var(--sf-radius-sm) !important;
  box-shadow: 0 8px 24px rgba(51, 51, 51, 0.1) !important;
  box-sizing: border-box !important;
}

html body #page .myheader #new_top_menu #new_template_row > ul > li:hover > ul,
html body #page .myheader #new_top_menu #new_template_row > ul > li:focus-within > ul {
  display: block !important;
}

html body #page .myheader #new_top_menu #new_template_row > ul > li > ul > li {
  display: block !important;
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

html body #page .myheader #new_top_menu #new_template_row > ul > li > ul > li > a {
  display: flex !important;
  align-items: center !important;
  gap: 0.55rem !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0.55rem 1rem !important;
  color: var(--sf-text) !important;
  font-family: var(--sf-font) !important;
  font-size: 0.88rem !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  text-align: left !important;
  white-space: nowrap !important;
  background: transparent !important;
  border: none !important;
  box-sizing: border-box !important;
  transition: color 0.15s ease, background-color 0.15s ease !important;
}

html body #page .myheader #new_top_menu #new_template_row > ul > li > ul > li > a:hover,
html body #page .myheader #new_top_menu #new_template_row > ul > li > ul > li > a:focus-visible {
  color: var(--sf-purple) !important;
  background: var(--sf-hero) !important;
  outline: none !important;
}

html body #page .myheader #new_top_menu #new_template_row .icons_menu_left_img {
  display: inline-block !important;
  width: 1.25rem !important;
  height: 1.25rem !important;
  margin: 0 !important;
  object-fit: contain !important;
  flex-shrink: 0 !important;
  vertical-align: middle !important;
}

html body #page .myheader #new_top_menu table {
  display: none !important;
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
  html body #page .myheader #new_top_menu #new_template_row {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  html body #page .myheader #new_top_menu #new_template_row > ul > li:not(.eshop-menu-home) > a.top_parent,
  html body #page .myheader #new_top_menu #new_template_row > ul > li:not(.eshop-menu-home) > a.top_parent_act {
    padding: 0.5rem 0.85rem !important;
    font-size: 0.88rem !important;
  }
}

@media only screen and (max-width: 767px) {
  html body #page .myheader #new_top_menu {
    display: none !important;
  }
}


/* ==========================================================================
   SF-10 — Detail produktu — cenový box (v3)
   Selektor: .page-product-detail .detail-info table.cart
   Hero = cena bez DPH + qty + Koupit; meta řádky 2-sloupec.
   Ceníková s DPH: Webareal neumí → common-price-vat.js + .sf-common-price-vat
   ========================================================================== */

.page-product-detail .detail-info table.cart {
  --sf-pad: 1rem;
  --sf-label: 9.5rem;

  width: 100% !important;
  max-width: 100% !important;
  margin: 0.75rem 0 0 !important;
  border: 1px solid var(--sf-gray) !important;
  border-radius: 8px !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  background: var(--sf-white) !important;
  box-shadow: none !important;
  text-align: left !important;
}

.page-product-detail .detail-info table.cart colgroup,
.page-product-detail .detail-info table.cart col {
  display: none !important;
}

.page-product-detail .detail-info table.cart > tbody {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}

.page-product-detail .detail-info table.cart > tbody > tr {
  display: grid !important;
  grid-template-columns: var(--sf-label) minmax(0, 1fr) !important;
  column-gap: 0.75rem !important;
  align-items: baseline !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0.5rem var(--sf-pad) !important;
  background: var(--sf-white) !important;
  border: none !important;
  box-sizing: border-box !important;
  text-align: left !important;
}

.page-product-detail .detail-info table.cart > tbody > tr > td {
  display: block !important;
  float: none !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  text-align: left !important;
  vertical-align: baseline !important;
  line-height: 1.4 !important;
  box-sizing: border-box !important;
}

.page-product-detail .detail-info table.cart .fleft,
.page-product-detail .detail-info table.cart .fright {
  float: none !important;
}

.page-product-detail .detail-info table.cart font[size="1"] {
  display: inline !important;
  white-space: nowrap !important;
  font-size: 0.8em !important;
  font-weight: 400 !important;
  color: var(--sf-muted) !important;
  vertical-align: baseline !important;
}

/* Pořadí řádků */
.page-product-detail .detail-info tr.product-total-vat { order: 1 !important; }
.page-product-detail .detail-info tr.product-cart-info { order: 2 !important; }
.page-product-detail .detail-info tr.product-common-price { order: 3 !important; }
.page-product-detail .detail-info tr.sf-common-price-vat { order: 4 !important; }
.page-product-detail .detail-info tr.total { order: 5 !important; }
.page-product-detail .detail-info tr.product-stock { order: 6 !important; }
.page-product-detail .detail-info tr.stock-line { order: 7 !important; }
.page-product-detail .detail-info tr.product-number { order: 8 !important; }
.page-product-detail .detail-info tr.discount-points-earned { order: 9 !important; }
.page-product-detail .detail-info tr.before_variants { order: 10 !important; }

/* --- Hero: cena bez DPH + koupit --- */
.page-product-detail .detail-info table.cart > tbody > tr.product-total-vat,
.page-product-detail .detail-info table.cart > tbody > tr.product-cart-info {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  grid-template-columns: none !important;
  background: var(--sf-hero) !important;
  text-align: left !important;
}

.page-product-detail .detail-info table.cart > tbody > tr.product-total-vat {
  gap: 0.2rem !important;
  padding: 1.1rem var(--sf-pad) 0.35rem !important;
}

.page-product-detail .detail-info table.cart > tbody > tr.product-total-vat > td {
  width: 100% !important;
  max-width: 100% !important;
}

.page-product-detail .detail-info tr.product-total-vat .product-total-text,
.page-product-detail .detail-info tr.product-total-vat .name-price-novat {
  font-size: 0 !important;
  color: transparent !important;
  line-height: 0 !important;
}

.page-product-detail .detail-info tr.product-total-vat .product-total-text::before,
.page-product-detail .detail-info tr.product-total-vat .name-price-novat::before {
  content: "Cena bez DPH" !important;
  display: block !important;
  margin: 0 0 0.2rem !important;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: var(--sf-muted) !important;
  line-height: 1.3 !important;
  text-align: left !important;
}

.page-product-detail .detail-info tr.product-total-vat .product-total-value,
.page-product-detail .detail-info tr.product-total-vat .price-novat,
.page-product-detail .detail-info tr.product-total-vat .product-total-value span {
  display: inline !important;
  float: none !important;
  margin: 0 !important;
  font-size: 1.75rem !important;
  font-weight: 700 !important;
  color: var(--sf-purple) !important;
  letter-spacing: -0.02em !important;
  line-height: 1.2 !important;
  text-align: left !important;
  white-space: normal !important;
}

.page-product-detail .detail-info tr.product-total-vat font[size="1"] {
  margin-left: 0.35rem !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  color: var(--sf-purple) !important;
  opacity: 0.72 !important;
}

.page-product-detail .detail-info table.cart > tbody > tr.product-cart-info {
  padding: 0.65rem var(--sf-pad) 1.15rem !important;
  border-bottom: 1px solid var(--sf-gray) !important;
}

.page-product-detail .detail-info table.cart > tbody > tr.product-cart-info > td {
  width: 100% !important;
  max-width: 100% !important;
}

.page-product-detail .detail-info .product-cart-info-text {
  display: none !important;
}

.page-product-detail .detail-info .product-cart-info-value {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.5rem !important;
  width: 100% !important;
  float: none !important;
  text-align: left !important;
}

.page-product-detail .detail-info .product-cart-info-value br,
.page-product-detail .detail-info .product-cart-info-value input[type="hidden"] {
  display: none !important;
}

.page-product-detail .detail-info .product-cart-info-value .count {
  flex: 0 0 auto !important;
  margin: 0 !important;
  color: var(--sf-muted) !important;
  font-size: 0.9rem !important;
  white-space: nowrap !important;
}

/* Qty spinner — Uranium: [-] input [+] přes absolute */
.page-product-detail .detail-info .input-spinner-group {
  position: relative !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 110px !important;
  max-width: 110px !important;
  height: 2.5rem !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--sf-gray) !important;
  border-radius: 4px !important;
  background: var(--sf-white) !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
  overflow: visible !important;
}

.page-product-detail .detail-info .input-spinner-group input,
.page-product-detail .detail-info .quantity-input,
.page-product-detail .detail-info .spin-input {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 1.75rem !important;
  border: none !important;
  border-radius: 4px !important;
  background: transparent !important;
  box-sizing: border-box !important;
  text-align: center !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: var(--sf-text) !important;
  appearance: textfield !important;
  -moz-appearance: textfield !important;
}

.page-product-detail .detail-info .input-spinner-group input::-webkit-outer-spin-button,
.page-product-detail .detail-info .input-spinner-group input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

.page-product-detail .detail-info .input-spinner-group span.input-spinner-btn {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: block !important;
  z-index: 2 !important;
  line-height: 1 !important;
}

.page-product-detail .detail-info .input-spinner-group span.input-spinner-btn.btn-l {
  left: 0 !important;
  right: auto !important;
}

.page-product-detail .detail-info .input-spinner-group span.input-spinner-btn.btn-r {
  right: 0 !important;
  left: auto !important;
}

.page-product-detail .detail-info .input-spinner-group button,
.page-product-detail .detail-info .input-spinner-group .spin-dec,
.page-product-detail .detail-info .input-spinner-group .spin-inc {
  display: block !important;
  min-width: 0 !important;
  width: 1.75rem !important;
  height: 2.35rem !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--sf-text) !important;
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  line-height: 2.35rem !important;
  cursor: pointer !important;
}

.page-product-detail .detail-info .input-spinner-group .spin-dec:hover,
.page-product-detail .detail-info .input-spinner-group .spin-inc:hover {
  color: var(--sf-purple) !important;
}

.page-product-detail .detail-info #buy_btn,
.page-product-detail .detail-info .product-cart-btn {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 7.5rem !important;
  max-width: none !important;
  height: 2.5rem !important;
  margin: 0 0 0 auto !important;
  padding: 0 1.25rem !important;
  background: var(--sf-purple) !important;
  border: 1px solid var(--sf-purple) !important;
  border-radius: 4px !important;
  color: var(--sf-white) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  text-align: center !important;
}

.page-product-detail .detail-info #buy_btn:hover,
.page-product-detail .detail-info .product-cart-btn:hover {
  filter: brightness(1.08);
}

/* --- Cena na dotaz (detail) — vkládá cena-na-dotaz.js --- */
.page-product-detail .detail-info .sf-inquiry-detail-box,
.page-product-detail .detail-info .detail-inquiry-container {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.75rem 1rem !important;
  width: 100% !important;
  margin: 0.75rem 0 0 !important;
  padding: 1rem !important;
  box-sizing: border-box !important;
  background: var(--sf-white) !important;
  border: 1px solid var(--sf-gray) !important;
  border-radius: 8px !important;
}

.page-product-detail .detail-info .sf-inquiry-detail-text,
.page-product-detail .detail-info .detail-inquiry-text {
  color: var(--sf-purple) !important;
  font-family: var(--sf-font) !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

.page-product-detail .detail-info .sf-inquiry-detail-btn,
.page-product-detail .detail-info .detail-inquiry-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 2.5rem !important;
  padding: 0 1.25rem !important;
  background: var(--sf-purple) !important;
  border: 1px solid var(--sf-purple) !important;
  border-radius: 4px !important;
  color: var(--sf-white) !important;
  font-family: var(--sf-font) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

.page-product-detail .detail-info .sf-inquiry-detail-btn:hover,
.page-product-detail .detail-info .detail-inquiry-btn:hover {
  filter: brightness(1.08);
  color: var(--sf-white) !important;
  text-decoration: none !important;
}

/* --- Doplňkové ceny + meta --- */
.page-product-detail .detail-info tr.product-common-price {
  padding-top: 0.9rem !important;
}

/* Ceníková s DPH — řádek vkládá common-price-vat.js (Webareal ho neumí) */
.page-product-detail .detail-info tr.sf-common-price-vat {
  padding-top: 0.15rem !important;
  padding-bottom: 0.35rem !important;
}

.page-product-detail .detail-info tr.discount-points-earned {
  padding-bottom: 0.95rem !important;
}

.page-product-detail .detail-info tr.product-common-price > td:first-child,
.page-product-detail .detail-info tr.sf-common-price-vat > td:first-child,
.page-product-detail .detail-info tr.total > td:first-child,
.page-product-detail .detail-info tr.product-stock > td:first-child,
.page-product-detail .detail-info tr.stock-line > td:first-child,
.page-product-detail .detail-info tr.product-number > td:first-child,
.page-product-detail .detail-info tr.discount-points-earned > td:first-child,
.page-product-detail .detail-info tr.before_variants > td:first-child {
  color: var(--sf-muted) !important;
  font-size: 0.84rem !important;
  font-weight: 400 !important;
  text-decoration: none !important;
}

.page-product-detail .detail-info tr.product-common-price > td:last-child,
.page-product-detail .detail-info tr.sf-common-price-vat > td:last-child,
.page-product-detail .detail-info tr.total > td:last-child,
.page-product-detail .detail-info tr.product-stock > td:last-child,
.page-product-detail .detail-info tr.stock-line > td:last-child,
.page-product-detail .detail-info tr.product-number > td:last-child,
.page-product-detail .detail-info tr.discount-points-earned > td:last-child,
.page-product-detail .detail-info tr.before_variants > td:last-child {
  color: var(--sf-text) !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
}

.page-product-detail .detail-info tr.product-common-price .product-common-price-text,
.page-product-detail .detail-info tr.sf-common-price-vat .sf-common-price-vat-text {
  text-decoration: none !important;
}

.page-product-detail .detail-info tr.product-common-price .product-common-price-value,
.page-product-detail .detail-info tr.product-common-price .product-common-price-value span,
.page-product-detail .detail-info tr.sf-common-price-vat .sf-common-price-vat-value,
.page-product-detail .detail-info tr.sf-common-price-vat .sf-common-price-vat-value span {
  color: var(--sf-muted) !important;
  font-weight: 400 !important;
  text-decoration: line-through !important;
}

.page-product-detail .detail-info tr.sf-common-price-vat font[size="1"] {
  text-decoration: line-through !important;
  color: var(--sf-muted) !important;
}

.page-product-detail .detail-info tr.total,
.page-product-detail .detail-info tr.total .prices,
.page-product-detail .detail-info tr.total .price-desc,
.page-product-detail .detail-info tr.total .price-desc.left,
.page-product-detail .detail-info tr.total .price-vat,
.page-product-detail .detail-info tr.total .price-value,
.page-product-detail .detail-info tr.total .price-value.def_color,
.page-product-detail .detail-info tr.total .price-value.def_color > span {
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: var(--sf-text) !important;
  background: transparent !important;
  text-align: left !important;
}

.page-product-detail .detail-info tr.total .prices,
.page-product-detail .detail-info tr.total .prices > div {
  display: block !important;
  width: 100% !important;
  text-align: left !important;
}

.page-product-detail .detail-info tr.total {
  padding-bottom: 0.75rem !important;
  border-bottom: 1px solid var(--sf-gray) !important;
}

.page-product-detail .detail-info tr.product-stock {
  padding-top: 0.85rem !important;
}

.page-product-detail .detail-info tr.product-stock .product-stock-value,
.page-product-detail .detail-info tr.product-stock .product-stock-value span,
.page-product-detail .detail-info tr.stock-line .stock-text,
.page-product-detail .detail-info tr.product-number span,
.page-product-detail .detail-info tr.discount-points-earned span {
  color: var(--sf-text) !important;
  font-weight: 500 !important;
}

/* Fallback bez řádku „bez DPH“ */
.page-product-detail .detail-info table.cart:not(:has(tr.product-total-vat)) tr.total {
  order: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0.2rem !important;
  padding: 1.1rem var(--sf-pad) 0.35rem !important;
  background: var(--sf-hero) !important;
  border-bottom: none !important;
}

.page-product-detail .detail-info table.cart:not(:has(tr.product-total-vat)) tr.total .price-value,
.page-product-detail .detail-info table.cart:not(:has(tr.product-total-vat)) tr.total .price-vat {
  font-size: 1.75rem !important;
  font-weight: 700 !important;
  color: var(--sf-purple) !important;
}

.page-product-detail .detail-info table.cart:not(:has(tr.product-total-vat)) tr.product-cart-info {
  order: 2 !important;
}

.page-product-detail .detail-info .wishlist-button-container {
  margin-bottom: 0.35rem !important;
}

@media (max-width: 900px) {
  .page-product-detail .detail-info table.cart {
    --sf-label: 8.25rem;
    --sf-pad: 0.9rem;
  }

  .page-product-detail .detail-info tr.product-total-vat .product-total-value,
  .page-product-detail .detail-info tr.product-total-vat .price-novat,
  .page-product-detail .detail-info tr.product-total-vat .product-total-value span {
    font-size: 1.55rem !important;
  }
}

@media (max-width: 560px) {
  .page-product-detail .detail-info table.cart {
    --sf-pad: 0.85rem;
    border-radius: 6px !important;
  }

  .page-product-detail .detail-info tr.product-common-price,
  .page-product-detail .detail-info tr.sf-common-price-vat,
  .page-product-detail .detail-info tr.total,
  .page-product-detail .detail-info tr.product-stock,
  .page-product-detail .detail-info tr.stock-line,
  .page-product-detail .detail-info tr.product-number,
  .page-product-detail .detail-info tr.discount-points-earned,
  .page-product-detail .detail-info tr.before_variants {
    grid-template-columns: 1fr !important;
    row-gap: 0.15rem !important;
    padding-top: 0.55rem !important;
    padding-bottom: 0.55rem !important;
  }

  .page-product-detail .detail-info tr.product-common-price {
    padding-top: 0.85rem !important;
  }

  .page-product-detail .detail-info tr.total {
    padding-bottom: 0.75rem !important;
  }

  .page-product-detail .detail-info tr.product-stock {
    padding-top: 0.75rem !important;
  }

  .page-product-detail .detail-info tr.discount-points-earned {
    padding-bottom: 0.9rem !important;
  }

  .page-product-detail .detail-info tr.product-total-vat .product-total-value,
  .page-product-detail .detail-info tr.product-total-vat .price-novat,
  .page-product-detail .detail-info tr.product-total-vat .product-total-value span {
    font-size: 1.4rem !important;
  }

  .page-product-detail .detail-info tr.product-total-vat font[size="1"] {
    display: block !important;
    margin: 0.2rem 0 0 !important;
    font-size: 0.85rem !important;
  }

  .page-product-detail .detail-info .product-cart-info-value {
    flex-wrap: wrap !important;
    gap: 0.65rem !important;
  }

  .page-product-detail .detail-info #buy_btn,
  .page-product-detail .detail-info .product-cart-btn {
    flex: 1 1 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    height: 2.75rem !important;
  }
}


/* ==========================================================================
   SF-20 — Homepage — pořadí bloků
   Musí přebít: body.home #incenterpage > :not(...) { order: initial !important; }
   (wa_script/js/styles.css) → proto html body.home.layout3 #centerpage #incenterpage + !important.

   Pořadí:
   1 Slider · 2 Kategorie · 3 Kredity banner · 4 USP · 5 Doporučujeme
   6 Novinka · 7 Vítejte
   Mirror: homepage-order.css (stejná pravidla, pro dílčí editaci)
   ========================================================================== */

html body.home.layout3 #centerpage #incenterpage {
  display: flex !important;
  flex-direction: column !important;
  gap: 0;
}

html body.home.layout3 #centerpage #incenterpage > .page-slider {
  order: 1 !important;
}

html body.home.layout3 #centerpage #incenterpage > .cat-highlights-container {
  order: 2 !important;
  margin-top: 16px !important;
}

html body.home.layout3 #centerpage #incenterpage > .page-banner-container {
  order: 3 !important;
  margin-top: 12px !important;
}

html body.home.layout3 #centerpage #incenterpage > .article-content {
  order: 4 !important;
  margin-top: 8px !important;
}

html body.home.layout3 #centerpage #incenterpage > .article-content:has(.sf-hp-usp) {
  order: 4 !important;
  margin-top: 8px !important;
}

html body.home.layout3 #centerpage #incenterpage > .products_wrap {
  order: 5 !important;
  margin-top: 12px !important;
}

html body.home.layout3 #centerpage #incenterpage > .action-box {
  order: 6 !important;
  margin-top: 8px !important;
}

html body.home.layout3 #centerpage #incenterpage > .article-content ~ .article-content,
html body.home.layout3 #centerpage #incenterpage > .article-content:has(.sf-hp-welcome) {
  order: 7 !important;
  margin-top: 16px !important;
}

html body.home.layout3 #centerpage #incenterpage > .article-content:has(.sf-hp-welcome):has(.sf-hp-usp) {
  order: 4 !important;
}

html body.home.layout3 #centerpage #incenterpage > .break {
  display: none !important;
}

html body.home.layout3 #centerpage #incenterpage > script,
html body.home.layout3 #centerpage #incenterpage > style {
  order: 99 !important;
}


/* ==========================================================================
   SF-30 — Homepage — sekce (nadpisy, bannery, USP odkazy)
   Karty produktů → SF-35
   ========================================================================== */

/* --- Společné nadpisy sekcí (Doporučujeme, Novinka, levý sloupec) --- */
html body.home #incenterpage .products-title-homepage,
html body.home #incenterpage .action-box > .action-box-title,
html body #left3 .action-box > .action-box-title,
html body #right3 .action-box > .action-box-title {
  margin: 0 0 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  color: var(--sf-text) !important;
  font-family: var(--sf-font) !important;
  font-size: 1.35rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
}

html body #left3 .action-box > .action-box-title,
html body #right3 .action-box > .action-box-title {
  font-size: 1.05rem !important;
  margin-bottom: 10px !important;
}

/* --- Kategorie highlight --- */
html body.home .cat-highlights-container .cat-highlights-box {
  border: 1px solid var(--sf-gray) !important;
  border-radius: var(--sf-radius) !important;
  overflow: hidden !important;
  background: var(--sf-white) !important;
  box-sizing: border-box !important;
}

html body.home .cat-highlights-container .highlighted-cat-name a {
  color: var(--sf-text) !important;
  font-weight: 700 !important;
  font-size: 1.15rem !important;
  text-decoration: none !important;
}

html body.home .cat-highlights-container .highlighted-cat-link a {
  color: var(--sf-purple) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

html body.home .cat-highlights-container .highlighted-cat-link a:hover {
  text-decoration: underline !important;
}

/* --- Banner kredity --- */
html body.home #incenterpage .page-banner-container .page-banner,
html body.home #incenterpage .page-banner-image {
  border-radius: var(--sf-radius) !important;
  overflow: hidden !important;
}

html body.home #incenterpage .page-banner-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

/* --- Odkazy ve středovém obsahu / článcích --- */
html body #incenterpage .article-content a,
html body #incenterpage .sf-hp-usp a,
html body #incenterpage .sf-hp-welcome a {
  color: var(--sf-purple);
}

html body #incenterpage .article-content a:hover,
html body #incenterpage .sf-hp-usp a:hover,
html body #incenterpage .sf-hp-welcome a:hover {
  text-decoration: underline;
}

/* --- Box Novinka na HP --- */
html body.home #incenterpage > .action-box.box_news {
  padding: 4px 0 8px !important;
  border: none !important;
  background: transparent !important;
}

/* --- Slider --- */
html body.home #incenterpage > .page-slider {
  border-radius: var(--sf-radius) !important;
  overflow: hidden !important;
}

html body.home #incenterpage .page-slider-image {
  border-radius: 0 !important;
}


/* ==========================================================================
   SF-35 — Produktové náhledy (.product + .product3) — sjednocení
   Kde: kategorie, Doporučujeme, Novinka, Akční (levý sloupec), related.
   Uranium háčky:
   - viditelný rámeček u .product = .productBody
   - .home .product3 .product3PriceBox .buy_btn { display:none } → musíme přebít
   - ceníková: .product často bez <s>, .product3 se <s>
   ========================================================================== */

/* --- Shell --- */
html body #page .product {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body #page .product .productBody,
html body #page .product3 {
  border: 1px solid var(--sf-gray) !important;
  border-radius: var(--sf-radius) !important;
  background: var(--sf-white) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  text-align: left !important;
}

html body #page .product .productBody {
  margin: 0 !important;
  padding: 12px !important;
}

html body #page .product3 {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  float: none !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 0 12px !important;
  padding: 12px !important;
}

html body #page .product:hover .productBody,
html body #page .product3:hover,
html body #page .product3.product3Act {
  border-color: #d4cfd4 !important;
}

html body #page .product3 .product3ImageBox,
html body #page .product3 .product3Title {
  display: block !important;
  float: none !important;
  width: 100% !important;
  text-align: left !important;
}

html body #page .product3 .clear {
  display: none !important;
}

html body #page .product3 .product3PriceBox {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  text-align: left !important;
}

/* --- Obrázky — vždy čtverec (aspect-ratio), object-fit: contain ---
   Přepisuje width/height z HTML (width="80" atd.) i Uranium min-height 270px.
   Nahrazuje závislost na img-square.js (ten bere jen .img_box, ne product3). */
html body #page .product .img_box,
html body #page .product3 .product3ImageBox,
html body #page .action-box .product3ImageBox,
html body #page .products_wrap.full .product .img_box {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 0 10px !important;
  padding: 8px !important;
  border: none !important;
  border-bottom: 1px solid var(--sf-gray) !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  text-align: center !important;
  background: var(--sf-white) !important;
}

html body #page .product .img_box a,
html body #page .product3 .product3ImageBox a,
html body #page .action-box .product3ImageBox a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
}

html body #page .product .img_box img,
html body #page .product3 .product3ImageBox img,
html body #page .action-box .product3ImageBox img,
html body #page .products_wrap.full .product .img_box a img,
html body #page .action-box .product3ImageBox a img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Prázdný spacer obrázek šablony — nenechat roztahovat box */
html body #page .product .img_box img[src*="empty.gif"],
html body #page .product .img_box img[alt="empty"] {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* Levý / pravý sloupec — stejný čtverec, karta na 100 % šířky sloupce */
html body #left3 .product3,
html body #right3 .product3 {
  padding: 10px !important;
  margin: 0 0 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

html body #left3 .product3 .product3ImageBox,
html body #right3 .product3 .product3ImageBox {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 6px !important;
  margin-bottom: 8px !important;
}

html body #left3 .product3 .product3ImageBox a,
html body #right3 .product3 .product3ImageBox a {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}

html body #left3 .product3 .product3ImageBox img,
html body #right3 .product3 .product3ImageBox img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* --- Titulky — celý název (bez line-clamp; long params se zalamují) --- */
html body #page .productTitle,
html body #page .product3Title {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  text-align: left !important;
}

html body #page .productTitleContent,
html body #page .product3TitleContent {
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  padding: 0 !important;
}

html body #page .productTitle a,
html body #page .product3TitleContent > a,
html body #page .product3Title .product3TitleContent > a,
html body #page .productTitle a.product-box-link,
html body #page .product3TitleContent > a.product-box-link {
  display: block !important;
  overflow: visible !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  hyphens: auto !important;
  text-overflow: clip !important;
  -webkit-line-clamp: none !important;
  line-clamp: none !important;
  -webkit-box-orient: unset !important;
  color: var(--sf-text) !important;
  font-family: var(--sf-font) !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  text-align: left !important;
  text-decoration: none !important;
  margin: 0 !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
}

html body #page .productTitle a:hover,
html body #page .product3TitleContent > a:hover {
  color: var(--sf-purple) !important;
}

html body #page .productSubtitle,
html body #page .product3Subtitle {
  display: none !important;
}

html body #page .productNumberList,
html body #page .product3NumberList {
  margin: 4px 0 0 !important;
  padding: 0 !important;
  color: var(--sf-muted) !important;
  font-size: 0.75rem !important;
  font-weight: 500 !important;
  text-align: left !important;
  line-height: 1.3 !important;
}

html body #left3 .product3TitleContent > a,
html body #right3 .product3TitleContent > a {
  font-size: 0.85rem !important;
}

/* --- Ceny (jednotný vzhled) --- */
html body #page .productPriceBox,
html body #page .product3PriceBox {
  text-align: left !important;
  margin-top: 8px !important;
}

/* Skrýt dlouhé popisky — nechat jen čísla */
html body #page .common_price_text,
html body #page .our_price_text {
  display: none !important;
}

/* Ceníková (přeškrtnutá) — stejně u .product i .product3 */
html body #page .productPriceSmall,
html body #page .product3PriceBox .productPriceSmall {
  display: block !important;
  padding: 0 !important;
  margin: 0 0 4px !important;
  color: var(--sf-muted) !important;
  font-size: 0.78rem !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  text-align: left !important;
  text-decoration: line-through !important;
}

html body #page .productPriceSmall s,
html body #page .product3PriceBox .productPriceSmall s,
html body #page .productPriceSmall .common_price,
html body #page .product3PriceBox .common_price,
html body #page .productPriceSmall .second-currency,
html body #page .product3PriceBox .second-currency {
  color: var(--sf-muted) !important;
  font-weight: 400 !important;
  text-decoration: line-through !important;
}

/* Aktuální cena */
html body #page .productPrice,
html body #page .product3Price {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  text-align: left !important;
  color: var(--sf-purple) !important;
  line-height: 1.25 !important;
}

html body #page .productPrice .product_price_text,
html body #page .product3Price .product_price_text {
  display: inline !important;
  color: var(--sf-purple) !important;
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  padding: 0 !important;
  margin: 0 !important;
  width: auto !important;
}

html body #page .productPrice > font,
html body #page .product3Price > font {
  display: inline !important;
  margin-left: 0.35rem !important;
  font-size: 0.78rem !important;
  font-weight: 500 !important;
  color: var(--sf-muted) !important;
}

html body #left3 .product3Price .product_price_text,
html body #right3 .product3Price .product_price_text {
  font-size: 1.05rem !important;
}

/* Bez ceníkové řádku — žádná „díra“ */
html body #page .productPriceBox:not(:has(.productPriceSmall)) .productPrice,
html body #page .product3PriceBox:not(:has(.productPriceSmall)) .product3Price {
  margin-top: 0 !important;
}

/* --- Qty + Koupit (vždy viditelné — přebíjí Uranium display:none) --- */
html body #page .productPriceBox > form,
html body #page .product3PriceBox > form {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
  background: transparent !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body #page .product .buy_btn,
html body #page .productBody .buy_btn,
html body #page .productPriceBox .buy_btn,
html body #page .product3 .buy_btn,
html body #page .product3PriceBox .buy_btn,
html body.home #page .product3 .product3PriceBox .buy_btn,
html body.home .product3 .product3PriceBox .buy_btn {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  float: none !important;
  width: auto !important;
  min-width: 5.5rem !important;
  margin: 0 !important;
  padding: 0.55rem 1rem !important;
  background: var(--sf-purple) !important;
  border: 1px solid var(--sf-purple) !important;
  border-radius: 4px !important;
  color: var(--sf-white) !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
  text-align: center !important;
}

html body #page .product .buy_btn:hover,
html body #page .product3 .buy_btn:hover,
html body #page .product3PriceBox .buy_btn:hover,
html body #page .productBody .buy_btn:hover,
html body.home .product3 .product3PriceBox .buy_btn:hover {
  filter: brightness(1.08);
  opacity: 1 !important;
}

html body #page .product .input-spinner-group,
html body #page .product3 .input-spinner-group {
  position: relative !important;
  display: inline-block !important;
  border: 1px solid var(--sf-gray) !important;
  border-radius: 4px !important;
  background: var(--sf-white) !important;
  vertical-align: middle !important;
}

/* Levý sloupec: bez qty spinneru, Koupit na šířku — ať to není rozházené */
html body #left3 .product3 .input-spinner-group,
html body #right3 .product3 .input-spinner-group,
html body #left3 .product3 .product3PriceBox .count,
html body #right3 .product3 .product3PriceBox .count {
  display: none !important;
}

html body #left3 .product3 .product3PriceBox > form,
html body #right3 .product3 .product3PriceBox > form {
  display: block !important;
}

html body #left3 .product3 .product3PriceBox .buy_btn,
html body #right3 .product3 .product3PriceBox .buy_btn,
html body.home #left3 .product3 .product3PriceBox .buy_btn {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  text-align: center !important;
  padding: 0.5rem 0.75rem !important;
  font-size: 0.85rem !important;
}

/* EUR v levém sloupci zmenšit / nerušit */
html body #left3 .product3Price > font,
html body #right3 .product3Price > font {
  display: block !important;
  margin: 2px 0 0 !important;
  font-size: 0.72rem !important;
}

/* --- Štítky --- */
html body #page .product .ico_act,
html body #page .product3 .ico_act,
html body #page .ico_act {
  background: var(--sf-sale) !important;
  color: var(--sf-white) !important;
  border-radius: 4px !important;
  font-weight: 600 !important;
}

/* Footer ikony v kartě — ať necpou layout */
html body #page .product .productFooter,
html body #page .product3 .productFooter {
  margin-top: 8px !important;
  width: 100% !important;
}

/* Novinka (owl): stejná výška karet */
html body #page .action-box .owl-item .product3 {
  height: 100% !important;
  margin-bottom: 0 !important;
}

/* Related */
html body #page #related .product .productBody {
  border: 1px solid var(--sf-gray) !important;
  border-radius: var(--sf-radius) !important;
}

/* Mobil — Uranium schovává product3 buy_btn; nechat vidět */
@media (max-width: 767px) {
  html body #page .product3PriceBox .buy_btn,
  html body.home #page .product3 .product3PriceBox .buy_btn {
    display: inline-block !important;
    opacity: 1 !important;
  }

  html body #left3 .product3 .product3PriceBox .buy_btn {
    display: block !important;
    width: 100% !important;
  }
}

/* --- Cena na dotaz (karty) — vkládá cena-na-dotaz.js při ceně 0,01 --- */
html body #page .sf-inquiry-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body #page .sf-inquiry-price {
  display: block !important;
  margin: 0 !important;
  color: var(--sf-purple) !important;
  font-family: var(--sf-font) !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-align: left !important;
}

html body #page .sf-inquiry-btn,
html body #page .sf-inquiry-product .buy_btn.sf-inquiry-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 2.5rem !important;
  margin: 0 !important;
  padding: 0 1rem !important;
  background: var(--sf-purple) !important;
  border: 1px solid var(--sf-purple) !important;
  border-radius: 4px !important;
  color: var(--sf-white) !important;
  font-family: var(--sf-font) !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}

html body #page .sf-inquiry-btn:hover,
html body #page .sf-inquiry-product .buy_btn.sf-inquiry-btn:hover {
  filter: brightness(1.08);
  color: var(--sf-white) !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

html body #left3 .sf-inquiry-price,
html body #right3 .sf-inquiry-price {
  font-size: 1rem !important;
}


/* ==========================================================================
   SF-15 — Detail produktu — layout + popisek + parametry
   Kotvy: .product-detail-container, #description, .detail_params_tables
   HTML vzor: product-description-template.html (třídy .sf-pd-*)
   ========================================================================== */

/* --- Layout detailu --- */
html body.page-product-detail .product-detail-container {
  font-family: var(--sf-font) !important;
  color: var(--sf-text) !important;
}

html body.page-product-detail .product-detail-container > h1 {
  margin: 0 0 1rem !important;
  padding: 0 !important;
  color: var(--sf-text) !important;
  font-family: var(--sf-font) !important;
  font-size: clamp(1.35rem, 2.2vw, 1.75rem) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.015em !important;
}

html body.page-product-detail .detail-box-product {
  margin-bottom: 1.25rem !important;
}

html body.page-product-detail .product-gallery,
html body.page-product-detail .detail-box-product .image {
  border: none !important;
  border-radius: var(--sf-radius) !important;
  overflow: hidden !important;
  background: var(--sf-white) !important;
  box-sizing: border-box !important;
}

html body.page-product-detail .product-gallery img {
  object-fit: contain !important;
}

html body.page-product-detail .wishlist-button-container .wishlist-button {
  border-radius: 4px !important;
  font-family: var(--sf-font) !important;
}

/* --- Blok popisu (#description) --- */
html body.page-product-detail #description {
  margin: 1.5rem 0 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}

html body.page-product-detail #description .spc {
  margin: 0 !important;
  padding: 1.25rem 0 !important;
  border: none !important;
  border-radius: var(--sf-radius) !important;
  background: transparent !important;
  box-sizing: border-box !important;
  font-family: var(--sf-font) !important;
  font-size: 0.95rem !important;
  line-height: 1.65 !important;
  color: var(--sf-text) !important;
}

html body.page-product-detail #description .spc > h3:empty {
  display: none !important;
}

/* Generický obsah (i bez .sf-pd) */
html body.page-product-detail #description .spc p {
  margin: 0 0 0.9rem !important;
  color: var(--sf-text) !important;
  font-size: 0.95rem !important;
  line-height: 1.65 !important;
}

html body.page-product-detail #description .spc p:last-child {
  margin-bottom: 0 !important;
}

html body.page-product-detail #description .spc strong,
html body.page-product-detail #description .spc b {
  color: var(--sf-text) !important;
  font-weight: 600 !important;
}

html body.page-product-detail #description .spc a {
  color: var(--sf-purple) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

html body.page-product-detail #description .spc a:hover {
  text-decoration: underline !important;
}

html body.page-product-detail #description .spc ul,
html body.page-product-detail #description .spc ol {
  margin: 0 0 1rem !important;
  padding: 0 0 0 1.15rem !important;
  list-style-position: outside !important;
}

html body.page-product-detail #description .spc ul li,
html body.page-product-detail #description .spc ol li {
  margin: 0 0 0.4rem !important;
  padding: 0 !important;
  color: var(--sf-text) !important;
  line-height: 1.55 !important;
  border: none !important;
  background: transparent !important;
}

html body.page-product-detail #description .spc ul li::marker {
  color: var(--sf-purple) !important;
}

html body.page-product-detail #description .spc h2,
html body.page-product-detail #description .spc h3,
html body.page-product-detail #description .spc h4 {
  margin: 1.35rem 0 0.55rem !important;
  padding: 0 !important;
  color: var(--sf-text) !important;
  font-family: var(--sf-font) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  border: none !important;
  background: transparent !important;
}

html body.page-product-detail #description .spc h2 {
  font-size: 1.2rem !important;
}

html body.page-product-detail #description .spc h3 {
  font-size: 1.05rem !important;
}

html body.page-product-detail #description .spc h4 {
  font-size: 0.95rem !important;
}

html body.page-product-detail #description .spc img {
  max-width: 100% !important;
  height: auto !important;
  border-radius: var(--sf-radius-sm) !important;
  margin: 0.5rem 0 1rem !important;
}

/* --- Parametry (tabulka nad / v popisu) --- */
html body.page-product-detail .detail_params_tables,
html body.page-product-detail #parameters_table_above_spec,
html body.page-product-detail #description .detail_params_tables {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 1.25rem !important;
  border: none !important;
  border-radius: var(--sf-radius) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  background: var(--sf-hero) !important;
}

html body.page-product-detail .detail_params_tables .params_row > td,
html body.page-product-detail #parameters_table_above_spec .params_row > td {
  padding: 0.55rem 0.85rem !important;
  border: none !important;
  border-bottom: none !important;
  vertical-align: top !important;
  font-size: 0.88rem !important;
  line-height: 1.45 !important;
}

html body.page-product-detail .detail_params_tables .params_row:last-child > td,
html body.page-product-detail #parameters_table_above_spec .params_row:last-child > td {
  border-bottom: none !important;
}

html body.page-product-detail .detail_params_tables .params_row.light > td,
html body.page-product-detail .detail_params_tables .params_row.dark > td {
  background: transparent !important;
}

html body.page-product-detail .param_name_cells {
  width: 38% !important;
  color: var(--sf-muted) !important;
  font-weight: 500 !important;
  white-space: normal !important;
}

html body.page-product-detail .param_value_cells,
html body.page-product-detail .param_values {
  color: var(--sf-text) !important;
  font-weight: 600 !important;
}

/* --- Vzor .sf-pd-* (vložený HTML popisek) --- */
html body.page-product-detail #description .sf-pd {
  margin: 0 !important;
  padding: 0 !important;
}

html body.page-product-detail #description .sf-pd-lead {
  margin: 0 0 1.1rem !important;
  max-width: 42rem !important;
  color: var(--sf-muted) !important;
  font-size: 1.02rem !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
}

html body.page-product-detail #description .sf-pd-lead strong {
  color: var(--sf-text) !important;
  font-weight: 600 !important;
}

html body.page-product-detail #description .sf-pd-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 0 0 1.25rem !important;
}

html body.page-product-detail #description .sf-pd-card {
  flex: 1 1 180px !important;
  min-width: 160px !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  border: none !important;
  border-radius: var(--sf-radius) !important;
  background: var(--sf-hero) !important;
  box-sizing: border-box !important;
}

html body.page-product-detail #description .sf-pd-card-title {
  margin: 0 0 6px !important;
  color: var(--sf-text) !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

html body.page-product-detail #description .sf-pd-card-text {
  margin: 0 !important;
  color: var(--sf-muted) !important;
  font-size: 0.84rem !important;
  line-height: 1.5 !important;
}

html body.page-product-detail #description .sf-pd-h {
  margin: 1.4rem 0 0.55rem !important;
  padding: 0 !important;
  border: none !important;
  border-bottom: none !important;
  color: var(--sf-text) !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

html body.page-product-detail #description .sf-pd-list {
  margin: 0 0 0.85rem !important;
  padding: 0 0 0 1.15rem !important;
}

html body.page-product-detail #description .sf-pd-list li {
  margin: 0 0 0.35rem !important;
}

html body.page-product-detail #description .sf-pd-note {
  margin: 1.25rem 0 0 !important;
  padding: 12px 14px !important;
  border: none !important;
  border-radius: var(--sf-radius) !important;
  background: var(--sf-hero) !important;
  color: var(--sf-muted) !important;
  font-size: 0.9rem !important;
  line-height: 1.55 !important;
}

html body.page-product-detail #description .sf-pd-note a {
  color: var(--sf-purple) !important;
  font-weight: 600 !important;
}

/* Tabulka dostupných variant */
html body.page-product-detail #description .sf-pd-variants-intro {
  margin: 0.15rem 0 0.65rem !important;
  color: var(--sf-muted) !important;
  font-size: 0.9rem !important;
  line-height: 1.45 !important;
}

html body.page-product-detail #description .sf-pd-variants {
  margin: 0.35rem 0 0.5rem !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch;
}

html body.page-product-detail #description .sf-pd-variants-table {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  border: none !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: var(--sf-radius) !important;
  overflow: hidden !important;
  background: var(--sf-hero) !important;
  font-size: 0.88rem !important;
  line-height: 1.4 !important;
}

html body.page-product-detail #description .sf-pd-variants-table th,
html body.page-product-detail #description .sf-pd-variants-table td {
  padding: 0.55rem 0.75rem !important;
  border: none !important;
  text-align: left !important;
  vertical-align: middle !important;
}

html body.page-product-detail #description .sf-pd-variants-table thead th {
  color: var(--sf-muted) !important;
  font-weight: 600 !important;
  font-size: 0.78rem !important;
  text-transform: none !important;
  background: transparent !important;
}

html body.page-product-detail #description .sf-pd-variants-table tbody td {
  color: var(--sf-text) !important;
  font-weight: 500 !important;
  background: transparent !important;
}

html body.page-product-detail #description .sf-pd-variants-table tbody tr:nth-child(even) td {
  background: rgba(255, 255, 255, 0.55) !important;
}

html body.page-product-detail #description .sf-pd-variants-table .sf-pd-var-row:not(.sf-pd-var-row-current) {
  cursor: pointer !important;
  transition: background 0.15s ease !important;
}

html body.page-product-detail #description .sf-pd-variants-table .sf-pd-var-row:not(.sf-pd-var-row-current):hover td {
  background: rgba(143, 51, 139, 0.08) !important;
}

html body.page-product-detail #description .sf-pd-variants-table .sf-pd-var-row-current td {
  background: rgba(143, 51, 139, 0.06) !important;
}

html body.page-product-detail #description .sf-pd-variants-table .sf-pd-var-code {
  font-weight: 600 !important;
  white-space: nowrap !important;
}

html body.page-product-detail #description .sf-pd-variants-table .sf-pd-var-current {
  font-weight: 700 !important;
  color: var(--sf-purple) !important;
}

html body.page-product-detail #description .sf-pd-variants-table .sf-pd-var-link {
  color: inherit !important;
  text-decoration: none !important;
  display: block !important;
  font-weight: inherit !important;
}

html body.page-product-detail #description .sf-pd-variants-table .sf-pd-var-link:hover {
  color: var(--sf-purple) !important;
  text-decoration: underline !important;
}

html body.page-product-detail #description .sf-pd-variants-table .sf-pd-var-link-cell {
  font-weight: 500 !important;
}

html body.page-product-detail #description .sf-pd-variants-table .sf-pd-var-badge {
  display: inline-block !important;
  margin-left: 0.45rem !important;
  padding: 0.1rem 0.4rem !important;
  border-radius: 999px !important;
  background: var(--sf-purple) !important;
  color: #fff !important;
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  vertical-align: middle !important;
}

@media (max-width: 767px) {
  html body.page-product-detail #description .spc {
    padding: 0.75rem 0 !important;
  }

  html body.page-product-detail .param_name_cells,
  html body.page-product-detail .param_value_cells {
    display: block !important;
    width: 100% !important;
  }

  html body.page-product-detail .param_name_cells {
    padding-bottom: 0.15rem !important;
  }

  html body.page-product-detail .detail_params_tables .params_row > td {
    padding: 0.45rem 0.75rem !important;
  }

  html body.page-product-detail #description .sf-pd-variants-table th,
  html body.page-product-detail #description .sf-pd-variants-table td {
    padding: 0.45rem 0.55rem !important;
    font-size: 0.82rem !important;
  }
}


/* ==========================================================================
   SF-40 — Blog
   ========================================================================== */

.blog-main .in-news-box.tags {
  display: none !important;
}


/* ==========================================================================
   SF-50 — Mobilní menu (≤767px)
   Dropdown z hlavičky, hamburger↔křížek, sekční panely.
   Ikony + toggle: mobile-menu-icons.js (?v=3).
   ========================================================================== */

@media only screen and (max-width: 767px) {

  /* Lupa — Uranium dává #search bílé pozadí (bílý čtverec vedle košíku) */
  html body #search,
  html body #searchForm,
  html body #search .wrapper_search_submit,
  html body #search .search_submit {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
  }

  /* Hlavička nad panelem menu — křížek musí jít kliknout */
  html body.sf-mobile-menu-open .myheader,
  html body.sf-mobile-menu-open .navigate_bar {
    position: relative !important;
    z-index: 10005 !important;
  }

  /* Trigger — hamburger; při otevření → křížek (body.sf-mobile-menu-open) */
  html body .responsive-menu-button.eshop-menu-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    z-index: 10006 !important;
    isolation: isolate !important;
    pointer-events: auto !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-indent: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    cursor: pointer !important;
  }

  html body .responsive-menu-button.eshop-menu-button::before {
    content: "\F479" !important; /* bi-list */
    font-family: "bootstrap-icons" !important;
    font-size: 1.6rem !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    color: var(--sf-text) !important;
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    right: auto !important;
    top: auto !important;
    text-indent: 0 !important;
    transition: transform 0.2s ease, opacity 0.15s ease !important;
    pointer-events: none !important;
  }

  html body.sf-mobile-menu-open .responsive-menu-button.eshop-menu-button::before {
    content: "\00D7" !important; /* × */
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 1.85rem !important;
    font-weight: 400 !important;
    color: var(--sf-purple) !important;
  }

  html body .responsive-menu-button.article-menu-button {
    display: none !important;
  }

  /* Uranium close-bar schovat — zavírání přes hamburger (JS klikne skrytý odkaz) */
  html body .fixed-parent-node.visible.root,
  html body .fixed-parent-node.visible {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 1px !important;
    height: 1px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    z-index: -1 !important;
  }

  html body .fixed-parent-node.visible::before,
  html body .fixed-parent-node.visible::after,
  html body .fixed-parent-node.visible > a::before,
  html body .fixed-parent-node.visible > a::after,
  html body .fixed-parent-node.visible .direct-link-text::before,
  html body .fixed-parent-node.visible .direct-link-text::after {
    content: none !important;
    display: none !important;
  }

  /* Panel — vysune se zpod hlavičky (z-index 1 uvnitř hamburgeru, pod ikonou) */
  html body .mobile-menu-content {
    position: fixed !important;
    top: var(--sf-mobile-menu-top, 96px) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 1 !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    background: #f3f1f3 !important;
    font-family: var(--sf-font) !important;
    border: none !important;
    border-top: 1px solid var(--sf-gray) !important;
    box-shadow: 0 12px 28px rgba(51, 51, 51, 0.12) !important;
    box-sizing: border-box !important;
    transform-origin: top center !important;
    animation: sf-mobile-menu-drop 0.28s ease-out !important;
  }

  @keyframes sf-mobile-menu-drop {
    from {
      opacity: 0;
      transform: translateY(-18px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  html body .mobile-menu-content > ul {
    display: flex !important;
    flex-direction: column !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    gap: 0 !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 1rem 1rem 7.5rem !important;
    list-style: none !important;
    background: transparent !important;
    box-sizing: border-box !important;
  }

  /* Titulek uvnitř panelu — vertikálně v jedné řádce s konzistentním rytmem */
  html body .mobile-menu-content > ul::before {
    content: "Kategorie" !important;
    display: flex !important;
    align-items: center !important;
    min-height: 1.5rem !important;
    margin: 0 0 0.85rem !important;
    padding: 0 0.15rem !important;
    color: var(--sf-text) !important;
    font-family: var(--sf-font) !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.01em !important;
  }

  /* Sekce — nadpis nad skupinou */
  html body .mobile-menu-content li.leftmenuCat,
  html body .mobile-menu-content li.is-separator {
    display: block !important;
    margin: 1.15rem 0 0.5rem !important;
    padding: 0 0.15rem !important;
    color: var(--sf-muted) !important;
    font-family: var(--sf-font) !important;
    font-size: 0.68rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    line-height: 1.2 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  html body .mobile-menu-content li.leftmenuCat:first-child,
  html body .mobile-menu-content li.is-separator:first-child {
    margin-top: 0.15rem !important;
  }

  html body .mobile-menu-content li.leftmenuCat strong,
  html body .mobile-menu-content li.is-separator strong {
    font-weight: 700 !important;
    color: inherit !important;
  }

  /* Položky — vizuálně jedna skupina pod sekcí */
  html body .mobile-menu-content li.leftmenuDef {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--sf-white) !important;
    border: none !important;
    border-left: 1px solid var(--sf-gray) !important;
    border-right: 1px solid var(--sf-gray) !important;
    box-shadow: none !important;
    list-style: none !important;
    overflow: hidden !important;
  }

  /* První položka po separatoru = horní roh skupiny */
  html body .mobile-menu-content li.leftmenuCat + li.leftmenuDef,
  html body .mobile-menu-content li.is-separator + li.leftmenuDef {
    border-top: 1px solid var(--sf-gray) !important;
    border-radius: 14px 14px 0 0 !important;
  }

  /* Poslední před další sekcí / konec = spodní roh */
  html body .mobile-menu-content li.leftmenuDef:has(+ li.leftmenuCat),
  html body .mobile-menu-content li.leftmenuDef:has(+ li.is-separator),
  html body .mobile-menu-content li.leftmenuDef:last-child {
    border-bottom: 1px solid var(--sf-gray) !important;
    border-radius: 0 0 14px 14px !important;
    margin-bottom: 0 !important;
  }

  /* Jediná položka ve skupině */
  html body .mobile-menu-content li.leftmenuCat + li.leftmenuDef:has(+ li.leftmenuCat),
  html body .mobile-menu-content li.is-separator + li.leftmenuDef:has(+ li.leftmenuCat),
  html body .mobile-menu-content li.leftmenuCat + li.leftmenuDef:has(+ li.is-separator),
  html body .mobile-menu-content li.is-separator + li.leftmenuDef:has(+ li.is-separator),
  html body .mobile-menu-content li.leftmenuCat + li.leftmenuDef:last-child,
  html body .mobile-menu-content li.is-separator + li.leftmenuDef:last-child {
    border-radius: 14px !important;
    border: 1px solid var(--sf-gray) !important;
  }

  html body .mobile-menu-content li.leftmenuDef:nth-child(even),
  html body .mobile-menu-content li.leftmenuDef:nth-child(odd),
  html body .mobile-menu-content li.leftmenuDef:hover {
    background: var(--sf-white) !important;
  }

  html body .mobile-menu-content li.leftmenuDef > a {
    display: flex !important;
    align-items: center !important;
    gap: 0.85rem !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0.75rem 1rem !important;
    color: var(--sf-text) !important;
    font-family: var(--sf-font) !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-decoration: none !important;
    text-transform: none !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid var(--sf-gray) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    transition: background-color 0.15s ease, color 0.15s ease !important;
  }

  html body .mobile-menu-content li.leftmenuDef:has(+ li.leftmenuCat) > a,
  html body .mobile-menu-content li.leftmenuDef:has(+ li.is-separator) > a,
  html body .mobile-menu-content li.leftmenuDef:last-child > a {
    border-bottom: none !important;
  }

  html body .mobile-menu-content li.leftmenuDef > a::after {
    content: "\F285" !important; /* bi-chevron-right */
    font-family: "bootstrap-icons" !important;
    font-size: 0.8rem !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    color: #c4c0c4 !important;
    margin-left: auto !important;
    flex-shrink: 0 !important;
  }

  html body .mobile-menu-content li.leftmenuDef > a:hover,
  html body .mobile-menu-content li.leftmenuDef > a:active,
  html body .mobile-menu-content li.leftmenuDef > a:focus-visible {
    color: var(--sf-purple) !important;
    background: #faf5fa !important;
    outline: none !important;
  }

  html body .mobile-menu-content li.leftmenuDef > a:hover::after,
  html body .mobile-menu-content li.leftmenuDef > a:active::after {
    color: var(--sf-purple) !important;
  }

  html body .mobile-menu-content li.leftmenuDef > a strong {
    flex: 1 1 auto !important;
    font-weight: 500 !important;
    color: inherit !important;
  }

  /* Ikony — Uranium je do mobilního klonu nekopíruje; JS je doplní.
     Tady jen vynutit viditelnost + vypnout FA tečky šablony. */
  html body .mobile-menu-content li.leftmenuDef > a::before,
  html body .mobile-menu-content li a::before {
    content: none !important;
    display: none !important;
  }

  html body .mobile-menu-content .icons_menu_left_img,
  html body .mobile-menu-content li.leftmenuDef > a > img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    margin: 0 !important;
    padding: 4px !important;
    object-fit: contain !important;
    flex-shrink: 0 !important;
    background: var(--sf-hero) !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
  }

  html body .mobile-menu-content li.leftmenuDef:not(.hasImg) > a::before,
  html body .mobile-menu-content li.leftmenuDef:not(:has(img)) > a::before {
    content: "" !important;
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    margin: 0 14px !important;
    flex-shrink: 0 !important;
    border-radius: 50% !important;
    background: #d9d4d9 !important;
    box-sizing: border-box !important;
  }

  /* Chat nesmí překrývat otevřené menu */
  body:has(.fixed-parent-node.visible) #sfz-cw-btn,
  body:has(.fixed-parent-node.visible) #sfz-cw-box,
  body:has(.mobile-menu-content[style*="display: block"]) #sfz-cw-btn,
  body:has(.mobile-menu-content[style*="display: block"]) #sfz-cw-box {
    visibility: hidden !important;
    pointer-events: none !important;
  }
}
