
/* set variabes */
:root {
    --background: rgb(224, 225, 226);
    --warningRed: rgb(181, 0, 0);
    --grayButton: lightgray;
}


*, *::before, *::after{
    margin: 0;
    padding: 0;
    font-family: Helvetica, Arial, sans-serif;
    box-sizing: border-box;
} 


body{
    display: flex;
    flex-direction: column;
    background-color: var(--background);
    max-width: 100%;
    font-size: .7rem;
    font-weight: 400;
}
dialog{
    margin-left: auto;
    margin-right: 30%;
    margin-top:50vh;
    background-color: white;
    border-radius: 5px;
}
#error-modal{
    padding: 1rem;
}
#close-modal{
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1rem;
}
.main-content{
    margin-left: auto;
    margin-right: auto;
    margin-top: 6rem;
}
.main-content h1{
    margin-bottom: 1rem;
}
.navbar{
    display: flex;  
    border-bottom: 1px solid gray;
    padding: .5rem 2rem;
    align-items: center;
}
a{
    text-decoration: none;
    color: black;
}
.navlogo{
    max-width: 180px;  
}
.navmenuitems{
    display: flex;
    margin-left: auto;
}
.navmenuitems li{
    list-style: none;
    margin-left: 1.5rem; 
}
#margin-left-auto{
    margin-left: auto; 
}
.footer{
    position:fixed;  
    bottom: 0px;
    width: 100%; 
    background-color: grey;
    padding: 1rem 2rem 1rem 2rem;
    display: flex;
}
.footer div{
    align-self: flex-end;
    margin-left: auto;
    
    text-decoration: none;
}
.footer div a{
    color: white;
    margin-left: .7rem;
}
.allcabins-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    background-color: white;
    filter: drop-shadow(2px 2px 2px #909090);
    margin-top: 2rem;
    border-radius: 10px;
    margin-left: auto;
    margin-right: auto; 
    overflow:  hidden;
    padding: 1rem;
}
.main-content h1{
    text-align: center;
}



/* Cabin module styles */

.cabin-item {
    list-style: none;
}
.cabinimage-container{
    display: flex;
    justify-content: center;
    padding: .5rem;
}
.cabinimage{
    width: 100%;
    margin-top: auto;
    margin-bottom: auto;   
    max-height: 150px;
    object-fit: cover;
}
#cabinimageupload{
    width: 100%;
    min-width: 100px;
    height: auto;
    display: block;
    margin-top: auto;
    margin-bottom: auto;   
}
.cabin-container{
    padding: 1rem;
} 
.cabintype{
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: .5rem;
}
#cabinTitle{
    grid-column: 1/3;
}
#cabin-description h3{
    font-size: .8rem;
    margin-bottom: .3rem;
}
#cabin-description {
    grid-column: 1/3;
    margin-top: .3rem;
}
.price{
    margin-top: 1rem;
}



/* All cabins page content styles */

.allcabins-pagecontent h1 {
    margin-top: 3rem;
    margin-bottom: 1.8rem;
    text-align: center;
    font-size: 1.5rem;
}
.allcabins-pagecontent .cabin-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1rem;
    max-width: 70%;
    margin-left: auto;
    margin-right: auto;
}
.allcabins-pagecontent  .allcabins-grid{
    height: 100%;
    min-width: 200px;
}



/* Admin menu page content styles */

.adminmenu-pagecontent {
    min-width: 200px;
}
.adminmenu-pagecontent .cabin-list {
    max-width: 80%;
    min-width: 180px;
    margin-left: auto;
    margin-right: auto; 
}
.pagecontent{
    margin-bottom: 5rem;
}



/* Admin */

.db-message{
    padding-left: 2rem;
}
.admin-title{
    margin-left: 1rem;
}
.admin-grid-container{
    display: grid;
    grid-template-columns: 1fr 1fr;
    /* max-width: 100%; */
}
.admin-content{
    padding: 2rem;
}
.admin-content div{
    display: flex;
    flex-direction: column;
    margin-top: 1rem;
}
.admin-content label{
    font-weight: 800;
    margin-bottom: .2rem;
}
#admin-image-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
}
#editcabin-title{
    margin-left: 2rem;
    margin-top: 2rem;
}
#tester {
    background-color: pink;
}
.admin-grid-container .pagecontent {
    max-height: 110vh;
    overflow-y: auto;
    padding-bottom: 2rem;
}
#warning-text {
    color: var(--warningRed);
    font-weight: 800;
    margin-top: .2rem;
}
.response-message p {
    font-size: 3rem;
    color: red;
}
#admin-form{
    padding: 1rem;
    border: 2px solid var(--background);
}
textarea {
    padding: .5rem;
}
#cabinimage{
    padding: .2rem 0rem; 
}
select{
    padding: .2rem;
    padding-left: .5rem;
}
#cabintype{
    font-weight: 700;
}
#description{
    font-size: .8rem;
}
#pricepernight{
    font-size: .8rem;
}
#priceperweek{
    font-size: .8rem;
}


/* login */

#loginform{
    display: flex;
    flex-direction: column;
}
#loginform div{
    display: flex;
    flex-direction: column;
    margin: .3rem;
}


/* index page */
.logo-container {
    margin: 1rem;
}
.screenshot-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    max-width: 80%;
    margin: 3rem auto 0 auto;
    gap: 1rem;
}
.screenshot-grid img{
    border: .5px solid grey;
    box-shadow: 5px 5px 10px#888888;
    min-width: 300px;
}
.indexpage> h1, p {
    text-align: center;
}
.indexpage h1{
    margin-top: 3rem;
    margin-bottom: 2rem;
}
.indexpage>p {
    margin-bottom: .5rem;
}

@media screen and (max-width: 1020px ) {
       .screenshot-grid {
    grid-template-columns: 1fr 1fr;
    }
}
@media screen and (max-width: 916px ) {

    .allcabins-pagecontent .cabin-list {
        max-width: 85%;
    }
}
@media screen and (max-width: 780px){
    #admin-image-grid{
    grid-template-columns: 1fr;
    }
    .admin-content{
        padding: 2rem 0.5rem;
    }
}
@media screen and (max-width: 714px) {
    .allcabins-pagecontent .cabin-list {
    
        grid-template-columns: 1fr 1fr;
    }
    .screenshot-grid {
    grid-template-columns: 1fr;
    }
@media screen and (max-width: 500px){
    #admin-form {
        max-width: 185px;  
    }
    #admin-image-grid img{
        background-color: pink;
        max-width: 148px;
    }
    .cabinimage-container{
        padding: 0;
    }
    #cabinimage{
        padding-left: 0;
    }
}
@media screen and (max-width: 480px) {
    .allcabins-pagecontent .cabin-list {
    
        grid-template-columns: 1fr;
    }
    .allcabins-pagecontent .cabin-list {
        max-width: 70%;

    }
}
@media screen and (max-width: 380px){
    .navbar{
        display: block;  
    }
    .navmenuitems{
        margin-top: 0.5rem;
    }
    .navbar {
        padding: .5rem;
    }
   
} }