/* The main calendar widget.  DIV containing a table. */

div.calendar {
    position: relative;
    z-index: 99999
}

.calendar, .calendar table {
    border: 1px solid #556066;
    font-size: 11px;
    color: #000;
    cursor: default;
    background: #edf8ff;
    font-family: tahoma,verdana,sans-serif;
    z-index: 99999;
}

    /* Header part -- contains navigation buttons and day names. */

    .calendar .button { /* "<<", "<", ">", ">>" buttons have this class */
        text-align: center; /* They are the navigation buttons */
        padding: 2px; /* Make the buttons seem like they're pressing */
        background: #677278;
        color: #fff;
        font-size: 90%;
    }

    .calendar .nav {
        background: #677278 url(menuarrow.gif) no-repeat 100% 100%;
    }

    .calendar thead .title { /* This holds the current "month, year" */
        font-weight: bold; /* Pressing it will take you to the current date */
        text-align: center;
        padding: 2px;
        background: #003554;
        color: #abe0ff;
    }

    .calendar thead .headrow { /* Row <TR> containing navigation buttons */
    }

    .calendar thead .name { /* Cells <TD> containing the day names */
        border-bottom: 1px solid #556066;
        padding: 2px;
        text-align: center;
        color: #000;
    }

    .calendar thead .weekend { /* How a weekend day name shows in header */
        color: #a66;
    }

    .calendar thead .hilite { /* How do the buttons in header appear when hover */
        background-color: #abe0ff;
        color: #000;
        border: 1px solid #005687;
        padding: 1px;
    }

    .calendar thead .active { /* Active (pressed) buttons in header */
        background-color: #76adcc;
        padding: 2px 0px 0px 2px;
    }

    .calendar thead .daynames { /* Row <TR> containing the day names */
        background: #bae6ff;
    }

    /* The body part -- contains all the days in month. */

    .calendar tbody .day { /* Cells <TD> containing month days dates */
        width: 2em;
        color: #445a66;
        text-align: center;
        vertical-align: middle !important;
        padding: 2px 2px 2px 2px;
        border: 1px solid silver;
    }

    .calendar tbody .daytleft {
        position: relative;
        width: 0;
        height: 0;
    }

    .calendar tbody .daymark {
        position: absolute;
        width: 0;
        height: 0;
    }

        .calendar tbody .daymark.daydata {
            border-style: solid;
            border-width: 0px 10px 10px 0px;
            border-color: transparent green transparent transparent;
        }

        .calendar tbody .daymark.daydatagreen {
            border-style: solid;
            border-width: 0px 10px 10px 0px;
            border-color: transparent green transparent transparent;
        }

    .calendar tbody .day.othermonth {
        font-size: 80%;
        color: #bbb;
    }

        .calendar tbody .day.othermonth.oweekend {
            color: #fbb;
        }

    .calendar table .wn {
        padding: 2px 3px 2px 2px;
        border-right: 1px solid #899eab;
        background: #bae6ff;
    }

    .calendar tbody .rowhilite td {
        background: #def3ff;
    }

        .calendar tbody .rowhilite td.wn {
            background: #edf8ff;
        }

    .calendar tbody td.hilite { /* Hovered cells <TD> */
        background: #def3ff;
        padding: 2px 2px 2px 2px;
        border: 1px solid #bbb;
    }

    .calendar tbody td.active { /* Active (pressed) cells <TD> */
        background: #cce1ed;
        padding: 2px 2px 0px 2px;
    }

    .calendar tbody td.selected { /* Cell showing today date */
        font-weight: bold;
        padding: 2px 2px 2px 2px;
        background: #f7fcff;
        color: #000;
    }

    .calendar tbody td.weekend { /* Cells showing weekend days */
        color: #a66;
    }

    .calendar tbody td.today {
        font-weight: bold;
        color: #006CAB;
    }

    .calendar tbody .disabled {
        color: #999;
    }

    .calendar tbody .emptycell { /* Empty cells (the best is to hide them) */
        visibility: hidden;
    }

    .calendar tbody .emptyrow { /* Empty row (some months need less than 6 rows) */
        display: none;
    }

    /* The footer part -- status bar and "Close" button */

    .calendar tfoot .footrow { /* The <TR> in footer (only one right now) */
        text-align: center;
        background: #556066;
        color: #fff;
    }

    .calendar tfoot .ttip { /* Tooltip (status bar) cell <TD> */
        padding: 2px;
        background: #003554;
        color: #abe0ff;
    }

    .calendar tfoot .hilite { /* Hover style for buttons in footer */
        background: #abe0ff;
        border: 1px solid #005687;
        color: #000;
        padding: 1px;
    }

    .calendar tfoot .active { /* Active (pressed) style for buttons in footer */
        background: #76adcc;
        padding: 2px 0px 0px 2px;
    }

    /* Combo boxes (menus that display months/years for direct selection) */

    .calendar .combo {
        position: absolute;
        display: none;
        top: 0px;
        left: 0px;
        width: 4em;
        cursor: default;
        border: 1px solid #556066;
        background: #def3ff;
        color: #000;
        font-size: 90%;
        z-index: 100;
    }

        .calendar .combo .label,
        .calendar .combo .label-IEfix {
            text-align: center;
            padding: 1px;
        }

        .calendar .combo .label-IEfix {
            width: 4em;
        }

        .calendar .combo .hilite {
            background: #8703ff;
        }

        .calendar .combo .active {
            border-top: 1px solid #4485ab;
            border-bottom: 1px solid #4485ab;
            background: #edf8ff;
            font-weight: bold;
        }

    .calendar td.time {
        border-top: 1px solid #899eab;
        padding: 1px 0px;
        text-align: center;
        background-color: #bae6ff;
    }

        .calendar td.time .hour,
        .calendar td.time .minute,
        .calendar td.time .ampm {
            padding: 0px 3px 0px 4px;
            border: 1px solid #889399;
            font-weight: bold;
            background-color: #fff;
        }

        .calendar td.time .ampm {
            text-align: center;
        }

        .calendar td.time .colon {
            padding: 0px 2px 0px 3px;
            font-weight: bold;
        }

        .calendar td.time span.hilite {
            border-color: #000;
            background-color: #657b87;
            color: #fff;
        }

        .calendar td.time span.active {
            border-color: #f00;
            background-color: #000;
            color: #00a1ff;
        }
