/**
 * Stage 4B — chat route lifecycle (glass tabbar hide + home visibility).
 */

body.f7-sandbox-route-active #f7-app-root .f7-glass-tabbar {
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
  transform: translateY(110%);
  transition: opacity 0.2s ease, transform 0.22s ease, visibility 0.2s ease;
}

/* C1W — tabbar visual owner is --f7-clean-chat-tabbar-progress in f7-glass-tabbar.css */

/* C1AB — rehomed tabbar stacks under clean chat page/composer (F7 page z-index: 1) */
body.f7-chat-route-active:not(.f7-sandbox-route-active)
  #f7-app-root
  .page.clean-chat-page.page-current {
  z-index: 2;
}

body.f7-chat-route-active:not(.f7-sandbox-route-active)
  #f7-app-root
  .toolbar.tabbar.f7-glass-tabbar,
body.f7-clean-chat-tabbar-under-chat:not(.f7-sandbox-route-active)
  #f7-app-root
  .toolbar.tabbar.f7-glass-tabbar {
  z-index: 0;
}

body:not(.f7-chat-route-active):not(.f7-clean-chat-tabbar-under-chat):not(.f7-sandbox-route-active)
  #f7-app-root
  .toolbar.tabbar.f7-glass-tabbar {
  z-index: 530;
}

body.f7-chat-route-active:not(.f7-sandbox-route-active) #f7-app-root .page-home.page-previous {
  pointer-events: none !important;
}

/* F7 Navbar/back — ensure taps reach official .link.back (scroll layer no longer under header) */
body.f7-chat-route-active #f7-app-root .page.chat-dm-page.page-current .navbar,
body.f7-chat-route-active #f7-app-root .page.chat-dm-page.page-current .navbar-inner,
body.f7-chat-route-active #f7-app-root .page.chat-dm-page.page-current .link.back {
  pointer-events: auto;
}

/* F7-PAGE-STACK-LIFECYCLE-G — layout only; F7 Router owns page-current/page-previous visibility */
body.f7-shell-settled #f7-app-root .page-home .f7-main-tabs-page,
body.f7-shell-settled #f7-app-root .page-home .f7-main-tabs {
  height: 100%;
  min-height: 0;
}

/* R3 — empty chat skeleton placeholder */
#f7-app-root .page.chat-page .f7-chat-skeleton {
  margin-top: 28px;
  text-align: center;
}

#f7-app-root .page.chat-page .f7-chat-skeleton-kind {
  font-size: 12px;
  opacity: 0.55;
  margin: 0 0 8px;
}

#f7-app-root .page.chat-page .f7-chat-skeleton-placeholder {
  font-size: 15px;
  margin: 0;
  opacity: 0.85;
}

/* KARAOKE-F7-GUEST-ENTRY-B — common chat composer karaoke entry */
#f7-app-root .page.chat-common-page .f7-common-karaoke-entry {
  display: none;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  border-radius: 50%;
  flex-shrink: 0;
  background: none;
  border: none;
  padding: 0;
  font-size: 18px;
  line-height: 1;
  color: rgba(255, 255, 255, 0.95);
  touch-action: manipulation;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
}
