.mini-cal{
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    font-family: 'Varela', sans-serif;
    padding-bottom: 1.2em;
    color: #333;
}

#calTitle{
    display: flex;
    justify-content: space-between;
    -ms-align-items: center;
    align-items: center;
    font-size: 1.2em;
    text-align: center;
    padding-top: 0.25em;
    text-transform: uppercase;
    font-weight: bold;
    color: #318286;
}

#calTitle button{
    outline: none;
    display: block;
    border: .1em solid #ddd;
    border: none;
    padding: 0;
    width: 30px;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    background-color: #318286;
}

#calTitle button svg{
    width: 26px;
    height: 26px;
    padding-top: 2px;
}

#calTitle button:hover{
    background: #74AFB5;
}

#calThead, #calTbody{
    display: flex;
    flex-wrap: wrap;
    padding: 0;
}

#calThead{
    color: #ca8967;
    margin-top: .4em;
    align-items: center;
    text-align: center;
    font-size: .8em;
    font-weight: 600;
}

#calThead > div, #calTbody .a-date{
    box-sizing: border-box;
    flex: 1;
    min-width: calc(100% / 7);
    max-width: calc(100% / 7);
    width: calc(100% / 7);
    text-align: center;
    padding: 0;
}

#calThead > div{
    font-size: 1em;
    padding: .2em;
}

#calTbody{
    color: #333;
    border-left: 1px solid #F0E9E3;
    border-bottom: 1px solid #F0E9E3;
}

#calTbody .a-date > span{
    display: block;
    font-size: 1em;
    position: relative;
    top:-0.2em;
}

#calTbody .a-date{
    cursor: default;
    padding: 0;
    position: relative;
    background-color: transparent;
    color: inherit;
    padding: 0.8em 0.4em;
    border-width:1px 1px 0 0;
    border-style:solid;
    border-color:#F0E9E3;
    outline: none;
    font-size: 0.8em;
    border-radius:0;
    line-height:1em;
}

.dark-mode #calTbody,
.dark-mode #calTbody .a-date {
    border-color:#666;
}

#calTbody .a-date.blurred{
    color:#bbb;
    pointer-events: none;
}

#calTbody .a-date.event:before{
    content: '';
    position: absolute;
    bottom: 0.2em;
    right: 0;
    left: 0;
    margin: auto;
    background-color: #318286;
    width: 0.4em;
    height: 0.4em;
    border-radius: 50%;
}

.dark-mode #calTbody .a-date.event:before {
    background-color: #74AFB5;
}

#calTbody .a-date.event.blurred:before {
    background-color:#74AFB5;
}

#calTbody .a-date.current{
    outline: none;
    outline: 0;
    background-color: #F4EEEA;
}

.dark-mode #calTbody .a-date.current {
    background-color:#666;
}

#calTbody .a-date:focus,
#calTbody .a-date:active,
#calTbody .a-date:hover{
    background: #F4EEEA;
}

.dark-mode #calTbody .a-date:focus,
.dark-mode #calTbody .a-date:active,
.dark-mode #calTbody .a-date:hover{
    background: #666;
}

#calTFooter{
    display: flex;
    justify-content: space-between;
    -ms-align-items: center;
    align-items: center;
    font-size: 1em;
    padding: 0;
    margin-top: 1em;
}

#calTFooter #eventTitle{
    margin: 0;
    margin-right: 0.1em;
    font-weight: normal;
    font-size: 0.9em;
    white-space: nowrap;
    overflow: hidden;
    -ms-text-overflow: ellipsis;
    text-overflow: ellipsis;
    text-transform:uppercase;
    font-weight:bold;
    font-family:'Montserrat', sans-serif;
}

#calTFooter a {
    color:#318286;
    font-family:'Montserrat', sans-serif;
    font-size:0.9em; 
    font-weight:500;
}

.dark-mode #calTFooter a {
    color:#74AFB5;
}