input.date {
    width: 153px !important;

    background-image: url(../img/icon_calendar.png);
    background-repeat: no-repeat;
    background-position: right center;

    padding-right: 30px;
}

.mgCalendar {
    margin-top:  2px;
    position: absolute;
    width: 300px;
    border: 1px solid #999;
    padding: 4px;
    background-color: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    z-index: 1;
    font-family: sans-serif;
    font-size: 14px;
}

.mgCalendar table {
    width: 100%;
    border: none;
    border-collapse: collapse;
}

.mgCalendar tr td {
    padding: 0;
    text-align: center;
    vertical-align: middle !important;
}

.mgCalendar .weekdays td {
    color: #777;
    border-top: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
    height: 30px;
}

.mgCalendar .week td {
    width: 14.2%;
    line-height: 30px;
}

.mgCalendar .week td.active {
    cursor: pointer;
}

.mgCalendar .week td.active:hover {
    background-color: #EEE;
}

.mgCalendar td.month {
    font-size: 18px;
    line-height: 36px;
    border-left: none;
    border-right: none;
}

.mgCalendar td.today {
    border-top: 1px solid #CCC;
    cursor: pointer;
    text-align: center;
    line-height: 30px;
    color: #777;
}

.mgCalendar td.today:hover {
    color: #000;
}

.mgCalendar td.current { /* today in dates */
    background-color: #EEE;
}

.mgCalendar td.left,
.mgCalendar td.right {
    width: 40px;
    height: 40px;
    cursor: pointer;
    position: relative;
}

.mgCalendar td.left hr,
.mgCalendar td.right hr {
    margin: 0;
    position: absolute;
    width: 13px;
    height: 1px;
    background-color: #999;
    border: none;
    left: 15px;
}

.mgCalendar td.left:hover hr,
.mgCalendar td.right:hover hr {
    background-color: #333;
}

.mgCalendar td.left hr:first-child {
    transform: rotate(-45deg);
    top: 14px;
}

.mgCalendar td.left hr:last-child {
    transform: rotate(45deg);
    top: 22px;
}

.mgCalendar td.right hr:first-child {
    transform: rotate(45deg);
    top: 14px;
}

.mgCalendar td.right hr:last-child {
    transform: rotate(-45deg);
    top: 22px;
}

@media only screen
and (max-width: 480px)
and (orientation: portrait) {
    .mgCalendar {
        left: 0;
        margin: 1% 3%;
        padding: 1%;
        width: 92%;
    }
}

/*TODO: -< MAIN.CSS
@media only screen and (-webkit-min-device-pixel-ratio:  1.5),
    only screen and (-o-min-device-pixel-ratio:  3/2),
    only screen and (min--moz-device-pixel-ratio:  1.5),
    only screen and (min-device-pixel-ratio:  1.5) {

    .mgCalendar { font-size: 20px; }

    input.date { font-size: 16px; }
}
*/