.ss-container {
  --ss-scrollbar-size: 6px;

  --ss-track-color: #d7d7d780;
  --ss-track-radius: 4px;

  --ss-thumb-color: #a3a3a3;
  --ss-thumb-color-hover: #67676780;
  --ss-thumb-color-active: #33333380;
  --ss-thumb-radius: 4px;

  /* js와 값이 같아야함 */
  --ss-thumb-track-margin: 10px;

  --ss-scroll-right-bottom: 7px;

  position: relative;
}

.ss-wrapper {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

.ss-content {
  scrollbar-width: none;
  -ms-overflow-style: none;
  height: 100%;
  width: 100%;
  padding: 0;
  position: relative;
  overflow: auto;
  box-sizing: border-box;
}

.ss-content::-webkit-scrollbar {
  display: none;
}

.ss-content.rtl {
  width: 100%;
  right: auto;
}

.ss-scroll {
  overflow: auto;
}

/* 트랙 (Y축) */
.ss-track.ss-y {
  position: absolute;
  top: 0;
  bottom: 0;
  right: var(--ss-scroll-right-bottom);
  width: var(--ss-scrollbar-size);
  background: transparent;
  z-index: 2;
}

.ss-track.ss-y::before {
  content: "";
  display: block;
  position: absolute;
  top: var(--ss-track-top-margin, 0px);
  bottom: var(--ss-track-bottom-margin, 0px);
  left: 0;
  right: 0;
  background: var(--ss-track-color);
  border-radius: var(--ss-track-radius);
  z-index: -1;
}

/* 트랙 (X축) */
.ss-track.ss-x {
  position: absolute;
  left: 0;
  right: 0;
  bottom: var(--ss-scroll-right-bottom);
  height: var(--ss-scrollbar-size);
  background: transparent;
  z-index: 2;
}

.ss-track.ss-x::before {
  content: "";
  display: block;
  position: absolute;
  left: var(--ss-track-left-margin, 0px);
  right: var(--ss-track-right-margin, 0px);
  top: 0;
  bottom: 0;
  background: var(--ss-track-color);
  border-radius: var(--ss-track-radius);
  z-index: -1;
}

/* Thumb (Y축) */
.ss-thumb.ss-y {
  width: 100%;
  position: absolute;
  background: var(--ss-thumb-color);
  border-radius: var(--ss-thumb-radius);
  cursor: pointer;
  opacity: 0.5;
  transition: opacity 0.25s linear, background 0.25s linear;
}

/* Thumb (X축) */
.ss-thumb.ss-x {
  height: 100%;
  position: absolute;
  background: var(--ss-thumb-color);
  border-radius: var(--ss-thumb-radius);
  cursor: pointer;
  opacity: 0.5;
  transition: opacity 0.25s linear, background 0.25s linear;
}

/* Thumb hover */
.ss-thumb:hover {
  opacity: 1;
  background: var(--ss-thumb-color-hover);
}

/* Thumb active */
.ss-thumb:active {
  opacity: 1;
  background: var(--ss-thumb-color-active);
}

.ss-hidden {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.1s linear;
}

.ss-container:hover .ss-scroll,
.ss-container:active .ss-scroll {
  opacity: 1;
}

.ss-grabbed {
  -o-user-select: none;
  -ms-user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}
