#calendar-container {
    width: 100%;
    margin: 10px 0 30px 0;
}

.calendar-top {
    margin-bottom: 1px;
}

.calendar-tools {
    float: right;
}

.calendar-tools a:hover {
    text-decoration: underline;
}

.calendar-choose-today, .calendar-choose-week, .calendar-choose-month {
    float: left;
    height: 14px;
    margin: 0 7px 0 20px;
    padding-left: 22px;
    font-weight: bold;
    text-decoration: none;
}

.calendar-choose-today {
    background: url('../img/icons/calendar_today.gif') left center no-repeat;
}

.calendar-choose-week {
    background: url('../img/icons/calendar_week.gif') left center no-repeat;
}

.calendar-choose-month {
    background: url('../img/icons/calendar_month.gif') left center no-repeat;
}

.calendar-header {
    font-size: 120%;
    font-weight: bold;
}

.calendar-navigation {
    height: 28px;
    margin-top: 20px;
    padding: 0 10px 0 10px;
    background-color: #DFE7F5;
}

.calendar-legend {
    float: right;
}

.cal-legend-semifull, .cal-legend-full {
    float: left;
    margin-left: 15px;
    padding-left: 20px;
    line-height: 28px;
}

.cal-legend-semifull {
    background: url('../img/icons/calendar_legend_semifull.gif') left center no-repeat;
}

.cal-legend-full {
    background: url('../img/icons/calendar_legend_full.gif') left center no-repeat;
}

.calendar-switch a {
    display: block;
    float: left;
    margin-top: 8px;
    height: 12px;
    line-height: 9px;
    text-decoration: none;
}

.calendar-previous {
    padding: 2px 0 0 42px;
    margin-right: 12px;
    background: url('../img/arrow_previous.gif') left center no-repeat;
}

.calendar-next {
    padding: 2px 42px 0 10px;
    border-left: 1px solid #B4BAC4;
    background: url('../img/arrow_next.gif') right center no-repeat;
}

.calendar-table-week, .calendar-table-month, .calendar-table-today {
    width: 100%;
    border-collapse: collapse;
    background-color: #EDEEED;
}

.calendar-table-week td, .calendar-table-month td, .calendar-table-today td {
    border: 1px solid #FFF;
    border-width: 0 1px 1px 0;
    color: #333333;
}

.calendar-table-week tr, .calendar-table-today tr {
    height: 27px;
}

.ct-full, .ct-semifull, .ct-free, .ct-freeOther {
    padding: 0;
}

.ct-full a, .ct-semifull a, .ct-free a, .ct-freeOther a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    color: #FFF;
    text-decoration: none;
}

.ct-semifull a {
    background: url('../img/bg_semifull.gif');
}

.ct-full a {
    background: url('../img/bg_full.gif');
}

.ct-free a {
    color: #000;
}

.ct-freeOther a {
    color: #989898;
    background-color: #F6F7F6;
}

.ct-cell-info {
    /*position: absolute;
    top: 7px;
    left: 5px*/
}

.calendar-table-month .ct-full a, .calendar-table-month .ct-semifull a, .calendar-table-month .ct-free a, .calendar-table-month .ct-freeOther a {
    height: 75px;
    padding: 0;
}

.calendar-table-month .ct-full a span, .calendar-table-month .ct-semifull a span, .calendar-table-month .ct-free a span, .calendar-table-month .ct-freeOther a span {
    display: block;
    padding: 9px 8px 0 0;
    text-align: right;
}

.ct-header td {
    vertical-align: middle;
    background-color: #D8D9D8;
}

.ct-first-col {
    width: 56px;
    text-align: right;
    padding-right: 8px;
}

.ct-first-col span {
    font-size: 90%;
}

.ct-second-row td {
    background-color: #F6F7F6;
}

.ct-header-week, .ct-header-today, .ct-header-month {
    text-align: center;
    height: 27px;
}

.ct-header-week span {
    display: block;
    width: 80px;
}

.ct-header-month span {
    display: block;
    width: 90px;
}

.ct-header-day span {
    display: block;
    width: 100%;
}

.ct-item {
    padding: 0;
}

