/* === TOKENS ========================================================== */
:root{
  --color-green:#0f7a43; --color-blue:#163950; --color-gray:#37494d; --color-white:#fff;
  --radius-pill:999px;
  --shadow-1:0 1px 2px rgba(0,0,0,.08),0 2px 6px rgba(0,0,0,.06);
  --shadow-2:0 6px 14px rgba(0,0,0,.12),0 3px 8px rgba(0,0,0,.06);
  --shadow-green:0 8px 18px rgba(15,122,67,.26);
}

/* === BASE / LAYOUT (základ nutný) =================================== */
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Noto Sans',sans-serif;color:var(--color-gray)}
.container{max-width:1200px;margin:0 auto;padding:24px;display:grid;gap:24px;grid-template-columns:1fr}
@media(min-width:1280px){.container{grid-template-columns:1fr 340px}}
.container-narrow{max-width:1100px;margin:0 auto;padding:0 24px}
.header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #e5e7eb}
.topbar{display:flex;justify-content:center;align-items:center;padding:12px 16px}
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--color-blue)}
.logo-dot{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--color-green);font-weight:700}
.nav{padding:0 12px 12px}
.nav-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.nav-row.mobile{overflow-x:auto;padding-bottom:6px}
.content{display:grid;gap:24px}
.sidebar{display:none}
@media(min-width:1280px){.sidebar{display:block;position:relative}.sidebar>*{position:sticky;top:96px}}
.hero{position:relative;padding:48px 0;background:radial-gradient(1200px 400px at 80% -20%,rgba(22,57,80,.10),transparent 60%),linear-gradient(to bottom,#fff,#f2f6f9)}
.hero__inner{display:grid;gap:24px;grid-template-columns:1.2fr 1fr;align-items:center}
.hero__inner h1{font-size:clamp(1.8rem,2.6vw,3rem);color:var(--color-blue);margin:.2rem 0}
.hero__inner p{font-size:clamp(1rem,1.2vw,1.125rem);max-width:60ch}

/* === LEVÉ MENU ======================================================= */
.mc-left-menu{position:sticky;top:120px;width:220px;background:linear-gradient(180deg,#0b4d6e 0%,#0c7d59 100%);border-radius:1rem;padding:1rem;box-shadow:0 8px 24px rgba(0,0,0,.18);margin-bottom:1rem}
.mc-left-menu-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.mc-left-item .mc-left-link{display:flex;align-items:center;gap:.5rem;padding:.6rem .9rem;border-radius:999px;color:#fff;text-decoration:none;font-weight:600;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);box-shadow:0 2px 8px rgba(0,0,0,.18);transition:transform .15s,box-shadow .15s,background .15s}
.mc-left-item .mc-left-link:hover,.mc-left-item .mc-left-link:focus{background:rgba(255,255,255,.22);transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.24)}
.mc-left-item.current-menu-item>.mc-left-link,.mc-left-item.current_page_item>.mc-left-link,.mc-left-item .mc-left-link[aria-current="page"]{background:rgba(255,255,255,.28);border-color:rgba(255,255,255,.35)}
@media(max-width:991px){.mc-left-menu{display:none}}

/* === MENU / IKONY ==================================================== */
.menu-icon{width:28px;height:28px;display:inline-block;fill:currentColor;stroke:currentColor}
.menu.menu-desktop a{display:inline-flex;align-items:center;gap:8px}
@media(max-width:767.98px){.menu-icon{width:32px;height:32px}.menu-text{display:none !important}}
.nav .menu-desktop a svg,.nav-row.mobile a svg{fill:currentColor;stroke:currentColor}

/* === TOP IKONOVÝ PÁS (mcbmt) ======================================== */
.mcbmt{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:999px;border:2px solid var(--color-green);background:transparent;box-shadow:0 8px 18px rgba(15,122,67,.18);text-decoration:none;padding:0}
.mcbmt:hover{box-shadow:0 10px 22px rgba(15,122,67,.26);transform:translateY(-1px)}
.mcbmt .menu-icon-img,.mcbmt .menu-icon{width:50px;height:50px;display:block}
@media(min-width:1024px){nav .nav-row.mobile{display:flex;justify-content:center;gap:.6rem;width:100%}.mcbmt{width:66px;height:66px}.mcbmt .menu-icon-img,.mcbmt .menu-icon{width:55px;height:55px}}
@media(max-width:767.98px){.mcbmt{width:60px;height:60px}.mcbmt .menu-icon-img,.mcbmt .menu-icon{width:45px;height:45px}}
/* Mobil/tablet: linka 2px pseudo-elementem (stabilní vzhled) */
@media(max-width:1023.98px){
  .mcbmt{position:relative;border:0 !important}
  .mcbmt::before{content:"";position:absolute;inset:0;border:2px solid var(--color-green);border-radius:9999px;pointer-events:none}
}

/* === TLAČÍTKA ======================================================== */
.mcba,.mcb{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1rem;border-radius:var(--radius-pill);background:var(--color-green);border:2px solid var(--color-green);color:#fff;text-decoration:none;box-shadow:var(--shadow-green);line-height:1;transition:transform .12s,box-shadow .2s,background .12s,color .12s}
.mcba:hover,.mcba:focus,.mcb:hover,.mcb:focus{background:#fff;color:var(--color-green);border-color:var(--color-green)}
.mcbtl{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1rem;border-radius:var(--radius-pill);background:#fff;border:2px solid var(--color-green);color:var(--color-green);text-decoration:none;line-height:1;transition:transform .12s,box-shadow .2s,background .12s,color .12s}
.mcbtl.is-active,.mcbtl.active,.mcbtl.liked,.mcbtl[aria-pressed="true"],.mcbtl[data-liked="1"]{background:var(--color-green);border-color:var(--color-green);color:#fff}
.mcba *:not(img),.mcb *:not(img),.mcbtl *:not(img){color:currentColor;fill:currentColor;stroke:currentColor}
.mcba:focus-visible,.mcb:focus-visible,.mcbtl:focus-visible{outline:2px solid var(--color-green);outline-offset:2px}
.mcba[disabled],.mcb[disabled],.mcbtl[disabled],.mcba.is-disabled,.mcb.is-disabled,.mcbtl.is-disabled{opacity:.55;cursor:not-allowed}

/* Gutenberg fallback (když autor nedá třídu) */
.wp-block-button .wp-block-button__link:not(.mcb):not(.mcba):not(.mcbtl){
  background:var(--color-green);border:2px solid var(--color-green);color:#fff;border-radius:var(--radius-pill);padding:.6rem 1rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center
}
.wp-block-button .wp-block-button__link:not(.mcb):not(.mcba):not(.mcbtl):hover,
.wp-block-button .wp-block-button__link:not(.mcb):not(.mcba):not(.mcbtl):focus{
  background:#fff;color:var(--color-green)
}
a.mcba:visited,a.mcb:visited{color:#fff}

/* === HERO BOX – pevný panel, žádné “button” chování ================== */
.mc-hero-box{
  background:linear-gradient(135deg,#163950 0%,#0f7a43 100%) !important;
  color:#fff !important;
  box-shadow:none !important; transform:none !important; transition:none !important; cursor:default !important;
}
.mc-hero-box *:not(img){color:#fff !important;fill:#fff !important;stroke:#fff !important}
.mc-hero-box:hover,.mc-hero-box:focus,
.cuas-card:hover .mc-hero-box,.cuas-card:focus .mc-hero-box{
  background:linear-gradient(135deg,#163950 0%,#0f7a43 100%) !important;
  color:#fff !important; box-shadow:none !important; transform:none !important; text-decoration:none !important;
}
.mc-hero-title,.mc-hero-title a,.post-title,.post-title a{
  color:#fff !important; text-decoration:none !important; background:transparent !important; box-shadow:none !important; transform:none !important;
}
.mc-hero-title a:hover,.post-title a:hover{color:#fff !important;text-decoration:underline !important;background:transparent !important}
/* Header logo – pevné max-height, žádné roztahování na výšku */
.header .logo img,
.header .logo .logo-img,
.header .logo picture img,
img.custom-logo,
.site-branding .custom-logo {
  display: block;
  width: auto !important;
  height: auto !important;     /* zruší height:100% z jiných stylů */
  max-height: 36px !important; /* mobil výchozí */
  vertical-align: middle;
  object-fit: contain;
}

/* větší na tablet/desktop */
@media (min-width: 768px){
  .header .logo img,
  .header .logo .logo-img,
  .header .logo picture img,
  img.custom-logo,
  .site-branding .custom-logo {
    max-height: 42px !important;
  }
}
@media (min-width: 1280px){
  .header .logo img,
  .header .logo .logo-img,
  .header .logo picture img,
  img.custom-logo,
  .site-branding .custom-logo {
    max-height: 48px !important;
  }
}

/* pokud je logo SVG inline, ať se také nenaškáluje na 100% výšky */
.header .logo svg {
  width: auto !important;
  height: auto !important;
  max-height: 48px !important; /* řídí se breakpoints výše, přepíše se */
}
/* ========== FIXED HEADER (menu přilepené nahoře) ========== */
:root { --header-h: 64px; }               /* výška headeru (mobil) */
@media (min-width: 768px){ :root{ --header-h:72px; } }
@media (min-width:1280px){ :root{ --header-h:80px; } }

.header{
  position: fixed !important;
  top: 0; left: 0; right: 0;
  z-index: 10050;                         /* nad ostatními prvky */
  width: 100%;
  background: #fff;                       /* aby nepřesvítal obsah */
  border-bottom: 1px solid #e5e7eb;
}

body{
  padding-top: var(--header-h) !important;/* posun obsahu pod header */
}

/* WordPress admin bar offset (pouze při přihlášení) */
body.admin-bar .header{ top: 32px; }
@media (max-width: 782px){
  body.admin-bar .header{ top: 46px; }
}

/* Levý panel drž ve správné vzdálenosti pod pevným headerem */
@media (min-width:1024px){
  .mc-left-menu{
    position: fixed !important;
    top: calc(var(--header-h) + 16px) !important; /* prostor pod headerem */
    left: 16px;
    z-index: 10000;
  }
  body{ padding-left: 252px; } /* zachovat rezervu pro levý panel */
}
/* === 1) FIXED HEADER: reálný offset, ať nic neleze pod menu === */
:root{ --header-h: 120px; }                  /* mobil – logo + ikony */
@media (min-width:768px){ :root{ --header-h: 128px; } }
@media (min-width:1280px){ :root{ --header-h: 136px; } }

.header{
  position:fixed !important; top:0; left:0; right:0;
  z-index:10050; background:#fff; border-bottom:1px solid #e5e7eb;
}
body{ padding-top: var(--header-h) !important; }

/* Admin bar (WP) */
body.admin-bar .header{ top:32px; }
@media (max-width:782px){ body.admin-bar .header{ top:46px; } }

/* Ikonový pás má být vidět hned pod logem i když je mimo .header */
.header + .nav { margin-top: 8px; } /* když je .nav hned po headeru */

/* === 2) LEVÉ MENU: normalizace velikostí a vzhledu =============== */
.mc-left-menu{
  position:fixed !important;
  top: calc(var(--header-h) + 16px) !important;
  left:16px; width:220px; z-index:10000;
}
.mc-left-menu-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.5rem; }
.mc-left-link{
  display:flex; align-items:center; gap:.6rem;
  padding:.5rem .7rem !important;
  border-radius:12px !important;
  font-size:.95rem; line-height:1.2;
  color:#fff !important; text-decoration:none;
  background: rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.2) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.18) !important;
  transition: background .15s ease, transform .1s ease, box-shadow .15s ease;
}
.mc-left-link:hover,
.mc-left-link:focus{
  background: rgba(255,255,255,.22) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(0,0,0,.24) !important;
}
.mc-left-link .menu-icon{ width:22px; height:22px; flex:0 0 22px; }

/* Pojistka: nic z .mcba/.mcb/.mcbtl nesmí přebarvovat levé menu */
.mc-left-menu .mcba,
.mc-left-menu .mcb,
.mc-left-menu .mcbtl { all: unset; }

/* Na menších šířkách levé menu úplně skryjeme (zůstává horní pás) */
@media (max-width:1023px){
  .mc-left-menu{ display:none !important; }
}

/* === 3) Horní ikonový pás – nad obsahem, ne pod ním ================ */
nav .nav-row.mobile{ z-index:10020; position:relative; }

/* === 4) Hero box (jen připomínka, ať nedělá „button“) ============== */
.mc-hero-box{
  background: linear-gradient(135deg,#163950 0%,#0f7a43 100%) !important;
  color:#fff !important; box-shadow:none !important; transform:none !important; cursor:default !important;
}
/* Levé menu: ikony přesně 35px (SVG i IMG) */
.mc-left-link .menu-icon,
.mc-left-link .menu-icon-img,
.mc-left-link svg.menu-icon,
.mc-left-menu .menu-icon,
.mc-left-menu .menu-icon-img,
.mc-left-menu svg.menu-icon,
.mcbml .menu-icon,
.mcbml .menu-icon-img,
.mcbml svg.menu-icon {
  width: 35px !important;
  height: 35px !important;
  flex: 0 0 35px !important;
  display: inline-block !important;
  vertical-align: middle !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* Jemné utažení řádku, ať to není „nafouklé“ */
.mc-left-link{
  padding: .5rem .7rem !important;
  gap: .5rem !important;
  line-height: 1.2 !important;
  font-size: .95rem !important;
}
/* === Levé menu: přesný offset pod fixním headerem =============== */
/* Jemná mezera mezi headerem a levým panelem */
:root{
  --leftmenu-gap: 24px;  /* klidně zvyšte/snižte: 16–32px podle oka */
}

/* Admin bar (WP) – započítat do výšky */
body.admin-bar { --adminbar-offset: 32px; }
@media (max-width: 782px){
  body.admin-bar { --adminbar-offset: 46px; }
}

/* Finální pozice levého panelu */
.mc-left-menu{
  position: fixed !important;
  top: calc(var(--adminbar-offset, 0px) + var(--header-h, 120px) + var(--leftmenu-gap)) !important;
  left: 16px;
  width: 220px;
  z-index: 10000;
}
/* ========== Reálný offset pod headrem ========== */
:root{
  --header-h: 120px;          /* fallback když JS neběží */
  --header-gap: 12px;         /* malá mezera pod headrem */
  --leftmenu-gap: 24px;       /* mezera pro levý panel */
}

/* obsah pod fixním headrem */
body{
  padding-top: calc(var(--header-real, var(--header-h)) + var(--header-gap)) !important;
}

/* levé menu zarovnat pod header */
.mc-left-menu{
  top: calc(var(--adminbar-offset, 0px) + var(--header-real, var(--header-h)) + var(--leftmenu-gap)) !important;
}

/* WP admin bar podpora */
body.admin-bar{ --adminbar-offset: 32px; }
@media (max-width: 782px){ body.admin-bar{ --adminbar-offset: 46px; } }

/* ať se sekce/ankor neschovají za fixní header při skoku na #id */
[id]{ scroll-margin-top: calc(var(--header-real, var(--header-h)) + 16px); }
/* ===== Nadpisy příspěvků NIKDY jako tlačítka ===== */

/* Základ: žádné pozadí, stín, transform, přebarvování */
.post-title, .post-title a,
.entry-title, .entry-title a,
.mc-hero-title, .mc-hero-title a {
  background: transparent !important;
  color: inherit !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
  text-decoration: none !important;
  transition: none !important;
}

/* Hover/focus – ať se nic nezmění (ani přes .cuas-card:hover) */
.post-title:hover, .post-title a:hover,
.entry-title:hover, .entry-title a:hover,
.mc-hero-title:hover, .mc-hero-title a:hover,
.cuas-card:hover .post-title, .cuas-card:hover .post-title a,
.cuas-card:hover .entry-title, .cuas-card:hover .entry-title a,
.cuas-card:focus-within .post-title, .cuas-card:focus-within .post-title a,
.cuas-card:focus-within .entry-title, .cuas-card:focus-within .entry-title a {
  background: transparent !important;
  color: inherit !important;
  box-shadow: none !important;
  transform: none !important;
  text-decoration: none !important;
}

/* Hero/gradient blok: vynutit bílou barvu napevno */
.mc-hero-box .post-title, .mc-hero-box .post-title a,
.mc-hero-title, .mc-hero-title a {
  color: #fff !important;
}

/* Běžné nadpisy mimo hero: drž značkovou modrou i při hoveru */
:not(.mc-hero-box) .post-title, :not(.mc-hero-box) .post-title a,
:not(.mc-hero-box) .entry-title, :not(.mc-hero-box) .entry-title a {
  color: var(--color-blue) !important;
}
:not(.mc-hero-box) .post-title a:hover,
:not(.mc-hero-box) .entry-title a:hover {
  color: var(--color-blue) !important;
}

/* Zrušit případné dekorace před nadpisy */
.post-title::before, .post-title a::before,
.entry-title::before, .entry-title a::before,
.mc-hero-title::before, .mc-hero-title a::before {
  content: none !important;
  display: none !important;
  background: transparent !important;
}

/* Volitelné: kurzor u celého titulku ne jako button */
.post-title, .entry-title, .mc-hero-title { cursor: default !important; }
.post-title a, .entry-title a, .mc-hero-title a { cursor: pointer !important; }


/* === MC: offset header/nav to sit beside fixed left menu on desktop === */
@media (min-width: 980px){
  .topbar, .nav{
    margin-left: var(--mc-left-w, 260px);
    width: calc(100% - var(--mc-left-w, 260px));
  }
}



/* MC: global mobile overflow guard */
@media (max-width: 979px){
  html, body{ overflow-x:hidden; }
  .container{ padding-left: 12px; padding-right: 12px; box-sizing: border-box; }
  img, video, iframe{ max-width:100%; height:auto; }
}


/* === Menu icon fixes (0904) === */
.menu-icon-img{ width:60px; height:60px; }
@media (max-width: 768px){
  .menu-icon-img{ width:48px; height:48px; }
}
/* Force green primary button where expected */
.main-menu .is-primary{ background: var(--color-green); color:#fff; }
