/* Lalang selector layering and viewport overflow fix */
.ga-composer-float,
.ga-brand-overlay {
  z-index: 10010 !important;
}

.ga-composer-float .agent-mode-menu,
.ga-composer-float .agent-skill-menu,
.ga-composer-float .agent-param-popover,
.ga-brand-overlay .ga-brand-panel {
  z-index: 10011 !important;
  box-sizing: border-box;
}

.ga-composer-float .agent-mode-menu,
.ga-composer-float .agent-skill-menu,
.ga-composer-float .agent-param-popover {
  max-width: calc(100vw - 20px) !important;
  min-width: 0;
  overflow-x: hidden;
  overscroll-behavior: contain;
}

.ga-brand-overlay .ga-brand-panel {
  max-width: calc(100vw - 24px) !important;
}

.ga-brand-panel:has(.ga-brand-menu) {
  overflow: visible !important;
}

.ga-brand-overlay .ga-brand-menu {
  z-index: 10012 !important;
  box-sizing: border-box;
  max-width: 100%;
  max-height: min(230px, calc(100dvh - 96px));
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.ga-composer-float .agent-mode-menu button,
.ga-composer-float .agent-skill-option,
.ga-composer-float .agent-param-grid button,
.ga-brand-overlay .ga-brand-menu button {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}

.ga-composer-float .agent-mode-menu button span,
.ga-composer-float .agent-mode-menu button small,
.ga-composer-float .agent-skill-option span,
.ga-composer-float .agent-skill-option small,
.ga-brand-overlay .ga-brand-menu button {
  overflow-wrap: anywhere;
}

.ga-panel:has(.lalang-mention-menu) {
  overflow: visible !important;
}

.ga-panel .lalang-mention-menu {
  z-index: 10011 !important;
  max-width: calc(100% - 12px);
  max-height: min(220px, calc(100dvh - 96px));
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
}

@media (max-width: 760px) {
  .ga-brand-overlay .ga-brand-panel {
    max-width: calc(100vw - 20px) !important;
  }

  .ga-brand-overlay .ga-brand-menu {
    max-height: min(200px, calc(100dvh - 104px));
  }
}
