:host {
  /**
    * @prop --background-color:  Defines the menu background color.
    * @prop --foreground-color: A color that contrasts with the background color.
  */
  --background-color: var(--dnn-color-primary-contrast, white);
  --foreground-color: var(--dnn-color-primary, #3792ED);
  display: block;
}

.menu-container {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  background-color: var(--background-color);
}
.menu-container .menu {
  margin: 0.5em;
  display: flex;
  gap: 1em;
  justify-content: flex-start;
  align-items: center;
  white-space: nowrap;
  width: 100%;
}
.menu-container .overflow {
  margin-left: auto;
  position: relative;
}
.menu-container .overflow button {
  cursor: pointer;
}
.menu-container .overflow button svg {
  fill: var(--foreground-color);
}
.menu-container .overflow button {
  padding: 0;
  margin: 0;
  background-color: transparent;
  border: none;
}
.menu-container .overflow .dropdown {
  position: absolute;
  display: flex;
  flex-direction: column;
  white-space: nowrap;
  right: 0;
  transition: 100ms ease-in-out;
  height: 0;
  overflow: hidden;
}
.menu-container .overflow .dropdown.visible {
  padding: 1em;
  gap: 0.5em;
  background-color: var(--background-color);
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
}