.Panel {
  position: relative;
  width: 100%;
  height: 100%;
}

.Panel::after {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 1;
  content: '';
}

.Panel--centered .Panel__in {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.Panel__in {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-height: 100%;
  z-index: 2;
  padding-bottom: var(--safe-area-inset-bottom);
}

.Epic .Panel__in {
  padding-bottom: var(--tabbar_height);
  padding-bottom: calc(var(--safe-area-inset-bottom) + var(--tabbar_height));
}

.Panel__in-before {
  height: 1px;
  margin-bottom: -1px;
}

.Panel__in-after {
  height: 1px;
  margin-top: -1px;
}

.Panel--tm-gray .Panel__in,
.Panel--tm-gray::after {
  background-color: var(--background_page);
}

.Panel--tm-white .Panel__in,
.Panel--tm-white::after {
  background-color: var(--background_content);
}