@import '../constants/colors'; @import '../constants/dimensions'; @import '../constants/fonts'; .dropdown { position: relative; display: inline-block; box-sizing: border-box; &.dropdown--outlined ul { border: 1px solid @hl-md; } &:focus { outline: none; } .dropdown__backdrop { display: none; position: fixed; z-index: 999; left: 0; right: 0; top: 0; bottom: 0; content: ' '; } ul { display: none; position: absolute; top: 100%; left: 0; z-index: 1000; min-width: @dropdown-min-width; box-shadow: 0 0 1rem 0 @hl-md; // Separate it from the button a bit margin-top: @padding-xxs; margin-bottom: @padding-xxs; padding-top: @radius-md; padding-bottom: @radius-md; border-radius: @radius-md; background: @bg-super-light; overflow: hidden; li { & > button { font-size: @font-size-md; text-align: left; padding: @padding-sm @padding-md @padding-sm @padding-sm; width: 100%; display: block; color: @font-super-light-bg !important; white-space: nowrap; &:hover:not(:disabled), &:focus:not(:disabled) { background: @hl-sm; } &:active:not(:disabled) { background: @hl-md; } i.fa { display: inline-block; width: 2.2em; text-align: center; } .dropdown__hint { color: @hl-xxl; float: right; } } } } &.dropdown--up ul { top: auto; bottom: 100%; } li.dropdown__divider { border-bottom: 1px solid @hl-lg; overflow: visible !important; height: 0; margin: @padding-md @padding-md @padding-md @padding-md; min-width: @dropdown-min-width; .dropdown__divider__label { position: relative; left: -@padding-sm / 2; top: -0.7rem; // HACK: Fine adjustment color: @hl; padding-right: 1em; background: #fff; font-size: @font-size-xs; text-transform: uppercase; } &.dropdown__divider--no-name { margin: @padding-xs 0; .dropdown__divider__label { display: none; } } } &.dropdown--flip ul { bottom: 100%; top: auto; } &.dropdown--open { ul { display: block; } .dropdown__backdrop { display: block; } } &.dropdown--right ul { right: 0; left: auto; } &.dropdown--wide ul { left: 0; right: 0; } }