.dropdown.ThemeDropdownPopup {
  text-transform: none !important;
  z-index: 8;
  width: 100%;
  position: absolute;
  display: flex;
  flex-direction: column;
  max-width: var(--sizeXXL);
  max-height: 240px;
  min-width: 300px;
  height: fit-content;
  background-color: var(--colorTextAlt);
  color: var(--colorText);
  filter: drop-shadow(0px 3px 4px var(--colorShadow));
  border-radius: var(--sizeS);
  animation-duration: var(--speedFF, 200ms);
  animation-fill-mode: both;
}
.dropdown.ThemeDropdownPopup[data-animation=in] {
  animation-name: fadeIn;
}
.dropdown.ThemeDropdownPopup[data-animation=out] {
  animation-name: fadeOut;
}
.dropdown.ThemeDropdownPopup[data-constrainment=unconstrained] {
  max-height: unset !important;
}
.dropdown.ThemeDropdownPopup[data-constrainment=unconstrained] > .dropdownOptions {
  max-height: unset !important;
  overflow: hidden !important;
  min-height: fit-content !important;
}
.dropdown.ThemeDropdownPopup[data-constrainment=constrained] > .dropdownOptions {
  max-height: var(--sizeXXL) !important;
  overflow: auto !important;
}
.dropdown.ThemeDropdownPopup .dropdownTitle {
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--sizeS) var(--sizeM);
  text-transform: uppercase;
  font-size: var(--fontNestedS);
  border-radius: 5px 5px 0 0;
  height: fit-content;
}
.dropdown.ThemeDropdownPopup .dropdownTitle:not(:empty) + .dropdownOptions {
  border-radius: 0;
}
.dropdown.ThemeDropdownPopup .dropdownTitle > .dropdownTitleText {
  display: block;
  text-align: left;
  text-overflow: ellipsis;
  overflow: hidden;
  padding: 2px 0;
}
.dropdown.ThemeDropdownPopup .dropdownTitle > .dropdownActions {
  display: flex;
  margin-left: auto;
}
.dropdown.ThemeDropdownPopup .dropdownOptions {
  border-radius: inherit;
  width: 100%;
  display: block;
  overflow-y: overlay;
  overflow-x: hidden;
  border: 1px solid var(--borderLight);
  border-left: 0;
  border-right: 0;
  transition: var(--speedFF) box-shadow ease;
  position: relative;
}
.dropdown.ThemeDropdownPopup:before {
  content: " ";
  width: 0px;
  height: 0px;
  position: absolute;
  border-bottom: 10px solid var(--colorTextAlt);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
}
.dropdown.ThemeDropdownPopup[data-horizontal], .dropdown.ThemeDropdownPopup[data-vertical] {
  position: absolute !important;
}
.dropdown.ThemeDropdownPopup[data-horizontal=left][data-vertical=bottom] {
  left: 0;
  top: 100%;
  transform: translate(0%, 0%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-horizontal=left][data-vertical=bottom]:before {
  left: 10px;
  top: -10px;
}
.dropdown.ThemeDropdownPopup[data-horizontal=center][data-vertical=bottom] {
  left: 50%;
  top: 100%;
  transform: translate(-50%, 0%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-horizontal=center][data-vertical=bottom]:before {
  left: calc(50% - 15px);
  top: -10px;
}
.dropdown.ThemeDropdownPopup[data-horizontal=right][data-vertical=bottom] {
  left: 100%;
  top: 100%;
  transform: translate(-100%, 0%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-horizontal=right][data-vertical=bottom]:before {
  left: calc(100% - 30px);
  top: -10px;
}
.dropdown.ThemeDropdownPopup[data-horizontal-fixed=right][data-vertical-fixed=bottom]:before {
  left: calc(100% - 30px);
  top: -10px;
}
.dropdown.ThemeDropdownPopup[data-horizontal=left][data-vertical=top] {
  left: 0;
  top: 0%;
  transform: translate(0%, -100%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-horizontal=left][data-vertical=top]:before {
  left: 10px;
  bottom: -10px;
  transform: rotate(180deg);
}
.dropdown.ThemeDropdownPopup[data-horizontal=center][data-vertical=top] {
  left: 50%;
  top: 0%;
  transform: translate(-50%, -100%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-horizontal=center][data-vertical=top]:before {
  left: calc(50% - 15px);
  bottom: -10px;
  transform: rotate(180deg);
}
.dropdown.ThemeDropdownPopup[data-horizontal=right][data-vertical=top] {
  left: 100%;
  top: 0%;
  transform: translate(-100%, -100%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-horizontal=right][data-vertical=top]:before {
  left: calc(100% - 30px);
  bottom: -10px;
  transform: rotate(180deg);
}
.dropdown.ThemeDropdownPopup[data-vertical=left][data-horizontal=top] {
  left: 0%;
  top: 0%;
  transform: translate(-100%, 0%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-vertical=left][data-horizontal=top]:before {
  left: -15px;
  top: calc(50% - 5px);
  transform: rotate(-90deg);
}
.dropdown.ThemeDropdownPopup[data-vertical=left][data-horizontal=center] {
  left: 0%;
  top: 50%;
  transform: translate(-100%, -50%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-vertical=left][data-horizontal=center]:before {
  left: -15px;
  top: 15px;
  transform: rotate(-90deg);
}
.dropdown.ThemeDropdownPopup[data-vertical=left][data-horizontal=bottom] {
  left: 0%;
  top: 100%;
  transform: translate(-100%, -100%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-vertical=left][data-horizontal=bottom]:before {
  left: -15px;
  top: calc(100% - 25px);
  transform: rotate(-90deg);
}
.dropdown.ThemeDropdownPopup[data-vertical=right][data-horizontal=top] {
  left: 100%;
  top: 0%;
  transform: translate(0%, 0%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-vertical=right][data-horizontal=top]:before {
  left: calc(100% - 5px);
  top: 15px;
  transform: rotate(90deg);
}
.dropdown.ThemeDropdownPopup[data-vertical=right][data-horizontal=center] {
  left: 100%;
  top: 50%;
  transform: translate(0%, -50%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-vertical=right][data-horizontal=center]:before {
  left: calc(100% - 5px);
  top: calc(50% - 5px);
  transform: rotate(90deg);
}
.dropdown.ThemeDropdownPopup[data-vertical=right][data-horizontal=bottom] {
  left: 100%;
  top: 100%;
  transform: translate(0%, -100%) scale(1);
}
.dropdown.ThemeDropdownPopup[data-vertical=right][data-horizontal=bottom]:before {
  left: calc(100% - 5px);
  top: calc(100% - 25px);
  transform: rotate(90deg);
}

@media (orientation: portrait) {
  .dropdown.ThemeDropdownPopup {
    width: 96vw !important;
    height: fit-content;
    position: fixed !important;
    max-width: 100vw !important;
    transform: none !important;
    z-index: 100;
    left: 2vw !important;
    right: unset !important;
    box-shadow: 0px 0px 100px var(--colorShadow);
  }
  .dropdown.ThemeDropdownPopup > .dropdownTitle {
    font-size: var(--fontNestedM);
  }
  .dropdown.ThemeDropdownPopup > .dropdownOptions {
    max-height: 100%;
    overflow: auto;
  }
  .dropdown.ThemeDropdownPopup:before {
    content: none !important;
  }
}
