* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  color: white;
}

html,
body {
  height: 100%;
  width: 100%;
}

body {
  background-color: black;
}

main {
  height: 100%;
  width: 100%;
  background: linear-gradient(to right bottom, rgb(26, 26, 26), rgb(35, 35, 35), black);
  padding: 20px;
}

section {
  height: 100%;
  width: 350px;
  background-color: black;
  border-radius: 10px;
  margin: auto;
}

.all-reels {
  height: 100%;
  width: 100%;
  overflow: auto;
  scroll-snap-type: y mandatory;
  scroll-behavior: smooth;
}

.all-reels::-webkit-scrollbar {
  display: none;
}

.reel {
  height: 100%;
  width: 100%;
  position: relative;
  border-radius: 10px;
  margin-bottom: 50px;
  overflow: hidden;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.reel video {
  height: 100%;
  width: 100%;
}

.reel .bottom {
  padding: 30px 20px;
  background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.9));
  width: 100%;
  position: absolute;
  bottom: 1%;
  border-radius: 10px;
}

.bottom .user {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
}

.bottom .user img {
  height: 40px;
  width: 40px;
  border-radius: 50%;
  object-fit: cover;
}

.bottom > h3 {
  font-size: 15px;
}

.bottom .user button {
  color: black;
  padding: 5px 20px;
  border-radius: 30px;
  border: none;
  background-color: #0081FB;
  color: white;
}

.bottom .user h4 {
  font-size: 15px;
}

.right {
  width: 40px;
  position: absolute;
  right: 50px;
  bottom: 25%;
  transform: translateX(100%);
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  text-align: center;
}

.icon {
  font-size: 30px;
}

.right > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.progress-bar {
  height: 3px;
  width: 100%;
  background-color: white;
  position: absolute;
  bottom: 0;
}

#progress {
  height: 100%;
  width: 0%;
  background-color: red;
}

.custom-controls {
  display: flex;
  justify-content: space-between;
  padding: 0px 20px;
  font-size: 30px;
  margin-top: 20px;
}

#playBtn {
  padding: 10px;
  border-radius: 50%;
  height: fit-content;
  background-color: rgba(79, 79, 79, 0.3);
  display: flex;
  justify-content: center;
  align-items: center;
}

.volume-btn {
  font-size: 20px;
}

/* 1. Define the Hidden State */
#volumeSlider {
  -webkit-appearance: none;
  appearance: none;
  accent-color: white;
  height: 2px;
  cursor: pointer;
}

.volume-control {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background-color: rgba(79, 79, 79, 0.3);
  padding: 10px 15px;
  border-radius: 30px;
}

video {
  transform: translateY(50%);
}

#liked {
  color: crimson;
}

.commentSection {
  height: 0px;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #111;
  transition: all ease 0.2s;
}

.commentSection {
  overflow-y: auto;

  /* Firefox */
  scrollbar-width: thin;
  scrollbar-color: #222 transparent;
}

.commentSection::-webkit-scrollbar {
  width: 8px;
}

.commentSection::-webkit-scrollbar-track {
  background: transparent;
}

.commentSection::-webkit-scrollbar-thumb {
  background-color: #222;
  border-radius: 999px;
}

.commentSection::-webkit-scrollbar-thumb:hover {
  background-color: #333;
}

.commentSection header {
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0px 10px 0px 0px;
  z-index: 2;
}

.commentSection header h4 {
  font-size: 25px;
}

.commentSection .comment {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding: 10px;
  background-color: #222;
  border-radius: 15px;
  position: relative;
}

.commentSection .user {
  display: flex;
  align-items: center;
  gap: 10px;
}

.comment {
  margin: 15px 0px;
  width: 100%;
  min-height: 60px;
}

.commentSection .comment img {
  height: 30px;
  width: 30px;
  border-radius: 50%;
  object-fit: cover;
}

.comment .text {
  margin-left: 40px;
}