.adm-floating-panel {
  --border-radius: 8px;
  --header-height: 28px;
  --z-index: var(--adm-floating-panel-z-index, 900);

  position: fixed;
  z-index: var(--z-index);
  left: 0;
  width: 100vw;
  display: flex;
  flex-direction: column;
  touch-action: none;
  &-mask {
    display: block;
    width: 100%;
    height: 100vh;
    position: absolute;
    left: 0;
    top: -100vh;
    background: transparent;
  }
  &::after {
    content: '';
    display: block;
    position: absolute;
    height: 100vh;
    width: 100vw;
    background: var(--adm-color-background);
  }
  .adm-floating-panel-header {
    flex: none;
    height: var(--header-height);
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: grab;
    user-select: none;
    background-color: var(--adm-color-background);
    border-top-left-radius: var(--border-radius);
    border-top-right-radius: var(--border-radius);

    .adm-floating-panel-bar {
      height: 3px;
      width: 20px;
      border-radius: 10px;
      background: var(--adm-color-light);
    }
  }
  .adm-floating-panel-content {
    flex: 1;
    overflow-y: scroll;
    background: var(--adm-color-background);
  }

  // Position
  &-top {
    top: 0;
    &::after {
      top: -100vh;
    }
  }

  &-bottom {
    bottom: 0;
    &::after {
      bottom: -100vh;
    }
  }
}
