:host {
  --bp-popover-offset: 0;
  --padding: var(--bp-size-600);
  --filter: drop-shadow(var(--bp-object-shadow-200));
  --background: var(--bp-layer-background-200);
  --border: var(--bp-object-border-width-100) solid var(--bp-object-border-color-100);
  --color: var(--bp-text-color-500);
  --width: max-content;
  --height: max-content;
  --min-width: max-content;
  --min-height: max-content;
  --font-size: var(--bp-text-size-300);
  overflow: visible;
  margin: 0;
  z-index: 99;
  padding: 0;
  opacity: 0;
  border: 0;
}

:host(:state(popover-ready)) {
  transition:
    transform var(--bp-animation-duration-300),
    opacity var(--bp-animation-duration-300),
    display var(--bp-animation-duration-300) allow-discrete;
}

:host(:popover-open) {
  opacity: 1;
  transform: translateY(0);
}

:host {
  opacity: 0;
}

@starting-style {
  :host(:popover-open) {
    opacity: 0;
  }
}

:host([closable]) {
  --padding: var(--bp-size-600) var(--bp-size-900) var(--bp-size-600) var(--bp-size-400);
}

:host([_menu]) {
  --padding: 0;
}

:host([closable]) {
  --padding: var(--bp-size-600) var(--bp-size-900) var(--bp-size-600) var(--bp-size-600);
}

[part='internal'] {
  color: var(--color);
  background: var(--background);
  border: var(--border);
  filter: var(--filter);
  padding: var(--padding);
  width: var(--width);
  height: var(--height);
  min-width: var(--min-width);
  min-height: var(--min-height);
  font-size: var(--font-size);
  display: flex;
  flex-direction: column;
  overflow: visible;
  z-index: 9999;
}

bp-button-icon {
  position: absolute;
  top: var(--bp-size-400);
  right: var(--bp-size-400);
  z-index: 1;
}

::slotted(bp-menu) {
  --width: 100%;
}
