/* Ana ekran — telefonda tam ekran; alt menü flex ile görünür (fixed değil, kesilmez) */

html {
  background: #020611 !important;
}

body {
  animation: none !important;
  background: #020611 !important;
}

body.nova-main-screen-visible {
  padding: 0 !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
}

body.nova-main-screen-visible #main-screen,
body.nova-main-screen-visible #main-screen.container {
  transform: none !important;
  opacity: 1 !important;
  animation: none !important;
}

@media (max-width: 768px), (max-width: 1024px) and (hover: none) and (pointer: coarse) {
  body.nova-main-screen-visible {
    display: block !important;
    min-height: 100dvh !important;
    min-height: 100svh !important;
    overflow-x: hidden !important;
  }

  body.nova-main-screen-visible #main-screen {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 100dvh !important;
    height: 100svh !important;
    max-height: 100dvh !important;
    max-height: 100svh !important;
    min-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding:
      max(10px, env(safe-area-inset-top))
      max(10px, env(safe-area-inset-right))
      max(10px, env(safe-area-inset-bottom))
      max(10px, env(safe-area-inset-left)) !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    justify-content: flex-start !important;
  }

  #main-screen .app-duyuru-strip {
    flex-shrink: 0;
  }

  #main-screen .main-screen-top-bar {
    flex-shrink: 0 !important;
  }

  /* Profil alanı — gerekirse içeride kayar; alt menüyü itmez */
  #main-screen .main-profile-hero {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  /* Alt menü — doğal akış, ekranın dibinde, kesilmez (position:fixed YOK) */
  #main-screen > .buttons,
  #main-screen > .nova-main-lobby.buttons {
    position: relative !important;
    flex: 0 0 auto !important;
    flex-shrink: 0 !important;
    z-index: 12 !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: min(560px, 100%) !important;
    margin: 0 auto !important;
    padding: clamp(2px, 0.5vh, 6px) 0 0 !important;
    gap: clamp(6px, 1vh, 9px) !important;
    box-sizing: border-box !important;
    background: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  #main-screen > .buttons button:not(.nova-lobby-tile):not(.nova-lobby-menu-item):not(.nova-lobby-menu-head) {
    flex-shrink: 0 !important;
    width: 100% !important;
  }

  #main-screen .nova-admin-portal-slot {
    position: relative !important;
    flex: 0 0 auto !important;
    flex-shrink: 0 !important;
    z-index: 12 !important;
  }

  body.nova-perf-ultra.nova-main-screen-visible #main-screen {
    width: calc(100vw / var(--nova-perf-scale, 1)) !important;
    height: calc(100dvh / var(--nova-perf-scale, 1)) !important;
    height: calc(100svh / var(--nova-perf-scale, 1)) !important;
    max-height: calc(100dvh / var(--nova-perf-scale, 1)) !important;
  }
}

@media (max-width: 768px) and (max-height: 640px),
       (max-width: 1024px) and (max-height: 640px) and (hover: none) and (pointer: coarse) {
  #main-screen > .buttons,
  #main-screen > .nova-main-lobby.buttons {
    gap: 5px !important;
  }

  #main-screen > .buttons button:not(.nova-lobby-tile):not(.nova-lobby-menu-item):not(.nova-lobby-menu-head) {
    min-height: 38px !important;
    padding: 7px 12px !important;
    font-size: 0.82rem !important;
  }
}
