/*-----------------------------------------------------------------------*/
/* Joyous Events */
/*-----------------------------------------------------------------------*/

.event-heading h2,
.page-heading h2 {
    margin:                0px;
    padding:               0px 0 10px 0;
    color:                 #36454f;
    line-height:           normal;
    font-family:           Tahoma, Geneva, sans-serif;
    font-weight:           400;
    font-size:             30px;
}

.event-title {
    font-family:           Tahoma, Geneva, sans-serif;
    font-size:             23px;
    line-height:           normal;
    font-weight:           bold;
}

.event-status {
    float:                right;
    color:                #cc0000;
    font-weight:          bold;
}

.event-image img {
    display:               block;
    border-radius:         4px;
    margin-bottom:         4px;
}

.event-item-title {
    font-size:            16px;
    font-weight:          bold;
}
.event-group-page {
    font-size:            16px;
    font-weight:          bold;
}

.event-when,
.event-next-on,
.event-location {
    font-size:             17px;
}
.event-postponed-from {
    font-size:             15px;
}
.event-extra-info {
    margin:                16px -10px;
    padding:               16px 10px 10px 10px;
    border:                1px solid #ff6600;
    border-radius:         4px;
}

.event-cancellation-details,
.event-details {
    padding-top:           16px;
}

/*-----------------------------------------------------------------------*/
/* Joyous Calendar */
/*-----------------------------------------------------------------------*/

.events-view {
    float:                 right;
    text-align:            right;
    font-weight:           normal;
}

table.calendar {
    table-layout:          fixed;
    border-spacing:        0;
    border-collapse:       separate;
    border-radius:         5px;
    box-shadow:            0 4px 10px rgba(150, 150, 150, 0.2);
    width:                 100%

}
.calendar thead tr th {
    background:            white;
    padding:               5px 0;
    border-right:          1px dotted #aaa;
    border-bottom:         2px solid #36454f;

    line-height:           normal;
    font-family:           Tahoma, Geneva, sans-serif;
    font-size:             24px;
    font-weight:           400;
}
.calendar tbody tr td {
    background:            white;
    width:                 14.285%;
    vertical-align:        top;
    padding:               2px 1px 2px 2px;
    position:              relative;
    overflow:              hidden;
}
.calendar tr td {
    border-right:          1px dotted #aaa;
    border-bottom:         1px dotted #aaa;
}
.calendar tbody tr td.yesterday {
    border-right:          1px solid #ffb442;
}
.calendar tbody tr td.lastweek {
    border-bottom:          1px solid #ffb442;
}
.calendar tbody tr td.today {
    background:            #ffb442;
    border-right:          1px solid #ffb442;
    border-bottom:         1px solid #ffb442;
}
.calendar thead tr th:last-child,
.calendar tbody tr td:last-child {
    border-right:          none;
}
.calendar tbody tr:last-child td {
    border-bottom:         none;
}
.calendar thead tr.heading th {
    border-radius:         5px 5px 0 0;
    background:            #36454f;
    color:                 white;
    padding:               5px;
    text-align:            center;
    border:                none;

}
.calendar thead tr.heading a {
    color:                 white;
}
.calendar thead tr.heading a:hover,
.calendar thead tr.heading a:active {
    color:                 white;
    text-decoration:       none;
}
.calendar tbody tr:last-child td:first-child {
    border-radius:         0 0 0 5px;
}
.calendar tbody tr:last-child td:last-child {
    border-radius:         0 0 5px 0;
}
.calendar .month-heading {
    display:               inline-block;
    padding:               0 4ex;
}
.calendar .month-heading a {
    font-family:           Verdana, sans-serif;
    font-weight:           bold;
    font-size:             19px;
}
.calendar .month-heading .month-name {
    display:               inline-block;
    width:                 10ex;
}
.calendar .week-heading {
    display:               inline-block;
    padding:               0 4ex;
}
.calendar .week-heading a {
    font-family:           Verdana, sans-serif;
    font-weight:           bold;
    font-size:             19px;
}
.calendar .week-heading .week-name {
    display:               inline-block;
    width:                 10ex;
}
.calendar .year-heading {
    display:               inline-block;
    padding:               0 4ex;
}
.calendar .year-heading a {
    font-family:           Verdana, sans-serif;
    font-weight:           bold;
    font-size:             19px;
}
.calendar .year-heading .year-number {
    display:               inline-block;
    width:                 6ex;
}
.calendar .day-title {
    margin:                0;
    padding:               2px 0px 0px 0px;
    min-height:            25px;

}
.calendar .day-title .holiday-name {
    margin:                0;
    padding:               2px 0 1px 30px;
    font-size:             14px;
    line-height:           15px;
    color:                 #950011;

    font-family:           Tahoma, Geneva, sans-serif;
    font-size:             20px;
    line-height:           20px;
    font-weight:           400;
    vertical-align:        top;
}
.calendar .weekly-view .day-title .holiday-name {
    padding-left:          0px;
}
.calendar .day-title h4 {
    padding:               0px 0 1px 2px;
    color:                 #36454f;
    float:                 left;

    line-height:           normal;
    font-family:           Tahoma, Geneva, sans-serif;
    font-size:             20px;
    font-weight:           400;
}
.calendar .weekly-view .day-title h4 {
    float:                 none;
}
.calendar th.sun,
.calendar .holiday h4,
.calendar .sun h4 {
    color:                 #950011;
}
.calendar .days-events {
    clear:                 both;
    min-width:             8ex;
}
.calendar .weekly-view .days-events {
    min-height:            64ex;
}
.calendar .days-events .event {
    display:               block;
    line-height:           16px;
    padding-left:          3ex;
    text-indent:          -3ex;
}
.calendar .days-events a.event {
    color:                 #36454f;
}
.calendar .days-events a.event:active {
    background:            transparent;
}
.calendar .days-events .event-time {
    font-size:             9px;
}
.calendar .days-events .event-title {
    font-size:             12px;
}
.calendar td.day a.read-more {
    position:              absolute;
    bottom:                0;
    right:                 0;
    text-align:            right;
    margin:                0px;
    padding:               5px;
    color:                 white;
    background:            #23345c;
    font-size:             12px;
    line-height:           12px;
    white-space:           nowrap;
}

#overlay {
    position:              fixed;
    top:                   0;
    left:                  0;
    width:                 100%;
    height:                100%;
    background:            rgba(238, 238, 238, 0.5);
    z-index:               2;
    display:               none;
}

.popup-outer {
    position:              absolute;
    top:                   0;
    left:                  0;
    width:                 100%;
    z-index:               3;
    display:               none;
}
.popup {
    position:              relative;
    padding:               20px;
    background:            white;
    max-width:             500px;
    width:                 90%;
    height:                auto;
    margin:                10px auto 10px auto;
    border:                2px solid #c65000;
    overflow:              auto;
}
.popup .close {
    position:              absolute;
    top:                   5px;
    right:                 20px;
    line-height:           20px;
    text-decoration:       none;
    outline:               0;
}

/*-----------------------------------------------------------------------*/
/* Joyous MiniCalendar */
/*-----------------------------------------------------------------------*/

table.minicalendar {
    color:                 #36454f;
    font-size:             12px;
    line-height:           12px;
    border-collapse:       collapse;
}
.minicalendar thead tr th {
    padding:               5px;
    font-weight:           bold;
}
.minicalendar thead tr.heading th {
    text-align:            center;
}

.minicalendar thead .month-heading {
    display:               inline-block;
    padding:               0 0 0 4ex;
    text-align:            left;
}
.minicalendar thead .month-name {
    display:               inline-block;
    width:                 10ex;
}
.minicalendar thead .year-number {
    display:               inline-block;
    width:                 6ex;
}
.minicalendar thead .month-nav {
    display:               inline-block;
    padding:               0 4ex 0 0;
    float:                 right;
}
.minicalendar tbody tr td {
    padding:               0px;
}
.minicalendar tbody tr td .day-title {
    margin:                0;
    padding:               8px 8px 9px 8px;
    float:                 right;
}
.minicalendar tbody tr td a,
.minicalendar tbody tr td span {
    padding:               0px;
}
.minicalendar tbody tr td.today .day-title {
    background:            #ffb442;
    background:            radial-gradient(circle at center, #ffb442 0%,#ffb442 50%,transparent 60%);
}
.minicalendar .holiday ,
.minicalendar .sun  {
    color:                 #950011;
}
.minicalendar tbody tr td a {
    color:                 #36454f;
    font-weight:           bold;
    text-decoration:       none; 
    border-bottom:         1px dotted #36454f;
}
.minicalendar tbody tr td a,
.minicalendar tbody tr td a {
    border-bottom:         1px dotted #950011;
}
.minicalendar tbody tr td a:hover {
    border-bottom:         none;
    text-decoration:       underline; 
}
