body{
    margin: 0;
    padding: 0;
    background-color: rgb(233, 233, 233);
    font-family: 'Roboto', sans-serif;
}

header{ 
    background-color: #fff;
    position: fixed;
    border-bottom: 1px solid rgb(151, 142, 142);
    box-shadow: 0 1px 5px rgb(204, 200, 200);
    z-index: 1000;
    width: 100%;
}

nav{
    display: grid;
    grid-template-columns: 15% 58% 15%;
    gap: 5%;
    padding: 17px 15px;
}

.youtube_icons{
    height: 30px;
    cursor: pointer;
}

.youtube-left-icons{
    display: flex;
    gap: 22%;
}

nav #search_section{
    margin: 0;
    padding: 0;
    text-align: center;
}

nav #search_section input{
    vertical-align: top;
    height: 40px;
    border-radius: 20px 0 0 20px;
    border: 1px solid;
    width: 50%;
    padding: 15px;
    font-size: 1.2em;
    margin: 0;
    border-color: #7c7979;
}

nav #search_section .search_icon{
    border: 1px solid #7c7979;
    height: 28px;
    vertical-align: top; 
    margin-left: -10px; 
    border-radius: 0px 20px 20px 0px;
    padding: 0px 10px;
    border-left: none;
    padding: 5px 15px;
    margin-right: 15px;
    cursor: pointer;
}

nav #search_section .voice_icon{
    margin-top: 2px;
    height: 35px;
    border: 1px solid #7c7979;
    border-radius: 50%;
    padding: 2px;
    margin-top: -1px;
}

nav .youtube-right-icons{
    display: flex;
    flex-direction: row;
    gap: 14%;
    justify-content: end;
}

nav .youtube-right-icons .account_icons{
    width: 40px;
    height: 40px;
    vertical-align: top;
    margin-top: -2px;
    border: 2px solid;
}

nav .youtube-right-icons .account_icons:hover{
    border: 2px solid red;
}

nav .account_icons{
    border-radius: 50%;
}

main{
    display: grid;
    grid-template-columns: 80px auto;
}

main aside{
    background-color: #fff;
    padding: 20px;
    position: fixed;
    border: 0;
    box-shadow: none;
    height: 100vh;
    z-index: 2000;
}

main aside div{
    display: flex;
    flex-direction: column;
    gap: 60px;
}

/* content section */
section{
    display: grid;
    grid-template-columns: repeat(4,25%);
    gap: 8px;
    justify-content: center;
    margin-top: 110px;
    position:absolute;
    margin-left: 110px;
    margin-right: 45px;
}
section article{
    margin-bottom: 35px;
}

section .thumbnails{
    width: 96%;
    margin-bottom: 20px;
    border-radius: 10px;
    margin-left: 2%;
    cursor: pointer;
    box-shadow: 1px 2px 10px rgb(112, 107, 107);
}

.account_container img{
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid rgb(78, 75, 75);
}

.account_container img:hover{
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 2px solid rgb(211, 70, 70);
}

.account_container p{
    font-size: 14px;
    margin: 5px 0;
}

.account_container .div-one{
    display: flex;
    gap: 10px;
    padding: 0;
}

.account_container .div-one h3{
    margin: 0;
    width: 80%;
    font-size: 16px;
    line-height: 20px;
}

.account_container .div-two{
    margin-left: 53px;
    padding: 0;
}

.account_container .div-two div{
    display: flex;
    margin: 0;
    padding: 0;
}

/* responsive design */
@media (max-width: 1404px) {
    section{
        grid-template-columns: repeat(3,33%);
    }
} 

@media (max-width: 1084px) {
    nav #search_section input{
        width: 40%;
    }
    section{
        grid-template-columns: repeat(2,50%);
    }
} 

@media (max-width: 870px) {
    main aside{
        display: none;
    }
    section{
        margin-left: 30px;
        margin-right: 30px;
    }
} 

@media (max-width: 762px) {
    nav #search_section input{
        width: 25%;
    }
    section{
        grid-template-columns: 100%;
    }
} 

@media (max-width: 650px) {
    nav {
        padding: 15px 15px;
    }
    nav #search_section input{
        width: 10%;
        height: 20px;
    }

    nav #search_section  .search_icon{
        height: 20px;
    }

    nav #search_section  .voice_icon{
        height: 20px;
        margin-top: 2px;
    }

    nav .youtube-right-icons, .youtube-left-icons{
        padding-top: 2px;
    }

    nav .youtube-right-icons .account_icons{
        width: 25px;
        height: 25px;
        margin-top: -2px;
    }

    .youtube_icons{
        height: 23px;
        cursor: pointer;
    }    
} 

@media (max-width: 500px) {
    nav{
        display: grid;
        grid-template-columns: 25% 20% 25%;
        gap: 15%;
        padding: 17px 15px;
    }

    nav #search_section input{
        display: none;
    }
    nav #search_section  .search_icon{
        height: 16px;
        border: 1px solid #7c7979;
        border-radius: 50%;
        padding: 2px;
        margin-top: 1px;
        margin-right: 10px;
    }

    nav #search_section  .voice_icon{
        height: 16px;
        border: 1px solid #7c7979;
        border-radius: 50%;
        padding: 2px;
        margin-top: 0.5px;
    }

    nav .youtube-right-icons .account_icons{
        width: 16px;
        height: 16px;
        margin-top: 0px;
    }

    .youtube_icons{
        height: 16px;
        cursor: pointer;
    }    
} 

