/* GENEROVANO z weby\_design\menu (menu.js, menu.css, menu.json) skriptem sestav-menu.mjs. Negenerovat rucne, needitovat. */
/* Aureality: horní menu a roleta domén (manuál 0.98: Comfortaa na menu, Urbanist na text, rovné rohy, slabá modrá linka). Zdroj: weby\_design\menu\menu.css. */
.au-menu-lista { --m-bg: var(--au-ink-900, #0B1018); --m-tx: var(--au-snow, #E8EEF7); --m-mut: #A9B6C8; --m-linka: var(--au-linka-barva, #8DBBFF);
  position: relative; z-index: 40; display: flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 16px; background: var(--m-bg); color: var(--m-tx);
  border-bottom: 1px solid rgba(141, 187, 255, .22); font: 600 14px/1.2 var(--au-pismo-menu, "Comfortaa", system-ui, sans-serif); }
.au-menu-polozky { display: flex; flex-wrap: wrap; gap: 2px 18px; margin: 0; padding: 0; list-style: none; }
.au-menu-polozky a { display: inline-block; padding: 8px 0; color: var(--m-tx); text-decoration: none; border-bottom: 2px solid transparent; }
.au-menu-polozky a:hover, .au-menu-polozky a[aria-current="page"] { border-bottom-color: var(--au-blue-500, #2563EB); }
.au-menu-lista a:focus-visible, .au-menu-sip:focus-visible, .au-roleta a:focus-visible, .au-roleta-zavrit:focus-visible { outline: 2px solid var(--m-linka); outline-offset: 2px; }

/* šipka vedle loga: malá, ale s dostatečnou plochou pro palec */
.au-menu-sip { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 32px; min-height: 32px; margin-left: 4px; padding: 0 6px; vertical-align: middle;
  background: transparent; color: inherit; border: 1px solid transparent; border-radius: var(--au-karta-roh, 3px); cursor: pointer; font: inherit; }
.au-menu-sip:hover, .au-menu-sip[aria-expanded="true"] { border-color: var(--au-linka-barva, #8DBBFF); }
.au-menu-sip svg { transition: transform .15s; }
.au-menu-sip[aria-expanded="true"] svg { transform: rotate(180deg); }
.au-menu-sip--sam { margin: 0; padding: 0 10px 0 0; color: var(--m-tx); font: 600 14px/1 var(--au-pismo-menu, "Comfortaa", system-ui, sans-serif); }

.au-roleta-zaves { position: fixed; inset: 0; z-index: 90; background: rgba(4, 7, 12, .55); }
.au-roleta { --m-bg: var(--au-ink-900, #0B1018); --m-tx: var(--au-snow, #E8EEF7); --m-mut: #A9B6C8; --m-linka: var(--au-linka-barva, #8DBBFF);
  position: fixed; z-index: 100; top: 44px; left: 12px; width: min(720px, calc(100vw - 24px)); max-height: calc(100vh - 64px); overflow: auto; box-sizing: border-box;
  background: var(--m-bg); color: var(--m-tx); border: 1px solid rgba(141, 187, 255, .35); border-radius: var(--au-karta-roh, 3px); padding: 16px 20px 20px;
  font: 400 15px/1.45 var(--au-pismo-text, "Urbanist", system-ui, sans-serif); letter-spacing: var(--au-pismo-text-prostrkani, .02em); }
.au-roleta[hidden], .au-roleta-zaves[hidden] { display: none; }
.au-roleta::before { content: ""; position: absolute; left: 20px; top: -1px; width: 42%; height: 2px; background: var(--m-linka); }
.au-roleta-hlava { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.au-roleta-nadpis { margin: 0; font: 600 17px/1.2 var(--au-pismo-nadpis, "Comfortaa", system-ui, sans-serif); }
.au-roleta-zavrit { min-width: 36px; min-height: 36px; background: transparent; color: inherit; border: 1px solid transparent; border-radius: var(--au-karta-roh, 3px); font: 400 24px/1 system-ui; cursor: pointer; }
.au-roleta-zavrit:hover { border-color: var(--m-linka); }
.au-roleta-strom { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 4px 28px; }
.au-roleta-skupina h3 { margin: 14px 0 4px; font: 600 12px/1.2 var(--au-pismo-menu, "Comfortaa", system-ui, sans-serif); text-transform: uppercase; letter-spacing: .08em; color: var(--m-mut); border-bottom: 1px solid rgba(141, 187, 255, .22); padding-bottom: 6px; }
.au-roleta-seznam { margin: 0; padding: 0; list-style: none; }
.au-roleta-odkaz { display: grid; grid-template-columns: 1fr auto; gap: 0 10px; padding: 8px 10px; margin-left: 8px; border-left: 1px solid rgba(141, 187, 255, .25); color: inherit; text-decoration: none; border-radius: 0 var(--au-karta-roh, 3px) var(--au-karta-roh, 3px) 0; }
a.au-roleta-odkaz:hover { background: rgba(37, 99, 235, .14); border-left-color: var(--au-blue-500, #2563EB); }
.au-roleta-odkaz[aria-current="true"] { border-left: 2px solid var(--au-blue-500, #2563EB); }
.au-roleta-nic { opacity: .72; }
.au-roleta-nazev { font: 600 15px/1.3 var(--au-pismo-menu, "Comfortaa", system-ui, sans-serif); }
.au-roleta-adr { font: 500 12px/1.6 "IBM Plex Mono", ui-monospace, monospace; color: var(--m-mut); text-align: right; }
.au-roleta-stitek { grid-column: 1 / -1; font: 600 11px/1.5 "IBM Plex Mono", ui-monospace, monospace; letter-spacing: .04em; text-transform: uppercase; color: #BFD7FF; }
.au-roleta-popis { grid-column: 1 / -1; color: var(--m-mut); font-size: 14px; }

:root[data-theme="light"] .au-menu-lista, :root[data-theme="light"] .au-roleta, :root[data-au-theme="light"] .au-menu-lista, :root[data-au-theme="light"] .au-roleta,
:root.light .au-menu-lista, :root.light .au-roleta { --m-bg: #F5F8FC; --m-tx: #0B1018; --m-mut: #4B5A70; --m-linka: #1E4FD8; }
:root[data-theme="light"] .au-roleta-stitek, :root[data-au-theme="light"] .au-roleta-stitek { color: #1E4FD8; }

/* mobil: roleta dole přes celou šířku (palec), lišta se zalamuje */
@media (max-width: 640px) {
  .au-roleta { top: auto; left: 0; right: 0; bottom: 0; width: auto; max-height: 82vh; border-width: 1px 0 0; padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px)); }
  .au-roleta-strom { grid-template-columns: 1fr; }
  .au-menu-lista { padding: 0 12px; }
}
@media (prefers-reduced-motion: reduce) { .au-menu-sip svg { transition: none; } }
