.ibk-drawer {
  box-sizing: border-box;
  position: fixed;
  height: 100%;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.75);
  cursor: pointer;
  top: 0;
  left: 0;
  opacity: 0;
  display: none;
  transition: var(--slow);
  overflow: hidden;
  z-index: 10;
}

.ibk-drawer--container {
  top: initial;
  left: initial;
  z-index: initial;
}

.ibk-drawer * { box-sizing: border-box; }

.ibk-drawer__content {
  padding: 30px;
  background-color: white;
  position: absolute;
  cursor: default;
  transition: var(--slow);
}

.ibk-drawer--open-right .ibk-drawer__content {
  top: 0;
  right: -100%;
  height: 100%;
  width: 500px;
  box-shadow: -2px 0 5px 0 var(--gray4);
}

.ibk-drawer--open-left .ibk-drawer__content {
  top: 0;
  left: -100%;
  height: 100%;
  width: 500px;
  box-shadow: 2px 0 5px 0 var(--gray4);
}

.ibk-drawer--open-top .ibk-drawer__content {
  top: -100%;
  left: 0;
  width: 100%;
  box-shadow: 0 2px 5px 0 var(--gray4);
}

.ibk-drawer--open-bottom .ibk-drawer__content {
  bottom: -100%;
  left: 0;
  width: 100%;
  box-shadow: 0 -2px 5px 0 var(--gray4);
}

.ibk-drawer__close {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  outline: none;
  background-color: transparent;
  border: none;
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 24px;
  cursor: pointer;
  color: var(--grayText);
}

.ibk-drawer__close:active { transform: translateY(1px); }