.wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
}

.resizing {
  user-select: none;
  cursor: ns-resize;
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  background: transparent;
}

.resizeHandleBottom {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 24px;
  cursor: ns-resize;
  opacity: 0;
  transition: opacity 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;

  @mixin light {
    background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.05));
  }

  @mixin dark {
    background: linear-gradient(
      to bottom,
      transparent,
      rgba(255, 255, 255, 0.05)
    );
  }

  &:hover {
    @mixin light {
      background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));
    }

    @mixin dark {
      background: linear-gradient(
        to bottom,
        transparent,
        rgba(255, 255, 255, 0.1)
      );
    }
  }
}

.wrapper:hover .resizeHandleBottom,
.resizing .resizeHandleBottom {
  opacity: 1;
}

.resizeBar {
  width: 50px;
  height: 4px;
  border-radius: 2px;
  transition: background-color 0.2s ease;

  @mixin light {
    background-color: var(--mantine-color-gray-5);
  }

  @mixin dark {
    background-color: var(--mantine-color-gray-6);
  }
}

.resizeHandleBottom:hover .resizeBar,
.resizing .resizeBar {
  @mixin light {
    background-color: var(--mantine-color-gray-7);
  }

  @mixin dark {
    background-color: var(--mantine-color-gray-4);
  }
}
