/* Bottom navigation (PWA standalone) + hamburger panel extras */

:root {
  --muveup-bottom-nav-offset: 0px;
}

@media (max-width: 900px) {
  .muveup-bottom-nav {
    display: none;
  }

  body.has-bottom-nav {
    padding-bottom: var(--muveup-bottom-nav-offset, calc(64px + env(safe-area-inset-bottom, 0px)));
  }

  body.has-bottom-nav .toast.show {
    bottom: calc(16px + var(--muveup-bottom-nav-offset)) !important;
  }

  body.has-bottom-nav [data-muveup-bottom-inset] {
    margin-bottom: var(--muveup-bottom-nav-offset);
  }

  body.has-bottom-nav .dashboard-header-actions .create-event-button-wrapper {
    display: none !important;
  }

  body.is-app-mode footer,
  body.has-bottom-nav footer {
    display: none !important;
  }

  body.is-app-mode .muveup-bottom-nav {
    display: flex;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1100;
    background: #ffffff;
    border-top: 1px solid #e8e8e8;
    box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.08);
    padding-bottom: constant(safe-area-inset-bottom);
    padding-bottom: env(safe-area-inset-bottom, 0px);
    justify-content: space-around;
    align-items: stretch;
    min-height: 56px;
    box-sizing: border-box;
  }

  /* iOS PWA: fest an Viewport-Unterkante, kein zusätzlicher Versatz */
  html.muveup-pwa-standalone body.is-app-mode .muveup-bottom-nav {
    bottom: 0;
    left: 0;
    right: 0;
    transform: none;
  }

  .muveup-bottom-nav__item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-height: 56px;
    padding-block: 8px;
    padding-inline: 4px;
    border: none;
    background: transparent;
    color: #815da7;
    text-decoration: none;
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.2;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }

  .muveup-bottom-nav__item svg {
    display: block;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
  }

  .muveup-bottom-nav__item span {
    display: block;
    min-height: calc(11px * 1.2);
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
  }

  .muveup-bottom-nav__item:hover,
  .muveup-bottom-nav__item:focus-visible {
    color: #e38722;
  }

  .muveup-bottom-nav__item.is-active {
    color: #e38722;
  }

  /* PWA: nav links in bottom bar; panel = calendar + legal + logout */
  body.is-app-mode .top-nav > .nav-link:not(.muveup-hamburger-link):not(.muveup-hamburger-push-settings):not(.muveup-hamburger-logout) {
    display: none !important;
  }

  body.is-app-mode .top-nav .close-icon {
    display: block !important;
  }

  /* Browser logged-in ohne muveup-mobile-browser (Fallback): statische Nav-Links */
  body.is-logged-in-mobile:not(.is-app-mode):not(.muveup-mobile-browser) .top-nav > .nav-link:not(.muveup-hamburger-link) {
    display: block !important;
  }

  /* Guest mode: hide static duplicates; show injected guest links like logged-in nav */
  body:not(.is-logged-in-mobile) .top-nav > .nav-link:not(.muveup-hamburger-link):not(.muveup-hamburger-guest-link) {
    display: none;
  }

  body:not(.is-logged-in-mobile) .top-nav > .nav-link.muveup-hamburger-guest-link {
    display: block !important;
  }

  /* Mobile Browser eingeloggt: Kalender + injizierte Nav-Gruppe + Logout */
  body.muveup-mobile-browser:not(.is-app-mode) .top-nav {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
  }

  body.muveup-mobile-browser:not(.is-app-mode) .top-nav > .nav-link:not([data-muveup-mobile-nav]) {
    display: none !important;
  }

  body.muveup-mobile-browser:not(.is-app-mode) .muveup-mobile-browser-nav {
    display: block !important;
    width: 100%;
    flex-shrink: 0;
    margin-top: 4px;
    padding-top: 4px;
  }

  body.muveup-mobile-browser:not(.is-app-mode) .muveup-mobile-browser-nav [data-muveup-mobile-nav] {
    display: block !important;
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 20px !important;
    line-height: 1.35 !important;
    margin: 14px 0 !important;
    padding: 2px 0 !important;
    color: #815da7;
    text-decoration: none;
    cursor: pointer;
  }

  body.muveup-mobile-browser:not(.is-app-mode) .muveup-mobile-browser-nav [data-muveup-mobile-nav="logout"] {
    margin-top: 20px !important;
    margin-bottom: 12px !important;
  }

  body.muveup-mobile-browser:not(.is-app-mode) .muveup-mobile-browser-nav [data-muveup-mobile-nav]:hover,
  body.muveup-mobile-browser:not(.is-app-mode) .muveup-mobile-browser-nav [data-muveup-mobile-nav="logout"]:hover {
    color: #e38722;
  }

  body.is-app-mode .muveup-hamburger-push-settings,
  body.is-app-mode .muveup-hamburger-logout {
    display: block !important;
    width: 100%;
    text-align: right;
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 18px !important;
    margin: 12px 0 8px !important;
    padding: 0;
    border: none;
    background: transparent;
    color: #815da7;
    cursor: pointer;
  }

  body.is-app-mode .muveup-hamburger-push-settings {
    margin-bottom: 4px !important;
  }

  body.is-app-mode .muveup-hamburger-push-settings:hover,
  body.is-app-mode .muveup-hamburger-logout:hover {
    color: #e38722;
  }

  body.is-app-mode .muveup-hamburger-legal {
    width: 100%;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #e5e5e5;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: right;
  }

  body.is-app-mode .muveup-hamburger-legal-link {
    display: block !important;
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 11px !important;
    line-height: 1.5;
    margin: 3px 0 !important;
    padding: 0;
    color: #a0a0a0;
    text-decoration: none;
  }

  body.is-app-mode .muveup-hamburger-legal-link:hover {
    color: #815da7;
    text-decoration: underline;
  }

  /* Burger visible for all mobile pages with burger-menu */
  .burger-icon {
    display: flex !important;
  }

  .burger-icon span {
    display: flex !important;
  }
}

@media (min-width: 901px) {
  .muveup-bottom-nav {
    display: none !important;
  }

  body.has-bottom-nav {
    padding-bottom: 0;
  }

  body.is-logged-in-mobile footer {
    display: block !important;
  }

  .muveup-hamburger-legal,
  .muveup-hamburger-guest-link,
  .muveup-hamburger-master-link,
  .muveup-hamburger-logout {
    display: none !important;
  }
}
