/* ============================================================
   BASTLIK.CZ — Redesign stránky VÝSLEDKY VYHLEDÁVÁNÍ (v3)
   Záhlaví (<style>). VLOŽIT AŽ ZA stávající CSS.

   Sjednocuje vzhled s výpisem kategorie (bastlik-category-listing).
   Stránka vyhledávání má jiný body než type-category, proto se sem
   kategorijní CSS nenačte — tady je jeho „dvojče" scopované na
   vyhledávací kontejnery (#products-found, .search-results-groups,
   h2 s .highlight). Karty jsou 1:1 jako v kategorii.

   Vyhledávání je "wide" (bez bočního menu) → víc místa → na desktopu
   4 sloupce produktů. Prefix hodnot přes literály (barvy dle systému).
   ============================================================ */

/* font sjednocený s kategorií */
#products-found,
.search-results-groups,
#content h2:has(> .highlight) {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

/* ============================================================
   NADPISY
   ============================================================ */
#content h2:has(> .highlight) {
  font-size: 30px;
  font-weight: 800;
  color: #16233a;
  margin-bottom: 24px;
}
#content h2:has(> .highlight) .highlight {
  color: #007bff;
}
#products-found .search-products-heading {
  font-size: 22px;
  font-weight: 800;
  color: #16233a;
  margin: 8px 0 18px;
}

/* ============================================================
   BLOKY "Kategorie" a "Články" — karty s chip odkazy
   ============================================================ */
.search-results-groups {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 16px;
  margin: 0 0 32px 0;
}
.search-results-group {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 16px 18px;
}
.search-results-group h4 {
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .4px;
  color: #6b7280;
  margin: 0 0 12px 0;
}
.search-results-group-list ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.search-results-group-list li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.search-results-group-list li a {
  display: inline-flex;
  align-items: center;
  padding: 7px 12px;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  color: #16233a !important;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none !important;
  transition: border-color .15s ease, color .15s ease, background .15s ease;
}
.search-results-group-list li a:hover {
  border-color: #007bff;
  color: #007bff !important;
  background: #ffffff;
  text-decoration: none !important;
}
/* vždy ukázat všechny odkazy (chip) a skrýt rozbalovací tlačítko
   "Zobrazit vše", které na mobilu/tabletu nešlo rozkliknout */
.search-results-group .search-results-group-list,
.search-results-group .search-results-group-list ul {
  max-height: none !important;
  overflow: visible !important;
}
.search-results-group .search-results-group-list li {
  display: block !important;   /* přebije případné skrytí přebytečných položek */
}
.search-results-group .display-results-group {
  display: none !important;
}

/* ============================================================
   HLAVNÍ VÝPIS PRODUKTŮ (#products-found .products-block)
   — 1:1 s kartami v kategorii, jen 4 sloupce (wide layout)
   ============================================================ */
#products-found .products-block {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px !important;
}
#products-found .products-block > .product {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  border: none !important;
  background: transparent !important;
}
/* Karta */
#products-found .products-block > .product > .p {
  display: flex !important;
  flex-direction: column !important;
  height: 100%;
  width: 100%;
  min-width: 0;
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 14px !important;
  padding: 16px !important;
  transition: box-shadow .2s ease, border-color .2s ease;
}
/* FAKE-LIFT: karta se nesmí hýbat, iluzi dělá jen stín */
#products-found .products-block > .product,
#products-found .products-block > .product:hover,
#products-found .products-block > .product > .p,
#products-found .products-block > .product:hover > .p,
#products-found .products-block > .product > .p:hover,
#products-found .products-block > .product .image img,
#products-found .products-block > .product:hover .image img {
  transform: none !important;
  scale: none !important;
  top: auto !important;
}
#products-found .products-block > .product:hover > .p,
#products-found .products-block > .product > .p:hover {
  box-shadow: 0 14px 30px rgba(22, 34, 56, 0.13);
  border-color: #e5e7eb !important;
}
/* Obrázek — bílé pozadí */
#products-found .products-block > .product .p > a.image {
  display: block;
  margin: 0 0 14px 0 !important;
  border-radius: 10px;
  overflow: hidden;
  background: #ffffff;
  aspect-ratio: 4 / 3;
}
#products-found .products-block > .product .p > a.image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
/* Vnitřní layout + zarovnat VŠE doleva (Shoptet dává text-align:center) */
#products-found .products-block > .product .p-in,
#products-found .products-block > .product .p-in-in {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  flex: 1;
  min-width: 0;
}
#products-found .products-block > .product .p-in,
#products-found .products-block > .product .p-in-in,
#products-found .products-block > .product .ratings-wrapper,
#products-found .products-block > .product .p-bottom,
#products-found .products-block > .product .offers,
#products-found .products-block > .product .prices,
#products-found .products-block > .product .name,
#products-found .products-block > .product .availability,
#products-found .products-block > .product .price-final {
  text-align: center !important;
}
/* Název — max 2 řádky, pak "…" — vycentrovaný jako v kategoriích */
#products-found .products-block > .product .name {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #16233a !important;
  line-height: 1.35 !important;
  margin-bottom: 8px !important;
}
#products-found .products-block > .product .name span {
  color: #16233a !important;
  text-align: center !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
/* Hvězdičky skryté */
#products-found .products-block > .product .stars-wrapper,
#products-found .products-block > .product .stars-placeholder {
  display: none !important;
}
/* Dostupnost (barvu skladem/vyprodáno nechávám z Shoptetu) */
#products-found .products-block > .product .availability {
  font-size: 13.5px;
  font-weight: 600;
  margin-bottom: 10px;
}
#products-found .products-block > .product .availability-amount {
  color: #6b7280;
  font-weight: 500;
}
/* Kód produktu skrytý */
#products-found .products-block > .product .p-code {
  display: none !important;
}
/* Spodní blok — tlačítko dole */
#products-found .products-block > .product .p-bottom {
  margin-top: auto !important;
}
#products-found .products-block > .product .prices {
  margin-bottom: 12px;
}
/* Tlačítko (Do košíku i Detail) — zelené na celou šířku */
#products-found .products-block > .product .p-tools {
  margin: 0 !important;
}
#products-found .products-block > .product .p-tools form {
  margin: 0 !important;
}
#products-found .products-block > .product .p-tools .btn,
#products-found .products-block > .product .p-tools .btn:last-child,
#products-found .products-block > .product .p-tools .add-to-cart-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px;
  width: 100% !important;
  height: 46px !important;
  padding: 0 16px !important;
  background: #9ccc00 !important;
  border: none !important;
  border-color: #9ccc00 !important;
  border-radius: 10px !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .2px;
  transition: background .15s ease;
}
#products-found .products-block > .product .p-tools .btn:hover,
#products-found .products-block > .product .p-tools .btn:last-child:hover,
#products-found .products-block > .product .p-tools .add-to-cart-button:hover {
  background: #8bb400 !important;
  border-color: #8bb400 !important;
}

/* ============================================================
   Tlačítko "Načíst další" — čistý sekundární styl
   ============================================================ */
#products-found .loadMore {
  text-align: center;
  margin-top: 10px;
}
#products-found .loadMore__button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 46px;
  padding: 0 24px !important;
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 10px !important;
  color: #16233a !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  transition: border-color .15s ease, color .15s ease;
}
#products-found .loadMore__button:hover {
  border-color: #007bff !important;
  color: #007bff !important;
  background: #ffffff !important;
}

/* ============================================================
   RESPONZIVITA (wide layout: 4 → 3 → 2 → 1)
   ============================================================ */
@media (max-width: 1199px) {
  #products-found .products-block {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  #products-found .products-block {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px !important;
  }
  #content h2:has(> .highlight) {
    font-size: 24px;
  }
  #products-found .search-products-heading {
    font-size: 20px;
  }
  #products-found .products-block > .product > .p {
    padding: 12px !important;
  }
  .search-results-groups {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 479px) {
  #products-found .products-block {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px !important;
  }
  #products-found .products-block > .product > .p {
    padding: 10px !important;
  }
  #products-found .products-block > .product .p-tools .btn {
    font-size: 13px !important;
    height: 42px !important;
    padding: 0 8px !important;
  }
}
