body{
    font-family: Lato;
    margin:0;
}

caption{
    font-size: 22pt;
    margin: 10px 0 20px 0;
    font-weight: 700;
}

table.calendar{
    width:100%; 
    border:1px solid #000;
}

td.day{
    width: 14%;
    height: 100px;
    border: 1px solid #000; 
    vertical-align: top;
}

td.day span.day-date{
    font-size: 14pt; 
    font-weight: 700;
    display: block;
}

th.header{
    background-color: #003972; 
    color: #fff; 
    font-size: 14pt; 
    padding: 5px;
}

.not-month{
    background-color: #d4b2b2;
}

div.box{
    position:relative;
    width:auto;
    height:100%;
}

td.today {
    background-color:#efefef;
}

td.day span.today-date{
    font-size: 14pt;
    display: block;
}

td.holiday {
    background-color:#f8ff9d60;
}

td.day span.holiday-date{
    font-size: 14pt; 
    font-weight: 700;
    display: block;
}

.addsign {
    position:absolute;
    right: 1px;
    bottom: 1px;
    padding:2px;
}
.addsign:hover {
    background: gray;
}
  
#popup {
    margin: auto;
    width:80%;
    height: 80%;
    border: 3px solid gray;
    border-radius: 25px;
    padding: 10px;
    position: fixed; /* or absolute */
    top: 50%;
    left: 50%;
    z-index: 10;
    transform: translate(-50%, -50%);
    background: antiquewhite;
    display:none;
}


#popup-close {
    position: fixed;
    top: 10px;
    right: 15px;
    z-index:12;
    padding:2px;
}
#popup-close:hover {
    background: gray;
}

.menu-container {
    background: bisque;
    padding: 5px;
    height: 6%;
}

.menu{
    width:fit-content;
    display: inline-block;
    background: burlywood;
    border: 1px solid black;
    padding: 5px;
    margin: 5px;
}
.menu-logout{
    position:absolute;
    width:fit-content;
    display: inline-block;
    right: 5px;
    padding: 5px;
}

.userlist {
    border: 1px solid black;
    border-collapse: collapse;
    vertical-align: bottom;
}

.sidemenu-container {
    background-color:beige;
    height: 100%;
    width: fit-content;
    padding: 5px;
    display: inline-table;
}

.sidemenu-box {
    width:auto;
    display: block;
    background: burlywood;
    border: 1px solid black;
    padding: 5px;
    margin: 3px;
}

#settings-container {
    margin: 5px;
    display: inline-table;
    width: 85%;
}

.sdayslist {
    border: 1px solid black;
    border-collapse: collapse;
}

#day-box {
    text-align: center;
    font-size: 15pt;
    padding-bottom: 5;
}

#error-message {
    color: red;
}