#shape_buttons {
  overflow: auto;
  top: 0;
  bottom: 0;
  left: 110px;
  right: 0;
  position: absolute;
  vertical-align: top;
}

#shape_cats {
  min-width: 110px;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 300px;
  background: var(--z14);
  border-radius: 3px 0 0 3px;
  z-index: 2;
}
#shape_cats > div {
  line-height: 1em;
  padding: 0 .5em;
  border-bottom: 1px solid var(--z13);
  background: var(--z14);
  color: var(--z3);
  height: 26px;
  line-height: 26px;
}

#shape_cats > div:first-child {
  border-radius: 3px 0 0 0;
}

#shape_cats > div:last-child {
  border-radius: 0 0 0 3px;
}

#shape_cats div:hover {
  background: var(--z15);
  color: var(--z0);
}
#shape_cats div.current {
  font-weight: bold;
  background: var(--z3);
  color: var(--z15);
  position: relative;
}

#shape_cats div.current:after {
  content: '';
  position: absolute;
  right: -26px;
  top: 0;
  border: solid transparent 13px;
  border-left-color: var(--z3);
}


 .tools_flyout {
  position: absolute;
  display: none;
  cursor: pointer;
  width: 385px;
  z-index: 10;
  left: 47px;
  top: 230px;
  height: 324px;
  background: var(--z15);
  border-radius: 5px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.5);
}

 .tools_flyout .tool_button {
  float: left;
  background-color: var(--z15);
  height: 24px;
  width: 24px;
}

/* Necessary to keep the flyouts sized properly */
#shape_buttons {background: var(--z15); border-radius: 0 3px 3px 0; padding: 10px}

.tools_flyout .tool_button,
.tools_flyout .tool_flyout {
  background: var(--z15);
  width: 40px;
  height: 40px;
  margin: 5px;
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px; 
  border-width: 0;
}

.tools_flyout .tool_button svg {
  fill: var(--z4);
}

.tools_flyout .tool_button:hover svg {
  fill: var(--z1);
}

