*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}


body{

    background:#161616;

    color:#f2f2f2;

    font-family:Georgia, serif;

    line-height:1.7;

    padding:60px 10%;

}



h1{

    text-align:center;

    font-size:48px;

    margin-bottom:50px;

}



h2{

    text-align:center;

    font-size:32px;

    margin:40px 0 25px;

}



/* BACK BUTTON */

.backBar{

    position:fixed;

    top:20px;

    left:20px;

    padding:10px 18px;

    background:#111;

    border:1px solid #444;

    border-radius:30px;

    z-index:1000;

}


.backBar a{

    color:white;

    text-decoration:none;

}


.backBar a:hover{

    color:#b787ff;

}





/* LOGIN */

#loginBox,
#userBox{

    position:fixed;

    top:20px;

    right:30px;

    width:220px;

    background:#222;

    padding:10px;

    border-radius:10px;

    border:1px solid #555;

    z-index:3000;

}



#loginBox input{

    width:100%;

    margin:5px 0;

    padding:8px;

    background:#111;

    color:white;

    border:1px solid #555;

    border-radius:6px;

}





button{

    display:block;

    margin:15px auto 0;

    padding:10px 25px;

    background:#b787ff;

    color:white;

    border:none;

    border-radius:30px;

    cursor:pointer;

    font-family:Georgia,serif;

    transition:.3s;

}



button:hover{

    background:#8d5cff;

    transform:translateY(-2px);

}





/* REVIEW FORM */


.review-form{

    max-width:600px;

    margin:auto;

    background:#222;

    padding:35px;

    border:1px solid #333;

    border-radius:15px;

}



.review-form input,
.review-form textarea{

    width:100%;

    margin:10px 0;

    padding:12px;

    background:#111;

    color:white;

    border:1px solid #555;

    border-radius:8px;

    font-family:Georgia,serif;

}



.review-form textarea{

    height:150px;

    resize:vertical;

}





/* STARS */


.stars{

    text-align:center;

    font-size:38px;

    color:#b787ff;

    margin:20px;

}


.stars span{

    cursor:pointer;

}





/* ADMIN BUTTON */


#moderationTab{

    display:flex;

    justify-content:center;

    gap:15px;

    margin:25px auto;

}


#moderationTab button{

    margin:0;

}





/* REVIEWS */


#reviews{

    max-width:800px;

    margin:auto;

}



.review{

    position:relative;

    background:#222;

    border:1px solid #333;

    border-radius:15px;

    padding:25px;

    margin:20px 0;

    transition:.3s;

}



.review:hover{

    border-color:#b787ff;

    transform:translateY(-3px);

}



.review h3{

    color:#b787ff;

}



.stars-display{

    color:#b787ff;

    font-size:22px;

}




.review a{

    display:inline-block;

    margin-top:10px;

    padding:5px 15px;

    border-radius:20px;

    border:1px solid #555;

    color:#b787ff;

    text-decoration:none;

    transition:.3s;

}



.review a:hover{

    background:#b787ff;

    color:white;

}




/* MODERATION POPUP */


#moderationPanel{

    display:none;

    position:fixed;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    width:500px;

    max-width:90%;

    max-height:80vh;

    overflow-y:auto;

    background:#222;

    padding:25px;

    border-radius:15px;

    border:1px solid #555;

    z-index:4000;

    box-shadow:0 0 30px #000;

}



.modHeader{

    display:flex;

    justify-content:space-between;

    align-items:center;

}



.modHeader span{

    font-size:30px;

    cursor:pointer;

}



.pendingReview{

    background:#111;

    padding:15px;

    border-radius:10px;

    margin-top:15px;

    border:1px solid #333;

}



#editingReview{

    text-align:center;

    color:#b787ff;

    margin-bottom:20px;

}





.artworkInput,
#galleryLink,
#artworkCaption{

    width:100%;

    padding:10px;

    margin:8px 0;

    background:#111;

    color:white;

    border:1px solid #555;

    border-radius:8px;

}





/* ARTWORK DISPLAY */


.artworkCarousel{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:15px;

    margin-top:20px;

}



.artworkCarousel img{

    width:250px;

    max-height:300px;

    object-fit:contain;

    border-radius:10px;

    border:1px solid #444;

}





.artworkCarousel button{

    margin:0;

    padding:8px 15px;

}





/* IMAGE CAPTION */


.artCaption{

    text-align:center;

    color:#aaa;

    opacity:0;

    transition:.3s;

}



.review:hover .artCaption{

    opacity:1;

}





footer{

    text-align:center;

    padding:50px;

    color:#888;

}


.artworkEditor{

    margin-top:20px;

    padding:20px;

    background:#111;

    border:1px solid #444;

    border-radius:12px;

}


.artworkEditor h4{

    color:#b787ff;

    text-align:center;

}


.artworkEditor input{

    width:100%;

    padding:8px;

    margin:6px 0;

    background:#222;

    color:white;

    border:1px solid #555;

    border-radius:6px;

}


.artworkInputs{

    margin-bottom:15px;

}


@media(max-width:700px){


body{

    padding:60px 5%;

}



#loginBox,
#userBox{

    position:relative;

    top:auto;

    right:auto;

    margin-bottom:20px;

}



}


