/* ===========================
   RESET
=========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html,
body{
    width:100%;
    height:100%;
    overflow:hidden;
    background:#000;
    font-family:Poppins,sans-serif;
}

/* ===========================
   REELS CONTAINER
=========================== */

#reelsContainer{

    width:100%;
    height:100vh;

    overflow-y:scroll;

    scroll-snap-type:y mandatory;

    scrollbar-width:none;

    scroll-behavior:smooth;

}

#reelsContainer::-webkit-scrollbar{
    display:none;
}

/* ===========================
   EACH REEL
=========================== */

.reel{

    position:relative;

    width:100%;

    height:100vh;

    scroll-snap-align:start;

    background:#000;

    overflow:hidden;

}

/* ===========================
   VIDEO
=========================== */

.video-wrapper{

    width:100%;

    height:100%;

    position:relative;

}

.video-wrapper video{

    width:100%;

    height:100%;

    object-fit:cover;

    background:#000;

    cursor:pointer;

}

/* ===========================
   OVERLAY
=========================== */

.overlay{

    position:absolute;

    left:0;

    right:0;

    bottom:70px;

    padding:20px;

    background:linear-gradient(
        to top,
        rgba(0,0,0,.90),
        rgba(0,0,0,.55),
        rgba(0,0,0,0)
    );

    color:#fff;

    z-index:20;

}

/* ===========================
   TITLE
=========================== */
.overlay h2{

    font-size:22px;

    font-weight:700;

    line-height:1.35;

    margin-bottom:8px;

    max-width:88%;

    text-shadow:0 3px 10px rgba(0,0,0,.6);

}

/* ===========================
   DESCRIPTION
=========================== */

.description{

    margin-top:10px;

    color:#ddd;

    line-height:1.55;

    max-width:88%;

    font-size:15px;

    display:-webkit-box;

    -webkit-line-clamp:3;

    -webkit-box-orient:vertical;

    overflow:hidden;

}
/* ===========================
   STATS
=========================== */

.stats{

    display:flex;

    gap:20px;

    margin-bottom:14px;

    font-size:15px;

    font-weight:600;

}

.stats span{

    background:rgba(255,255,255,.12);

    padding:7px 12px;

    border-radius:30px;

}

/* ===========================
   RIGHT ACTIONS
=========================== */

.actions{

    position:absolute;

    right:14px;
bottom:230px;
    display:flex;

    flex-direction:column;

    gap:20px;

    z-index:50;

}

.action{

    text-align:center;

    color:white;

    cursor:pointer;

    transition:.25s;

}

.action:hover{

    transform:scale(1.08);

}

.action i{

    font-size:30px;

    margin-bottom:6px;

}

.action span{

    display:block;

    font-size:13px;

}

/* ===========================
   MUTE BUTTON
=========================== */

.mute-btn{

    position:absolute;

    top:20px;

    right:20px;

    width:50px;

    height:50px;

    border-radius:50%;

    background:rgba(0,0,0,.55);

    backdrop-filter:blur(10px);

    display:flex;

    justify-content:center;

    align-items:center;

    color:white;

    font-size:24px;

    cursor:pointer;

    z-index:100;

    transition:.25s;

}

.mute-btn:hover{

    transform:scale(1.08);

}

/* ===========================
   PLAY BUTTON
=========================== */

.play-btn{

    position:absolute;

    left:50%;

    top:50%;

    transform:translate(-50%,-50%);

    width:90px;

    height:90px;

    border-radius:50%;

    background:rgba(0,0,0,.55);

    display:flex;

    justify-content:center;

    align-items:center;

    color:white;

    font-size:42px;

    opacity:0;

    transition:.25s;

    pointer-events:none;

    z-index:90;

}

.play-btn.show{

    opacity:1;

}

/* ===========================
   LOADING
=========================== */

.loader{

    position:absolute;

    left:50%;

    top:50%;

    transform:translate(-50%,-50%);

    color:white;

    font-size:15px;

    z-index:90;

}

/* ===========================
   PROGRESS BAR
=========================== */

.progress{

    position:absolute;

    left:0;

    bottom:0;

    width:100%;

    height:4px;

    background:rgba(255,255,255,.18);

    z-index:90;

}

.progress span{

    display:block;

    width:0;

    height:100%;

    background:#ff003c;

}

/* ===========================
   MOBILE
=========================== */

@media(max-width:768px){

.overlay{

    padding:18px;

}

.overlay h2{

    font-size:18px;

}

.description{

    font-size:14px;

}

.stats{

    gap:10px;

    font-size:13px;

}

.stats span{

    padding:6px 10px;

}

.action i{

    font-size:26px;

}

.play-btn{

    width:75px;

    height:75px;

    font-size:34px;

}

.mute-btn{

    width:45px;

    height:45px;

    font-size:20px;

}

}