
/* oMATIC Minds v0.6.8.23 app menu fallback.
   The menu can open via JS class OR pure CSS focus-within as a fallback. */

/* When the menu button/panel has focus, show the menu even if JS fails. */
.om-app-menu-shell:focus-within > [data-om-app-menu-panel],
.om-app-menu-shell:focus-within > .nav-dropdown-panel {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Desktop fallback layout */
@media (min-width: 821px) {
  .om-app-menu-shell:focus-within > .nav-dropdown-panel.om-menu-owner-admin.om-menu-four-col {
    position: absolute !important;
    top: calc(100% + 12px) !important;
    right: 0 !important;
    left: auto !important;
    width: min(940px, calc(100vw - 48px)) !important;
    max-width: min(940px, calc(100vw - 48px)) !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows: auto auto !important;
    gap: 14px !important;
  }
}

/* Mobile fallback layout */
@media (max-width: 820px) {
  .om-app-menu-shell:focus-within > [data-om-app-menu-panel],
  .om-app-menu-shell:focus-within > .nav-dropdown-panel,
  .om-app-menu-shell.is-open > [data-om-app-menu-panel],
  .om-app-menu-shell[data-om-app-menu-open="1"] > [data-om-app-menu-panel] {
    position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    right: auto !important;
    width: min(360px, calc(100vw - 28px)) !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    padding: 22px 18px 18px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    transform: none !important;
    border-radius: 0 !important;
    border: 0 !important;
    border-right: 1px solid rgba(255,255,255,.13) !important;
    background: rgba(8,9,13,.985) !important;
    box-shadow: 28px 0 90px rgba(0,0,0,.58) !important;
    z-index: 99990 !important;
    box-sizing: border-box !important;
  }

  .om-app-menu-shell:focus-within > [data-om-app-menu-panel] > .drawer-close,
  .om-app-menu-shell.is-open > [data-om-app-menu-panel] > .drawer-close,
  .om-app-menu-shell[data-om-app-menu-open="1"] > [data-om-app-menu-panel] > .drawer-close {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: flex-end !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    margin: 0 0 4px auto !important;
    padding: 0 !important;
    border-radius: 999px !important;
    font-size: 0 !important;
  }

  .om-app-menu-shell:focus-within > [data-om-app-menu-panel] > .drawer-close::before,
  .om-app-menu-shell.is-open > [data-om-app-menu-panel] > .drawer-close::before,
  .om-app-menu-shell[data-om-app-menu-open="1"] > [data-om-app-menu-panel] > .drawer-close::before {
    content: "×";
    font-size: 28px;
    line-height: 1;
  }

  .om-app-menu-shell:focus-within > [data-om-app-menu-panel] > .drawer-close > *,
  .om-app-menu-shell.is-open > [data-om-app-menu-panel] > .drawer-close > *,
  .om-app-menu-shell[data-om-app-menu-open="1"] > [data-om-app-menu-panel] > .drawer-close > * {
    display: none !important;
  }
}
