.jt-player-shell {
  position: relative;
  background: #000;
}

.jt-player-video {
  width: 100%;
  height: 100%;
  background: #000;
}

.jt-player-controls {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 20;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px 12px 12px;
  color: #fff;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.82), rgba(0, 0, 0, 0.24), transparent);
}

.jt-progress {
  width: 100%;
  accent-color: #ff0000;
}

.jt-controls-row {
  display: flex;
  align-items: center;
  gap: 8px;
}

.jt-btn {
  border: 0;
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
  border-radius: 999px;
  min-width: 34px;
  height: 34px;
  padding: 0 10px;
  font-size: 13px;
  cursor: pointer;
}

.jt-btn:hover {
  background: rgba(255, 255, 255, 0.27);
}

.jt-time {
  font-size: 12px;
  font-weight: 600;
  min-width: 105px;
  text-align: center;
}

.jt-volume {
  width: 96px;
  accent-color: #ff0000;
}

.jt-speed {
  border: 0;
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
  border-radius: 999px;
  height: 34px;
  padding: 0 10px;
  font-size: 12px;
}

.jt-spacer {
  flex: 1;
}

@media (max-width: 640px) {
  .jt-player-controls {
    padding: 8px;
    gap: 5px;
  }

  .jt-btn {
    min-width: 30px;
    height: 30px;
    padding: 0 8px;
  }

  .jt-time {
    min-width: 82px;
    font-size: 11px;
  }

  .jt-volume {
    width: 70px;
  }

  .jt-speed {
    height: 30px;
    font-size: 11px;
  }
}
