/*:root{
  --color-primary-600:#00321D;
}*/
/*
.preslogo {
  position: relative;
.preslogo img {
  width: 200px;
  height: auto;
}
}*/

:root{
    --color-primary-400:#c7ebc9;
}

/* Menší mezera před patičkou – gov-container má obří padding-bottom (--spacing-8xl) */
gov-container#main,
.gov-container#main {
    padding-bottom: 3rem;
}

section h2+p {
  margin-top: 0px;
}

/* Odsazení nadpisu, který následuje po textu/seznamu (oddělení od předchozího odstavce) */
.gov-content p + h2,
.gov-content ul + h2,
.gov-content ol + h2,
.gov-content blockquote + h2 {
  margin-top: 2rem;
}
.gov-content p + h3,
.gov-content ul + h3,
.gov-content ol + h3,
.gov-content blockquote + h3 {
  margin-top: 1.6rem;
}
.gov-content p + h4,
.gov-content ul + h4,
.gov-content ol + h4,
.gov-content blockquote + h4 {
  margin-top: 1.3rem;
}
/* Když je nadpis zabalený ve vlastní <section> (ruční stránky) – odsadit sekce mezi sebou */
.gov-content section + section {
  margin-top: 2rem;
}

/* Rezervace místa pro ikony před lazy-load — zabraňuje CLS.
   Jen inline ikony bez slotu; ikony v kartách (slot="icon") si velikost řídí JVS komponenta.
   POZOR: nenastavovat display/vertical-align – přebíjelo to JVS komponenty (přepínač režimu,
   kde jsou ikony absolutně polohované) a vyhazovalo ikony z pozice. Jen rezervace rozměru. */
gov-icon:not([slot]) {
  width: 1.5em;
  height: 1.5em;
}
/* Komponenty, které si ikony plně řídí samy (mají vlastní rozměr i pozici) – nechat být. */
gov-theme-switch gov-icon:not([slot]),
.gov-theme-switch gov-icon:not([slot]) {
  width: auto;
  height: auto;
}

/* Výjimka: chevron v drobečkové navigaci si velikost i zarovnání řídí JVS (jinak ho výše
   uvedené pravidlo zvětší, změní display a rozhodí řádek). Plně obnovíme JVS chování.
   Vyšší specificita než gov-icon:not([slot]). */
gov-breadcrumbs li gov-icon:not([slot]),
.gov-breadcrumbs li gov-icon:not([slot]) {
  display: inline-flex;
  width: var(--icon-size, var(--icon-size-xs, 16px));
  height: var(--icon-size, var(--icon-size-xs, 16px));
  margin: 0 var(--gap, var(--spacing-s, 8px));
}
gov-breadcrumbs li:first-child gov-icon:not([slot]),
.gov-breadcrumbs li:first-child gov-icon:not([slot]) {
  margin-left: 0;
}

/* Tlačítko „Portál“ v hlavičce – text posunutý o 2 px dolů (ikona zůstává) */
.portal-text { position: relative;
  top: 1.5px;
  color: white;}

/* Vyhledávání: zelené tlačítko s lupou i na malém rozlišení
   (JVS pod 48em tlačítka skrývá a nechává jen lupu uvnitř pole). */
@media (max-width: 47.99em) {
  .gov-search gov-button[native-type="submit"][slot="button"] { display: flex; }
  .gov-search *[slot="input"] gov-icon[slot="icon-start"] { display: none; }
}

/* Varovná bublina (gov-infobar) – přesné pozadí dle JVS přes proměnnou --background.
   Globálně (titulní strana, ČBÚ, OBÚ, administrace varování). */
.obu-infobar { --background: rgb(250, 227, 222); }
[data-theme="dark"] .obu-infobar { --background: rgb(74, 3, 26); }

/* Ikona externího odkazu v hlavním menu (Úřední deska) – menší, zarovnaná na text */
gov-icon.menu-ext-ico:not([slot]) {
  width: .85em;
  height: .85em;
  vertical-align: -.05em;
  margin-left: 4px;
  color: #000;
  position: relative;
  top: -1px;
}
a:hover gov-icon.menu-ext-ico:not([slot]),
a:focus-visible gov-icon.menu-ext-ico:not([slot]) {
  color: inherit;
}
[data-theme="dark"] gov-icon.menu-ext-ico:not([slot]) {
  color: #fff;
}
[data-theme="dark"] a:hover gov-icon.menu-ext-ico:not([slot]),
[data-theme="dark"] a:focus-visible gov-icon.menu-ext-ico:not([slot]) {
  color: inherit;
}


.iconclock {
  position: relative;
  top: 3px;
  padding-right: 4px;
  padding-left: 0px;
}

@media (max-width: 1200px) {
  .gov-navigation {
    padding-left: 10px;
    padding-right: 10px;
  }
}


.gov-navigation ul  {
        border-radius: 10px;
}


.cbu-menuBtn { display: none; }
.cbu-themeWrap { display: block; }

/* < 700px: místo theme-switch ukaž menu */
@media (max-width: 699.98px) {
  .cbu-menuBtn { 
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 0;
    background: transparent;
    border-radius: 10px;
    cursor: pointer;
  }

  .cbu-menuBtn:focus-visible{
    outline: 2px solid #005fcc;
    outline-offset: 2px;
  }

  .cbu-menuBtn:hover{
    background: rgba(0,0,0,.06);
  }

  .cbu-menuBtn__icon svg{
    width: 24px;
    height: 24px;
    display: block;
  }

  .cbu-themeWrap { display: none; }
}

/* jen samotné logo bez textu */
.gov-header__logo .cbu-logoMark{
  display:inline-flex;
  align-items:center;
}

/* udělej ze SVG blok a dej mu rozměr */
.gov-header__logo svg{
  display: block;
  width: 116px;
  height: 121.54px;
  position: relative;
  top: 0px;
  left: -39px;
  line-height: 30px;
}

/* pokud SVG používá currentColor, nastav barvu */
.gov-header__logo{
  color: currentColor; /* nebo třeba #000 */
  height: 86px;
}



.gov-header__logo span{
    display: block;
    width: 117px;
    height: 82px;
    position: relative;
    top: 8px;
    left: -83.5px;
    color: #2b2b2b;
    font-size: 13px;
    line-height: 25.2px;
}

.dark .gov-header__logo span{
   color: #fff;
}

.dark h2, .dark h3 {
   color: #fff;
}

.gov-header__logo p{
  margin-bottom: -10.8px; 
}

@media (max-width: 768px) {

    /* udělej ze SVG blok a dej mu rozměr */
    .gov-header__logo svg{
      display: block;
      width: 108px;
      height: 121.54px;
      position: relative;
      top: 0px;
      left: -39px;
    }


    .gov-header__logo span{
      font-size: 12.5px;
      display: block;
      width: 100px;
      height: 68px;
      position: relative;
      top: 1px;
      left: -79px;
      color: #2b2b2b; 
    }



  .gov-header__logo p{ margin-bottom: -9px;}

  .gov-header__content {
    height: 182px;
    top: -12px;
    position: relative;
  }
 
}


.gov-header__logo .logobarevne span {
   color: #023282;
}

.dark .gov-header__logo .logobarevne span {
   color: #fff;
}


.js-gov-header__navigation-trigger .gov-button .hydrated butoon {
  height: 70px;
  width: 70px;
}

.gov-button .hydrated {
  padding-top: 2px;
}

.gov-infobar {
  border-radius: 10px;
}


ul > li{
  position: relative;
}

ul > li::before{
  content: "";
  position: absolute;
  left: calc(((var(--icon-size-m) + var(--list-bullet-size, var(--height-s)))/2 + var(--spacing-s))*-1);
  top: 0.65em;
  width: .5rem;
  height: .5rem;

  background-color: var(--icon-on-subtle); /* TADY je barva */
  -webkit-mask: url("../jvs/govds/icons/icons/lib/templates/dot.svg") center / contain no-repeat;
          mask: url("../jvs/govds/icons/icons/lib/templates/dot.svg") center / contain no-repeat;
}
 

@font-face {
  font-family: "Czechia Sans Medium";
  src: url("CzechiaSans-Medium.woff2") format("woff2");
  font-weight: 500;       /* Medium */
  font-style: normal;
  font-display: swap;
}

.gov-header__logo {
  font-family: "Czechia Sans Medium", Inter, system-ui, sans-serif;
  font-weight: 500;
}

.obulogo svg {
  width: 87px;
  height: 60px;
  left: -20px;
}

.obulogo {
  width: 350px;
  font-family: Roboto,sans-serif;
}

.obulogo span {
  display: block;
  width: auto;
  height: 82px;
  position: relative;
  top: 6px;
  left: -28px;
  color: #2b2b2b;
  font-size: 16px;
}


.obulogo span p {
  font-size: 14px;
}


@media (max-width: 768px) {


  .obulogo svg {
    width: 77px;
    height: 45px;
    left: -20px;
  }

  .obulogo {
    width: 350px;
    font-family: Roboto,sans-serif;
  }

  .obulogo span {
    display: block;
    width: auto;
    height: 82px;
    position: relative;
    top: 17px;
    left: -28px;
    color: #2b2b2b;
    font-size: 15px;
  }


  .obulogo span p {
    font-size: 11px;
  }


}

.sidebar-menu li {
    padding-bottom: 10px;
}

.sidebar-menu {
    --tw-bg-opacity: 1;
  background-color: rgb(247 255 245/var(--tw-bg-opacity));
    border-radius: 14px;
    padding: 1.25rem;
}

[data-theme="dark"] .sidebar-menu {
    background: var(--color-primary-700, #2d5a2d);
}

.sidebar-menu li.is-active > a {
    font-weight: 700;
    color: var(--gov-color-primary-600, #2d7a2d);
}
[data-theme="dark"] .sidebar-menu li.is-active > a {
    color: #fff;
}

/* ── Boční navigace ve stylu úřadu (JVS tokeny) ── */
.cbu-sidenav {
    margin-bottom: 24px;
    border-radius: 10px;
    overflow: hidden;
    background: var(--color-neutral-0, #fff);
    box-shadow: 0 1px 3px rgba(0, 0, 0, .10);
}
.cbu-sidenav__head {
    display: block;
    background: var(--color-primary-700, #207315);
    color: var(--color-neutral-0, #fff);
    text-transform: uppercase;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: .04em;
    text-align: center;
    padding: 14px 18px;
    margin: 0;
}
.cbu-sidenav__list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.cbu-sidenav__list > li {
    margin: 0;                 /* přebít globální ul li { margin-bottom } – jinak mezera nad pruhem */
    border-bottom: 1px solid var(--color-neutral-100, #e7e7e7);
}
.cbu-sidenav__list > li:last-child {
    border-bottom: none;
}
.cbu-sidenav__list > li::before {  /* zrušit globální odrážku ● u ul li */
    content: none;
    display: none;
}
.cbu-sidenav__list a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 18px;
    color: var(--text-primary, var(--color-neutral-900, #3b3b3b));
    text-decoration: none;
    font-size: 15px;
    line-height: 1.4;
    border-left: 3px solid transparent;
    transition: background .12s, border-color .12s, color .12s;
}
.cbu-sidenav__list a:hover {
    background: var(--color-primary-100, #f7fff5);
    border-left-color: var(--color-primary-600, #40852e);
}
.cbu-sidenav__list a > span {
    flex: 1;
}
/* Zelené sekce se šipkou (jen přímý odkaz sekce, ne podpoložky) */
.cbu-sidenav__item--section > a {
    color: var(--color-primary-700, #207315);
    font-weight: 700;
    text-transform: uppercase;
    font-size: 13.5px;
    letter-spacing: .02em;
}
.cbu-sidenav__chev {
    flex: 0 0 auto;
    display: inline-block;
    color: var(--color-primary-600, #40852e);
    font-weight: 700;
    font-size: 18px;
    line-height: 1;
    transition: transform .15s;
}

/* ── Rozbalovací sekce (details/summary) ── */
.cbu-sidenav__details > summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 18px;
    color: var(--color-primary-700, #207315);
    font-weight: 700;
    text-transform: uppercase;
    font-size: 13.5px;
    letter-spacing: .02em;
    border-left: 3px solid transparent;
    transition: background .12s, border-color .12s;
}
.cbu-sidenav__details > summary::-webkit-details-marker { display: none; }
.cbu-sidenav__details > summary::marker { content: ""; }
.cbu-sidenav__details > summary:hover {
    background: var(--color-primary-100, #f7fff5);
    border-left-color: var(--color-primary-600, #40852e);
}
.cbu-sidenav__summary > span:first-child { flex: 1; }
.cbu-sidenav__details[open] > summary .cbu-sidenav__chev { transform: rotate(90deg); }

/* Podpoložky rozbalené sekce – výchozí stejné jako zbytek menu, zelené až na hover */
.cbu-sidenav__sub {
    list-style: none;
    margin: 0;
    padding: 0;
    background: transparent;
}
.cbu-sidenav__sub > li {
    margin: 0;                 /* přebít globální ul li { margin-bottom } */
    border-top: 1px solid var(--color-neutral-100, #e7e7e7);
}
.cbu-sidenav__sub > li::before { content: none; display: none; }
.cbu-sidenav__sub a {
    display: block;
    padding: 10px 18px 10px 34px;
    color: var(--color-primary-700, #207315);
    text-decoration: none;
    text-transform: none;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.35;
    border-left: 3px solid transparent;
    transition: background .12s, border-color .12s, color .12s;
}
.cbu-sidenav__sub a:hover {
    background: var(--color-primary-100, #f7fff5);
    border-left-color: var(--color-primary-600, #40852e);
}
.cbu-sidenav__sub > li.is-active > a {
    border-left-color: var(--color-primary-600, #40852e);
    color: var(--color-primary-700, #207315);
    font-weight: 400;
    background: transparent;
}
/* Šipka před podpoložkou (kotva na sekci stránky) */
.cbu-sidenav__sub a .pv-sip-menu { display: inline-flex; }
.cbu-sidenav__sub a .pv-sip-menu svg {
    width: 11px;
    height: 11px;
    margin-right: 6px;
    fill: var(--color-primary-600, #40852e);
    vertical-align: -1px;
    flex: 0 0 auto;
}
[data-theme="dark"] .cbu-sidenav__sub a .pv-sip-menu svg { fill: #bfe6c9; }

/* Dokumentové dlaždice (sekce „Potřebuji vyřídit“) v tmavém režimu */
[data-theme="dark"] .pv-doc { border-color: rgba(255, 255, 255, .14); }
[data-theme="dark"] .pv-doc:hover {
    background: rgba(255, 255, 255, .09);
    border-color: var(--color-primary-600, #40852e);
}
[data-theme="dark"] .pv-doc__tag {
    color: #9bbcff;
    border-color: rgba(155, 188, 255, .45);
    background: rgba(155, 188, 255, .12);
}

/* Světlé info-boxy v sekci „Potřebuji vyřídit“ – tmavý režim */
[data-theme="dark"] .pv-zkratky,
[data-theme="dark"] .pv-symboly,
[data-theme="dark"] .pv-symboly-pozn {
    background: rgba(64, 133, 46, .12);
    border-color: rgba(255, 255, 255, .14);
}
[data-theme="dark"] .pv-upozorneni {
    background: rgba(240, 217, 168, .1);
    border-color: rgba(240, 217, 168, .3);
}
[data-theme="dark"] .pv-upozorneni strong { color: #e3bd78; }
[data-theme="dark"] .pv-predcisli,
[data-theme="dark"] .pv-symboly code,
[data-theme="dark"] .pv-urad code,
[data-theme="dark"] .pv-upozorneni a { color: #8ad57b; }
[data-theme="dark"] .pv-symboly code,
[data-theme="dark"] .pv-urad code { background: rgba(64, 133, 46, .22); }

[data-theme="dark"] .cbu-sidenav__details > summary { color: #bfe6c9; }
[data-theme="dark"] .cbu-sidenav__details > summary:hover { background: rgba(255, 255, 255, .08); }
[data-theme="dark"] .cbu-sidenav__sub { background: transparent; }
[data-theme="dark"] .cbu-sidenav__sub a { color: #bfe6c9; }
[data-theme="dark"] .cbu-sidenav__sub > li.is-active > a { background: transparent; }
[data-theme="dark"] .cbu-sidenav__sub a:hover { background: rgba(255,255,255,.1); color: #fff; }
/* Položka s ikonou */
.cbu-sidenav__item--icon a {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 13.5px;
}
.cbu-sidenav__item--icon gov-icon {
    flex: 0 0 auto;
    color: var(--color-primary-600, #40852e);
}
/* Aktivní položka (scrollspy) – levý akcent v JVS stylu */
.cbu-sidenav__list > li.is-active > a {
    background: var(--color-primary-100, #f7fff5);
    border-left-color: var(--color-primary-600, #40852e);
    color: var(--color-primary-700, #207315);
    font-weight: 700;
}

/* Tmavý režim – JVS tokeny se přepnou samy, doladíme jen kontrast */
[data-theme="dark"] .cbu-sidenav {
    background: var(--color-primary-900, #214021);
    border-color: rgba(255,255,255,.14);
}
[data-theme="dark"] .cbu-sidenav__list > li {
    border-bottom-color: rgba(255,255,255,.12);
}
[data-theme="dark"] .cbu-sidenav__list a {
    color: #eef6ef;
}
[data-theme="dark"] .cbu-sidenav__list a:hover,
[data-theme="dark"] .cbu-sidenav__list > li.is-active > a {
    background: rgba(255,255,255,.08);
    color: #fff;
}
[data-theme="dark"] .cbu-sidenav__item--section a,
[data-theme="dark"] .cbu-sidenav__chev,
[data-theme="dark"] .cbu-sidenav__item--icon gov-icon {
    color: #bfe6c9;
}

/* Skládaný režim (pod JVS breakpointem lg = 64em): nejdřív obsah, pak menu.
   Od 64em jsou sloupce vedle sebe a menu zůstává vlevo (výchozí pořadí). */
@media (max-width: 63.99em) {
    .cbu-col-aside { order: 2; }
    .cbu-col-main  { order: 1; }
}

/* ── Organizační schéma – obrázek ── */
.schema-figure {
    margin: 1.5rem 0 0;
    text-align: center;
}
/* Popisky rozbalovacích oken (gov-accordion) – tmavá verze */
[data-theme="dark"] gov-accordion-item p[slot="label"] {
    color: #95e77c;
}

.schema-figure img {
    max-width: 100%;
    height: auto;
    border: 1px solid var(--color-neutral-100, #e7e7e7);
    border-radius: 8px;
    cursor: zoom-in;
}