/* Persistent mobile shell. Server navigation remains the visibility authority. */
@media (max-width: 1023px) {
  [data-mobile-bottom-nav] {
    left: max(.75rem, env(safe-area-inset-left)) !important;
    right: max(.75rem, env(safe-area-inset-right)) !important;
    bottom: max(.625rem, env(safe-area-inset-bottom)) !important;
    min-height: 0 !important;
    padding: 0;
    border: 1px solid var(--ds-border, #d4d4d8);
    border-radius: 2.25rem;
    background: var(--ds-surface-2, #fff);
    box-shadow: 0 6px 24px rgb(0 0 0 / .12);
  }
  [data-mobile-bottom-nav] .mobile-bottom-nav__items { gap: .25rem; padding: .375rem; }
  .mobile-tab {
    flex: 1 1 0; min-width: 0; min-height: 56px; gap: 3px;
    padding: .25rem; border-radius: 1.75rem;
    color: var(--ds-text-muted, #52525b);
    transition: transform 160ms cubic-bezier(.23, 1, .32, 1), color 160ms ease;
    -webkit-tap-highlight-color: transparent;
  }
  .mobile-tab .ui-icon { width: 23px; height: 23px; }
  .mobile-tab span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .7rem; font-weight: 600; line-height: 1.25; }
  .mobile-tab[aria-current="page"], .mobile-tab[aria-expanded="true"] { background: rgb(128 128 128 / .14); color: var(--ds-text, #18181b); }
  .mobile-tab:active { transform: scale(.97); }
  .mobile-tab:focus-visible { outline: 2px solid var(--color-brand-600, #2563eb); outline-offset: 2px; }
  #mobile-menu-drawer [data-mobile-native-sheet] {
    display: flex; flex-direction: column; max-height: min(88dvh, 48rem);
    border-radius: 28px 28px 0 0; overflow: hidden;
    padding-inline: env(safe-area-inset-left) env(safe-area-inset-right);
    will-change: auto;
    transition: transform 260ms cubic-bezier(.32, .72, 0, 1);
  }
  #mobile-menu-drawer [data-bottom-sheet-content] {
    min-height: 0; max-height: none; overflow-y: auto; overscroll-behavior-y: contain;
    padding-bottom: max(1.5rem, env(safe-area-inset-bottom));
    -webkit-overflow-scrolling: touch;
  }
  #mobile-menu-drawer header { flex-shrink: 0; padding-top: 0; }
  #mobile-menu-drawer :is(button, a) { min-height: 44px; }
  #mobile-menu-drawer [data-bottom-sheet-close] { min-width: 44px; }
  #mobile-menu-drawer [data-mobile-drawer-menu] { border-top: 0; padding-top: .25rem; }
  #mobile-menu-drawer .navigation-sidebar-section { margin-top: 0; padding-top: 0; border-top: 0; }
  #mobile-menu-drawer .navigation-sidebar-section-heading {
    min-height: 52px; padding: .625rem .75rem; font-size: .875rem;
    font-weight: 600; text-transform: none; letter-spacing: normal;
    color: var(--ds-text, #18181b); border-radius: 14px;
  }
  #mobile-menu-drawer .navigation-sidebar-section-items { padding-bottom: .5rem; }
  #mobile-menu-drawer [data-testid="sidebar-scroll"] { overflow: visible; padding-top: 0; }
  #mobile-menu-drawer [data-mobile-quick-settings] { border-radius: 999px; }
  .mobile-sheet-grab { height: 32px; flex-shrink: 0; touch-action: none; cursor: grab; display: grid; place-items: center; }
  .mobile-sheet-grab::before { content: ''; width: 36px; height: 4px; border-radius: 4px; background: var(--ds-text-muted, #71717a); opacity: .45; }
  .mobile-sheet-motion { transition: transform 260ms cubic-bezier(.32, .72, 0, 1); }
  .mobile-sheet-exit { transition: transform 180ms cubic-bezier(.32, .72, 0, 1); }
  html.liquid-glass [data-mobile-bottom-nav] {
    backdrop-filter: var(--glass-blur, none) !important;
    -webkit-backdrop-filter: var(--glass-blur, none) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .mobile-tab, [data-mobile-native-sheet], .mobile-sheet-motion, .mobile-sheet-exit { transition-duration: 0ms !important; }
}
