/* Space 2047 HD Edition v6.01.0
 * Preserve the last working top Options launcher and click-open Game menu.
 * Move only the universal Talk launcher to the lower centre safe area.
 */
#s2047-talk-button-v5890 {
  position: fixed !important;
  left: 50% !important;
  right: auto !important;
  top: auto !important;
  bottom: max(18px, calc(env(safe-area-inset-bottom) + 12px)) !important;
  transform: translateX(-50%) !important;
  z-index: 2147483647 !important;
}

/* The menu overlay must remain above gameplay but below its own close controls. */
#s2047-main-options-shell-v5300,
#s2047-main-options-shell-v5300[data-open="1"] {
  isolation: isolate;
}

@media (max-width: 720px) {
  #s2047-talk-button-v5890,
  html.s2047-interior-open #s2047-talk-button-v5890 {
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    bottom: max(154px, calc(env(safe-area-inset-bottom) + 146px)) !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    min-width: 116px !important;
    height: auto !important;
    min-height: 52px !important;
    padding: 8px 15px !important;
    gap: 9px !important;
    border-width: 3px !important;
    border-radius: 18px !important;
    font-size: 16px !important;
    box-shadow: 0 8px 24px #000c !important;
  }
  html.s2047-interior-open #s2047-talk-button-v5890 b {
    font-size: 24px !important;
  }
}

@media (max-width: 430px) {
  #s2047-talk-button-v5890,
  html.s2047-interior-open #s2047-talk-button-v5890 {
    bottom: max(164px, calc(env(safe-area-inset-bottom) + 156px)) !important;
    min-width: 108px !important;
    min-height: 48px !important;
    padding: 7px 12px !important;
    font-size: 15px !important;
  }
}

/* Do not display Talk above an open modal/menu. */
html.s2047-universal-talk-open #s2047-talk-button-v5890,
body:has(#s2047-main-options-shell-v5300[data-open="1"]) #s2047-talk-button-v5890 {
  visibility: hidden !important;
  pointer-events: none !important;
}
