table.calendar {
    border: 0;
    font: 11px Arial,Tahoma,Helvetica,sans-serif;
    background-color: #ffffff;
    width: 198px;
}
table.calendar caption {
    background-color: #f7f7f7;
    text-align: center;
    font-weight: bold;
    line-height: 26px;
    color: #333333;
    border-top: 1px solid #dedede;
}
table.calendar span.l { float: left; }
table.calendar span.r { float: right; }
table.calendar span { padding: 0 5px; }
table.calendar span a:hover, table.calendar span a:active {
    color: #5d7ea9;
    text-decoration: none;
}
table.calendar th {
    width: 15px;
    text-align: center;
    background-color: #ffffff;
    font-weight: bold;
    line-height: 23px;
    color: #525252;
    padding: 0 7px;
    border-bottom: 1px dotted #cccccc;
}
table.calendar tr td {
    padding: 3px 4px;
    text-align: center;
    border: 1px solid #efefef;
    background-color: #ffffff;
    color: #000000;
    cursor: default;
}
table.calendar tr td.cssEmptyDays { border: none; }
table.calendar tr td.cssSaturdays { color: #0000D0; }
table.calendar tr td.cssSundays { color: #D00000; }
table.calendar tr td.cssDaysOff, table.calendar tr td.cssSaturdaysOff, table.calendar tr td.cssSundaysOff {
    background-color: #f7f7f7;
    border: 1px solid #efefef;
    color: #c5c5c5;
}
table.calendar tr td.cssSaturdaysOff { color: #c7c9e2; }
table.calendar tr td.cssSundaysOff { color: #ddbdbb; }
table.calendar tr td.cssSpecialDays, table.calendar tr td.cssSpecialDaysOff {
    cursor: pointer;
    background: #a0aebf;
    color: #fff;
    border: solid 1px #8796a9;
}
table.calendar tr td.cssSpecialDaysOff {
    cursor: pointer;
    background: #d9d9d9;
    color: #fff;
    border: solid 1px #c9c9c9;
}
table.calendar tr td.cssSpecialDays a, table.calendar tr td.cssSpecialDaysOff a {
    color: #fff;
    text-decoration: none;
}
