/**
 * BIOMED moderní vrstva – doplňuje shop.css / default.css.
 * @media pravidla jsou v shop-modern-m.css (načítá se hned po tomto souboru).
 */
:root {
  --eshop-primary: #2ea8e0;
  --eshop-primary-dark: #1f8fc4;
  --eshop-accent: #41e3ba;
  --eshop-ink: #5d7798;
  --eshop-muted: #718096;
  --eshop-surface: #ffffff;
  --eshop-surface-soft: #f7fafc;
  --eshop-border: #e2e8f0;
  --eshop-radius: 10px;
  --eshop-radius-sm: 8px;
  --eshop-shadow: 0 4px 14px rgba(45, 55, 72, 0.08);
  --eshop-shadow-hover: 0 8px 24px rgba(45, 116, 185, 0.15);
  --eshop-transition: 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ----- Hlavní sloupec: prostor vpravo kvůli #page overflow + rámečkům mřížky ----- */
#content {
  box-sizing: border-box;
  padding-right: 18px;
  padding-left: 6px;
  min-width: 0;
}

/* Slider: bílé „nasvícení“ okrajů — dva inset stíny (20px + 80px) */
#sliderWrap {
  position: relative;
  max-width: 1600px;
  margin: auto;
  overflow: hidden;
  background: var(--eshop-surface);
}

#sliderWrap::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 25;
  pointer-events: none;
  /*
  box-shadow:
    inset 0 0 20px 20px #fff,
    inset 0 0 60px 60px #fff;
  */  
}

#sliderWrap .camera_prev,
#sliderWrap .camera_next,
#sliderWrap .camera_commands {
  z-index: 30;
}

#sliderWrap .camera_prev {
  left: 40px;
}

#sliderWrap .camera_next {
  right: 40px;
}

.submenu li a {
  font-size: 0.82rem;
  line-height: 1.35;
}

.submenu li a .submenu-txt {
  flex: 0 1 auto;
  min-width: 0;
}

/* ----- Hlavička / user bar (desktop) ----- */
#user.eshop-userbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0.5rem 0.75rem;
  background: var(--eshop-surface-soft);
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius);
  padding: 0.5rem 0.75rem;
  box-shadow: var(--eshop-shadow);
  float: right;
  margin-top: 12px;
  margin-right: -16px;
  max-width: 100%;
  box-sizing: border-box;
}

#user.eshop-userbar .eshop-userbar__main {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.45rem;
  flex: 1 1 auto;
  min-width: 0;
}

#user.eshop-userbar .eshop-userbar__commerce {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.45rem;
  flex: 0 0 auto;
  margin-left: auto;
}

#user.eshop-userbar a {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.4rem 0.55rem;
  border-radius: var(--eshop-radius-sm);
  background: transparent;
  background-image: none !important;
  line-height: 1.25;
  text-align: left;
  transition: background var(--eshop-transition), color var(--eshop-transition), transform var(--eshop-transition), box-shadow var(--eshop-transition);
}

#user.eshop-userbar a:hover {
  text-decoration: none;
  background: rgba(46, 168, 224, 0.12);
  transform: translateY(-1px);
}

#user.eshop-userbar .user-actions__ico {
  display: inline-flex;
  width: 22px;
  height: 22px;
  flex-shrink: 0;
}

#user.eshop-userbar .user-actions__ico img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  vertical-align: middle;
}

/* Košík v hlavičce – Lucide košík, barva jako tlačítko PŘIHLÁSIT */
#user.eshop-userbar #cart {
  float: none;
  margin: 0;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.15;
  color: var(--eshop-primary-dark);
  min-height: 36px;
  height: auto;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  background-image: none !important;
  background-repeat: no-repeat;
  padding: 0.4rem 0.55rem;
  padding-left: 0.55rem;
}

#user.eshop-userbar #cart .eshop-cart-ico-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  color: var(--eshop-primary);
}

#user.eshop-userbar #cart .eshop-cart-ico-wrap svg {
  width: 22px;
  height: 22px;
  display: block;
  flex-shrink: 0;
  transform: translateY(0.06em); /* optické srovnání s řádkem ceny */
}

#user.eshop-userbar #cart .eshop-cart-sum {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.2em;
  line-height: 1.15;
}

#user.eshop-userbar #cartPrice,
#user.eshop-userbar #cartCurrency {
  padding: 0;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

#user.eshop-userbar .eshop-currency-switch {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.15;
  white-space: nowrap;
  opacity: 1;
  padding: 0.4rem 0.55rem;
  margin: 0;
  color: var(--eshop-primary-dark);
}

#user.eshop-userbar #register {
  border: 1px solid var(--eshop-border);
  background: var(--eshop-surface);
  margin: 0;
  min-height: 36px;
  box-sizing: border-box;
  padding: 0.4rem 0.7rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
}

#user.eshop-userbar .user-actions__ico--sm {
  width: 18px;
  height: 18px;
  display: inline-flex;
  flex-shrink: 0;
}

#user.eshop-userbar .user-actions__ico--sm img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#user.eshop-userbar .loginForm table,
#user.eshop-userbar table.eshop-loginTable {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.45rem;
  height: auto;
  float: none;
  margin: 0;
}

#user.eshop-userbar table.eshop-loginTable tr {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.45rem;
}

#user.eshop-userbar table.eshop-loginTable td {
  padding: 0;
  vertical-align: middle;
}

#user.eshop-userbar .lfi {
  min-height: 36px;
  box-sizing: border-box;
  padding: 0.4rem 0.55rem;
  border-radius: var(--eshop-radius-sm);
  border: 1px solid var(--eshop-border);
  transition: border-color var(--eshop-transition), box-shadow var(--eshop-transition);
}

#user.eshop-userbar .lfi:focus {
  outline: none;
  border-color: var(--eshop-primary);
  box-shadow: 0 0 0 3px rgba(46, 168, 224, 0.25);
}

#user.eshop-userbar .loginButton {
  min-height: 36px;
  box-sizing: border-box;
  padding: 0.4rem 0.75rem;
  line-height: 1.2;
  border: 0;
  border-radius: var(--eshop-radius-sm);
  background: linear-gradient(135deg, var(--eshop-primary) 0%, var(--eshop-primary-dark) 100%);
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  transition: transform var(--eshop-transition), box-shadow var(--eshop-transition);
}

#user.eshop-userbar .loginButton:hover {
  transform: translateY(-1px);
  box-shadow: var(--eshop-shadow-hover);
}

/* ----- Menu lišta + hledání vpravo (absolutní — nepřidává výšku řádku) ----- */
body.eshop-modern #menubar {
  height: auto;
  min-height: 0;
  line-height: normal;
  display: block;
  box-sizing: border-box;
  padding: 10px 0;
}

body.eshop-modern #menubar .innerBar {
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-start;
  width: 100%;
  min-height: 0;
  box-sizing: border-box;
  padding-right: 12rem;
}

#menubar .innerBar ul.mainmenu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  float: none;
  flex: 0 1 auto;
  min-width: 0;
}

#menubar .innerBar ul.mainmenu li,
#menubar .innerBar ul.mainmenu li a {
  float: none;
}

/* Bez „pilulového“ hoveru; tmavší písmo než základní #888 z objects.css */
body.eshop-modern ul.mainmenu li a {
  height: auto;
  margin: 0;
  /* svislý „polštář“ řeší padding lišty na #menubar; odkazy jen vodorovně */
  padding: 0.2rem 0.65rem;
  display: inline-flex;
  align-items: center;
  color: #2f3a45;
  transition: color var(--eshop-transition);
}

body.eshop-modern ul.mainmenu li a.mainmenu-link {
  display: inline-flex;
  align-items: center;
  gap: 0.38rem;
}

body.eshop-modern .mainmenu-link__ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--eshop-primary);
  width: calc(18px * 1.1);
  height: calc(18px * 1.1);
}

body.eshop-modern .mainmenu-link__ico svg {
  width: 100%;
  height: 100%;
  display: block;
  stroke: currentColor;
  /* stejná tloušť tahu jako u kategorií (.submenu-ico-svg) */
  stroke-width: 1.35;
}

body.eshop-modern .mainmenu-link__label {
  line-height: 1.25;
}

body.eshop-modern ul.mainmenu li a:hover {
  background: transparent;
  transform: none;
  color: #1a202c;
  text-decoration: none;
}

/* ----- Veřejné nadpisy (.eshop-page-heading) — šablony + templates/eshop-heading-svgs.inc.php ----- */
body.eshop-modern .eshop-page-heading {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  flex-wrap: wrap;
}

body.eshop-modern .eshop-page-heading__ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--eshop-primary);
}

body.eshop-modern .eshop-page-heading__ico svg {
  width: 1.15em;
  height: 1.15em;
  display: block;
}

body.eshop-modern h1.eshop-page-heading .eshop-page-heading__ico svg {
  width: 1.25em;
  height: 1.25em;
}

/* Katalog: nadpis kategorie — ikona z šablony (SVG kategorie), tah jako submenu */
body.eshop-modern #content h1.eshop-page-heading.catHeading {
  font-size: calc(1.75rem * 0.8);
  gap: calc(0.45rem * 0.8);
}

body.eshop-modern #content h1.eshop-page-heading.catHeading .eshop-page-heading__ico svg {
  width: calc(1.25em * 0.9 * 0.9);
  height: calc(1.25em * 0.9 * 0.9);
  stroke-width: 1.35;
  stroke: currentColor;
}

/* Detail produktu: nadpis 1.3rem (přebije #content h1 ze shop-modern) */
body.eshop-modern #content .detail.detail-product h1.eshop-page-heading--detail {
  font-size: 1.3rem;
  line-height: 1.25;
}

body.eshop-modern #content .detail.detail-product h1.eshop-page-heading--detail .eshop-page-heading__ico svg {
  width: 1.05em;
  height: 1.05em;
}

body.eshop-modern .eshop-page-heading__main {
  flex: 1 1 auto;
  min-width: 0;
}

body.eshop-modern .eshop-page-heading--itemsSearch {
  margin-top: -1.15rem;
}

/* ----- Zapomenuté heslo (login2.php) ----- */
body.eshop-modern .eshop-forgotPass {
  max-width: 36rem;
}

body.eshop-modern .eshop-forgotPass > .eshop-page-heading {
  margin-bottom: 0.35rem;
}

body.eshop-modern .eshop-forgotPass__alerts {
  margin-bottom: 1rem;
  width: fit-content;
  max-width: 100%;
  box-sizing: border-box;
}

body.eshop-modern #content .eshop-forgotPass__alerts .form_errors {
  margin: 0 0 1rem;
  width: fit-content;
  max-width: 100%;
  box-sizing: border-box;
  padding: 1rem 1rem 1rem 1.15rem;
  border-radius: var(--eshop-radius-sm);
  border: 1px solid #e5989a;
  border-left: 4px solid #c53030;
  background: linear-gradient(180deg, #fffbfb 0%, #fff8f8 100%);
  color: var(--eshop-ink);
}

body.eshop-modern #content .eshop-forgotPass__alerts .form_errors h4 {
  margin: 0 0 0.5rem;
  font-size: 1rem;
  font-weight: 700;
  color: #9b2c2c;
}

body.eshop-modern #content .eshop-forgotPass__alerts .form_errors,
body.eshop-modern #content .eshop-forgotPass__alerts .form_errors ul.errors li {
  color: #742a2a;
}

body.eshop-modern #content .eshop-forgotPass__alerts ul.errors {
  margin: 0.35rem 0 0;
  padding-left: 1.2rem;
  list-style: disc;
}

body.eshop-modern .eshop-forgotPass__panel {
  margin: 1rem 0;
  padding: 1.15rem 1.25rem;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius);
  background: var(--eshop-surface);
  box-shadow: var(--eshop-shadow);
}

body.eshop-modern .eshop-forgotPass__panel--compact {
  margin-bottom: 0.85rem;
  padding: 0.85rem 1rem;
}

/* Varování uvnitř hlavní karty (ne druhý stínový panel) */
body.eshop-modern .eshop-forgotPass__inlineWarn {
  margin: 0 0 1rem;
  padding: 0.85rem 1rem;
  border-radius: var(--eshop-radius-sm);
  border: 1px solid rgba(229, 62, 62, 0.35);
  border-left: 4px solid #c53030;
  background: linear-gradient(180deg, rgba(254, 245, 245, 0.65) 0%, var(--eshop-surface) 85%);
}

body.eshop-modern .eshop-forgotPass__panel--warn .eshop-forgotPass__retry {
  margin: 0 0 0.25rem;
}

body.eshop-modern .eshop-forgotPass__intro {
  margin: 0 0 1.15rem;
  font-size: 0.95rem;
  line-height: 1.55;
  color: var(--eshop-muted);
}

body.eshop-modern .eshop-forgotPass__field {
  margin-bottom: 1rem;
}

body.eshop-modern .eshop-forgotPass__label {
  display: block;
  margin-bottom: 0.4rem;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--eshop-muted);
}

body.eshop-modern .eshop-forgotPass__input {
  width: 100%;
  max-width: 22rem;
  box-sizing: border-box;
  padding: 0.55rem 0.65rem;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius-sm);
  font-size: 1rem;
  background: var(--eshop-surface);
  transition: border-color var(--eshop-transition), box-shadow var(--eshop-transition);
}

body.eshop-modern .eshop-forgotPass__input:focus {
  outline: none;
  border-color: var(--eshop-primary);
  box-shadow: 0 0 0 3px rgba(46, 168, 224, 0.2);
}

body.eshop-modern .eshop-forgotPass__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.85rem 1.25rem;
}

body.eshop-modern .eshop-forgotPass__cancel {
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--eshop-primary-dark);
  text-decoration: none;
}

body.eshop-modern .eshop-forgotPass__cancel:hover {
  text-decoration: underline;
}

body.eshop-modern .eshop-forgotPass__panel--success {
  border-color: rgba(56, 178, 172, 0.5);
  background: linear-gradient(180deg, rgba(237, 255, 250, 0.55) 0%, var(--eshop-surface) 72%);
}

body.eshop-modern .eshop-forgotPass__panel--warn {
  border-color: rgba(229, 62, 62, 0.4);
  background: linear-gradient(180deg, rgba(254, 245, 245, 0.92) 0%, var(--eshop-surface) 72%);
}

body.eshop-modern .eshop-forgotPass__panelTitle {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0 0 0.55rem;
  font-size: 1rem;
  font-weight: 700;
  color: #9b2c2c;
}

body.eshop-modern .eshop-forgotPass__panelIco {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #c53030;
}

body.eshop-modern .eshop-forgotPass__panelIco svg {
  width: 22px;
  height: 22px;
  display: block;
}

body.eshop-modern .eshop-forgotPass__text {
  margin: 0;
  font-size: 0.93rem;
  line-height: 1.55;
  color: var(--eshop-ink);
}

body.eshop-modern .eshop-forgotPass__panel .eshop-forgotPass__text a {
  color: var(--eshop-primary-dark);
  font-weight: 600;
  text-decoration: none;
}

body.eshop-modern .eshop-forgotPass__panel .eshop-forgotPass__text a:hover {
  text-decoration: underline;
}

body.eshop-modern .eshop-forgotPass__retry {
  margin: 1rem 0 0;
}

body.eshop-modern .button.eshop-forgotPass__btnSecondary {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1.1rem !important;
  background: var(--eshop-surface-soft) !important;
  color: var(--eshop-primary-dark) !important;
  border: 1px solid var(--eshop-border) !important;
  font-weight: 600 !important;
  border-radius: var(--eshop-radius-sm) !important;
  box-shadow: none !important;
}

body.eshop-modern .eshop-forgotPass__panel .eshop-forgotPass__help {
  margin-top: 1.35rem;
  padding-top: 1.35rem;
  border-top: 1px solid var(--eshop-border);
}

body.eshop-modern .eshop-forgotPass__panel .eshop-forgotPass__helpTitle {
  margin: 0 0 0.85rem;
  font-size: 1rem;
  font-weight: 700;
  color: var(--eshop-primary-dark);
}

body.eshop-modern .eshop-forgotPass__panel .eshop-forgotPass__help #mail {
  float: none;
  width: 100%;
  margin: 0;
}

body.eshop-modern .eshop-forgotPass__panel .eshop-forgotPass__help #mail h3 {
  margin: 0 0 0.65rem;
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--eshop-primary);
}

body.eshop-modern .eshop-forgotPass__panel .eshop-forgotPass__help #query {
  width: 100% !important;
  max-width: 100%;
  box-sizing: border-box;
  min-height: 7rem;
  margin: 0 0 0.75rem;
  padding: 0.55rem 0.65rem;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius-sm);
  font-size: 0.95rem;
  font-family: inherit;
}

body.eshop-modern .eshop-forgotPass__panel .eshop-forgotPass__help #mail input[type="text"] {
  box-sizing: border-box;
  width: 100%;
  max-width: 16rem;
  margin: 0 0.5rem 0.5rem 0;
  padding: 0.5rem 0.6rem;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius-sm);
  font-size: 0.95rem;
}

body.eshop-modern .eshop-forgotPass__panel .eshop-forgotPass__help #queryGo {
  margin-top: 0.35rem;
}

/* ----- Vyhledávání v #menubar (vpravo, bez „nafukování“ focusem) ----- */
body.eshop-modern #search.eshop-search--menubar {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  float: none;
  margin: 0;
  display: inline-flex;
  align-items: stretch;
  width: auto;
  max-width: none;
  min-height: 32px;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius-sm);
  background: var(--eshop-surface);
  overflow: hidden;
  box-shadow: none;
}

body.eshop-modern #search.eshop-search--menubar:focus-within {
  border-color: var(--eshop-border);
  box-shadow: none;
}

body.eshop-modern #search.eshop-search--menubar .text {
  position: relative;
  z-index: 1;
  flex: 0 1 auto;
  width: 13ch;
  min-width: 11ch;
  max-width: 14ch;
  float: none;
  border: 0;
  border-radius: 0;
  height: auto;
  min-height: 32px;
  line-height: 1.2;
  font-size: 0.78rem;
  padding: 0 0.35rem 0 0.45rem;
  background: transparent;
  color: var(--eshop-ink);
  caret-color: var(--eshop-primary-dark);
  -webkit-appearance: none;
  appearance: none;
}

body.eshop-modern #search.eshop-search--menubar .text::-webkit-search-decoration,
body.eshop-modern #search.eshop-search--menubar .text::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

body.eshop-modern #search.eshop-search--menubar .text::placeholder {
  color: var(--eshop-muted);
  opacity: 0.85;
}

body.eshop-modern #search.eshop-search--menubar .eshop-search__submit {
  flex: 0 0 auto;
  width: 38px;
  min-height: 32px;
  margin: 0;
  padding: 0;
  border: 0;
  border-left: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 0;
  background: linear-gradient(135deg, var(--eshop-primary) 0%, var(--eshop-primary-dark) 100%);
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: filter var(--eshop-transition), background var(--eshop-transition);
}

body.eshop-modern #search.eshop-search--menubar .eshop-search__submit:hover {
  filter: brightness(1.05);
}

body.eshop-modern #search.eshop-search--menubar .eshop-search__submit:focus-visible {
  outline: none;
}

body.eshop-modern #search.eshop-search--menubar .text:focus {
  outline: none;
}

body.eshop-modern #search.eshop-search--menubar .eshop-search__icon {
  display: block;
  flex-shrink: 0;
  width: 17px;
  height: 17px;
}

/* ----- Registrace / úprava profilu (.regForm) + stejná šířka pro sekce pod formulářem ----- */
body.eshop-modern .regFormShell,
body.eshop-modern .eshop-pageShell {
  max-width: 1080px;
  margin: 0 auto;
  padding: 1.25rem 1rem 1.75rem;
  box-sizing: border-box;
}

body.eshop-modern .eshop-pageShell--profileOrders {
  padding-top: 0.75rem;
  overflow-x: visible;
}

body.eshop-modern .eshop-pageShell--profileOrders h2 {
  margin: 0 0 0.65rem;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--eshop-primary-dark);
}

/* Objednávky v profilu: šířky sloupců podle obsahu (ne 100 % tabulky + široký Stav) */
body.eshop-modern .eshop-pageShell--profileOrders table.orders {
  width: auto;
  max-width: 100%;
  table-layout: auto;
}

body.eshop-modern .eshop-pageShell--profileOrders table.orders th.states,
body.eshop-modern .eshop-pageShell--profileOrders table.orders td.states {
  min-width: 0;
  width: auto;
  white-space: nowrap;
}

body.eshop-modern .eshop-pageShell--profileOrders table.orders th.price,
body.eshop-modern .eshop-pageShell--profileOrders table.orders td.price {
  width: auto;
  min-width: 0;
  white-space: nowrap;
}

body.eshop-modern .eshop-pageShell--profileOrders table.orders th.invoice,
body.eshop-modern .eshop-pageShell--profileOrders table.orders td.invoice {
  width: auto;
  min-width: 0;
  white-space: nowrap;
}

body.eshop-modern .eshop-pageShell--profileOrders a.pdfi {
  background: none;
}

body.eshop-modern .eshop-pageShell--profileOrders a.pdfi img.pdfi__img {
  display: block;
  width: 22px;
  height: 22px;
}

body.eshop-modern .regForm-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.75rem 2.25rem;
  align-items: start;
}

body.eshop-modern .regForm-heading {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0 0 1rem;
  padding-bottom: 0.45rem;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--eshop-primary-dark);
  border-bottom: 2px solid rgba(46, 168, 224, 0.35);
}

body.eshop-modern .regForm-heading__ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--eshop-primary);
}

body.eshop-modern .regForm-heading__ico svg {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}

body.eshop-modern .regForm-heading__text {
  flex: 1 1 auto;
  min-width: 0;
}

body.eshop-modern .regForm-heading--sub {
  margin-top: 0.5rem;
  margin-bottom: 0.65rem;
  padding-bottom: 0;
  font-size: 1rem;
  border-bottom: none;
}

body.eshop-modern .regForm {
  --reg-cols: 35% 65%;
}

body.eshop-modern .regForm .inputRow {
  display: grid;
  grid-template-columns: var(--reg-cols);
  column-gap: 0.65rem;
  row-gap: 0.25rem;
  align-items: center;
  clear: none;
  min-height: 0;
  padding-bottom: 0.65rem;
}

body.eshop-modern .regForm .inputRow--compound {
  align-items: start;
}

body.eshop-modern .regForm .inputRow--compound .inputLabel {
  padding-top: 0.45rem;
}

body.eshop-modern .regForm .inputRow__fields {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}

body.eshop-modern .regForm .inputRow--compound .inputRow__fields {
  grid-column: 2;
  grid-row: 1;
  max-width: 100%;
}

body.eshop-modern .regForm .inputLabel {
  float: none;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.2rem;
  width: auto;
  max-width: 100%;
  padding: 0;
  margin: 0;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--eshop-muted);
  line-height: 1.35;
}

body.eshop-modern .regForm .inputLabel .required {
  flex: 0 0 auto;
  font-weight: 700;
  color: var(--eshop-primary-dark);
}

body.eshop-modern .regForm .regForm-label--field {
  color: var(--eshop-ink);
}

body.eshop-modern .regForm .inputRow input[type='text'],
body.eshop-modern .regForm .inputRow input[type='password'],
body.eshop-modern .regForm .inputRow input[type='number'],
body.eshop-modern .regForm .inputRow select,
body.eshop-modern .regForm .inputRow__fields input,
body.eshop-modern .regForm .inputRow__fields select {
  float: none;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0.45rem 0.55rem;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius-sm);
  background: var(--eshop-surface);
  font-size: 0.95rem;
  transition: border-color var(--eshop-transition), box-shadow var(--eshop-transition);
}

body.eshop-modern .regForm .inputRow input:focus,
body.eshop-modern .regForm .inputRow select:focus {
  outline: none;
  border-color: var(--eshop-primary);
  box-shadow: 0 0 0 3px rgba(46, 168, 224, 0.2);
}

body.eshop-modern .regForm .regForm-input--titul {
  width: auto !important;
  max-width: 5.5rem !important;
}

body.eshop-modern .regForm .inputRow__fields select.greeting {
  width: auto !important;
  max-width: 9rem !important;
  min-width: 5.5rem;
}

body.eshop-modern .regForm .regForm-input--readonly {
  max-width: 100% !important;
  font-size: 0.82rem;
  color: var(--eshop-muted);
  background: var(--eshop-surface-soft);
}

body.eshop-modern .regForm .required {
  font-weight: 700;
  color: var(--eshop-primary-dark);
}

body.eshop-modern .regForm .inputRow > .nm {
  grid-column: 1 / -1;
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.45;
  color: var(--eshop-muted);
}

body.eshop-modern .regForm-dic-block {
  --reg-cols: 35% 65%;
  display: grid;
  grid-template-columns: var(--reg-cols);
  column-gap: 0.65rem;
  row-gap: 0.25rem;
  margin-bottom: 0.35rem;
}

body.eshop-modern .regForm-dic-block > .inputRow {
  grid-column: 1 / -1;
}

body.eshop-modern .regForm-dicRow__controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  min-width: 0;
}

body.eshop-modern .regForm-dicRow__controls .dic {
  flex: 1 1 8rem;
  min-width: 0;
  width: auto !important;
  max-width: 90%;
}

body.eshop-modern .regForm-dic-block .regForm-loadVies {
  grid-column: 2;
  min-height: 1.35rem;
  margin: 0 0 0.35rem;
  font-size: 0.85rem;
  color: var(--eshop-muted);
}

body.eshop-modern .regForm-loadVies {
  min-height: 1.35rem;
  font-size: 0.85rem;
  color: var(--eshop-muted);
}

body.eshop-modern .regForm-vat-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0.55rem 1rem !important;
  height: auto !important;
  line-height: 1.35 !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: var(--eshop-primary-dark) !important;
  background: var(--eshop-surface-soft) !important;
  border: 1px solid var(--eshop-border) !important;
  border-radius: var(--eshop-radius-sm) !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background var(--eshop-transition), border-color var(--eshop-transition), color var(--eshop-transition);
}

body.eshop-modern .regForm-dicRow__controls .regForm-vat-btn {
  flex: 0 1 auto;
  width: auto !important;
  max-width: none !important;
  white-space: nowrap;
}

body.eshop-modern .regForm-vat-btn:hover {
  background: rgba(46, 168, 224, 0.1) !important;
  border-color: var(--eshop-primary) !important;
  color: var(--eshop-ink) !important;
}

body.eshop-modern .regForm .vatAlert {
  margin: 0 0 0.75rem;
  padding: 0.65rem 0.75rem;
  border-radius: var(--eshop-radius-sm);
  background: #fff8f8;
  border: 1px solid #f5c6c6;
  font-size: 0.88rem;
  line-height: 1.45;
}

body.eshop-modern .regForm .vatAlert .red:not(.hidden) {
  color: #b83232;
  font-weight: 500;
}

body.eshop-modern .regForm .vatAlert .green:not(.hidden) {
  color: #276749;
  font-weight: 600;
}

body.eshop-modern .regForm-checkBlock {
  margin: 1rem 0 0.5rem;
  padding: 0.65rem 0.75rem;
  border-radius: var(--eshop-radius-sm);
  background: var(--eshop-surface-soft);
  border: 1px solid var(--eshop-border);
}

body.eshop-modern .regForm-checkLabel {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  font-size: 0.88rem;
  line-height: 1.45;
  color: var(--eshop-ink);
  cursor: pointer;
}

body.eshop-modern .regForm-checkBlock--shipping {
  margin-top: 0.65rem;
  margin-bottom: 0;
}

body.eshop-modern .regForm-checkbox {
  width: 1.05rem;
  height: 1.05rem;
  margin-top: 0.12rem;
  flex-shrink: 0;
  accent-color: var(--eshop-primary);
  cursor: pointer;
}

body.eshop-modern .regForm-shipping {
  margin-top: 0.75rem;
  padding: 0.75rem 0 0;
  border-top: 1px dashed var(--eshop-border);
}

body.eshop-modern .regForm-footer {
  display: block;
  text-align: right;
  margin-top: 1.25rem;
  padding-top: 1rem;
  border-top: 1px solid var(--eshop-border);
}

body.eshop-modern .regForm-submit {
  display: inline-block !important;
  float: none !important;
  min-width: 10rem;
  padding: 0.55rem 1.35rem !important;
  height: auto !important;
  line-height: 1.4 !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
  border: 0 !important;
  border-radius: var(--eshop-radius-sm) !important;
  background: linear-gradient(135deg, var(--eshop-primary) 0%, var(--eshop-primary-dark) 100%) !important;
  color: #fff !important;
  box-shadow: var(--eshop-shadow);
  cursor: pointer;
  transition: transform var(--eshop-transition), box-shadow var(--eshop-transition), filter var(--eshop-transition);
}

body.eshop-modern .regForm-submit:hover {
  filter: brightness(1.04);
  transform: translateY(-1px);
  box-shadow: var(--eshop-shadow-hover);
}

body.eshop-modern .regForm-adminActions {
  clear: both;
  margin-top: 1.125rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--eshop-border);
  text-align: left;
}

body.eshop-modern .regForm-adminStatus {
  margin-bottom: 0.5rem;
}

body.eshop-modern .regForm-adminAction {
  display: inline-block;
  color: #fff;
  text-decoration: none;
  border-radius: var(--eshop-radius-sm);
  padding: 0.375rem 0.75rem;
  margin-right: 0.625rem;
  font-size: small;
  font-weight: 700;
}

body.eshop-modern .regForm-adminAction--move {
  background: var(--eshop-primary);
}

body.eshop-modern .regForm-adminAction--delete {
  background: red;
}

body.eshop-modern .regForm-merchantRow {
  display: block;
  padding-top: 0.35rem;
}

body.eshop-modern .regForm-merchantBtn {
  display: inline-flex !important;
  margin: 0 !important;
  float: none !important;
}

/* ----- Postranní kategorie ----- */
.submenu li a .submenu-ico {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(18px * 1.1);
  height: calc(18px * 1.1);
  color: #3d5266;
}

.submenu li a .submenu-ico svg.submenu-ico-svg {
  width: 100%;
  height: 100%;
  display: block;
  flex-shrink: 0;
  /* Lucide default stroke-width="2" — tenčí tah (u <img> nešlo měnit); doladit: 1.15–1.5 */
  stroke-width: 1.35;
  stroke: currentColor;
}

.submenu li a:hover .submenu-ico {
  color: #2a3d52;
}

.submenu li a.active .submenu-ico {
  color: #1e293b;
}

/* Položky jen tak široké jako odkaz (ikona + text); stejné odsazení vlevo/vpravo */
.submenu ul > li {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 100%;
}

.submenu li a {
  display: inline-flex !important;
  align-items: center;
  gap: 0.22rem;
  background-image: none !important;
  padding: 0.4rem 0.55rem !important;
  border-radius: var(--eshop-radius-sm);
  transition: background var(--eshop-transition), color var(--eshop-transition);
}

.submenu li a:hover {
  background-color: rgba(46, 168, 224, 0.08);
  padding: 0.4rem 0.62rem !important;
}

.submenu li a.active {
  background-color: rgba(46, 168, 224, 0.15);
  font-weight: 600;
}

.submenu li li,
.submenu li li a {
  width: auto !important;
  max-width: 100%;
}

/* ----- Úvodní kategorie: desktop 2×5, plná šířka sloupce ----- */
.catPrev {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: stretch;
  gap: 8px;
  width: 100%;
  max-width: 100%;
  margin: 2rem 0;
  padding: 0;
  box-sizing: border-box;
  clear: both;
}

.catPrev .item {
  float: none;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  max-width: none;
  height: auto !important;
  min-height: 0 !important;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius-sm);
  background: var(--eshop-surface);
  box-shadow: var(--eshop-shadow);
  overflow: hidden;
  transition: box-shadow var(--eshop-transition);
}

.catPrev .item:hover {
  box-shadow: var(--eshop-shadow-hover);
}

.catPrev .item h2.eshop-page-heading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  flex: 0 0 auto;
  margin: 0;
  padding: 8px 4px;
  min-height: 2.75rem;
  width: 100%;
  max-width: 100%;
  font-size: 0.72rem;
  line-height: 1.2;
  font-weight: 600;
  text-align: center;
  box-sizing: border-box;
  background: var(--eshop-surface);
}

.catPrev .item h2 .eshop-page-heading__main {
  flex: none;
  min-width: 0;
}

.catPrev .item h2 a {
  color: var(--eshop-primary-dark);
  transition: color var(--eshop-transition);
}

.catPrev .item h2 a:hover {
  color: var(--eshop-ink);
  text-decoration: none;
}

.catPrev .vc,
.catPrev .thumb,
.catPrev a.preview2.catIcon,
.catPrev a.catIcon {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 1;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  line-height: 0;
  font-size: 0;
  background: none !important;
  box-sizing: border-box;
  overflow: hidden;
}

.catPrev .vc--cat,
.catPrev a.catIcon--cat {
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.catPrev .cat-prev-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
}

.catPrev .cat-prev-img--missing {
  opacity: 0;
  min-height: 100%;
  background: linear-gradient(
    180deg,
    var(--eshop-primary) 0%,
    var(--eshop-primary-dark) 100%
  );
}

.catPrev .item img,
.catPrev .item .cat-prev-img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain;
  object-position: center bottom;
}

@media (max-width: 900px) {
  .catPrev {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .catPrev {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }
}

@media (max-width: 480px) {
  .catPrev {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Přebity pevné rozměry z shop.css */
body.eshop-modern .catPrev .item {
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
}

body.eshop-modern .catPrev .item img,
body.eshop-modern .catPrev .item .cat-prev-img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
}

body.eshop-modern .catPrev .item .vc {
  width: 100% !important;
  height: auto !important;
  border: 0;
}

/* ----- Produktové karty: mřížka auto-fill, min. šířka sloupce 220px ----- */
#items {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1.25rem;
  width: 100%;
  max-width: 100%;
  margin: 0;
  box-sizing: border-box;
  padding: 0 2px;
}

#items .item h3 {
  font-size: clamp(0.82rem, 0.78rem + 0.35vw, 0.95rem);
  line-height: 1.28;
}

#items .item {
  box-sizing: border-box;
  overflow: hidden;
  float: none;
  width: 100%;
  height: auto;
  margin: 0;
  min-width: 0;
  max-width: none;
  border-radius: var(--eshop-radius);
  border: 1px solid var(--eshop-border);
  box-shadow: var(--eshop-shadow);
  background: var(--eshop-surface);
  transition: transform var(--eshop-transition), box-shadow var(--eshop-transition);
  padding-bottom: 1rem;
}

#items .item:hover {
  transform: translateY(-3px);
  box-shadow: var(--eshop-shadow-hover);
}

#items .item .code {
  font-size: 0.68rem !important;
  line-height: 1.25;
  padding: 0 8px 4px;
  margin: 0 auto;
  color: var(--eshop-muted);
  font-weight: 500;
}

#items .item .vc {
  width: 100% !important;
  min-height: 168px;
  height: auto !important;
  display: flex !important;
  flex-direction: column;
  align-items: stretch;
  border-top-color: var(--eshop-border);
  border-bottom-color: var(--eshop-border);
  background: linear-gradient(180deg, #fafbfc 0%, #f3f6f8 100%);
  overflow: hidden;
}

#items .item .thumb {
  display: flex !important;
  flex: 1 1 auto;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  min-height: 148px;
  padding: 0;
  box-sizing: border-box;
  text-align: center;
}

#items .item .thumb a.preview {
  display: flex !important;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  height: 100%;
}

#items .item .thumb img:not(.video-icon),
#items .item .vc img:not(.video-icon) {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 220px !important;
  margin: 0 auto !important;
  object-fit: contain;
  object-position: center top;
}

#items .item .thumb img.video-icon {
  position: absolute;
  right: 12px;
  bottom: 12px;
  width: 40px !important;
  height: 40px !important;
  max-width: 40px !important;
  max-height: 40px !important;
  margin: 0 !important;
  object-fit: contain;
  object-position: center;
  flex: 0 0 auto;
  z-index: 2;
  opacity: 0.92;
}

#items .item .thumb img.thumb-fallback {
  object-fit: contain;
  padding: 14px;
  box-sizing: border-box;
  opacity: 0.9;
}

#items .item .priceRow {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  flex-wrap: nowrap;
  gap: 0.15rem 0;
  width: 100%;
  padding: 6px 8px 0;
  box-sizing: border-box;
}

#items .item .priceRow-extras {
  width: 100%;
  max-width: 100%;
  text-align: right;
  box-sizing: border-box;
}

#items .item .priceRow-extras .detail-discount {
  font-size: 0.75rem;
  color: #c53030 !important;
}

/* nadpisy / popisy kategorií uvnitř #items přes celou šířku mřížky */
#items > h2,
#items > p.catDesc {
  grid-column: 1 / -1;
  width: 100%;
}

.add2cart {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 0.4rem 0.75rem !important;
  border-radius: 6px !important;
  background: #e8f4fc !important;
  color: #1a5f8a !important;
  border: 1px solid #b0d4ea !important;
  font-weight: 600;
  box-shadow: none !important;
  transition: background var(--eshop-transition), border-color var(--eshop-transition), transform var(--eshop-transition);
}

.add2cart:hover {
  text-decoration: none !important;
  background: #d4ebf8 !important;
  border-color: #7eb8d9 !important;
  transform: translateY(-1px);
  filter: none;
  box-shadow: 0 2px 6px rgba(45, 116, 185, 0.12);
}

.add2cart img {
  width: 18px !important;
  height: 18px !important;
  max-width: none !important;
  filter: none !important;
  opacity: 0.9;
}

.add2cart .eshop-cart-ico-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.add2cart .eshop-cart-ico-wrap svg {
  width: 18px !important;
  height: 18px !important;
  max-width: none !important;
  display: block;
  flex-shrink: 0;
  opacity: 0.95;
}

.buy input.quantity,
.buy input.number.cartqty {
  border-radius: 6px !important;
  border: 1px solid var(--eshop-border);
  transition: border-color var(--eshop-transition), box-shadow var(--eshop-transition);
}

.buy input.quantity:focus,
.buy input.number.cartqty:focus {
  outline: none;
  border-color: var(--eshop-primary);
  box-shadow: 0 0 0 3px rgba(46, 168, 224, 0.2);
}

/* ----- Detail produktu (item.php): horní řádek float — nadpis vlevo, buy vpravo, pak clear ----- */
.detail.detail-product .detail-productTopHead {
  margin-bottom: 1.1rem;
}

.detail.detail-product .detail-productHead {
  float: left;
  clear: left;
  max-width: calc(100% - 17rem);
  min-width: 0;
  margin: 0;
  padding: 0;
}

.detail.detail-product .detail-productHead h1 {
  margin: 0;
  padding: 0;
  text-align: left;
}

.detail.detail-product .detail-productHead h1 .code {
  font-size: 0.55em;
  font-weight: 500;
  color: var(--eshop-muted);
}

.detail.detail-product .detail-productTopBuy {
  float: right;
  clear: right;
  max-width: 17rem;
  margin: 0;
  padding: 0;
}

.detail.detail-product .detail-productHead .breadCrumbs {
  float: none;
  display: block;
  margin: 0.35rem 0 0;
  font-size: 0.88rem;
  line-height: 1.35;
}

.detail.detail-product .breadCrumbs a {
  color: var(--eshop-primary-dark);
  text-decoration: none;
}

.detail.detail-product .breadCrumbs a:hover {
  text-decoration: underline;
}

.detail.detail-product .detail-productTopBuy .priceBuy-inner {
  align-items: flex-end;
}

.detail.detail-product .priceBuy-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.35rem;
  width: 100%;
}

.detail.detail-product .priceRow {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end;
  gap: 0.5rem 1rem;
  width: 100%;
}

.detail.detail-product .priceRow-extras {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end;
  gap: 0.35rem;
}

.detail.detail-product .priceRow-extras .detail-discount,
.detail.detail-product .detail-discount {
  color: #c53030 !important;
  font-size: 0.92rem;
  font-weight: 600;
}

/* Detail produktu — přebity jen kde shop.css používá !important (viz komentář u img.main) */
body.eshop-modern #content .detail.detail-product {
  --eshop-detail-main-w: 30rem;
  float: none;
  max-width: 100% !important; /* shop.css .detail { max-width: 98% !important } */
  width: 100%;
  padding: 0 0 2rem;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-productBody {
  margin: 0 0 1.35rem;
  overflow: visible;
}

/* Dva sloupce — galerie+videa vlevo, popis vpravo (HTML v item.php) */
body.eshop-modern .detail.detail-product .detail-productCols {
  display: flex;
  flex-wrap: wrap;
  gap: 4%;
  width: 100%;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-productCol--left {
  flex: 0 0 var(--eshop-detail-main-w);
  max-width: 48%;
  min-width: 0;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-productCol--right {
  flex: 1 1 0;
  min-width: 0;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-productCol--left .mainImg,
body.eshop-modern .detail.detail-product .detail-productCol--left .detail-mainImg {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0 0 0.85rem;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-productGallery {
  float: none;
  width: 100%;
  max-width: 100%;
  margin: 0;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-productGallery .mainImg,
body.eshop-modern .detail.detail-product .detail-productGallery .detail-mainImg {
  float: none;
  width: 100%;
  max-width: 100%;
  margin: 0 0 0.85rem;
  box-sizing: border-box;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius, 5px);
  box-shadow: var(--eshop-shadow);
  overflow: hidden;
}

body.eshop-modern .detail.detail-product .detail-mainImgLink {
  display: block;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-mainImg img,
body.eshop-modern .detail.detail-product .mainImg img.main {
  display: block;
  max-width: 100% !important;
  width: 100%;
  height: auto;
  margin: 0 !important;
  box-sizing: border-box;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  vertical-align: top;
}

/*
body.eshop-modern .detail.detail-product .detail-productGallery .detail-galleryRest {
  clear: none;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
  column-gap: 5%;
  row-gap: 5%;
  align-items: start;
  min-width: 0;
  box-sizing: border-box;
}
*/

body.eshop-modern .detail.detail-product .detail-productGallery .detail-galleryRest .detail-folderImages {
  display: contents;
}

body.eshop-modern .detail.detail-product .detail-extraImg,
body.eshop-modern .detail.detail-product .detail-folderImg {
  margin: 0;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-extraImg a,
body.eshop-modern .detail.detail-product .detail-folderImg a {
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-extraImg img,
body.eshop-modern .detail.detail-product .detail-folderImg img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  border-radius: var(--eshop-radius-sm);
  border: 1px solid var(--eshop-border);
}

body.eshop-modern .detail.detail-product .detail-desc,
body.eshop-modern .detail.detail-product .desc,
body.eshop-modern .detail.detail-product .detail-descText {
  overflow: visible;
  font-size: 0.85rem;
  line-height: 1.65;
  color: var(--eshop-ink);
  max-width:35rem;
  padding:1rem;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius, 5px);
  box-shadow: var(--eshop-shadow);
  background: var(--eshop-surface-soft);
}

.desc br {
  margin-bottom: 0.9rem;
}


body.eshop-modern .detail.detail-product .detail-desc p,
body.eshop-modern .detail.detail-product .desc p,
body.eshop-modern .detail.detail-product .detail-descText p {
  margin: 0 0 0.9rem;
}

body.eshop-modern .detail.detail-product .detail-desc p:last-child,
body.eshop-modern .detail.detail-product .desc p:last-child,
body.eshop-modern .detail.detail-product .detail-descText p:last-child {
  margin-bottom: 0;
}

body.eshop-modern .detail.detail-product .desc p.descr {
  white-space: pre-line;
}

body.eshop-modern .detail.detail-product .detail-longHtml {
  font-size: 0.95rem;
  line-height: 1.65;
  color: var(--eshop-ink);
}

body.eshop-modern .detail.detail-product .detail-longHtml:empty {
  display: none;
}

body.eshop-modern .detail.detail-product .detail-longHtml p {
  margin: 0 0 0.75rem;
}

body.eshop-modern .detail.detail-product .detail-longHtml p:last-child {
  margin-bottom: 0;
}

body.eshop-modern .detail.detail-product .detail-longHtml strong,
body.eshop-modern .detail.detail-product .detail-longHtml b {
  color: var(--eshop-primary-dark);
  font-weight: 650;
}

body.eshop-modern .detail.detail-product .detail-longHtml ul,
body.eshop-modern .detail.detail-product .detail-longHtml ol {
  margin: 0.35rem 0 0.85rem 1.25rem;
  padding: 0;
}

body.eshop-modern .detail.detail-product .detail-longHtml li {
  margin: 0.2rem 0;
}

/* Videa — v levém sloupci max. šířka sloupce, vpravo obsah popisu */
body.eshop-modern #content .detail.detail-product .detail-productCol--left img.main,
body.eshop-modern #content .detail.detail-product .detail-productCol--left .video {
  max-width: 100%;
  box-sizing: border-box;
}

body.eshop-modern #content .detail.detail-product .detail-productCol--right a.external img {
  max-width: 100% !important;
  box-sizing: border-box;
}

body.eshop-modern #content .detail.detail-product .video video {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  box-sizing: border-box;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius);
  box-shadow: var(--eshop-shadow);
}

body.eshop-modern .detail.detail-product .detail-contentVideos {
  clear: both;
  width: 100%;
  margin: 0 0 0.85rem;
}

body.eshop-modern .detail.detail-product .detail-contentVideos:empty {
  display: none;
}

body.eshop-modern .detail.detail-product .detail-contentVideos .video {
  margin: 0 0 0.85rem;
  padding: 0;
  border: 0;
  box-shadow: none;
  background: transparent;
}

body.eshop-modern .detail.detail-product .detail-contentVideos .video:last-child {
  margin-bottom: 0;
}

/* Videa přesunutá z popisu (item.js) — levý sloupec pod galerií */
body.eshop-modern .detail.detail-product .detail-descVideos:empty {
  display: none;
}

body.eshop-modern .detail.detail-product .detail-descVideos .video {
  margin: 0 0 0.85rem;
}

body.eshop-modern .detail.detail-product .detail-descVideos .video:last-child {
  margin-bottom: 0;
}

body.eshop-modern #content .detail.detail-product .detail-desc iframe,
body.eshop-modern #content .detail.detail-product .detail-desc object,
body.eshop-modern #content .detail.detail-product .detail-desc embed,
body.eshop-modern #content .detail.detail-product .detail-longHtml iframe,
body.eshop-modern #content .detail.detail-product .detail-longHtml object,
body.eshop-modern #content .detail.detail-product .detail-longHtml embed {
  display: block;
  max-width: var(--eshop-detail-main-w);
  height: auto;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-desc img,
body.eshop-modern .detail.detail-product .detail-longHtml img,
body.eshop-modern .detail.detail-product .detail-descText img,
body.eshop-modern .detail.detail-product .detail-descText a.external img {
  height: auto;
  max-width: 100%;
  box-sizing: border-box;
}

body.eshop-modern .detail.detail-product .detail-productBody > img:not(.fr10):not(.fl10),
body.eshop-modern .detail.detail-product .detail-desc > img:not(.fr10):not(.fl10),
body.eshop-modern .detail.detail-product .detail-longHtml > img:not(.fr10):not(.fl10),
body.eshop-modern .detail.detail-product .detail-descText > img:not(.fr10):not(.fl10) {
  display: block;
}

/* Nadpis + odkaz vpravo (texts/products/*.html — dříve margin-top:-40px u .fr10) */
body.eshop-modern .detail.detail-product .detail-desc > h2:first-child,
body.eshop-modern .detail.detail-product .detail-longHtml > h2:first-child,
body.eshop-modern .detail.detail-product .detail-descText > h2:first-child {
  padding-right: min(46%, 22rem);
  margin-bottom: 0.5rem;
}

body.eshop-modern .detail.detail-product .detail-desc > h2 + .fr10,
body.eshop-modern .detail.detail-product .detail-longHtml > h2 + .fr10,
body.eshop-modern .detail.detail-product .detail-descText > h2 + .fr10 {
  float: right;
  clear: right;
  margin-top: calc(-1.5em - 0.35rem) !important;
  margin-bottom: 0.65rem;
  max-width: 45%;
  text-align: right;
  line-height: 1.4;
}

body.eshop-modern .detail.detail-product .detail-desc > h2 + .fr10 a,
body.eshop-modern .detail.detail-product .detail-longHtml > h2 + .fr10 a,
body.eshop-modern .detail.detail-product .detail-descText > h2 + .fr10 a {
  display: inline-block;
  text-align: right;
}

body.eshop-modern .detail.detail-product .detail-desc > h2 + .fr10 a img,
body.eshop-modern .detail.detail-product .detail-longHtml > h2 + .fr10 a img,
body.eshop-modern .detail.detail-product .detail-descText > h2 + .fr10 a img {
  display: inline;
  vertical-align: middle;
  position: static;
  top: auto;
  border: 0;
  box-shadow: none;
}

@media (max-width: 960px) {
  body.eshop-modern .detail.detail-product .detail-productCols {
    flex-direction: column;
    gap: 0;
  }

  body.eshop-modern .detail.detail-product .detail-productCol--left,
  body.eshop-modern .detail.detail-product .detail-productCol--right {
    flex: 0 0 100%;
    max-width: 100%;
  }

  body.eshop-modern .detail.detail-product .detail-productGallery {
    margin: 0 0 1rem;
  }

  body.eshop-modern .detail.detail-product .detail-desc img,
  body.eshop-modern .detail.detail-product .detail-longHtml img,
  body.eshop-modern .detail.detail-product .detail-descText img,
  body.eshop-modern #content .detail.detail-product .detail-productCol--left img.main,
  body.eshop-modern #content .detail.detail-product .detail-productCol--left .video,
  body.eshop-modern #content .detail.detail-product .detail-productCol--right a.external img {
    max-width: 100%;
  }
}

body.eshop-modern .detail.detail-product .detail-schema.detail-extraImg {
  margin: 0 0 0.85rem;
}

body.eshop-modern .detail.detail-product .detail-productFiles {
  clear: both;
  width: 100%;
  max-width: 100%;
  margin-top: 0.5rem;
}

body.eshop-modern .detail.detail-product .detail-productFiles:empty {
  display: none;
}

/* ----- Množství + Do košíku ve stejné výšce (výpis + detail) ----- */
#items .item > .buy,
.detail .buy {
  display: flex !important;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: nowrap;
  gap: 10px;
  float: none !important;
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: 0;
  margin-top: 0.6rem !important;
  padding-right: 8px !important;
  box-sizing: border-box;
  clear: none;
}

#items .item .buy input.quantity,
.detail .buy input.quantity {
  float: none !important;
  flex: 0 0 auto;
  width: 3.35rem !important;
  min-width: 3.35rem;
  height: 36px !important;
  padding: 4px 6px;
  margin: 0 !important;
  line-height: 1.2;
  box-sizing: border-box;
}

#items .item .buy .add2cart,
.detail .buy .add2cart {
  display: inline-flex !important;
  flex: 0 1 auto;
  float: none !important;
  min-height: 36px !important;
  height: 36px !important;
  min-width: 0;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  gap: 0.4rem;
}

#items .item .buy .add2cart .eshop-cart-ico-wrap,
.detail .buy .add2cart .eshop-cart-ico-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: inherit;
}

#items .item .buy .add2cart .eshop-cart-ico-wrap svg,
.detail .buy .add2cart .eshop-cart-ico-wrap svg {
  display: block;
  flex-shrink: 0;
}

#items .item .buy .add2cart img,
.detail .buy .add2cart img {
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#items .item .buy .cartText,
#items .item .buy span.cartText,
.detail .buy span.cartText {
  display: inline !important;
  width: auto !important;
  height: auto !important;
  line-height: 1.25 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #057;
}

.detail .priceBuy .fr10.cr {
  float: none !important;
  clear: none;
  padding-bottom: 12px !important;
}

/* Detail produktu: „Do košíku“ — zelené tlačítko, světlý text a ikona košíku (ne .external např. Přehrát) */
body.eshop-modern .detail.detail-product .buy a.add2cart:not(.external) {
  background: #00a410 !important;
  color: #f7fafc !important;
  border: 1px solid #078f25 !important;
  border-radius: var(--eshop-radius-sm);
  padding: 0 0.85rem;
  gap: 0.45rem;
  text-decoration: none !important;
  font-weight: 650;
  line-height: 1.2;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
  filter: none !important;
}

body.eshop-modern .detail.detail-product .buy a.add2cart:not(.external):hover {
  background: #276749 !important;
  color: #fff !important;
  border-color: #22543d !important;
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(34, 84, 61, 0.35);
}

body.eshop-modern .detail.detail-product .buy a.add2cart:not(.external) .eshop-cart-ico-wrap {
  width: 1.2em;
  height: 1.2em;
  color: inherit;
}

body.eshop-modern .detail.detail-product .buy a.add2cart:not(.external) .eshop-cart-ico-wrap svg {
  width: 1.2em !important;
  height: 1.2em !important;
  stroke: currentColor;
  opacity: 1;
  stroke-width: 1.9 !important;
}

body.eshop-modern .detail.detail-product .buy a.add2cart:not(.external) .cartText,
body.eshop-modern .detail.detail-product .buy a.add2cart:not(.external) span.cartText {
  color: inherit !important;
}

.detail .priceBuy .buy {
  max-width: 100%;
}

#items .item .priceRow > .price,
#items .item .priceRow .price {
  float: none !important;
  width: 100%;
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  clear: none;
  text-align: right !important;
  padding: 0 !important;
  box-sizing: border-box;
}

.detail .priceBuy .priceRow .price,
.detail .priceRow > .price {
  float: none !important;
  width: auto;
  max-width: 100%;
  margin-left: 0 !important;
  clear: none;
  text-align: right !important;
  padding: 6px 0 0 0 !important;
}

.detail .priceBuy .priceRow .price {
  margin-right: 0;
}

/* ----- Tlačítka globálně ----- */
button.button,
.button,
#content .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  border-radius: var(--eshop-radius-sm);
  padding: 0.55rem 1.25rem;
  border: none;
  background: linear-gradient(135deg, var(--eshop-primary) 0%, var(--eshop-primary-dark) 100%);
  box-shadow: 0 4px 12px rgba(46, 168, 224, 0.35);
  transition: transform var(--eshop-transition), box-shadow var(--eshop-transition), filter var(--eshop-transition);
  line-height: 1.3;
  font: inherit;
  font-weight: 700;
  color: #fff;
}

button.button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.button:hover,
#content .button:hover {
  filter: brightness(1.05);
  transform: translateY(-2px);
  box-shadow: var(--eshop-shadow-hover);
}

.button__icon img,
.button img.eshop-btn-ico {
  width: 1.15rem;
  height: 1.15rem;
  vertical-align: middle;
  object-fit: contain;
}

input.button.hidden,
button.hidden {
  display: none !important;
}

/* ----- Checkout / košík panely ----- */
.eshop-panel {
  background: var(--eshop-surface);
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius);
  box-shadow: var(--eshop-shadow);
  padding: 1rem 1.1rem;
  margin-bottom: 1rem;
  transition: box-shadow var(--eshop-transition);
}

.eshop-panel:focus-within {
  box-shadow: 0 0 0 3px rgba(46, 168, 224, 0.12), var(--eshop-shadow);
}

.eshop-panel__title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  font-weight: 700;
  color: var(--eshop-ink);
  margin: 0 0 0.75rem;
}

.eshop-panel__title img {
  width: 22px;
  height: 22px;
}

.checkout-note textarea.checkout-note__field,
.checkout-note textarea.lb,
.eshop-panel textarea.lb {
  width: 100% !important;
  max-width: 520px;
  min-height: 140px;
  border-radius: var(--eshop-radius-sm);
  border: 1px solid var(--eshop-border);
  padding: 0.65rem 0.75rem;
  font-family: inherit;
  font-size: 0.95rem;
  transition: border-color var(--eshop-transition), box-shadow var(--eshop-transition);
}

.checkout-note textarea:focus,
.eshop-panel textarea.lb:focus {
  outline: none;
  border-color: var(--eshop-primary);
  box-shadow: 0 0 0 3px rgba(46, 168, 224, 0.2);
}

.checkout-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1rem;
  margin: 1rem 0 1.5rem;
  clear: both;
}

.checkout-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.checkout-table th {
  background: var(--eshop-surface-soft);
  font-weight: 700;
  text-align: left;
  padding: 0.65rem 0.75rem;
  border-bottom: 1px solid var(--eshop-border);
}

.checkout-table td {
  padding: 0.65rem 0.75rem;
  border-bottom: 1px solid var(--eshop-border);
  vertical-align: top;
}

.checkout-table tr:last-child td {
  border-bottom: none;
}

.checkout-table tr.is-selected td {
  background: rgba(65, 227, 186, 0.12);
}

.checkout-table .c {
  width: 2.5rem;
}

.checkout-table input[type="radio"] {
  width: 1.1rem;
  height: 1.1rem;
  accent-color: var(--eshop-primary-dark);
  cursor: pointer;
}

.order-address-wrap {
  margin-bottom: 1rem;
}

.order-address-wrap table.address {
  width: 100%;
  max-width: 420px;
  border-radius: var(--eshop-radius);
  overflow: hidden;
  box-shadow: var(--eshop-shadow);
  border: 1px solid var(--eshop-border);
}

.order-address-wrap table.address th,
.order-address-wrap table.address td {
  padding: 0.5rem 0.75rem;
  border-bottom: 1px solid var(--eshop-border);
}

.order-address-wrap table.address tr:last-child td,
.order-address-wrap table.address tr:last-child th {
  border-bottom: none;
}

/* Objednávka: údaje nahoře, poznámka pod nimi (bez eshop-panel) */
.order-checkout-top {
  margin-bottom: 1rem;
}

.order-checkout-top > .order-address-wrap {
  margin-bottom: 0;
}

.order-checkout-top .order-address-wrap table.address {
  max-width: 420px;
  width: 100%;
}

.order-checkout-top .checkout-note {
  margin-top: 1rem;
  max-width: 36rem;
}

.order-checkout-top .checkout-note__label {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0 0 0.4rem;
}

.order-checkout-top .checkout-note__label .checkout-title-svg svg {
  width: 18px;
  height: 18px;
}

.order-checkout-top .checkout-note textarea.checkout-note__field,
.order-checkout-top .checkout-note textarea.lb {
  width: 100%;
  max-width: 100%;
  min-height: 0;
  margin: 0;
  box-sizing: border-box;
  resize: vertical;
}

.checkout-note__field {
  resize: vertical;
}

.order-checkout-top__guest {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.5rem;
}

.order-checkout-top__guestCol {
  flex: 1 1 280px;
  min-width: min(100%, 260px);
}

body.eshop-modern .order-checkout-errors {
  clear: both;
  margin: 0.75rem 0 1rem;
}

/* DIČ / VIES ve středním sloupci checkoutu — status pod řádkem, ne do úzkého sloupce gridu */
body.eshop-modern .order-checkout-top .regForm-dic-block .regForm-loadVies {
  grid-column: 1 / -1;
}

.checkout-title-svg {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}

.checkout-title-svg svg {
  width: 22px;
  height: 22px;
  display: block;
}

.checkout-shipOpt {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
}

.checkout-shipOpt__txt p {
  margin: 0.25rem 0 0;
}

.checkout-carrier-ico img {
  display: block;
  width: 56px;
  height: auto;
  object-fit: contain;
}

.checkout-carrier-ico--lucide {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 46px;
  height: auto;
  color: var(--eshop-primary-dark);
}

.checkout-carrier-ico--lucide svg {
  width: 34px;
  height: auto;
  display: block;
}

/* SVG v hlavním obsahu – jednotný tenčí tah */
body.eshop-modern #content svg {
  stroke-width: 1.35;
}

/* ----- Tabulka košíku ----- */
.cart-panel {
  overflow-x: visible;
  margin: 1rem 0;
  border-radius: var(--eshop-radius);
  border: 1px solid var(--eshop-border);
  box-shadow: var(--eshop-shadow);
  background: var(--eshop-surface);
}

body.eshop-modern .cart-panel {
  padding: 0 0 0.85rem;
}

body.eshop-modern .cart-panel table.cart {
  margin: 14px auto;
  width:calc(100% - 28px);
  box-sizing: border-box;
}

body.eshop-modern .cart-panel > p,
body.eshop-modern .cart-panel > .cb {
  margin-left: 1rem;
  margin-right: 1rem;
}

table.cart {
  border-collapse: separate;
  border-spacing: 0;
}

/* Boční košík (AJAX) — šířka podle obsahu, ne width:100 % tabulky */
#rcart {
  width: max-content;
  max-width: min(600px, 100vw);
  box-sizing: border-box;
  overflow-x: hidden;
}

#rcart table.cart.mini {
  width: auto;
  margin: 0;
  box-sizing: border-box;
}

#rcart .cartBack,
#rcart .fullbtn {
  box-sizing: border-box;
}

table.cart th {
  background: var(--eshop-surface-soft);
  font-weight: 600;
  padding: 0.65rem 0.5rem;
  text-align: left;
  border-bottom: 2px solid var(--eshop-border);
}

table.cart td {
  padding: 0.65rem 0.5rem;
  border-bottom: 1px solid var(--eshop-border);
  vertical-align: middle;
}

table.cart tr:hover td {
  background: rgba(247, 250, 252, 0.8);
}

/* ----- Nadpisy obsahu ----- */
#content h1,
#content h2 {
  letter-spacing: -0.02em;
  transition: color var(--eshop-transition);
}

#content h1 {
  font-size: 1.75rem;
  color: var(--eshop-primary-dark);
  margin-bottom: 0.75rem;
}

/* H1–H6 v #content o 25 % menší; výjimka hlavičkové nadpisy (.eshop-page-heading) */
body.eshop-modern #content h1:not(.eshop-page-heading) {
  font-size: calc(1.75rem * 0.75);
  margin-bottom: calc(0.75rem * 0.75);
}

body.eshop-modern #content h2:not(.eshop-page-heading) {
  font-size: calc(1.3125rem * 0.75);
  margin-top: 0.85em;
  margin-bottom: 0.45em;
  color: var(--eshop-primary-dark);
}

body.eshop-modern #content h3 {
  font-size: calc(1.125rem * 0.75);
  margin-top: 0.8em;
  margin-bottom: 0.4em;
}

body.eshop-modern #content h4 {
  font-size: calc(1.05rem * 0.75);
  margin-top: 0.75em;
  margin-bottom: 0.35em;
}

body.eshop-modern #content h5,
body.eshop-modern #content h6 {
  font-size: calc(0.95rem * 0.75);
  margin-top: 0.65em;
  margin-bottom: 0.3em;
}

/* Karty produktů v #items — nepřepisovat velikost názvu (shop.css .item h3) */
body.eshop-modern #content #items .item h3 {
  font-size: 12pt;
  margin-top: 0;
  margin-bottom: 0;
}

/* ----- Admin filtr objednávky ----- */
.eshop-filter-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  justify-content: flex-end;
  margin-top: 0.75rem;
}

.eshop-filter-row label {
  font-weight: 600;
  color: var(--eshop-muted);
}

.eshop-filter-row select.p5 {
  border-radius: var(--eshop-radius-sm);
  border: 1px solid var(--eshop-border);
  min-height: 36px;
}

.eshop-filter-row .filter {
  border-radius: var(--eshop-radius-sm);
  border: 1px solid var(--eshop-border);
}

.eshop-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.35rem 0.5rem;
  border: 1px solid var(--eshop-border);
  border-radius: var(--eshop-radius-sm);
  background: var(--eshop-surface-soft);
}

.eshop-icon-btn img {
  width: 18px;
  height: 18px;
}

.checkout-payment-notice {
  margin: 1rem 0;
  padding: 0.75rem 1rem;
  border-radius: var(--eshop-radius-sm);
  background: #fff8e6;
  border: 1px solid #e6c200;
  color: #5c4a00;
  font-size: 0.95rem;
}

.checkout-payment-notice--warn {
  background: #fff0f0;
  border-color: #e8a0a0;
  color: #6b2020;
}
