/* Geometric cross: independent of font metrics and scrollbar position. */
.close,
.chat-heading button,
#filelist button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  font-size: 0;
  line-height: 0;
  color: var(--ink);
  box-sizing: border-box;
}
.chat-heading button,
#filelist button { position: relative; }
.close { top: 14px; right: 14px; z-index: 5; }
.close::before,
.close::after,
.chat-heading button::before,
.chat-heading button::after,
#filelist button::before,
#filelist button::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 12px;
  height: 1.5px;
  background: currentColor;
  border-radius: 1px;
  transform: translate(-50%, -50%) rotate(45deg);
  pointer-events: none;
}
.close::after,
.chat-heading button::after,
#filelist button::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.close:hover,
.chat-heading button:hover,
#filelist button:hover { background: #ffffffb3; }
