body {
    margin: 0;
    background-color: #cadedf;
    color: #16796f;
    font-family: 'Oswald', sans-serif;
}

.div1
{
    /* border: 5px solid red; */
    min-height: 100vh;
    box-sizing: border-box;
    position: relative;
    display: flex;
    flex-direction: column;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.header h1{
    font-size: 3vw;
    text-align: center;
    text-shadow: 2px 2px 4px #005048;
}

.instruction{
    /* border: 5px solid red; */
    width: 30%;
    margin: auto;
}

.instruction h3{
    text-align: left;
    margin: 0;
}

.instruction p{
    text-align: left;
}

.tableDiv {
    /* border: 5px solid blue; */
    box-sizing: border-box;
    width: 100%;
    padding-bottom: 15px;
}

table{
    border-collapse: collapse;
    box-shadow: 0 0 10px #005048;
    margin: auto;
}

td {
    height:3vw;
    width:3vw;
    text-align:center;
}
td:first-child {
    border-left:solid;
    border-color: #16796f;
}

td:nth-child(3n) {
    border-right:solid;
    border-color: #16796f;
}

tr:first-child {
    border-top:solid;
    border-color: #16796f;
}

tr:nth-child(3n) td {
    border-bottom:solid;
    border-color: #16796f;
}

.cell input {
    float: left;

    width: 3vw;
    height: 3vw;

    text-align: center;
    font-size: 2.5vw;
}

input{
    background-color: #e0f5f3;
    border: none;
    color: #16796f;
}

.button-container {
    margin-bottom: 5vw;
    display: flex;
    justify-content: center;
    
}

.btm1, .btm2{
    font-family: 'Kalam', cursive;
    font-weight:600;
    font-size: 1vw;
    background: #16796f;
    color: white;
    border:none;
    border-radius: 5px;
    padding: 0.5vw 1.2vw;
    transition: transform 0.5s;
}

.btm1{
    margin-right: 17vw;
}

.btm1:hover, .btm2:hover{
    font-weight:600;
    cursor:pointer;
    background:transparent;
    color: #16796f;
    text-decoration:none;
    transform: translateY(-8px);
}

#popup-message {
    font-family: 'Kalam', cursive;
    display: none;
    position: fixed;
    z-index: 1;
    padding-top: 10vw;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.4);
}

.popup-content {
    background-color: white;
    margin: auto;
    padding: 0.5vw;
    border: 1px solid #888;
    width: 35%;
    text-align: center;
    border-radius: 5px;
    font-size: 2vw;
}

.close-btn {
    color: #aaaaaa;
    float: right;
    font-size: 2vw;
    font-weight: bold;
    cursor: pointer;
}
  
.close-btn:hover, .close-btn:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}

.foot a{
    text-decoration: none;
    font-size: 1vw;
}

.foot a:visited{
    text-decoration: none;
    color: white;
}

.foot a:hover{
    text-decoration: underline;
}

.foot{
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: center;
    background-color: #16796f;
    color: white;
    margin-left: auto;
    padding: 1vw;
    min-height: 10vh;
    /* position: absolute; */
    bottom: 0;
}

.flinks li{
    display: inline-block;
    margin-right: 2vw;
}

hr{
    width: 100%;
    color: white;
}


@media screen and (max-width: 600px){
    .div1{
        /* border: 5px solid red; */
        min-height: 100vh;
    }

    .header h1{
        font-size: 6vh;
    }

    .instruction{
        /* border: 5px solid red; */
        width: 75%;
    }
    
    td {
        height:7vw;
        width:7vw;
    }

    .cell input {
        width: 7vw;
        height: 7vw;
        font-size: 5vw;
    }
    
    .btm1, .btm2{
        font-size: 3.5vw;
        border-radius: 5px;
        padding: 1vw 2vw;
    }

    .foot a{
        font-size: 2.5vw;
    }


}