.calendar {
   z-index:110;
   position:relative;
   display:none;
   border-top:2px solid #fff;
   border-right:2px solid #000;
   border-bottom:2px solid #000;
   border-left:2px solid #fff;
   font-size:11px;
   color:#000;
   cursor:default;
   background:#d4d0c8;
   font-family:tahoma,verdana,sans-serif;
}

.calendar table {
   border-top:1px solid #000;
   border-right:1px solid #fff;
   border-bottom:1px solid #fff;
   border-left:1px solid #000;
   font-size:11px;
   color:#000;
   cursor:default;
   background:#d4d0c8;
   font-family:tahoma,verdana,sans-serif;
}

.calendar .button {
   text-align:center;
   padding:1px;
   border-top:1px solid #fff;
   border-right:1px solid #000;
   border-bottom:1px solid #000;
   border-left:1px solid #fff;
}

.calendar .nav {
   background:transparent
}

.calendar thead .title {
   font-weight:bold;
   padding:1px;
   border:1px solid #000;
   background:#848078;
   color:#fff;
   text-align:center;
}

.calendar thead .name {
   border-bottom:1px solid #000;
   padding:2px;
   text-align:center;
   background:#f4f0e8;
}

.calendar thead .weekend {
   color:#f00;
}

.calendar thead .hilite {
   border-top:2px solid #fff;
   border-right:2px solid #000;
   border-bottom:2px solid #000;
   border-left:2px solid #fff;
   padding:0;
   background-color:#e4e0d8;
}

.calendar thead .active {
   padding:2px 0 0 2px;
   border-top:1px solid #000;
   border-right:1px solid #fff;
   border-bottom:1px solid #fff;
   border-left:1px solid #000;
   background-color:#c4c0b8;
}

.calendar tbody {
   line-height: 1;
}

.calendar tbody .day {
   width:2em;
   text-align:right;
   padding:2px 4px 2px 2px;
}

.calendar tbody .day.othermonth {
   font-size:80%;
   color:#aaa;
}

.calendar tbody .day.othermonth.oweekend {
   color:#faa;
}

.calendar table .wn {
   padding:2px 3px 2px 2px;
   border-right:1px solid #000;
   background:#f4f0e8;
}

.calendar tbody .rowhilite td {
   background:#e4e0d8;
}

.calendar tbody .rowhilite td.wn {
   background:#d4d0c8;
}

.calendar tbody td.hilite {
   padding:1px 3px 1px 1px;
   border-top:1px solid #fff;
   border-right:1px solid #000;
   border-bottom:1px solid #000;
   border-left:1px solid #fff;
}

.calendar tbody td.active {
   padding:2px 2px 0 2px;
   border-top:1px solid #000;
   border-right:1px solid #fff;
   border-bottom:1px solid #fff;
   border-left:1px solid #000;
}

.calendar tbody td.selected {
   font-weight:bold;
   border-top:1px solid #000;
   border-right:1px solid #fff;
   border-bottom:1px solid #fff;
   border-left:1px solid #000;
   padding:2px 2px 0 2px;
   background:#e4e0d8;
}

.calendar tbody td.weekend {
   color:#f00;
}

.calendar tbody td.today {
   font-weight:bold;color:#00f;
}

.calendar tbody .disabled {
   color:#999;
}

.calendar tbody .emptycell {
   visibility:hidden;
}

.calendar tbody .emptyrow {
   display:none;
}

.calendar tfoot .ttip {
   background:#f4f0e8;
   padding:1px;
   border:1px solid #000;
   background:#848078;
   color:#fff;
   text-align:center;
}

.calendar tfoot .hilite {
   border-top:1px solid #fff;
   border-right:1px solid #000;
   border-bottom:1px solid #000;
   border-left:1px solid #fff;
   padding:1px;
   background:#e4e0d8;
}

.calendar tfoot .active {
   padding:2px 0 0 2px;
   border-top:1px solid #000;
   border-right:1px solid #fff;
   border-bottom:1px solid #fff;
   border-left:1px solid #000;
}

.calendar .combo {
   position:absolute;
   display:none;
   width:4em;
   top:0;
   left:0;
   cursor:default;
   border-top:1px solid #fff;
   border-right:1px solid #000;
   border-bottom:1px solid #000;
   border-left:1px solid #fff;
   background:#e4e0d8;
   font-size:90%;
   padding:1px;
   z-index:100;
}

.calendar .combo .label, .calendar .combo .label-IEfix {
   text-align:center;
   padding:1px;
}

.calendar .combo .label-IEfix {
   width:4em;
}

.calendar .combo .active {
   background:#c4c0b8;
   padding:0;
   border-top:1px solid #000;
   border-right:1px solid #fff;
   border-bottom:1px solid #fff;
   border-left:1px solid #000;
}

.calendar .combo .hilite {
   background:#048;
   color:#fea;
}

.calendar td.time {
   border-top:1px solid #000;
   padding:1px 0;
   text-align:center;
   background-color:#f4f0e8;
}

.calendar td.time .hour, .calendar td.time .minute, .calendar td.time .ampm {
   padding:0 3px 0 4px;
   border:1px solid #889;
   font-weight:bold;
   background-color:#fff;
}

.calendar td.time .ampm {
   text-align:center;
}

.calendar td.time .colon {
   padding:0 2px 0 3px;
   font-weight:bold;
}

.calendar td.time span.hilite {
   border-color:#000;
   background-color:#766;
   color:#fff;
}

.calendar td.time span.active {
   border-color:#f00;
   background-color:#000;
   color:#0f0;
}

#CP_hourcont {
   z-index:99;
   padding:0;
   position:absolute;
   border:1px dashed #666;
   background-color:#eee;
   display:none;
}

#CP_minutecont {
   z-index:99;
   background-color:#ddd;
   padding:1px;
   position:absolute;
   width:45px;
   display:none;
}

.floatleft {
   float:left;
}

.CP_hour {
   z-index:99;
   padding:1px;
   font-family:Arial, Helvetica, sans-serif;
   font-size:9px;
   white-space:nowrap;
   cursor:pointer;
   width:35px;
}

.CP_minute {
   z-index:99;
   padding:1px;
   font-family:Arial, Helvetica, sans-serif;
   font-size:9px;
   white-space:nowrap;
   cursor:pointer;
   width:auto;
}

.CP_over {
   background-color:#fff;
   z-index:99
}