/* Patch 0.1.15.2.0 - Final Mobile Launcher Hardfix
   Purpose:
   - Force the real hamburger button (.nav-toggle[data-nav-toggle]) to bottom-left.
   - Keep it above all page content.
   - Prevent header/layout rules from pulling it back to the top-left.
   - Keep the mobile menu panel anchored above it.
*/

@media (max-width: 920px) {
  html body .nav-toggle[data-nav-toggle],
  html body button.nav-toggle[data-nav-toggle],
  html body > .nav-toggle[data-nav-toggle],
  html body .site-header .nav-toggle[data-nav-toggle],
  html body .mobile-floating-menu-button {
    display: grid !important;
    place-items: center !important;
    position: fixed !important;
    left: 14px !important;
    bottom: 14px !important;
    top: auto !important;
    right: auto !important;
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    max-width: 56px !important;
    max-height: 56px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 999px !important;
    z-index: 2147483600 !important;
    transform: none !important;
    translate: none !important;
    inset: auto auto 14px 14px !important;
    overflow: hidden !important;
    text-indent: -9999px !important;
    font-size: 0 !important;
    line-height: 0 !important;
    white-space: nowrap !important;
    color: transparent !important;
    background:
      radial-gradient(90% 110% at 50% -44%, rgba(255,255,255,.52), rgba(255,255,255,.14) 34%, transparent 60%),
      linear-gradient(180deg, #2a3139 0%, #121922 48%, #05070b 100%) !important;
    border: 1px solid rgba(236,244,255,.56) !important;
    box-shadow:
      inset 0 2px 2px rgba(255,255,255,.40),
      inset 0 -4px 10px rgba(0,0,0,.82),
      0 18px 44px rgba(0,0,0,.48),
      0 0 0 1px rgba(255,255,255,.08) !important;
  }

  html body .nav-toggle[data-nav-toggle]::before,
  html body button.nav-toggle[data-nav-toggle]::before,
  html body > .nav-toggle[data-nav-toggle]::before,
  html body .site-header .nav-toggle[data-nav-toggle]::before,
  html body .mobile-floating-menu-button::before {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 23px !important;
    height: 17px !important;
    display: block !important;
    transform: translate(-50%, -50%) !important;
    background:
      linear-gradient(#ffffff, #ffffff) 0 0 / 100% 2px no-repeat,
      linear-gradient(#ffffff, #ffffff) 0 7.5px / 100% 2px no-repeat,
      linear-gradient(#ffffff, #ffffff) 0 15px / 100% 2px no-repeat !important;
    opacity: 1 !important;
    z-index: 3 !important;
    box-shadow: none !important;
  }

  html body .nav-toggle[data-nav-toggle][aria-expanded="true"]::before,
  html body button.nav-toggle[data-nav-toggle][aria-expanded="true"]::before,
  html body > .nav-toggle[data-nav-toggle][aria-expanded="true"]::before,
  html body .site-header .nav-toggle[data-nav-toggle][aria-expanded="true"]::before,
  html body .mobile-floating-menu-button[aria-expanded="true"]::before {
    width: 24px !important;
    height: 24px !important;
    background:
      linear-gradient(45deg, transparent 45%, #ffffff 47%, #ffffff 53%, transparent 55%),
      linear-gradient(-45deg, transparent 45%, #ffffff 47%, #ffffff 53%, transparent 55%) !important;
  }

  html body .nav-toggle[data-nav-toggle]::after,
  html body button.nav-toggle[data-nav-toggle]::after,
  html body > .nav-toggle[data-nav-toggle]::after,
  html body .site-header .nav-toggle[data-nav-toggle]::after,
  html body .mobile-floating-menu-button::after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: -150% !important;
    width: 72% !important;
    height: 100% !important;
    transform: skewX(-24deg) !important;
    background: linear-gradient(115deg, transparent 18%, rgba(255,255,255,.46) 50%, transparent 82%) !important;
    opacity: .8 !important;
    transition: left .85s ease !important;
    z-index: 2 !important;
  }

  html body .nav-toggle[data-nav-toggle]:hover::after,
  html body .mobile-floating-menu-button:hover::after {
    left: 165% !important;
  }

  html body .mobile-menu-panel,
  html body aside.mobile-menu-panel[data-mobile-menu-panel] {
    position: fixed !important;
    left: 14px !important;
    bottom: 84px !important;
    top: auto !important;
    right: auto !important;
    z-index: 2147483500 !important;
    transform-origin: left bottom !important;
  }

  html body .nav-backdrop {
    z-index: 2147483400 !important;
  }
}

@media (min-width: 921px) {
  html body .nav-toggle[data-nav-toggle],
  html body button.nav-toggle[data-nav-toggle],
  html body .mobile-floating-menu-button {
    display: none !important;
  }
}
