/* Nabídka kategorií po najetí (bs222, 6. 11. 2026): kategorie rovnou v liště, pod nimi přehled podkategorií po šířkách ("Šířka 80 cm ______" + rozměry).
   Markup: includes/functions/extra_functions/bs_menu_najeti.php, chování: jscript_bs_menu_najeti.js. Jen počítač (od 992 px); mobil má svislou nabídku (tpl_offcanvas_menu.php).
   Položky lišty mají podbarvení po najetí a větší písmo (bez šipek, ať se nejdelší lišty vejdou na jeden řádek); řádky přehledu jsou větší a podbarvují se také. Barvy z proměnných obchodu (--obchod-primarni). */
@media (min-width: 992px) {
  #navMain {
    --bs-menu-podklad: var(--cmf-lehke, #eff0f1);
    --bs-menu-pismo: .8125rem;
    --bs-menu-vodorovne: .5rem;
  }
  @supports (background: color-mix(in srgb, red 10%, white)) {
    #navMain { --bs-menu-podklad: color-mix(in srgb, var(--obchod-primarni, #4f7b16) 13%, #fff); }
  }

  /* --- položky lišty: větší písmo, podbarvení po najetí --- */
  #navMain .bs-nav .bs-nav-seznam > .nav-item.bs-nav-kategorie > .nav-link,
  #navMain .bs-nav .bs-nav-seznam > .nav-item.bs-nav-odkaz > .nav-link {
    font-size: var(--bs-menu-pismo); padding-left: var(--bs-menu-vodorovne); padding-right: var(--bs-menu-vodorovne);
    border-radius: .45rem .45rem 0 0; transition: background-color .15s ease, color .15s ease;
  }
  #navMain .bs-nav .bs-nav-seznam > .nav-item.bs-nav-kategorie > .nav-link:hover,
  #navMain .bs-nav .bs-nav-seznam > .nav-item.bs-nav-kategorie > .nav-link:focus-visible,
  #navMain .bs-nav .bs-nav-seznam > .nav-item.bs-nav-odkaz > .nav-link:hover,
  #navMain .bs-nav .bs-nav-seznam > .nav-item.bs-nav-odkaz > .nav-link:focus-visible,
  #navMain .bs-nav .bs-nav-seznam > .nav-item.bs-nav-s-nabidkou.is-otevreno > .nav-link { background: var(--bs-menu-podklad); }

  /* nabídka se kotví k liště (#navMain .bs-nav je position: relative), položka s nabídkou proto sama není pozicovaná */
  #navMain .bs-nav .bs-nav-s-nabidkou { position: static; }
  #navMain .bs-nav .bs-nav-s-nabidkou--seznam { position: relative; }
  #navMain .bs-nav .bs-nav-s-nabidkou > .nav-link { cursor: pointer; }

  /* šablona dává #navbarSupportedContent pro mobil max-height 90vh a overflow-y: auto (bez media query) - na počítači by oříznulo nabídky ve vlastním (relativním) kontejneru */
  #navMain #navbarSupportedContent { overflow: visible; max-height: none; }
  /* top: auto = těsně pod odkazem položky (i když se lišta zalomí do dvou řádků, mezi položkou a nabídkou není mezera, kterou by myš opustila hover) */
  .bs-nabidka { display: none; position: absolute; top: auto; left: 0; right: 0; z-index: 1040; box-sizing: border-box; padding: 1.5rem 2rem 1.75rem; background: #fff; text-align: left;
    border: 1px solid var(--cmf-ramecek, #dcdfe0); border-top: 3px solid var(--obchod-primarni, #4f7b16); border-radius: 0 0 var(--obchod-zaobleni, .5rem) var(--obchod-zaobleni, .5rem);
    box-shadow: 0 12px 28px rgba(13, 59, 79, .15); max-height: calc(100vh - 15rem); overflow-y: auto; }   /* přesnou výšku podle spodku lišty dosazuje JS */
  .bs-nabidka--seznam { right: auto; min-width: 19rem; max-width: 30rem; padding: 1.1rem 1.5rem 1.25rem; }

  /* otevření: JS třída (dotyk) a klávesnice (viditelný fokus uvnitř položky; klik myší nabídku nezasekne); myš viz níže */
  #navMain .bs-nav .bs-nav-s-nabidkou.is-otevreno > .bs-nabidka { display: block; }
  #navMain .bs-nav .bs-nav-s-nabidkou.is-otevreno > .nav-link { border-bottom-color: var(--obchod-primarni, #4f7b16); color: var(--obchod-primarni, #4f7b16); }
  @supports selector(:has(*)) {
    #navMain .bs-nav .bs-nav-s-nabidkou:has(:focus-visible) > .bs-nabidka { display: block; }
    #navMain .bs-nav .bs-nav-s-nabidkou:has(:focus-visible) > .nav-link { border-bottom-color: var(--obchod-primarni, #4f7b16); color: var(--obchod-primarni, #4f7b16); background: var(--bs-menu-podklad); }
  }
  @supports not selector(:has(*)) {
    #navMain .bs-nav .bs-nav-s-nabidkou:focus-within > .bs-nabidka { display: block; }
    #navMain .bs-nav .bs-nav-s-nabidkou:focus-within > .nav-link { border-bottom-color: var(--obchod-primarni, #4f7b16); color: var(--obchod-primarni, #4f7b16); background: var(--bs-menu-podklad); }
  }
  #navMain .bs-nav .bs-nav-s-nabidkou.is-zavreno > .bs-nabidka { display: none !important; }
  #navMain .bs-nav .bs-nav-s-nabidkou:hover > .bs-nabidka { z-index: 1041; }   /* nabídka pod myší je nad případnou druhou otevřenou fokusem */

  /* skupiny po šířkách ve sloupcích (sloupce se plní shora dolů, skupina se nerozdělí); šířka sloupce podle nejdelšího nadpisu v nabídce (--bs-nabidka-ch = počet znaků, píše PHP) */
  .bs-nabidka-skupiny { column-width: 15rem; column-width: max(11.5rem, calc(var(--bs-nabidka-ch, 14) * .47rem + 2.4rem)); column-gap: 2.25rem; }
  .bs-nabidka-skupina { min-width: 0; break-inside: avoid; page-break-inside: avoid; -webkit-column-break-inside: avoid; margin-bottom: 1.4rem; }
  .bs-nabidka--rozmery { padding-bottom: .5rem; }
  .bs-nabidka-nadpis { display: flex; align-items: center; gap: .7rem; margin: 0 0 .55rem; font-size: 1.0625rem; font-weight: 700; line-height: 1.2; color: var(--obchod-sekundarni, #0d3b4f); white-space: nowrap; }
  .bs-nabidka-nadpis::after { content: ""; flex: 1 1 auto; min-width: .75rem; border-top: 1px solid var(--cmf-ramecek, #dcdfe0); }
  .bs-nabidka li a { display: block; margin: 0 -.6rem; padding: .36rem .6rem; font-size: 1rem; line-height: 1.3; color: var(--obchod-text, #26343a); text-decoration: none; white-space: nowrap;
    border-radius: .4rem; transition: background-color .12s ease, color .12s ease; }
  .bs-nabidka li a:hover, .bs-nabidka li a:focus { background: var(--bs-menu-podklad); color: var(--obchod-primarni, #4f7b16); text-decoration: none; }
  .bs-nabidka--seznam li a { white-space: normal; padding: .45rem .6rem; }
}

/* písmo lišty podle šířky: nejdelší nabídky (devět položek) se musí vejít na jeden řádek, proto stupně */
@media (min-width: 1200px) { #navMain { --bs-menu-pismo: .84375rem; --bs-menu-vodorovne: .5rem; } }
@media (min-width: 1280px) { #navMain { --bs-menu-pismo: .90625rem; --bs-menu-vodorovne: .5rem; } }
@media (min-width: 1366px) { #navMain { --bs-menu-pismo: .96875rem; --bs-menu-vodorovne: .5rem; } }
@media (min-width: 1400px) { #navMain { --bs-menu-pismo: 1rem; --bs-menu-vodorovne: .55rem; } }

/* najetí myší jen tam, kde je myš (dotykové tablety s širokou obrazovkou otevírá JS prvním klepnutím) */
@media (min-width: 992px) and (hover: hover) {
  #navMain .bs-nav .bs-nav-s-nabidkou:hover > .bs-nabidka { display: block; }
  #navMain .bs-nav .bs-nav-s-nabidkou.is-zavreno:hover > .bs-nabidka { display: none; }
  #navMain .bs-nav .bs-nav-s-nabidkou:hover > .nav-link { border-bottom-color: var(--obchod-primarni, #4f7b16); color: var(--obchod-primarni, #4f7b16); background: var(--bs-menu-podklad); }
}

/* střední šířky: užší sloupce, aby se přehled vešel */
@media (min-width: 992px) and (max-width: 1199.98px) {
  .bs-nabidka { padding-left: 1.25rem; padding-right: 1.25rem; }
  .bs-nabidka-skupiny { column-gap: 1.75rem; }
  .bs-nabidka li a { font-size: .9375rem; }
}

@media (max-width: 991.98px) {
  .bs-nabidka { display: none !important; }
}

@media print {
  .bs-nabidka { display: none !important; }
}
