/* ALRE · sjednocený redesign v2.2 · 2026-11-05 */

/* ALRE / Apollo – hlavička v2, 2026-11-04
   Jediný soubor: rozložení, košík, našeptávač a odstranění duplicity. */
body.tursky-apollo #header .query-input{font-size:16px;color:#302736}
body.tursky-apollo #header .query-input:focus{border-color:#6d28d9;box-shadow:0 0 0 2px #6d28d91a}
@media(min-width:992px){
 body.tursky-apollo .top-navigation-bar{background:#f7f6f9;border-bottom:1px solid #eeeaf3}
 body.tursky-apollo .top-navigation-bar>.container{display:flex;align-items:center;gap:18px;min-height:34px;padding-top:0;padding-bottom:0}
 body.tursky-apollo .top-navigation-bar .top-navigation-menu{order:1;flex:1 1 auto;min-width:0;margin:0}
 body.tursky-apollo .top-navigation-bar .top-navigation-bar-menu>li>a{font-size:12px;line-height:34px;padding-top:0;padding-bottom:0}
 body.tursky-apollo .top-navigation-bar .top-navigation-menu-trigger{height:34px;line-height:34px;padding-top:0;padding-bottom:0;font-size:12px}
 body.tursky-apollo .top-navigation-bar .top-navigation-contacts{position:static!important;order:2;display:flex!important;align-items:center;gap:14px;flex:0 0 auto;min-height:34px;margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
 body.tursky-apollo .top-navigation-contacts a{display:inline-flex;align-items:center;min-height:34px;margin:0;font-size:12px}
 body.tursky-apollo .top-navigation-contacts strong{display:none}
 body.tursky-apollo .top-navigation-bar .top-navigation-tools{order:3;flex:0 0 auto;width:auto!important;margin:0;padding:0}
 body.tursky-apollo .top-navigation-tools--language .dropdown{height:34px;min-height:34px}
 body.tursky-apollo .top-navigation-tools--language .dropdown>button{min-height:34px;padding-top:0;padding-bottom:0;font-size:12px}
 body.tursky-apollo #header .header-top{display:flex;align-items:center;flex-wrap:nowrap;gap:24px;min-height:82px;padding:16px 0!important}
 body.tursky-apollo #header .site-name-wrapper{flex:0 0 160px;width:160px!important;min-width:0}
 body.tursky-apollo #header .site-name{max-width:100%;margin:0;padding:0;text-align:left}
 body.tursky-apollo #header .site-name img{display:block;width:140px;max-width:100%;max-height:50px;height:auto;object-fit:contain}
 body.tursky-apollo #header .search{position:relative;flex:1 1 auto;min-width:0;width:auto;max-width:none;margin:0;padding:0}
 body.tursky-apollo #header #formSearchForm{margin:0;padding:0;width:100%;border:0;background:transparent;box-shadow:none}
 body.tursky-apollo #header #formSearchForm > fieldset{position:relative;margin:0;padding:0}
 body.tursky-apollo #header #formSearchForm .query-input{height:50px;min-height:50px;padding:0 94px 0 16px!important;border:1px solid #d8cce8;border-radius:8px!important;background:#faf8fd;line-height:normal}
 body.tursky-apollo #header #formSearchForm .query-input::placeholder{color:#7a7083;opacity:1}
 body.tursky-apollo #header #formSearchForm > fieldset > button[type=submit]{position:absolute;top:0;right:0;bottom:auto;display:flex;align-items:center;justify-content:center;width:78px;min-width:78px;height:50px;min-height:50px;margin:0;padding:0 10px;border:0;border-radius:0 8px 8px 0;background:#6d28d9;color:#fff;font-family:inherit;font-size:14px;font-weight:700;line-height:1.3;text-indent:0}
 body.tursky-apollo #header #formSearchForm > fieldset > button[type=submit]:before{display:none}
 body.tursky-apollo #header #formSearchForm > fieldset > button[type=submit]:hover{background:#5520ad}
 body.tursky-apollo #header .navigation-buttons{position:relative;right:auto;flex:0 0 auto;justify-content:flex-end;gap:18px;width:auto;min-width:0;margin:0;padding:0}
 body.tursky-apollo #header .navigation-buttons>.top-nav-button-login{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;width:auto;height:50px;min-height:50px;margin:0;padding:0;font-size:14px;line-height:1.2;text-transform:none;white-space:nowrap;box-sizing:border-box}
 body.tursky-apollo #header .navigation-buttons>.top-nav-button-login:before,body.tursky-apollo #header .navigation-buttons>.top-nav-button-login:after{margin:0;line-height:1}
 body.tursky-apollo #header .navigation-buttons .click-cart{flex:0 0 auto;width:auto;margin:0;padding:0}
 body.tursky-apollo #header .navigation-buttons .cart-count{position:relative;display:inline-flex;align-items:center;width:auto;min-width:0;height:50px;min-height:50px;margin:0;padding:0 10px;line-height:1;white-space:nowrap;box-sizing:border-box}
 body.tursky-apollo #header .navigation-buttons .cart-count:before{display:inline-flex;align-items:center;justify-content:flex-start;flex:0 0 56px;width:56px;height:44px;margin:0;font-size:28px;line-height:1}
 body.tursky-apollo #header .navigation-buttons .cart-count i{position:absolute;left:54px;right:auto;top:1px;bottom:auto;display:flex;align-items:center;justify-content:center;width:auto;min-width:20px;height:20px;margin:0;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#6d28d9;color:#fff;font-size:11px;font-weight:700;font-style:normal;line-height:1;white-space:nowrap;transform:translateX(-100%);box-sizing:border-box;z-index:1}
 body.tursky-apollo #header .navigation-buttons .cart-count:after{display:inline-flex;align-items:center;flex:0 0 auto;align-self:center;margin-left:12px;line-height:1}
 body.tursky-apollo #header .cart-price{margin:0;font-size:14px;font-weight:700;line-height:1.2;white-space:nowrap}
 body.tursky-apollo #navigation,body.tursky-apollo #navigation .navigation-in{height:auto;min-height:48px}
 body.tursky-apollo #navigation .menu-level-1>li>a{display:flex;align-items:center;min-height:48px;padding-top:14px;padding-bottom:14px;line-height:20px;font-size:15px;text-transform:none}

 /* Spodní tlačítko našeptávače má vlastní rozměry a zůstává pod výsledky. */
 body.tursky-apollo #header #formSearchForm .search-whisperer-btn > button[type="submit"]{
  position:relative;inset:auto;display:inline-flex;align-items:center;justify-content:center;
  width:100%;max-width:310px;min-width:0;height:auto;min-height:48px;
  margin:0;padding:12px 20px;border:0;border-radius:25px;box-sizing:border-box;
  background:#6d28d9;color:#fff;font-family:inherit;font-size:14px;font-weight:700;
  line-height:1.35;white-space:normal;text-align:center;text-indent:0;
 }
 body.tursky-apollo #header #formSearchForm .search-whisperer-btn > button[type="submit"]:hover{background:#5520ad}
}

/* Skryje pouze duplicitní proklik; články, kategorie a náhradní odkaz zachová. */
#formSearchForm .search-whisperer:has(.search-whisperer-btn > button[type="submit"])
  a.whisperer-trigger[data-testid="btnShowAllResults"],
#formSearchForm .search-whisperer:has(.search-whisperer-btn > button[type="submit"])
  .search-whisperer-tags-group:has(> a.whisperer-trigger[data-testid="btnShowAllResults"]):not(:has(> a:not(.whisperer-trigger))) {
  display: none !important;
}


/* ALRE / Apollo – kategorie a produktové karty v3, 2026-11-04.
   Doplněk k alre-hlavicka-v2.css. Žádné přesouvání prvků ani nákupní JavaScript. */

/* Navigace podkategorií */
body.tursky-apollo.type-category .category-top { margin-bottom: 24px; }
body.tursky-apollo.type-category .category-title { margin-bottom: 14px; }
body.tursky-apollo.type-category .category-perex { max-width: none; margin-bottom: 20px; color: #686271; font-size: 14px; line-height: 1.6; }
body.tursky-apollo.type-category .category-perex p { font-size: inherit; line-height: inherit; }
body.tursky-apollo.type-category .category-perex p:last-child { margin-bottom: 0; }
body.tursky-apollo.type-category .subcategories {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px;
  margin: 0 0 24px; padding: 0; list-style: none;
}
body.tursky-apollo.type-category .subcategories::before,
body.tursky-apollo.type-category .subcategories::after { display: none; }
body.tursky-apollo.type-category .subcategories > li { float: none; width: auto; min-width: 0; margin: 0; padding: 0; }
body.tursky-apollo.type-category .subcategories > li > a {
  display: flex; align-items: center; justify-content: flex-start; flex-wrap: nowrap; gap: 10px;
  height: 100%; min-height: 74px; margin: 0; padding: 12px 24px 12px 12px;
  border: 1px solid #e6e2eb; border-radius: 10px; background: #fff; box-shadow: none;
  color: #302936; text-decoration: none; transition: border-color .15s, background .15s;
}
body.tursky-apollo.type-category .subcategories > li > a:hover { border-color: #b9a3dc; background: #faf8fd; }
body.tursky-apollo.type-category .subcategories > li > a:focus-visible { outline: 2px solid #6d28d9; outline-offset: 2px; }
body.tursky-apollo.type-category .subcategories > li > a::before { right: 10px; color: #847b8d; }
body.tursky-apollo.type-category .subcategories > li > a .image { flex: 0 0 42px; width: 42px; margin: 0; padding: 0; }
body.tursky-apollo.type-category .subcategories > li > a .image img { width: 42px; height: 44px; max-height: 44px; object-fit: contain; }
body.tursky-apollo.type-category .subcategories > li > a .text {
  display: block; flex: 1 1 auto; width: auto; min-width: 0; max-height: none;
  margin: 0; padding: 0; overflow: visible; white-space: normal; overflow-wrap: anywhere;
  text-align: left; color: inherit; font-size: 13px; font-weight: 600; line-height: 1.35;
}
@media (min-width: 1200px) {
  body.tursky-apollo.type-category .subcategories { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  body.tursky-apollo.type-category .subcategories > li > a { gap: 8px; padding-left: 10px; }
  body.tursky-apollo.type-category .subcategories > li > a .image { flex-basis: 34px; width: 34px; }
  body.tursky-apollo.type-category .subcategories > li > a .image img { width: 34px; height: 40px; }
}

/* Kompaktní nejprodávanější. Nativní tlačítko rozbalení zůstává funkční. */
body.tursky-apollo.type-category .products-top-wrapper { margin: 0 0 22px; padding: 0 0 16px; border-bottom: 1px solid #e6e2eb; }
body.tursky-apollo.type-category .products-top-wrapper h2 { margin: 0 0 12px; font-size: 20px; }
body.tursky-apollo.type-category #productsTop {
  display: flex; flex-wrap: nowrap; align-items: stretch; gap: 12px; width: 100%;
  margin: 0; padding: 0 0 6px; overflow-x: auto; overscroll-behavior-x: contain;
  scroll-snap-type: x proximity; scrollbar-width: thin; scrollbar-color: #cec3de #f4f1f7;
}
body.tursky-apollo.type-category #productsTop > .product { flex: 0 0 calc((100% - 24px) / 3); width: calc((100% - 24px) / 3); margin: 0; padding: 0; scroll-snap-align: start; }
body.tursky-apollo.type-category #productsTop > .product[aria-hidden="true"] { display: none; }
body.tursky-apollo.type-category #productsTop .p { display: flex; align-items: center; height: 100%; min-height: 108px; gap: 12px; padding: 12px; border: 1px solid #e6e2eb; border-radius: 10px; box-shadow: none; background: #fff; }
body.tursky-apollo.type-category #productsTop .image { flex: 0 0 44px; width: 44px; margin: 0; padding: 0; }
body.tursky-apollo.type-category #productsTop .image img { margin: 0 !important; transform: none; width: 44px; height: 64px; object-fit: contain; }
body.tursky-apollo.type-category #productsTop .p-in { flex: 1 1 auto; min-width: 0; margin: 0; padding: 0; }
body.tursky-apollo.type-category #productsTop .name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; margin: 0 0 5px; font-size: 13px; line-height: 1.35; }
body.tursky-apollo.type-category #productsTop .availability { font-size: 11px; }
body.tursky-apollo.type-category #productsTop .p-bottom { margin: 5px 0 0; padding: 0; }
body.tursky-apollo.type-category #productsTop .price-final strong { font-size: 16px; color: #302936; }
body.tursky-apollo.type-category .products-top-wrapper > .button-wrapper { margin-top: 8px; }

/* Hlavní produktové mřížky kategorií a hledání.
   Kontext nákupního procesu a detailu zůstává mimo tento rozsah. */
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px;
  margin: 0; padding: 0; width: 100%;
}
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block::before,
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block::after { display: none; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block > .product { display: flex; float: none; width: auto; min-width: 0; height: auto; margin: 0; padding: 0; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p {
  display: flex; flex-direction: column; flex: 1 1 auto; width: 100%; min-width: 0; height: 100%;
  margin: 0; padding: 0; border: 1px solid #e6e2eb; border-radius: 12px;
  background: #fff; box-shadow: none; overflow: hidden;
}
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p > .image {
  position: relative; display: block; flex: 0 0 auto; width: 100%; height: auto; min-height: 0;
  aspect-ratio: 4 / 3; margin: 0; padding: 0; background: #fff; border: 0; overflow: hidden;
}
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p > .image > img {
  position: absolute; inset: 18px; width: calc(100% - 36px) !important; height: calc(100% - 36px) !important;
  margin: 0 !important; padding: 0; max-width: none; max-height: none;
  object-fit: contain; object-position: center; transform: none !important;
}
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .p-in { display: flex; flex-direction: column; flex: 1 1 auto; width: 100%; min-width: 0; margin: 0; padding: 10px 12px 0; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .p-in-in { display: block; min-height: 0; margin: 0; padding: 0; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .name {
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden;
  height: 57px; min-height: 57px; max-height: 57px; margin: 0 0 8px; padding: 0;
  color: #302936; font-size: 14px; font-weight: 600; line-height: 19px; text-transform: none;
  overflow-wrap: anywhere; text-decoration: none;
}
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .name:hover { color: #6d28d9; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .ratings-wrapper { min-height: 0; margin: 0; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .ratings-wrapper:empty { display: none; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .p-bottom { display: flex; flex-direction: column; flex: 1 1 auto; gap: 8px; margin: 0; padding: 0; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .p-bottom > [data-micro="offer"] { display: flex; flex-direction: column; align-items: stretch; gap: 6px; margin-top: auto; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .p-desc {
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; order: -1;
  flex: 0 0 auto; width: 100%; height: 38px; min-height: 38px; max-height: 38px; overflow: hidden;
  margin: 0 0 4px; padding: 0; color: #79717f; font-size: 12px; line-height: 19px;
}
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .p-tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; order: -1; flex: 0 0 auto; width: 100%; margin: 0; padding: 0; text-align: left; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .availability { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: baseline; gap: 4px; margin: 0; font-size: 11px; line-height: 17px; text-align: left; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .availability-amount { font-size: 11px; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .prices { display: block; flex: 0 0 auto; width: 100%; margin: 0; padding: 0; text-align: left; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .price-final { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 8px; min-height: 32px; margin: 0; line-height: 1.25; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .price-final strong { order: 1; color: #302936; font-size: 24px; font-weight: 800; line-height: 1.25; white-space: nowrap; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .price-final .price-standard { order: 2; color: #8a8291; font-size: 12px; font-weight: 400; line-height: 1.4; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .price-final .price-standard span { margin: 0; font-size: inherit; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .price-additional { margin-top: 2px; font-size: 11px; }

/* Apollo přesouvá formulář do .product-btn; původní formulář zůstává zachován. */
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .product-btn { position: static; display: block; flex: 0 0 auto; width: auto; margin: 10px 12px 12px; padding: 0; text-align: center; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .product-btn :is(a, .pr-action) { width: 100%; max-width: none; margin: 0; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .product-btn .btn,
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .p-tools :is(.btn-cart, .add-to-cart-button, .btn-detail) {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  width: 100%; max-width: none !important; min-height: 44px; height: auto;
  padding: 10px 12px !important; border: 0 !important; border-radius: 9px !important;
  background: #6d28d9 !important; color: #fff !important; box-shadow: none !important;
  font-family: inherit; font-size: 14px; font-weight: 700 !important; line-height: 1.35; white-space: normal;
  text-transform: none; text-decoration: none; transform: none !important;
}
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .product-btn .btn:hover { background: #5520ad !important; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .product-btn .btn::after { margin: 0; font-size: 18px; }
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p :is(.name, .product-btn .btn):focus-visible { outline: 2px solid #6d28d9; outline-offset: 2px; }

/* Běžné příznaky: pouze jejich umístění, bez přepisování barev z administrace. */
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .flags-default { top: 10px; left: 10px; right: auto; max-width: calc(100% - 72px); display: flex; flex-direction: column; align-items: flex-start; gap: 2px; }
/* Pouze rozměry běžných příznaků; barvy nadále přebírá Shoptet. */
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .flags-default .flag {
  min-width: 0 !important; max-width: 100% !important; min-height: 0 !important; height: auto !important;
  margin: 0 !important; padding: 3px 6px !important; box-sizing: border-box;
  font-size: 10px !important; line-height: 12px !important; letter-spacing: 0 !important; text-transform: none !important; white-space: normal; overflow-wrap: anywhere;
}
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .flags-extra {
  position: absolute !important; inset: 8px 8px auto auto !important; transform: none !important;
}
/* Úplné vyrovnání staršího globálního pravidla slev v záhlaví/zápatí.
   Rozsah je omezený na produktové mřížky kategorií a hledání. */
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .flags-extra .flag.flag-discount {
  display: inline-flex !important; position: relative !important;
  align-items: center; justify-content: center; width: auto !important;
  min-width: 0 !important; max-width: none !important; height: 22px !important; min-height: 0 !important;
  margin: 0 !important; padding: 0 6px !important; border: 0 !important; border-radius: 6px !important;
  background: #f0eaf8 !important; background-image: none !important; box-shadow: none !important;
  box-sizing: border-box !important; transform: none !important;
}
body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .flags-extra .flag.flag-discount .price-save {
  display: block !important; position: static !important; inset: auto !important;
  width: auto !important; height: auto !important; margin: 0 !important; padding: 0 !important;
  transform: none !important; color: #634282 !important; font-size: 11px !important;
  font-weight: 700 !important; line-height: 1 !important; white-space: nowrap !important;
  text-decoration: none !important;
}

@media (min-width: 1200px) {
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  body.tursky-apollo.type-category .category-top { margin-bottom: 18px; }
  body.tursky-apollo.type-category .category-perex { font-size: 13px; line-height: 1.5; margin-bottom: 16px; }
  body.tursky-apollo.type-category .subcategories { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-bottom: 18px; }
  body.tursky-apollo.type-category .subcategories > li > a { gap: 7px; min-height: 68px; padding: 9px 20px 9px 8px; border-radius: 8px; }
  body.tursky-apollo.type-category .subcategories > li > a .image { flex-basis: 30px; width: 30px; }
  body.tursky-apollo.type-category .subcategories > li > a .image img { width: 30px; height: 38px; }
  body.tursky-apollo.type-category .subcategories > li > a .text { font-size: 12px; line-height: 1.35; }
  body.tursky-apollo.type-category .products-top-wrapper { margin-bottom: 18px; padding-bottom: 12px; }
  body.tursky-apollo.type-category .products-top-wrapper h2 { font-size: 18px; }
  body.tursky-apollo.type-category #productsTop > .product { flex-basis: 240px; width: 240px; }
  body.tursky-apollo.type-category #productsTop .p { min-height: 102px; padding: 10px; gap: 10px; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p { border-radius: 10px; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p > .image { aspect-ratio: 5 / 4; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p > .image > img { inset: 12px; width: calc(100% - 24px) !important; height: calc(100% - 24px) !important; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .p-in { padding: 10px 10px 0; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .name { -webkit-line-clamp: 4; height: 72px; min-height: 72px; max-height: 72px; margin-bottom: 6px; font-size: 13px; line-height: 18px; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .p-desc { display: none; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .price-final strong { font-size: 21px; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .product-btn { margin: 10px; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .p .product-btn .btn { min-height: 44px; padding: 10px 6px !important; font-size: 13px; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .flags-default { top: 6px; left: 6px; max-width: calc(100% - 58px); gap: 2px; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .flags-default .flag {
    padding: 2px 4px !important; font-size: 9px !important; line-height: 11px !important;
  }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .flags-extra { inset: 6px 6px auto auto !important; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .flags-extra .flag.flag-discount { height: 20px !important; padding: 0 5px !important; }
  body.tursky-apollo:is(.type-index, .type-category, .type-search, .type-detail) .products-block .flags-extra .flag.flag-discount .price-save { font-size: 10px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body.tursky-apollo.type-category .subcategories > li > a { transition: none; }
}


/* ALRE · společný vizuální základ v2. Nativní ovládání Shoptetu zůstává zachováno. */
body.tursky-apollo { --alre-ink:#292330; --alre-muted:#736c7c; --alre-line:#e8e4ed; --alre-wash:#f7f6f9; --alre-brand:#6d28d9; font-family:"Source Sans 3",Arial,sans-serif; }
body.tursky-apollo:is(.type-index,.type-category,.type-search,.type-detail) { background:#fff; color:var(--alre-ink); }
body.tursky-apollo :is(h1,h2,h3,h4,.h1,.h2,.h3) { font-family:"Source Sans 3",Arial,sans-serif; letter-spacing:-.025em; }
body.tursky-apollo :is(.breadcrumbs,.breadcrumbs a) { color:var(--alre-muted); font-size:12px; }
body.tursky-apollo .breadcrumbs { margin-bottom:22px; line-height:1.6; }
body.tursky-apollo.type-index #carousel:has(.alre-campaign5) .carousel-control.right { right:8px; }
body.tursky-apollo.type-index #carousel:has(.alre-campaign5) .carousel-control.left { left:8px; }
body.tursky-apollo :is(a,button,input,select,textarea):focus-visible { outline:2px solid var(--alre-brand); outline-offset:3px; }
body.tursky-apollo .category-title h1,
body.tursky-apollo.type-search #content > h2 { margin:0 0 14px; color:var(--alre-ink); font-size:32px; line-height:1.2; font-weight:700; overflow-wrap:anywhere; }
body.tursky-apollo.type-search #content > h2 .highlight { color:inherit; font-weight:700; }
body.tursky-apollo .category-perex { max-width:84ch; }
body.tursky-apollo:is(.type-index,.type-detail) .products-block { margin-top:16px; }
body.tursky-apollo .products-block .p { transition:border-color .18s,box-shadow .18s; }
@media (hover:hover) { body.tursky-apollo .products-block .p:hover { border-color:#c9bada; box-shadow:0 4px 16px #29233008; } }
/* Stručný název a nákup jsou čitelnější než několik stejně výrazných vrstev. */
body.tursky-apollo:is(.type-index,.type-category,.type-search,.type-detail) .products-block .p .name { font-weight:600; }
body.tursky-apollo:is(.type-index,.type-category,.type-search,.type-detail) .products-block .p .p-desc { color:#736c7c; font-size:12px; line-height:18px; height:36px; min-height:36px; max-height:36px; }
body.tursky-apollo:is(.type-index,.type-category,.type-search,.type-detail) .products-block .p .price-final strong { font-size:23px; }
body.tursky-apollo:is(.type-index,.type-category,.type-search,.type-detail) .products-block .p .product-btn .btn { border-radius:8px !important; }

/* Horní servisní pruh patří původnímu kódu Záhlaví. */

/* Filtrování a řazení: upravujeme skutečné prvky šablony. */
body.tursky-apollo.type-category .filters-wrapper { border:1px solid var(--alre-line); border-radius:10px; background:#fff; box-shadow:none; }
body.tursky-apollo.type-category :is(.filters-wrapper .filter-section,.filters-wrapper .filter-section-button) { border-color:var(--alre-line); }
body.tursky-apollo.type-category .category-header { margin-bottom:18px; padding:12px 0; border-color:var(--alre-line); background:#fff; }
body.tursky-apollo.type-category .category-header :is(label,.filter-label,.dropdown-toggle) { font-size:13px; text-transform:none; letter-spacing:0; }
body.tursky-apollo.type-category .category-header select { min-height:42px; border:1px solid #ddd5e6; border-radius:8px; box-shadow:none; }
body.tursky-apollo.type-category .listSorting__controls { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; }
body.tursky-apollo.type-category .listSorting__controls > li { margin:0; padding:0; }
body.tursky-apollo.type-category .listSorting__control { min-height:40px; margin:0; padding:9px 12px; border:1px solid #e8e4ed; border-radius:7px; background:#fff; color:#736c7c; font-family:inherit; font-size:13px; font-weight:400; line-height:1.4; text-transform:none; box-shadow:none; }
body.tursky-apollo.type-category .listSorting__control:hover { background:#faf8fd; color:#5a3489; }
body.tursky-apollo.type-category .listSorting__control--current { border-color:#cbb5e7; background:#f4effb; color:#5a3489; font-weight:600; }
body.tursky-apollo.type-category .listItemsTotal { color:#797182; font-family:inherit; font-size:12px; }
body.tursky-apollo.type-category #content .filters-unveil-button-wrapper { margin:0; }
body.tursky-apollo.type-category #content .filters-unveil-button-wrapper .unveil-button { display:flex; align-items:center; justify-content:space-between; min-height:46px; padding:12px 16px; border:0; border-radius:9px; background:#fff; color:#514a5d; font-family:inherit; font-size:13px; font-weight:600; line-height:1.4; text-transform:none; box-shadow:none; }
body.tursky-apollo.type-category #content .filters-unveil-button-wrapper .unveil-button::after { margin:0; color:#797182; font-size:13px; }
body.tursky-apollo :is(.pagination>a,.pagination>strong) { border-radius:8px; }

/* Našeptávač je samostatný kompaktní seznam, ne velká produktová mřížka. */
body.tursky-apollo #formSearchForm .search-whisperer { border:1px solid #ded5e8; border-radius:0 0 12px 12px; background:#fff; box-shadow:0 14px 32px #29233014; overflow-x:hidden; }
body.tursky-apollo #formSearchForm .search-whisperer.active { max-height:min(72vh,620px); overflow-y:auto; overscroll-behavior:contain; }
body.tursky-apollo #formSearchForm .search-whisperer-products { margin:0; padding:6px 12px; }
body.tursky-apollo #formSearchForm .search-whisperer-products > li { margin:0; padding:0; border-bottom:1px solid #f0edf4; }
body.tursky-apollo #formSearchForm .search-whisperer-products > li > a { display:grid; grid-template-columns:48px minmax(0,1fr) auto; gap:12px; align-items:center; min-height:84px; margin:0; padding:12px 4px; color:#292330; text-decoration:none; }
body.tursky-apollo #formSearchForm .search-whisperer-image { width:48px; height:56px; margin:0; padding:0; }
body.tursky-apollo #formSearchForm .search-whisperer-image img { width:48px; height:56px; margin:0; object-fit:contain; }
body.tursky-apollo #formSearchForm .search-whisperer .p-info { min-width:0; margin:0; padding:0; }
body.tursky-apollo #formSearchForm .search-whisperer .p-name { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; margin:0; color:#292330; font-size:14px; font-weight:600; line-height:1.35; }
body.tursky-apollo #formSearchForm .search-whisperer :is(.p-availability,.availability-label) { margin-top:4px; font-size:11px; line-height:1.3; }
body.tursky-apollo #formSearchForm .search-whisperer .price-final { position:static; width:auto; margin:0; padding:0; color:#292330; font-size:15px; font-weight:700; white-space:nowrap; }
body.tursky-apollo #formSearchForm .search-whisperer-btn { margin:0; padding:14px 16px; border-top:1px solid var(--alre-line); }
body.tursky-apollo #header #formSearchForm .search-whisperer-btn > button[type=submit] { position:static; width:100%; max-width:none; min-height:44px; height:auto; margin:0; padding:11px 16px; border:0; border-radius:8px; background:#6d28d9; color:#fff; font-size:14px; line-height:1.4; white-space:normal; box-shadow:none; }
body.tursky-apollo #formSearchForm .search-whisperer-tags { margin:0; padding:10px 16px; }
body.tursky-apollo #formSearchForm .search-whisperer-tags-group { min-width:0; }
body.tursky-apollo #formSearchForm .search-whisperer-tags-group h4 { margin:10px 0; color:#736c7c; font-size:12px; font-weight:600; text-align:left; }
body.tursky-apollo #formSearchForm .search-whisperer-tags-group a { min-height:38px; font-size:13px; }
body.tursky-apollo #formSearchForm .search-whisperer-tags-group :is(img,.search-whisperer-image) { width:30px; height:30px; }

/* Prázdné hledání: nativní zpráva zůstává, doplněk nabídne další cestu. */
body.tursky-apollo.type-search #products-found:has(#alre-search-help) { max-width:780px; margin:32px auto 60px; padding:28px; border:1px solid var(--alre-line); border-radius:12px; background:#faf9fc; }
body.tursky-apollo.type-search .search-products-heading { margin:0 0 10px; color:#292330; font-size:23px; }
#alre-search-help p { margin:0 0 20px; color:#736c7c; font-size:15px; line-height:1.6; }
#alre-search-help nav { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; }
#alre-search-help a { display:inline-flex; align-items:center; min-height:42px; padding:10px 14px; border:1px solid #ded5e8; border-radius:8px; background:#fff; color:#4f3c68; font-size:14px; font-weight:600; text-decoration:none; }
#alre-search-help button { min-height:44px; padding:11px 18px; border:0; border-radius:8px; background:#6d28d9; color:#fff; font-size:14px; font-weight:600; }

/* Newsletter: zachovaný nativní formulář, CAPTCHA i souhlasy. */
body.tursky-apollo #footer { margin-top:48px; padding-top:0; border-top:1px solid var(--alre-line); background:#faf9fc; color:#514a5d; }
body.tursky-apollo #footer .footer-item-newsletter { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; width:100%; margin:0 0 36px; padding:32px 0; border:0; border-bottom:1px solid var(--alre-line); border-radius:0; background:none; box-shadow:none; }
body.tursky-apollo #footer .newsletter-header { padding:0; text-align:left; }
body.tursky-apollo #footer .newsletter-header h3 { margin:0 0 10px; color:#292330; font-size:26px; font-weight:700; line-height:1.2; }
body.tursky-apollo #footer .newsletter-header h3,
body.tursky-apollo #footer .newsletter-header h3 span { text-transform:none; letter-spacing:-.02em; }
body.tursky-apollo #footer .newsletter-header p { max-width:40ch; margin:0; color:#736c7c; font-size:14px; line-height:1.6; }
body.tursky-apollo #footer #formNewsletterWidget { width:100%; max-width:none; margin:0; padding:0; }
body.tursky-apollo #footer #formNewsletterWidget > fieldset { padding:0; border:0; }
body.tursky-apollo #footer #formNewsletterWidget .form-control { min-height:46px; border:1px solid #dcd4e5; border-radius:8px; background:#fff; box-shadow:none; font-size:16px; color:#292330; }
body.tursky-apollo #footer #formNewsletterWidget label { font-family:inherit; font-size:12px; font-weight:600; letter-spacing:0; text-transform:none; }
body.tursky-apollo #footer #formNewsletterWidget .btn { min-height:44px; margin:6px 0 0; padding:11px 18px; border:0; border-radius:8px; background:#6d28d9; color:#fff; font-size:14px; font-weight:600; line-height:1.4; box-shadow:none; text-transform:none; }
body.tursky-apollo #footer #formNewsletterWidget .consents .label { color:#736c7c; font-size:11px; line-height:1.5; }
body.tursky-apollo #footer .custom-footer { width:100%; margin:0; padding:0 0 26px; }
body.tursky-apollo #footer .footer-rows > .site-name { margin:0 0 20px; padding:0; text-align:left; }
body.tursky-apollo #footer .footer-rows > .site-name img { display:block; width:110px; height:auto; max-height:44px; margin:0; object-fit:contain; }
body.tursky-apollo #footer .custom-footer .footer-item { padding-top:0; }
body.tursky-apollo #footer .custom-footer h4 { color:#292330; font-size:16px; font-weight:600; text-transform:none; letter-spacing:0; }
body.tursky-apollo #footer .custom-footer li { margin-bottom:5px; }
body.tursky-apollo #footer .custom-footer a { color:#736c7c; font-size:13px; line-height:1.6; }
body.tursky-apollo #footer .custom-footer a:hover { color:#6d28d9; }
body.tursky-apollo #footer .footer-bottom { padding-top:18px; padding-bottom:18px; border-top:1px solid var(--alre-line); color:#797182; font-size:11px; }

/* V2.2: Apollo nastavuje bílou přímo na span a přes specifičtější selektory. */
body.tursky-apollo #footer .footer-item.footer-item-newsletter .newsletter-header h3 span { color:#292330; font-size:26px; }
body.tursky-apollo #footer .footer-item.footer-item-newsletter .newsletter-header p { color:#736c7c; }
body.tursky-apollo #footer .footer-item.footer-item-newsletter::after { content:none; display:none; }
body.tursky-apollo #footer .footer-item.footer-item-newsletter #formNewsletterWidget label { color:#514a5d; }
body.tursky-apollo #footer .footer-item.footer-item-newsletter #formNewsletterWidget label .required-asterisk::after { color:#b42335; }
body.tursky-apollo #footer .footer-item.footer-item-newsletter #formNewsletterWidget .consents .label,
body.tursky-apollo #footer .footer-item.footer-item-newsletter #formNewsletterWidget .consents .label a { color:#736c7c; }
body.tursky-apollo #footer #formNewsletterWidget .form-control:focus { border-color:#6d28d9; outline:0; box-shadow:0 0 0 3px #6d28d91a; }
body.tursky-apollo #footer #formNewsletterWidget .captcha-block { display:flex; flex-wrap:wrap; align-items:flex-end; gap:10px 14px; margin:0 0 14px; padding:0; border:0; background:none; }
body.tursky-apollo #footer #formNewsletterWidget .captcha-block h2 { flex-basis:100%; }
body.tursky-apollo #footer #formNewsletterWidget .captcha-block .form-group { flex:0 1 170px; width:auto; margin:0; }
body.tursky-apollo #footer #formNewsletterWidget .captcha-block .captcha-image { order:2; flex:0 0 auto; }
body.tursky-apollo #footer #formNewsletterWidget .captcha-block .captcha-image img { max-width:150px; height:auto; margin:0 0 3px; }
@media(max-width:767px) {
  body.tursky-apollo #footer .footer-item.footer-item-newsletter .newsletter-header h3 span { font-size:23px; }
}

/* Prázdný košík: pouze vzhled veřejně dostupného stavu, bez zásahu do objednávky. */
body.tursky-apollo .cart-empty .cart-heading { margin-bottom:28px; font-size:30px; }
body.tursky-apollo .cart-empty .cart-content { border:1px solid var(--alre-line); border-radius:12px; background:#fff; box-shadow:none; }
body.tursky-apollo .cart-empty .empty-cart-boxes h3 { font-size:20px; }
body.tursky-apollo .cart-empty .empty-cart-boxes ul { display:flex; flex-wrap:wrap; gap:8px; padding:0; list-style:none; }
body.tursky-apollo .cart-empty .empty-cart-boxes li { margin:0; }
body.tursky-apollo .cart-empty .empty-cart-boxes li a { display:block; min-height:40px; padding:9px 12px; border:1px solid var(--alre-line); border-radius:7px; background:#faf9fc; font-size:13px; }

@media(max-width:767px) {
  body.tursky-apollo :is(.breadcrumbs,.breadcrumbs a) { font-size:11px; }
  body.tursky-apollo .breadcrumbs { margin-bottom:16px; }
  body.tursky-apollo .category-title h1,
  body.tursky-apollo.type-search #content > h2 { font-size:26px; }
  body.tursky-apollo #formSearchForm .search-whisperer-products { padding:4px 8px; }
  body.tursky-apollo #formSearchForm .search-whisperer-products > li > a { grid-template-columns:36px minmax(0,1fr); gap:5px 10px; padding:10px 4px; }
  body.tursky-apollo #formSearchForm .search-whisperer-image { grid-row:1 / 3; width:36px; height:48px; }
  body.tursky-apollo #formSearchForm .search-whisperer-image img { width:36px; height:48px; }
  body.tursky-apollo #formSearchForm .search-whisperer .p-name { font-size:13px; }
  body.tursky-apollo #formSearchForm .search-whisperer .price-final { grid-column:2; font-size:14px; }
  body.tursky-apollo #formSearchForm .search-whisperer-tags-group h4 { text-align:left; }
  body.tursky-apollo.type-search #products-found:has(#alre-search-help) { margin-top:20px; padding:20px 16px; }
  body.tursky-apollo #footer { margin-top:32px; }
  body.tursky-apollo #footer .footer-rows { padding-inline:16px; }
  body.tursky-apollo #footer .footer-item-newsletter { grid-template-columns:1fr; gap:18px; margin-bottom:24px; padding:24px 0; }
  body.tursky-apollo #footer .newsletter-header h3 { font-size:23px; }
  body.tursky-apollo #footer .custom-footer { padding-bottom:16px; }
  body.tursky-apollo .cart-empty .cart-heading { font-size:25px; }
}
@media(prefers-reduced-motion:reduce) { body.tursky-apollo .products-block .p { transition:none; } }

body.tursky-apollo.type-category #content .filters-unveil-button-wrapper .unveil-button::before { right:16px; color:#797182; font-size:11px; }
body.tursky-apollo.type-category.filters-visible #content .filters-unveil-button-wrapper .unveil-button { background:#f4effb; color:#5a3489; }


/* Detail v2: původní formulář, fotografie a dostupnost. Žádné nové cenové údaje. */
body.tursky-apollo.type-detail.alre-detail-ready .product-top { margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready .product-top > .col-xs-12 { min-width:0; }
body.tursky-apollo.type-detail.alre-detail-ready .product-top > .col-xs-12:not(.p-image-wrapper):not(.p-info-wrapper):not(:has(*)) { display:none; }
body.tursky-apollo.type-detail.alre-detail-ready .product-top > .col-xs-12:has(> .p-detail-info):not(:has(.p-detail-info > *)) { display:none; }
body.tursky-apollo.type-detail.alre-detail-ready #content-wrapper { padding-top:8px; }
body.tursky-apollo.type-detail.alre-detail-ready .breadcrumbs { margin-bottom:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-image-wrapper { position:static; align-self:start; margin:0; padding:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-image { margin:0 0 12px; padding:0; border:1px solid #efedf3; border-radius:12px; background:#fff; }
body.tursky-apollo.type-detail.alre-detail-ready .p-image .p-main-image { display:block; width:100%; height:380px; margin:0; padding:12px; }
body.tursky-apollo.type-detail.alre-detail-ready .p-image .p-main-image > img { display:block; position:static; width:100%; height:100%; max-width:100%; max-height:100%; margin:0 !important; padding:0; object-fit:contain; object-position:center; transform:none; }
body.tursky-apollo.type-detail.alre-detail-ready .p-thumbnails-wrapper { margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready :is(.p-thumbnails,.p-thumbnails-inner) { height:66px; margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-thumbnails a.p-thumbnail { width:64px; min-width:64px; height:64px; margin:0 6px; border-radius:8px; }
body.tursky-apollo.type-detail.alre-detail-ready .p-thumbnails a.p-thumbnail img { width:64px; height:64px; margin:0 !important; border-radius:8px; object-fit:contain; }

/* Zachovat barvy Akce / Novinka nastavené v administraci. */
body.tursky-apollo.type-detail.alre-detail-ready .p-image .flags-default { position:absolute; inset:12px auto auto 12px; z-index:4; display:flex; flex-direction:column; align-items:flex-start; gap:3px; max-width:calc(100% - 90px); margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-image .flags-default .flag { min-width:0 !important; min-height:0 !important; height:auto !important; margin:0 !important; padding:3px 6px !important; font-size:10px !important; line-height:12px !important; letter-spacing:0 !important; text-transform:none !important; white-space:normal; }
body.tursky-apollo.type-detail.alre-detail-ready .p-image .flag-discount:not(:has(.price-save)) { display:none !important; }
body.tursky-apollo.type-detail.alre-detail-ready .p-image .flags-extra .flag.flag-discount:has(.price-save) { display:inline-flex !important; align-items:center; height:22px !important; padding:0 6px !important; border-radius:6px !important; background:#f0eaf8 !important; box-shadow:none !important; }
body.tursky-apollo.type-detail.alre-detail-ready .p-image .flags-extra .flag.flag-discount .price-save { position:static !important; inset:auto !important; transform:none !important; color:#634282 !important; font-size:11px !important; line-height:1 !important; }

body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper { padding:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-headline { margin:0 0 14px; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-headline :is(h1,.h1) { margin:0 0 10px; color:#292330; font-family:"Source Sans 3",Arial,sans-serif; font-size:29px; font-weight:650; line-height:1.15; letter-spacing:-.02em; overflow-wrap:anywhere; text-wrap:balance; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-headline .p-detail-info { margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-code { color:#797182; font-size:11px; }
body.tursky-apollo.type-detail.alre-detail-ready .p-short-description-block { margin:0 0 20px; padding:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-short-description { margin:0; color:#736c7c; font-size:14px; font-weight:400; line-height:1.6; }
body.tursky-apollo.type-detail.alre-detail-ready .p-short-description :is(p,li) { font-size:inherit; line-height:inherit; }
body.tursky-apollo.type-detail.alre-detail-ready .p-short-description strong { color:#514a5d; font-weight:600; }
body.tursky-apollo.type-detail.alre-detail-ready .p-short-description p:last-child { margin-bottom:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-short-description ul { margin:0; padding-left:18px; }
body.tursky-apollo.type-detail.alre-detail-ready .p-short-description li + li { margin-top:4px; }
body.tursky-apollo.type-detail.alre-detail-ready .alre-summary-collapsible:not(.is-expanded) .p-short-description { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; max-height:4.8em; }
body.tursky-apollo.type-detail.alre-detail-ready .alre-summary-collapsible:not(.is-expanded) > p { display:none; }
body.tursky-apollo.type-detail.alre-detail-ready .alre-summary-toggle { display:inline-flex; gap:6px; margin:7px 0 0; padding:2px 0; border:0; background:none; color:#655274; font-family:inherit; font-size:12px; font-weight:600; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
body.tursky-apollo.type-detail.alre-detail-ready .p-short-description-block > p { margin:10px 0 0; font-size:12px; }

/* Jedna nákupní část. Všechny vstupy stále patří původnímu formuláři. */
body.tursky-apollo.type-detail.alre-detail-ready .alre-buy-box { margin:0 0 16px; padding:20px; border:1px solid #eae5f0; border-radius:12px; background:#f9f8fb; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid { display:flex; flex-wrap:wrap; align-items:flex-start; gap:16px; margin:0 0 18px; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .detail-grid-item { min-width:0; padding:0; margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .detail-price-block { flex:1 1 120px; width:auto; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .detail-availability-block { flex:1 1 180px; width:auto; padding-top:3px; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .detail-parameters-block { flex-basis:100%; width:100%; }
body.tursky-apollo.type-detail.alre-detail-ready .detail-grid-title { display:none; }
body.tursky-apollo.type-detail.alre-detail-ready .p-final-price-wrapper { margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-final-price-wrapper > .price-standard { display:block; margin:0 0 2px; color:#797182; font-size:12px; font-weight:400; line-height:1.35; }
body.tursky-apollo.type-detail.alre-detail-ready .p-final-price-wrapper .price-final { display:block; color:#292330; font-size:34px; font-weight:750; line-height:1.1; }
body.tursky-apollo.type-detail.alre-detail-ready .p-final-price-wrapper :is(.price-measure,.price-additional) { color:#736c7c; font-size:11px; line-height:1.4; }
body.tursky-apollo.type-detail.alre-detail-ready .availability-value { margin:0 0 6px; font-size:13px; line-height:1.4; }
body.tursky-apollo.type-detail.alre-detail-ready .availability-amount { font-size:11px; font-weight:400; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .delivery-time-block { display:block; margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .delivery-time-block td { display:block; padding:0; font-size:11px; line-height:1.5; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .detail-availability-block .delivery-time-label { display:inline; color:#736c7c; font-size:11px; font-weight:400; text-transform:none; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .detail-availability-block .delivery-time { display:inline; margin:0 0 0 2px; padding:0; border-radius:0; background:none; color:#514a5d; font-size:11px; font-weight:600; }
body.tursky-apollo.type-detail.alre-detail-ready :is(.shipping-options-block,.detail-availability-block .shipping-options) { margin-top:3px; color:#655274; font-size:11px; font-weight:400; letter-spacing:0; text-transform:none; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid > .detail-parameters:has(tbody):not(:has(tbody > *)) { display:none; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper .add-to-cart { display:flex; flex-wrap:nowrap; align-items:stretch; gap:10px; margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity { position:relative; flex:0 0 110px; width:110px; height:50px; margin:0; padding:0; border:1px solid #ddd5e6; border-radius:8px; background:#fff; }
body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity label { display:block; width:100%; height:100%; margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity input { width:100%; height:100%; margin:0; padding:0 34px; border:0; border-radius:8px; background:transparent; color:#292330; font-size:16px; text-align:center; appearance:textfield; -moz-appearance:textfield; }
body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity input::-webkit-inner-spin-button,
body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity input::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; }
body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity :is(.increase,.decrease) { position:absolute; top:0; bottom:0; width:34px; height:48px; margin:0; padding:0; border:0; border-radius:8px; background:transparent; color:#736c7c; font-size:16px; line-height:48px; transform:none; }
body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity .increase { right:0; left:auto; }
body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity .decrease { left:0; right:auto; }
body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity button:hover { background:#f3eff8; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper .add-to-cart-button { display:inline-flex; flex:1 1 auto; align-items:center; justify-content:center; gap:9px; width:auto; min-width:0; min-height:50px; height:auto; margin:0; padding:12px 14px !important; border:0 !important; border-radius:8px !important; background:#6d28d9 !important; color:#fff !important; box-shadow:none !important; font-family:inherit; font-size:16px; font-weight:650 !important; line-height:1.3; text-transform:none; white-space:normal; transform:none !important; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper .add-to-cart-button:hover { background:#5520ad !important; }
body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper .add-to-cart-button:disabled { opacity:.5; cursor:not-allowed; }
body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart-button::after { margin:0; font-size:19px; }
body.tursky-apollo.type-detail.alre-detail-ready .social-buttons-wrapper { margin:0; padding:0; border:0; box-shadow:none; font-size:12px; }
body.tursky-apollo.type-detail.alre-detail-ready .social-buttons-wrapper a[href*="twitter.com/share"] { display:none; }
body.tursky-apollo.type-detail.alre-detail-ready .description-inner { margin:0; }
body.tursky-apollo.type-detail.alre-detail-ready .tab-content .basic-description { width:100% !important; max-width:none !important; margin:0; padding:0; color:#514a5d; overflow-wrap:anywhere; }
/* Pouze vnější obal ručně psaného popisu; vnořené tabulky a sloupce zůstávají. */
body.tursky-apollo.type-detail.alre-detail-ready .basic-description > div[style*="max-width"] { width:100% !important; max-width:none !important; margin-inline:0 !important; }
@media(min-width:992px) {
  body.tursky-apollo.type-detail.alre-detail-ready .shp-tabs-wrapper #description.tab-pane.active { padding:24px !important; }
  body.tursky-apollo.type-detail.alre-detail-ready .shp-tabs-wrapper #description.tab-pane.active .detail-tab-content { padding:0 !important; }
  body.tursky-apollo.type-detail.alre-detail-ready .basic-description > h3:first-child { margin-top:0; }
  body.tursky-apollo.type-detail.alre-detail-ready .basic-description > div[style*="max-width"] > :first-child { margin-top:0 !important; }
}
body.tursky-apollo.type-detail.alre-detail-ready .basic-description :is(p,li,td) { font-size:15px; line-height:1.7; }
body.tursky-apollo.type-detail.alre-detail-ready .basic-description h2 { margin:30px 0 16px; color:#292330 !important; font-size:28px !important; line-height:1.2; }
body.tursky-apollo.type-detail.alre-detail-ready .basic-description h3 { margin:26px 0 12px; color:#292330 !important; font-size:22px !important; line-height:1.3; }
body.tursky-apollo.type-detail.alre-detail-ready .basic-description table { max-width:100%; }

/* Přeneseno ze Zápatí: základ jediné nákupní lišty a původní stavové barvy. */

.alre-last-stock,.alre-low-stock{font-weight:900!important}
.alre-last-stock,.alre-last-stock *{color:#d93636!important}
.alre-low-stock,.alre-low-stock *{color:#e06a1a!important}
#retino-portal-4825{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
#alre-sticky-buy,#alre-sticky-buy *{box-sizing:border-box}
#alre-sticky-buy{display:none;position:fixed;right:20px;bottom:20px;z-index:60;width:min(535px,calc(100% - 40px));padding:14px;background:#fff;border:1px solid #e7def4;border-top:4px solid #dcec72;border-radius:17px;box-shadow:0 12px 40px #2614432e;font:13px Arial,sans-serif;gap:13px;align-items:center;grid-template-columns:56px minmax(0,1fr) auto}
#alre-sticky-buy.visible{display:grid;}
#alre-sticky-buy.no-image{grid-template-columns:minmax(0,1fr) auto}
.asb-img{width:56px;height:56px;object-fit:contain;background:#f7f4fc;border-radius:11px;padding:4px}
.asb-info{min-width:0}
.asb-tag{color:#6421d4;font:800 10px/1 Arial,sans-serif}
.asb-name{margin:5px 0 3px;color:#716980;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.asb-price{color:#261d38;font-size:26px;font-weight:900;line-height:1.12;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.asb-note{display:inline-flex;align-items:center;gap:5px;max-width:100%;margin-top:5px;color:#5c526f;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.asb-note:before{content:'✓';display:inline-grid;flex-shrink:0;place-items:center;width:15px;height:15px;border-radius:50%;color:#462078;background:#dcec72;font-size:10px}
#alre-sticky-buy.scarce .asb-note{color:#b13c2b}
#alre-sticky-buy.scarce .asb-note:before{content:'!';background:#fff0d5;color:#b13c2b}
.asb-btn{display:flex;align-items:center;justify-content:center;gap:7px;min-height:53px;padding:12px 16px;border:0;border-radius:11px;background:#6d28d9;color:#fff;font:800 14px Arial,sans-serif;white-space:nowrap;cursor:pointer}
.asb-btn:hover{background:#551eb6}
.asb-btn:focus-visible{outline:3px solid #dcec72;outline-offset:2px}
.asb-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:767px){#alre-sticky-buy{left:0;right:0;bottom:0;width:100%;border-radius:15px 15px 0 0;border-top:3px solid #dcec72;border-left:0;border-right:0;border-bottom:0;padding:11px 12px;gap:9px;grid-template-columns:minmax(0,1fr) auto;box-shadow:0 -8px 25px #26144325}.asb-img,.asb-name{display:none}.asb-price{font-size:25px}.asb-btn{min-height:48px;padding:12px 13px;font-size:13px}.asb-tag{font-size:9px;padding:3px 6px}.asb-note{font-size:10px;margin-top:4px}}



/* Jedna již existující přichycená lišta; bez nové nákupní logiky. */
body.type-detail #alre-sticky-buy { border:1px solid #e8e4ed; border-top:1px solid #e8e4ed; border-radius:10px; box-shadow:0 8px 28px #2923301a; }
body.type-detail #alre-sticky-buy .asb-img { background:#fff; }
body.type-detail #alre-sticky-buy .asb-tag { color:#797182; font-size:9px; }
body.type-detail #alre-sticky-buy .asb-price { color:#292330; font-size:24px; }
body.type-detail #alre-sticky-buy .asb-btn { min-height:48px; border-radius:8px; background:#6d28d9; font-weight:650; }
body.type-detail #alre-sticky-buy:not(.scarce) .asb-note::before { background:#f0eaf8; color:#634282; }
@media(min-width:992px) {
  body.tursky-apollo.type-detail.alre-detail-ready .product-top { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:44px; align-items:start; }
  body.tursky-apollo.type-detail.alre-detail-ready .product-top::before,
  body.tursky-apollo.type-detail.alre-detail-ready .product-top::after { display:none; }
  body.tursky-apollo.type-detail.alre-detail-ready .product-top > .col-xs-12 { float:none; width:auto; }
  body.tursky-apollo.type-detail.alre-detail-ready .product-top > .col-xs-12:not(.p-image-wrapper):not(.p-info-wrapper) { grid-column:1 / -1; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-detail-inner-header { display:none; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper .p-info-headline { display:block; }
}
@media(max-width:991px) {
  body.tursky-apollo.type-detail.alre-detail-ready .p-detail-inner-header { display:block; margin-bottom:16px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper .p-info-headline { display:none; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-headline { margin-bottom:0; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-headline :is(h1,.h1) { font-size:25px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-image-wrapper,
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper { width:100%; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-image .p-main-image { height:310px; padding:10px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-image-wrapper { margin-bottom:18px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-short-description-block { margin:20px 0 12px; }
}
@media(max-width:767px) {
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-headline :is(h1,.h1) { font-size:23px; line-height:1.15; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-image .p-main-image { height:245px; padding:8px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-image .flags-default { top:9px; left:9px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-image .flags-default .flag { padding:2px 4px !important; font-size:9px !important; line-height:11px !important; }
  body.tursky-apollo.type-detail.alre-detail-ready .alre-buy-box { padding:16px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid { gap:10px; margin-bottom:16px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .detail-price-block { flex-basis:90px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .detail-availability-block { flex-basis:145px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-final-price-wrapper .price-final { font-size:30px; }
  body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity { flex-basis:96px; width:96px; height:48px; }
  body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity :is(.increase,.decrease) { height:46px; line-height:46px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper .add-to-cart-button { min-height:48px; padding:10px !important; font-size:14px; gap:6px; }
  body.tursky-apollo.type-detail.alre-detail-ready .basic-description :is(p,li,td) { font-size:14px; }
  body.tursky-apollo.type-detail.alre-detail-ready .basic-description h2 { font-size:24px !important; }
  body.type-detail #alre-sticky-buy { left:0; right:0; bottom:0; border-radius:10px 10px 0 0; padding-bottom:calc(11px + env(safe-area-inset-bottom,0px)); }
  body.type-detail:has(#alre-sticky-buy.visible) { padding-bottom:calc(110px + env(safe-area-inset-bottom,0px)); }
}
@media(max-width:360px) {
  body.tursky-apollo.type-detail.alre-detail-ready .alre-buy-box { padding:12px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper .add-to-cart { gap:8px; }
  body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity { flex-basis:82px; width:82px; }
  body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity :is(.increase,.decrease) { width:28px; }
  body.tursky-apollo.type-detail.alre-detail-ready .add-to-cart .quantity input { padding:0 28px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-wrapper .add-to-cart-button { font-size:13px; }
  body.tursky-apollo.type-detail.alre-detail-ready .p-info-grid .detail-availability-block { flex-basis:140px; }
}


/* Košík: ověřené třídy Apollo, pouze vzhled kroku /kosik/ (id--9). */
body.tursky-apollo.id--9 .cart-wrapper { color:#292330; }
body.tursky-apollo.id--9 .cart-table { margin-bottom:20px; }
body.tursky-apollo.id--9 .cart-table td { padding-top:18px; padding-bottom:18px; border-color:#e8e4ed; font-size:14px; }
body.tursky-apollo.id--9 .cart-table .p-name a { color:#292330; font-size:14px; font-weight:600; line-height:1.4; }
body.tursky-apollo.id--9 .cart-table .p-availability { font-size:11px; }
body.tursky-apollo.id--9 .cart-table .quantity { border:1px solid #e1dae9; border-radius:8px; background:#fff; box-shadow:none; }
body.tursky-apollo.id--9 .cart-table .remove-item { color:#797182; }
body.tursky-apollo.id--9 #cart-wrapper .cart-content:not(.summary-wrapper) { padding:24px; border:0; border-radius:12px; background:#fff; box-shadow:none; }
body.tursky-apollo.id--9 .cart-content > .text-center .delivery-time { display:inline-flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:4px 7px; max-width:100%; padding:10px 14px; border-radius:8px; background:#f7f6f9; color:#736c7c; font-size:12px; }
body.tursky-apollo.id--9 .cart-content > .text-center .delivery-time::before { position:static; inset:auto; flex:0 0 auto; margin:0 3px 0 0; transform:none; color:#85758f; font-size:22px; line-height:1; }
body.tursky-apollo.id--9 .cart-content > .text-center .delivery-time strong { color:#514a5d; }
body.tursky-apollo.id--9 .extras-wrapper { gap:16px; margin-top:20px; }
body.tursky-apollo.id--9 .extras-wrapper > .extras-col { min-width:0; padding:18px; border:1px solid #e8e4ed; border-radius:10px; background:#faf9fc; box-shadow:none; }
body.tursky-apollo.id--9 .extras-wrapper :is(.discount-coupon,.extras-wrap,.extra-item,.extra-content,.summary-wrapper,.summary-wrapper > .box) { min-width:0; margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
body.tursky-apollo.id--9 .extras-wrapper :is(.discount-coupon,.summary-wrapper,.summary-wrapper > .box)::before,
body.tursky-apollo.id--9 .extras-wrapper :is(.discount-coupon,.summary-wrapper,.summary-wrapper > .box)::after { background:none; }
body.tursky-apollo.id--9 .discount-coupon .h4 { margin-bottom:12px; color:#514a5d; font-size:14px; }
body.tursky-apollo.id--9 .discount-coupon strong { color:inherit !important; }
body.tursky-apollo.id--9 .discount-coupon .form-control { min-height:42px; border:1px solid #ddd5e6; border-radius:7px; background:#fff; font-size:14px; box-shadow:none; }
body.tursky-apollo.id--9 .discount-coupon .btn { min-height:42px; border:1px solid #ddd5e6; border-radius:7px; background:#fff; color:#514a5d; font-family:inherit; font-size:13px; box-shadow:none; }
body.tursky-apollo.id--9 .extra.delivery { color:#736c7c; font-size:13px; line-height:1.6; }
body.tursky-apollo.id--9 .extra.delivery strong { color:#514a5d; }
body.tursky-apollo.id--9 .extra.delivery::before { color:#8b7d9b; font-size:28px; }
body.tursky-apollo.id--9 .price-range { background:#ece6f4; border-radius:8px; }
body.tursky-apollo.id--9 .price-range > div { background:#6d28d9; border-radius:8px; }
body.tursky-apollo.id--9 .extras-wrap .extra-content { display:block; }
body.tursky-apollo.id--9 .extras-wrap .price-range { position:static; height:4px; margin:0 0 14px; background:#ece6f4; }
body.tursky-apollo.id--9 .extras-wrap .price-range > div { border-radius:8px; background:#6d28d9; }
body.tursky-apollo.id--9 .extras-wrap .extra.delivery { padding-left:40px; }
body.tursky-apollo.id--9 .summary-wrapper .price-wrapper { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:baseline; gap:6px 12px; margin-bottom:16px; }
body.tursky-apollo.id--9 .summary-wrapper .price-label { margin:0; color:#736c7c; font-size:12px; }
body.tursky-apollo.id--9 .summary-wrapper strong.price-primary { color:#292330; font-size:26px; font-weight:700; white-space:nowrap; }
body.tursky-apollo.id--9 .summary-wrapper :is(.price-secondary,.price-wrapper .price-secondary) { margin:0; color:#797182; font-size:11px; }
body.tursky-apollo.id--9 .next-step--cart { display:flex; flex-direction:column; gap:8px; margin:0; }
body.tursky-apollo.id--9 #continue-order-button { order:0; display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:48px; margin:0; padding:12px 16px; border:0; border-radius:8px; background:#6d28d9; color:#fff; font-size:16px; font-weight:600; line-height:1.4; text-transform:none; box-shadow:none; }
body.tursky-apollo.id--9 #continue-order-button:hover { background:#5520ad; }
body.tursky-apollo.id--9 .next-step--cart .next-step-back { order:1; min-height:36px; margin:0; padding:8px 0; border:0; border-radius:0; background:none; color:#797182; font-size:12px; line-height:1.4; box-shadow:none; }
@media(max-width:767px) {
  body.tursky-apollo.id--9 #cart-wrapper .cart-content:not(.summary-wrapper) { padding:16px; }
  body.tursky-apollo.id--9 .extras-wrapper { gap:12px; }
  body.tursky-apollo.id--9 .extras-wrapper > .extras-col { padding:16px; }
  body.tursky-apollo.id--9 .cart-table .p-name a { font-size:13px; }
}

body.tursky-apollo.id--9 .extra.delivery :is(span,strong) { font-size:inherit; line-height:inherit; }


/* V2.2: pouze vzhled původních prvků Shoptetu / Apolla. Bez přepočtů a bez přesunu formulářů. */
body.tursky-apollo :is(.login-widget,.cart-widget) { border:1px solid #e5e0eb; border-radius:12px; background:#fff; box-shadow:0 12px 36px #2923301c; }
body.tursky-apollo .login-widget .popup-widget-inner { padding:24px; border-radius:12px; }
body.tursky-apollo .login-widget .form-group { margin-bottom:18px; }
body.tursky-apollo .login-widget label { color:#514a5d; font-size:12px; font-weight:600; letter-spacing:0; }
body.tursky-apollo .login-widget .form-control { min-height:46px; height:46px; border:1px solid #dcd5e4; border-radius:8px; background:#fff; color:#292330; box-shadow:none; font-size:16px; }
body.tursky-apollo .login-widget .form-control:focus,
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .form-control:focus { border-color:#6d28d9; outline:0; box-shadow:0 0 0 3px #6d28d91a; }
body.tursky-apollo .login-widget .submit-wrapper .btn { width:100%; min-height:46px; height:auto; padding:11px 18px; border:1px solid #6d28d9; border-radius:8px; background:#6d28d9; color:#fff; box-shadow:none; font-size:15px; font-weight:600; line-height:1.4; }
body.tursky-apollo .login-widget .submit-wrapper .btn:hover { background:#5520ad; border-color:#5520ad; }
body.tursky-apollo .login-widget #customerLogin .alternative-links { display:flex; flex-direction:column; gap:14px; margin:0; }
body.tursky-apollo .login-widget #customerLogin .alternative-links a:first-child { display:flex; align-items:center; justify-content:center; min-width:0; min-height:44px; margin:0; padding:10px 16px; border:1px solid #dcd5e4; border-radius:8px; background:#fff; color:#514a5d; box-shadow:none; font-size:14px; font-weight:600; text-decoration:none; }
body.tursky-apollo .login-widget #customerLogin .alternative-links a:last-child { color:#736c7c; font-size:12px; font-weight:400; text-transform:none; text-underline-offset:3px; }
/* Chyby zůstávají rozeznatelné; nevynucujeme neutrální barvu na validaci. */
body.tursky-apollo .login-widget :is(.has-error,.js-error-field) .form-control,
body.tursky-apollo.ordering-process:is(.id--16,.id--17) :is(.has-error,.js-error-field) .form-control,
body.tursky-apollo .login-widget .form-control[aria-invalid=true],
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .form-control[aria-invalid=true] { border-color:#b42335; }
body.tursky-apollo:is(.login-window-visible,.cart-window-visible) #header :is(.top-nav-button,.cart-count) { border-color:transparent; border-radius:8px; box-shadow:none; }

/* Náhled košíku: seznam a spodní akce v toku, místo překrytí absolutním patičkovým panelem. */
body.tursky-apollo .cart-widget { height:auto; max-height:calc(100dvh - 120px); overflow:auto; }
body.tursky-apollo .cart-widget .popup-widget-inner.full { height:auto; min-height:0; max-height:min(380px,45dvh); overflow:auto; overscroll-behavior:contain; }
body.tursky-apollo .cart-widget .cart-widget-products { margin:0; }
body.tursky-apollo .cart-widget .cart-widget-title { margin:0; padding:18px 20px 10px; color:#292330; font-size:20px; font-weight:650; }
body.tursky-apollo .cart-widget .cart-widget-product { padding:16px 48px 16px 18px; border-bottom:1px solid #efedf3; }
body.tursky-apollo .cart-widget .cart-widget-product-image { display:flex; align-items:center; justify-content:center; width:52px; height:64px; background:#fff; }
body.tursky-apollo .cart-widget .cart-widget-product-image img { width:100%; height:100%; object-fit:contain; margin:0 !important; }
body.tursky-apollo .cart-widget .cart-widget-product-name { min-width:0; gap:8px; padding-left:14px; font-size:13px; line-height:1.4; }
body.tursky-apollo .cart-widget .cart-widget-product-name strong { margin:0; font-size:13px; font-weight:600; overflow-wrap:anywhere; }
body.tursky-apollo .cart-widget .cart-widget-product-name a { color:#292330; }
body.tursky-apollo .cart-widget .cart-widget-product-name > span { color:#292330; font-size:14px; font-weight:650; }
body.tursky-apollo .cart-widget .cart-widget-product-delete { right:4px; }
body.tursky-apollo .cart-widget .cart-widget-product-delete button { width:40px; height:44px; color:#8a8194; }
body.tursky-apollo .cart-widget .quantity { min-height:36px; border-radius:6px; background:#f7f6f9; }
body.tursky-apollo .cart-widget .quantity input { background:transparent; font-size:14px; }
body.tursky-apollo .cart-widget .cart-widget-button { position:relative; inset:auto; margin:0; padding:16px 18px; border-top:1px solid #e9e5ee; background:#f9f8fb; border-radius:0 0 12px 12px; }
body.tursky-apollo .cart-widget .cart-widget-button .btn.btn-conversion { display:flex; align-items:center; justify-content:center; width:100%; min-height:46px; margin:14px 0 0; padding:11px 14px; border:0; border-radius:8px; background:#6d28d9; color:#fff; box-shadow:none; font-size:14px; line-height:1.4; }
body.tursky-apollo .cart-widget :is(.extra.delivery,.cart-free-shipping) { margin:0; padding:0 0 0 34px; color:#736c7c; font-size:12px; line-height:1.5; }
body.tursky-apollo .cart-widget :is(.extra.delivery,.cart-free-shipping)::before { left:0; color:#8a7b9a; font-size:24px; }
body.tursky-apollo .cart-widget :is(.extra.delivery,.cart-free-shipping) strong { color:#514a5d; font-size:inherit; }
body.tursky-apollo .cart-widget .price-range { height:3px; margin:0 0 12px; border-radius:3px; background:#e9e3f1; }
body.tursky-apollo .cart-widget .price-range > div { height:100%; border-radius:inherit; background:#8a63bf; }

/* Potvrzení přidání: nativní modal, jeho zavření a všechna původní tlačítka. */
body.tursky-apollo #cboxContent:has(.advanced-order) { border-radius:12px; background:#fff; }
body.tursky-apollo #cboxLoadedContent:has(.advanced-order) { max-width:100%; }
body.tursky-apollo .colorbox-html-content:has(> .advanced-order) { padding:24px; }
body.tursky-apollo .advanced-order .h1:not(.advanced-order-suggestion) { height:auto; min-height:62px; margin:-24px -24px 22px; padding:18px 56px 18px 58px; border-bottom:1px solid #e8e3ee; border-radius:12px 12px 0 0; background:#f7f4fc; color:#292330; font-size:18px; font-weight:650; line-height:1.4; }
body.tursky-apollo .advanced-order .h1:not(.advanced-order-suggestion)::before { left:20px; color:#6d28d9; font-size:26px; }
body.tursky-apollo #cboxContent:has(.advanced-order) #cboxClose { top:12px; right:12px; width:40px; height:40px; color:#736c7c; }
body.tursky-apollo .advanced-order .h2 { max-width:760px; margin:0 auto 22px; color:#292330; font-size:18px; line-height:1.4; overflow-wrap:anywhere; }
body.tursky-apollo .advanced-order :is(.extra-item,.extra-content) { background:#f9f8fb; border-radius:8px; }
body.tursky-apollo .advanced-order .extra.delivery { color:#736c7c; font-size:14px; line-height:1.5; }
body.tursky-apollo .advanced-order .extra.delivery strong { color:#514a5d; font-size:inherit; }
body.tursky-apollo .advanced-order .extra.delivery::before { color:#8a7b9a; font-size:32px; }
body.tursky-apollo .advanced-order .price-range { height:4px; border-radius:4px; background:#e9e3f1; }
body.tursky-apollo .advanced-order .price-range > div { height:100%; background:#8a63bf; border-radius:inherit; }
body.tursky-apollo .advanced-order .advancedOrder__buttons { display:flex; justify-content:center; gap:12px; margin-top:22px; }
body.tursky-apollo .advanced-order .advancedOrder__buttons .btn { display:inline-flex; flex:0 1 260px; align-items:center; justify-content:center; min-height:46px; margin:0; padding:12px 18px; border:1px solid #ddd5e6; border-radius:8px; background:#fff; color:#514a5d; box-shadow:none; font-size:14px; line-height:1.4; }
body.tursky-apollo .advanced-order .advancedOrder__buttons .btn-conversion { border-color:#6d28d9; background:#6d28d9; color:#fff; }

/* Doprava, platba, osobní údaje. Nativní výběr, souhlasy i chyby zůstávají. */
body.tursky-apollo.ordering-process:is(.id--16,.id--17) { --basket-bg:#f8f7fa; --basket-choose-box-bg:#f6f2fc; --basket-choose-box-border:#bda5dc; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .cart-header { margin-bottom:28px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .cart-header li { font-size:14px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .co-box { margin-bottom:30px; padding-bottom:0; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .co-box h2 { margin:0 0 20px; color:#292330; font-size:22px; line-height:1.3; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .co-box h2::before { color:#8a8194; font-size:28px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .form-group { margin-bottom:18px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) :is(label,p.label) { letter-spacing:0; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .form-group > label { color:#514a5d; font-size:12px; font-weight:600; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .form-control { min-height:46px; height:46px; border:1px solid #dcd5e4; border-radius:8px; background:#fff; box-shadow:none; color:#292330; font-size:16px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) textarea.form-control { height:auto; min-height:100px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper { margin-bottom:9px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper input[type=radio] + label { min-height:76px; padding-block:14px; border:1px solid #ded8e7; border-radius:9px; background:#fff; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper input[type=radio]:checked + label { border-color:#bda5dc; background:#f6f2fc; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper input[type=radio]:checked + label::before { border-color:#6d28d9; background-color:#6d28d9; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper input[type=radio]:focus-visible + label { outline:2px solid #6d28d9; outline-offset:2px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper .shipping-billing-name { color:#292330; font-size:15px; font-weight:600; line-height:1.4; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper label > .payment-shipping-price { color:#292330; font-size:14px; white-space:nowrap; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper .sublabel a { color:#685777; font-size:11px; font-weight:600; text-transform:none; text-underline-offset:3px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) :is(.order-summary-top,.order-summary-bottom) { padding:20px; border:1px solid #e8e3ee; border-radius:10px; background:#f8f7fa; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary-top { margin-bottom:16px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary-top h2 { margin:0 0 18px; color:#292330; font-size:19px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary .cart-item { padding-block:9px; font-size:13px; line-height:1.5; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary .cart-item { display:grid; grid-template-columns:minmax(0,1fr) 30px auto; gap:8px; align-items:start; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary .cart-item > div { width:auto; padding:0; overflow-wrap:anywhere; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary .cart-item-name a { color:#514a5d; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary .cart-item-price { color:#292330; font-size:13px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary .recapitulation-single { padding-block:6px; font-size:13px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .recapitulation-shipping-billing-info { color:#514a5d; font-style:normal; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .recapitulation-shipping-billing-info > span { color:#292330; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary .price-wrapper { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:baseline; gap:6px 12px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary .price-wrapper > * { width:auto; margin:0; padding:0; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary .price-label.price-primary { color:#514a5d; font-size:15px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary strong.price-primary { color:#292330; font-size:28px; line-height:1.3; white-space:nowrap; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary .price-secondary { color:#797182; font-size:12px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .next-step { border-radius:0 0 10px 10px; background:#f8f7fa; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .next-step :is(.next-step-forward,.next-step-finish) { min-height:48px; height:auto; padding:12px 18px; border:0; border-radius:8px; background:#6d28d9; color:#fff; box-shadow:none; font-size:16px; font-weight:600; line-height:1.4; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .next-step :is(.next-step-forward,.next-step-finish):hover { background:#5520ad; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) :is(.next-step-back,.login-button) { min-height:44px; height:auto; padding:11px 16px; border:1px solid #ddd5e6; border-radius:8px; background:#fff; color:#655c70; box-shadow:none; font-size:13px; line-height:1.4; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .next-step-finish .order-button-suffix { font-size:12px; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) :is(.consents,.consents-first,.consents-second,.consents-summary) { color:#655c70; font-size:12px; line-height:1.6; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .order-summary-bottom label { color:#655c70; font-size:12px; font-weight:400; line-height:1.5; }
/* Stavy validace mají přednost před novým základním okrajem, včetně právě zaostřeného pole. */
body.tursky-apollo .login-widget .form-control:is(.error-field,.js-error-field),
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .form-control:is(.error-field,.js-error-field),
body.tursky-apollo #footer #formNewsletterWidget .form-control:is(.error-field,.js-error-field) { border-color:#b42335; }
body.tursky-apollo .login-widget .form-control:is(.error-field,.js-error-field):focus,
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .form-control:is(.error-field,.js-error-field):focus,
body.tursky-apollo #footer #formNewsletterWidget .form-control:is(.error-field,.js-error-field):focus { border-color:#b42335; outline:0; box-shadow:0 0 0 3px #b423351a; }
body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper input[type=radio]:is(.error-field,.js-error-field) + label { border-color:#b42335; }
@media(max-width:767px) {
  body.tursky-apollo .login-widget .popup-widget-inner { padding:20px; }
  body.tursky-apollo .cart-widget { max-height:calc(100dvh - 80px); }
  body.tursky-apollo .cart-widget .popup-widget-inner.full { max-height:42dvh; }
  body.tursky-apollo .colorbox-html-content:has(> .advanced-order) { padding:18px; }
  body.tursky-apollo .advanced-order .h1:not(.advanced-order-suggestion) { margin:-18px -18px 18px; padding:16px 48px 16px 48px; font-size:16px; }
  body.tursky-apollo .advanced-order .h1:not(.advanced-order-suggestion)::before { left:16px; font-size:22px; }
  body.tursky-apollo .advanced-order .h2 { font-size:16px; }
  body.tursky-apollo .advanced-order .advancedOrder__buttons { flex-wrap:wrap; }
  body.tursky-apollo .advanced-order .advancedOrder__buttons .btn { flex-basis:100%; }
  body.tursky-apollo.ordering-process:is(.id--16,.id--17) .co-box { margin-bottom:24px; }
  body.tursky-apollo.ordering-process:is(.id--16,.id--17) .co-box h2 { font-size:20px; }
  body.tursky-apollo.ordering-process:is(.id--16,.id--17) :is(.order-summary-top,.order-summary-bottom) { padding:16px; }
  body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper .payment-logo { max-width:54px; }
  body.tursky-apollo.ordering-process:is(.id--16,.id--17) .radio-wrapper .shipping-billing-name { font-size:14px; }
}
