/* the whole box */
.paddis-video-player {
  position: relative;
  padding: 0;
  font-size: 0; /* prevent inline-block gaps */
  box-sizing: border-box;
}

/* buttons inside video player */
.paddis-video-player button {
  border: none;
  background: none;
}

/* der bug mit dem blauen button */
#fullscreen-button {
  background: none;       /* remove default button background */
  border: none;           /* remove default border */
  padding: 0;             /* remove default padding */
  outline: none;          /* remove focus outline */
}

#fullscreen-button:focus {
  outline: none;          /* prevent blue focus ring */
  box-shadow: none;       /* prevent any shadow */
}

#fullscreen-button svg {
  display: block;         /* remove inline spacing issues */
}


/* ensure play button fills the overlay */
#play-button {
  all: unset;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: block;
  box-sizing: border-box;
  z-index: 1; /* ensure it's clickable */
}

/* the video box */
.video-box {
  display: flex;
  align-items: center;         /* vertical center */
  justify-content: center;     /* horizontal center */
  width: 100%;
  height: 100%;                /* fill parent (fullscreen or wrapper) */
  position: relative;
  font-size: 0; /* prevent inline-block gaps */
  box-sizing: border-box;
}

/* video styling */
video {
  width: 100%;
  height: 53.8875vw;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;         /* maintain aspect ratio and center */
  background: rgb(0, 0, 0);
  position: relative;
  z-index: 0;
  box-sizing: border-box;
}

#fullscreen-button{
  width: 0px;
  height: 0px;
}

/* overlay */
.transparent_box {
  opacity: 0.96;  
  transition: opacity 0.5s ease;
  background: rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  z-index: 1;
  display: flex;
  box-sizing: border-box;
}

/* show overlay */
.transparent_box.invisible {
  opacity: 0;
}


/* progress bar */
.video-progress-bar {
  height: 2.5vw;
  width: 101%;
  background-color: rgba(112, 113, 114, 0.6);
  position: absolute;
  bottom: -0.1vw;
  left: -0.5%;
  z-index: 5;
  box-sizing: border-box;
}

.video-progress-filled {
  height: 100%;
  margin-top: 0;
  background: rgb(255, 255, 255);

  transition: width 0.1s linear;
  box-sizing: border-box;
  border-radius: 0 0.9vw 0.9vw 0;
}

/* big play button box */
.big_play_button_box {
  position: absolute; /* ensure it stretches over the button */
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

/* the big play button icon */
.big_play_button_box svg {
  width: 13vw;
  height: 13vw;
}

#big_fullscreen_button_box {
  height: 24vw;
  width: 24vw;
  z-index: 1;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  right: -6.25vw;
  bottom: -3.95vw;
  box-sizing: border-box;
}

#big_fullscreen_button_box svg {
  width: 4.436vw;
  height: 4.436vw;
}

/* Audio Button */
.audiovalue_button_box {
  visibility: hidden;
  height: 24.9vw;
  z-index: 1;
  position: absolute;
  display: flex;
  right: 6vw;
  bottom: -3vw;
  box-sizing: border-box;
}

.audiovalue_button_box svg {
  width: 4.7vw;
  height: 4.7vw;
}

/* timebox*/
.timestamp-box{
  height: 24vw;
  z-index: 0;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: left;
  bottom: -4.15vw;
  left: 3.282vw;
  box-sizing: border-box;
}
.timestamp-box p{
  
  margin: 0vw;
  font-size: 4.37vw;
  color: rgb(253, 254, 255);
  user-select: none;
  -webkit-user-select: none; /* Safari */
  -ms-user-select: none;     /* IE/Edge */
}

/* remove focus outlines from video buttons and fullscreen box */
#play-button,
#audiovalue-button,
#big_fullscreen_button_box {
  outline: none;
  box-shadow: none;
}

/* assuming fullscreen here */
@media screen and (min-width: 600px) {


  .video-progress-bar {
    height: 2.8vh;
    bottom: -0.1vh;
  }

  .video-progress-filled {
    border-radius: 0 0.9vh 0.9vh 0;
  }

  /* the big play button icon */
  .big_play_button_box svg {
    width: 13vh;
    height: 13vh;
  }

  #big_fullscreen_button_box {
    height: 24vh;
    width: 24vh;
    right: -6.25vh;
    bottom: -3.65vh;
  }

  #big_fullscreen_button_box svg {
    width: 4.436vh;
    height: 4.436vh;
  }

  /* Audio Button */
  .audiovalue_button_box {
    height: 24.9vh;
    right: 6vh;
    bottom: -3vh;
  }

  .audiovalue_button_box svg {
    width: 4.7vh;
    height: 4.7vh;
  }

  /* timebox*/
  .timestamp-box{
    height: 24vh;
    bottom: -3.75vh;
    left: 3.282vh;
  }
  .timestamp-box p{
    font-size: 4.37vh;
  }


}


@media screen and (min-width: 600px) and (min-height: 600px){
  
  .video-progress-filled {
    border-radius: 0 0.5vh 0.5vh 0;
  }

  .video-progress-bar {
    height: 1.2vh;
    bottom: -0.1vh;
  }

  .big_play_button_box svg {
    width: 6.3vh;
    height: 6.3vh;
  }

  #big_fullscreen_button_box {
    width: 10.5vh;
    height: 10.5vh;
    right: -2.15vh;
    bottom: -1.4vh;
  }

  /* fullscreen icon */
  #big_fullscreen_button_box svg {
    width: 2.058vh;
    height: 2.058vh;
  }

  /* Audio Button */
  .audiovalue_button_box {
    visibility: visible;
    align-items: center;
    justify-content: center;
    width: 3.058vh;
    height: 10.5vh;
    right: 5.25vh;
    bottom: -1.4vh;
    width: 5vh;
  }
  
  .audiovalue_button_box svg {
    width: 2.058vh;
    height: 2.058vh;
  }


  /* timebox*/
  .timestamp-box{
    height: 10.5vh;
    position: absolute;
    left: 1.85vh;
    bottom: -1.4vh;

  }
  .timestamp-box p{
    font-size: 1.953vh;
    text-justify: center;
  }

}

/* fullscreen override */
#video-wrapper.fullscreen video {
    width: 100%;
    max-height: 1000vw;
}


.unselectable {
  user-select: none;
  -webkit-user-select: none; /* Safari */
  -ms-user-select: none;     /* IE/Edge */
}

@media screen and (min-width: 800px) {
  
  .video-progress-filled {
    border-radius: 0 0.5vh 0.5vh 0;
  }

  video {
    height: 52.875vh;
    max-height: 53.4375vw;
  }

}