/* TPS_MOBILE_NAV_DOM_RESTORE_V4 */
@media (max-width: 900px) {
  body.tps-nav-open {
    overflow: hidden !important;
  }

  /*
    Public/marketing header cleanup:
    On mobile, keep logo/brand visible and move actions into hamburger menu.
  */
  header.nav .nav-inner,
  .nav .nav-inner {
    min-height: 86px !important;
    padding-right: 76px !important;
  }

  header.nav .nav-links,
  .nav .nav-links,
  header.nav .nav-actions,
  .nav .nav-actions {
    display: none !important;
  }

  header.nav .brand,
  .nav .brand {
    min-width: 0 !important;
    max-width: calc(100vw - 118px) !important;
  }

  header.nav .brand-copy,
  .nav .brand-copy {
    min-width: 0 !important;
    max-width: 220px !important;
  }

  header.nav .brand-copy strong,
  .nav .brand-copy strong {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  header.nav .brand-copy span,
  .nav .brand-copy span {
    display: block !important;
    max-width: 220px !important;
    line-height: 1.45 !important;
  }

  .tps-mobile-menu-btn {
    position: fixed !important;
    top: 14px !important;
    right: 14px !important;
    left: auto !important;
    width: 46px !important;
    height: 46px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    background: rgba(15,23,42,.94) !important;
    color: #ffffff !important;
    z-index: 2147483000 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.36) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    cursor: pointer !important;
  }

  .tps-mobile-menu-btn span,
  .tps-mobile-menu-btn span::before,
  .tps-mobile-menu-btn span::after {
    content: "" !important;
    display: block !important;
    width: 22px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    position: relative !important;
    transition: transform .18s ease, opacity .18s ease !important;
  }

  .tps-mobile-menu-btn span::before {
    position: absolute !important;
    transform: translateY(-7px) !important;
  }

  .tps-mobile-menu-btn span::after {
    position: absolute !important;
    transform: translateY(7px) !important;
  }

  body.tps-nav-open .tps-mobile-menu-btn span {
    background: transparent !important;
  }

  body.tps-nav-open .tps-mobile-menu-btn span::before {
    transform: rotate(45deg) !important;
  }

  body.tps-nav-open .tps-mobile-menu-btn span::after {
    transform: rotate(-45deg) !important;
  }

  .tps-mobile-nav-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147482800 !important;
    display: none !important;
    background: rgba(2,6,23,.62) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
  }

  .tps-mobile-nav-panel {
    position: fixed !important;
    top: 72px !important;
    left: 14px !important;
    right: 14px !important;
    z-index: 2147482900 !important;
    display: none !important;
    max-height: calc(100vh - 92px) !important;
    overflow-y: auto !important;
    padding: 16px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    background: rgba(8,15,32,.97) !important;
    box-shadow: 0 28px 80px rgba(0,0,0,.50) !important;
  }

  body.tps-nav-open .tps-mobile-nav-backdrop,
  body.tps-nav-open .tps-mobile-nav-panel {
    display: block !important;
  }

  .tps-mobile-nav-title {
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    margin: 2px 4px 12px !important;
    letter-spacing: -.01em !important;
  }

  .tps-mobile-nav-section {
    margin: 12px 4px 7px !important;
    color: rgba(226,232,255,.66) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
  }

  .tps-mobile-nav-panel a,
  .tps-mobile-nav-panel button {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 7px 0 !important;
    padding: 14px 15px !important;
    border-radius: 17px !important;
    border: 1px solid rgba(255,255,255,.09) !important;
    background: rgba(255,255,255,.07) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    text-align: left !important;
    cursor: pointer !important;
    font-family: inherit !important;
  }

  .tps-mobile-nav-panel a:hover,
  .tps-mobile-nav-panel button:hover {
    background: rgba(124,92,255,.22) !important;
  }

  .tps-mobile-nav-panel .primary {
    background: linear-gradient(135deg, #7c5cff, #25c2ff) !important;
    border-color: rgba(255,255,255,.20) !important;
  }

  .tps-mobile-nav-panel .admin {
    background: linear-gradient(135deg, rgba(245,158,11,.34), rgba(249,115,22,.22)) !important;
    border-color: rgba(251,191,36,.24) !important;
  }

  .tps-mobile-nav-panel .danger {
    background: rgba(239,68,68,.14) !important;
    border-color: rgba(239,68,68,.24) !important;
  }
}

@media (min-width: 901px) {
  .tps-mobile-menu-btn,
  .tps-mobile-nav-backdrop,
  .tps-mobile-nav-panel {
    display: none !important;
  }
}
