.eventCalendar-hidden {
    display: none
}

.eventCalendar-wrap {
    position: relative;
    overflow: hidden;
    box-shadow: none;
}

.eventCalendar-arrow {
    position: absolute;
    z-index: 5;
    top: 3px
}

.eventCalendar-prev {
    left: 3px
}

.eventCalendar-next {
    right: 3px
}

.eventCalendar-monthTitle {
    display: block;
    text-align: center
}

.eventCalendar-monthWrap {
    position: absolute;
    z-index: 2
}

.eventCalendar-currentMonth {
    z-index: 1
}

.eventCalendar-daysList {
    display: table
}

.eventCalendar-showAsWeek {
    display: block
}

.eventCalendar-daysList li {
    display: table-cell
}

.eventCalendar-dayWithEvents {
    background: #efefef;
}

.eventCalendar-current {
    background: #ffffff;
}

.eventCalendar-showAsWeek li {
    display: block;
    float: left;
    width: 14.28%;
    height: 20px
}

.eventCalendar-daysList a {
    padding: 0;
    display: block;
    text-align: center;
    font-size: 8px;
    min-width: 7px
}

.eventCalendar-loading {
    display: block;
    min-width: 100px;
    height: 40px;
    line-height: 40px
}

.eventCalendar-list {
    position: relative;
    z-index: 1
}

.eventCalendar-oldEventList {
    z-index: 2
}

.eventCalendar-subtitle {
    padding-left: 5px;
    font-weight: 700;
    font-size: 120%
}

.eventCalendar-wrap {
    border: 1px solid #d3d3d3;
    box-shadow: 0 0 15px #999;
    border-radius: 5px;
    margin-bottom: 20px;
    background-color: #fff;
    color: #696969;
}

.eventCalendar-wrap .eventCalendar-arrow {
    text-decoration: none;
    color: #696969;
    line-height: 28px;
    top: 9px;
    padding: 8px 10px
}

.eventCalendar-wrap .eventCalendar-arrow:hover {
    opacity: .7
}

.eventCalendar-wrap .eventCalendar-arrow span {
    height: 0;
    width: 0;
    font-size: 0;
    line-height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 6px solid #696969;
    float: left;
    text-indent: -5000px
}

.eventCalendar-wrap .eventCalendar-arrow.eventCalendar-prev span {
    border-left-width: 0;
    border-right: 6px solid #696969;
}

.eventCalendar-slider {
    height: 80px
}

.eventCalendar-monthWrap {
    border-radius: 5px;
    top: 10px;
    left: 0
}

.eventCalendar-currentTitle {
    line-height: 25px;
    border-width: 1px 0;
    background-color: #eee;
    outline: #eee solid 1px;
    border: none;
}

.eventCalendar-currentTitle .eventCalendar-monthTitle {
    font-size: 110%;
    text-decoration: none;
    font-weight: 700;
    color: #696969;
}

.eventCalendar-daysList {
    zoom: 1;
    padding: 0;
    width: 100%
}

.eventCalendar-daysList.eventCalendar-showAsWeek {
    margin: 10px 5px;
    width: auto;
    border: 1px solid #BCBCBC;
    border-bottom-width: 0;
    border-radius: 0;
    background-color: #eee;
    /*background-image: linear-gradient(top, #EEE 42%, #CCC 71%);*/
    /*background-image: -o-linear-gradient(top, #EEE 42%, #CCC 71%);*/
    /*background-image: -moz-linear-gradient(top, #EEE 42%, #CCC 71%);*/
    /*background-image: -webkit-linear-gradient(top, #EEE 42%, #CCC 71%);*/
    /*background-image: -ms-linear-gradient(top, #EEE 42%, #CCC 71%);*/
    /*background-image: -webkit-gradient(linear, left top, left bottom, color-stop(.42, #EEE), color-stop(.71, #CCC))*/
}

.eventCalendar-daysList.showDayNames.eventCalendar-showAsWeek {
    border-radius: 5px 5px 0 0
}

.eventCalendar-daysList:after, .eventCalendar-daysList:before {
    content: "";
    display: table
}

.eventCalendar-daysList:after {
    clear: both
}

.eventCalendar-day-header {
    text-transform: lowercase;
    text-align: center;
    font-size: 10px;
    border-bottom: solid 1px #BCBCBC
}

.eventCalendar-daysList.eventCalendar-showAsWeek li {
    height: auto;
    margin: 0
}

.eventCalendar-daysList.eventCalendar-showAsWeek li.eventCalendar-empty {
    background-color: #ccc;
    min-height: 27px;
    border-top: solid 1px #ccc
}

.eventCalendar-day {
    border-left: solid 1px #BCBCBC
}

.eventCalendar-day a {
    text-decoration: none;
    font-size: 10px;
    color: #424242;
    border: 1px solid #BCBCBC;
    border-width: 0 1px 1px 0
}

.eventCalendar-showAsWeek .eventCalendar-day {
    border-left-width: 0
}

.eventCalendar-showAsWeek .eventCalendar-day a {
    border: 1px solid red;
    border-color: #fff #BCBCBC #BCBCBC #eee;
    line-height: 27px;
    font-size: 11px
}

.eventCalendar-day a:hover {
    background-color: #E4E4E4
}

.eventCalendar-daysList li.today a {
    color: #fff;
    background: #767676;
}

li.eventCalendar-day.today a:hover {
    background-color: #ccc
}

.eventCalendar-daysList li.eventCalendar-dayWithEvents a {
    background: #328736;
    color: #fff
}

li.eventCalendar-day.eventCalendar-dayWithEvents a:hover {
    background-color: #C2D374
}

.eventCalendar-daysList li.current a {
    color: #fff;
    background: #449FB2;
    box-shadow: inset 5px 5px 10px #216B7A;
    /*text-shadow: 2px 2px 2px #216B7A*/
}

li.eventCalendar-day.current a:hover {
    background-color: #79BDCC;
    box-shadow: inset 5px 5px 10px #449FB2;
    /*text-shadow: 2px 2px 2px #449FB2*/
}

.eventCalendar-list .eventCalendar-noEvents, .eventCalendar-loading {
    /*border-radius: 4px;*/
    /*box-shadow: 0 0 10px #ccc;*/
    /*text-shadow: 0 0 3px #aaa;*/
    text-align: center;
    font-weight: 700
}

.eventCalendar-loading {
    margin: 5px auto;
    padding: 0 10px;
    background-color: #ccc;
    color: #fff;
    position: absolute;
    z-index: 4;
    top: 25px;
    left: 5px
}

.eventCalendar-loading.error {
    background-color: red
}

.eventCalendar-subtitle {
    padding-top: 10px
}

.eventCalendar-list-wrap {
    min-height: 100px;
    position: relative
}

.eventCalendar-list-content.scrollable {
    height: 100px;
    overflow-y: auto;
    margin: 0 5px 5px 0
}

.eventCalendar-list {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.eventCalendar-list li {
    padding: 0 5px 15px;
    margin: 0;
    clear: both
}

.eventCalendar-list li time {
    font-size: 10px;
    line-height: 13px
}

.eventCalendar-list li time em {
    float: left;
    font-style: normal
}

.eventCalendar-list li time small {
    font-size: 10px;
    float: left;
    background-color: #767676;
    color: #fff;
    padding: 0 5px 0 4px;
    margin: 0 0 0 3px
}

.eventCalendar-list li .eventCalendar-eventTitle {
    display: block;
    clear: both;
    font-weight: 700;
    text-decoration: none
}

.eventCalendar-list li a.eventCalendar-eventTitle {
    color: #1976D2;
}

.eventCalendar-list li a.eventCalendar-eventTitle:hover {
    text-decoration: underline
}

.bt, .bt:hover {
    text-decoration: none
}

.eventCalendar-list li .eventDesc {
    clear: both;
    margin: 0 0 5px;
    font-size: 80%;
    line-height: 1.2em
}

.eventCalendar-list .eventCalendar-noEvents {
    font-size: 120%;
    margin: 5px;
    padding: 5px;
    background-color: #efefef;
    color: #6a6a6a;
}

.bt {
    font-size: 12px;
    display: block;
    clear: both;
    text-align: center;
    margin-top: 10px;
    padding: 9px 34px 11px;
    font-weight: 700;
    line-height: 1;
    color: #1976D2;
    box-shadow: inset 0 0 0 1px #dadce0;
    background-color: #fff;
    border: none !important;
    border-radius: 4px !important;;
    -webkit-transition: .1s linear all;
    -moz-transition: .1s linear all;
    -ms-transition: .1s linear all;
    -o-transition: .1s linear all;
    transition: .1s linear all
}

.bt:hover {
    background-position: 0 -15px
}