@import (reference) '../variables.less';

.root {
  position: relative;
  height: 100%;
  min-width: @toolbar-closed-size + @toolbar-border-thickness;
  display: flex;
  flex-direction: row-reverse;
  color: @toolbar-foregound;

  &.isOpen {
    width: 100vw;
  }
}

.backdrop {
  position: absolute;
  height: 100vh;
  width: 100vw;
}

.sidebar {
  position: absolute;
  display: flex;
  pointer-events: none;
  height: 100%;
  flex-direction: row-reverse;
  overflow: hidden;
}

.topButtons {
  transition: @transition-medium;
}

.topButtons_hide {
  opacity: 0.2;
  pointer-events: none;
}

.positionContainer {
  position: absolute;
  bottom: @toolbar-closed-size;
  top: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
  transition: @transition-medium;

  &:not(.positions_isOpen) {
    opacity: 0;
    pointer-events: none;
    transform: translateY(20px);
  }
}

.buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: @toolbar-closed-size;
  pointer-events: auto;
  justify-content: space-between;
  position: relative;
  z-index: 1;
  background-color: @toolbar-background;
  border-left: @toolbar-border-thickness solid @toolbar-border-color;
}

.panel {
  position: relative;
  display: flex;
  width: @toolbar-open-size;
  background-color: @toolbar-background;
  border-left: @toolbar-border-thickness solid @toolbar-border-color;
  overflow: auto;
  transition: @transition-slow;
  pointer-events: auto;

  .root:not(.isOpen) & {
    transform: translateX(@toolbar-open-size * 0.3);
    opacity: 0;
    pointer-events: none;
  }
}

.preference {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
