/* ============================================================
   Žlučník – vlastní úpravy (child šablona cassiopeia_zlucnik)
   Update-safe: leží v media child šablony, jádro nepřepisuje.
   ============================================================ */

/* --- Hlavička: kompaktní jeden řádek, svisle vycentrovaný --- */
.container-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: 1.5rem;
  padding-inline: 2rem;        /* odsazení od levého i pravého okraje */
}

/* zrušit stock .grid-child width:100% (nutil nadpis a hledání pod sebe) */
.container-header .grid-child {
  width: auto;
  flex: 0 1 auto;
  margin: 0;
  padding-block: 0.35rem;
  padding-inline: 0;
}
.container-header .container-nav {
  padding-block: 0;            /* symetricky = vyhledávání svisle vycentrované */
  display: flex;
  align-items: center;
}
/* jemný posun vyhledávání nahoru, ať není nalepené na spodní okraj */
.container-header .container-search {
  transform: translateY(-4px);
}
.container-header nav {
  margin-top: 0;
}

/* --- Nadpis webu: výrazně větší a tučný --- */
.container-header .brand-logo {
  display: inline-flex;
  align-items: center;
  text-decoration: none;       /* nadpis bez podtržení */
}
.container-header .brand-logo:hover,
.container-header .brand-logo:focus {
  text-decoration: none;
}
.container-header .brand-logo span {
  font-size: 2.25rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.1;
  white-space: nowrap;
}

/* --- Pravý sidebar: zúžení sloupce na šířku náhledů (obrázky mají 180 px) --- */
@media (min-width: 992px) {
  body.has-sidebar-right .site-grid {
    grid-template-columns:
      [full-start] minmax(0, 1fr)
      [main-start] minmax(0, 19.875rem) minmax(0, 19.875rem) minmax(0, 19.875rem) 214px
      [main-end] minmax(0, 1fr) [full-end];
  }
}

/* --- Pravý sidebar: nadpisy ČLÁNKŮ v modulech (menší font, podtržení až na hover) --- */
.container-sidebar-right .newsflash-title {
  font-size: 0.9rem;               /* ještě menší */
  line-height: 1.25;
  margin-bottom: 0.7rem;           /* větší mezera mezi nadpisem a obrázkem */
}
.container-sidebar-right .newsflash-title a {
  font-weight: 600;
  text-decoration: none;           /* bez podtržení ve výchozím stavu */
}
.container-sidebar-right .newsflash-title a:hover,
.container-sidebar-right .newsflash-title a:focus {
  text-decoration: underline;      /* podtržení až na hover */
}

/* --- Jemný oddělovač mezi jednotlivými články v modulu --- */
.container-sidebar-right .mod-articlesnews__item + .mod-articlesnews__item {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  margin-top: 1rem;
  padding-top: 1rem;
}

/* --- Nadpisy článků ve výpisech (úvod = .item-title, kategorie-blog = .page-header h2):
   menší font, podtržení až na hover --- */
.container-component .item-title,
.container-component .com-content-category-blog__item .page-header > h2 {
  font-size: 1.5rem;               /* menší (bylo 32 px = 2rem) */
}
.container-component .item-title a,
.container-component .com-content-category-blog__item .page-header > h2 a {
  text-decoration: none;           /* bez podtržení ve výchozím stavu */
}
.container-component .item-title a:hover,
.container-component .item-title a:focus,
.container-component .com-content-category-blog__item .page-header > h2 a:hover,
.container-component .com-content-category-blog__item .page-header > h2 a:focus {
  text-decoration: underline;      /* podtržení až na hover */
}

/* --- Blog kategorie: větší mezera mezi dvěma sloupci článků --- */
.container-component .com-content-category-blog__items.columns-2 {
  column-gap: 2.5rem;              /* prostřední mezera (bylo 16 px) */
}

/* --- Info-blok článku: skrýt titulek, menší font, užší řádkování --- */
.article-info-term {
  display: none;                 /* skrýt "Základní údaje" */
}
.article-info {
  font-size: 0.8rem;             /* menší (bylo 16 px) */
  line-height: 1.3;
  margin-bottom: 0.6rem;
}
.article-info dd {
  margin-bottom: 0.15rem;        /* užší mezery mezi řádky (bylo 8 px) */
}

/* --- Kategorie blog: nadpis nahoře, obrázek vlevo, text obtéká (jako Protostar) --- */
.com-content-category-blog__item {
  display: flow-root;              /* obalí float, ať nepřetéká do dalšího článku */
}
.com-content-category-blog__item figure.item-image.left,
.com-content-category-blog__item .item-image.left {
  float: left;
  margin: 0 1rem 0.75rem 0;        /* mezera vpravo a dole vedle/pod obrázkem */
}
.com-content-category-blog__item .item-content {
  clear: none;                     /* text obtéká obrázek, nezačíná až pod ním */
}

/* --- Patička: modul (Jaroslav Jána - kontakt) na střed --- */
.container-footer {
  text-align: center;
}
.container-footer .grid-child {
  justify-content: center;   /* grid-child je flex space-between → vycentrovat modul */
}

/* --- Hamburger + mobilní menu (na desktopu skryté) --- */
.zl-hamburger,
#zl-mobile-menu {
  display: none;
}

/* --- Mobil (< 992px): hlavička na řádky, mezera pod hledáním, hamburger --- */
@media (max-width: 991.98px) {
  .container-header {
    flex-wrap: wrap;
    position: relative;
    padding-bottom: 0.6rem;          /* dech pod vyhledáváním */
  }
  .container-header .grid-child {
    width: 100%;
  }
  .container-header .container-nav {
    padding-bottom: 0.3rem;
  }

  /* tlačítko hamburger vpravo nahoře */
  .zl-hamburger {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    position: absolute;
    top: 0.6rem;
    right: 1rem;
    z-index: 30;
    width: 46px;
    height: 40px;
    padding: 9px 10px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 5px;
    cursor: pointer;
  }
  .zl-hamburger span {
    display: block;
    width: 100%;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    transition: transform 0.2s, opacity 0.2s;
  }
  .container-header.zl-menu-open .zl-hamburger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .container-header.zl-menu-open .zl-hamburger span:nth-child(2) { opacity: 0; }
  .container-header.zl-menu-open .zl-hamburger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

  /* rozbalovací panel s menu (klon ze sidebaru) */
  #zl-mobile-menu {
    display: none;
    order: 99;
    width: 100%;
    flex-basis: 100%;
    margin-top: 0.5rem;
    background: #fff;
    border-radius: 5px;
    overflow: hidden;
  }
  .container-header.zl-menu-open #zl-mobile-menu {
    display: block;
  }
  #zl-mobile-menu ul { list-style: none; margin: 0; padding: 0; }
  #zl-mobile-menu li { border-bottom: 1px solid rgba(0, 0, 0, 0.08); }
  #zl-mobile-menu li:last-child { border-bottom: 0; }
  #zl-mobile-menu a {
    display: block;
    padding: 0.7rem 1rem;
    color: #333;
    text-decoration: none;
  }
  #zl-mobile-menu a:hover,
  #zl-mobile-menu a:focus { background: rgba(0, 0, 0, 0.05); }
}
