/* Samostatná mobilní navigace. Nemění logiku aplikace ani původní app.css. */
.site-brand{font-weight:700;text-decoration:none;white-space:nowrap}
.mobile-menu{display:none}

@media(max-width:768px){
 .site-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.8rem 1rem;position:relative}
 .desktop-nav,.desktop-logout{display:none!important}
 .mobile-menu{display:block;margin:0;position:relative}
 .mobile-menu>summary{display:flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;padding:.25rem .8rem;border:1px solid #ffffff66;border-radius:.4rem;color:#fff;cursor:pointer;list-style:none;font-weight:700;user-select:none}
 .mobile-menu>summary::-webkit-details-marker{display:none}
 .mobile-menu>summary::after{content:'▾';font-size:.85rem}
 .mobile-menu[open]>summary::after{content:'▴'}
 .menu-icon{font-size:1.25rem;line-height:1}
 .mobile-menu>nav{position:absolute;z-index:1000;top:calc(100% + .55rem);right:0;width:min(86vw,320px);display:flex;flex-direction:column;gap:0;padding:.45rem;background:#173b66;border:1px solid #ffffff55;border-radius:.55rem;box-shadow:0 10px 28px #0005}
 .mobile-menu>nav a{display:block;min-height:44px;padding:.7rem .8rem;box-sizing:border-box;border-radius:.35rem;text-decoration:none;color:#fff;background:transparent}
 .mobile-menu>nav a:hover,.mobile-menu>nav a:focus{background:#ffffff1f;outline:none}
 .mobile-menu>nav form{margin:.35rem 0 0;padding:.35rem 0 0;border-top:1px solid #ffffff44}
 .mobile-menu>nav button{width:100%;min-height:44px;margin:0;background:#fff;color:#173b66;font-weight:700}
}

@media(min-width:769px){
 .desktop-nav{display:flex}
 .desktop-logout{display:block}
 .mobile-menu{display:none!important}
}

@media print{.mobile-menu{display:none!important}}

/* Dotykový mobil otočený na šířku: ponechat kompaktní rozbalovací menu. */
@media (orientation:landscape) and (max-width:1000px){
 .site-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem 1rem;position:relative}
 .desktop-nav,.desktop-logout{display:none!important}
 .mobile-menu{display:block!important;margin:0;position:relative}
 .mobile-menu>summary{display:flex;align-items:center;justify-content:center;gap:.45rem;min-height:42px;padding:.2rem .75rem;border:1px solid #ffffff66;border-radius:.4rem;color:#fff;cursor:pointer;list-style:none;font-weight:700;user-select:none}
 .mobile-menu>summary::-webkit-details-marker{display:none}
 .mobile-menu>summary::after{content:'▾';font-size:.85rem}
 .mobile-menu[open]>summary::after{content:'▴'}
 .menu-icon{font-size:1.25rem;line-height:1}
 .mobile-menu>nav{position:absolute;z-index:1000;top:calc(100% + .4rem);right:0;width:min(72vw,320px);max-height:calc(100vh - 5rem);overflow-y:auto;display:flex;flex-direction:column;gap:0;padding:.4rem;background:#173b66;border:1px solid #ffffff55;border-radius:.55rem;box-shadow:0 10px 28px #0005}
 .mobile-menu>nav a{display:block;min-height:40px;padding:.55rem .75rem;box-sizing:border-box;border-radius:.35rem;text-decoration:none;color:#fff;background:transparent}
 .mobile-menu>nav a:hover,.mobile-menu>nav a:focus{background:#ffffff1f;outline:none}
 .mobile-menu>nav form{margin:.3rem 0 0;padding:.3rem 0 0;border-top:1px solid #ffffff44}
 .mobile-menu>nav button{width:100%;min-height:40px;margin:0;background:#fff;color:#173b66;font-weight:700}
}

/* Přichycená horní lišta na mobilu, na výšku i na šířku. */
@media (max-width:1000px){
 .site-header{position:sticky!important;top:0;z-index:2000}
}

/* Na mobilu na šířku otevřít nabídku nezávisle na posunu stránky. */
@media (orientation:landscape) and (max-width:1000px){
 .mobile-menu>nav{
  position:fixed!important;
  top:calc(env(safe-area-inset-top, 0px) + 4.25rem)!important;
  right:calc(env(safe-area-inset-right, 0px) + .75rem)!important;
  width:min(72vw,320px)!important;
  max-height:calc(100dvh - env(safe-area-inset-top, 0px) - 5rem)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
 }
}
