/* CSS Document */
.cal a.booking-timelink,
.cal a.calendar-daylink {
    text-decoration: none;
    line-height: 1.1;
    font-weight: bold;
    display: block;
    padding: 0.65rem 0;
    margin: 0 0.65rem;
}
.cal a.calendar-daylink {
    border-top: 1px dotted #CDC;
}
.cal a:link.calendar-daylink .calendar-marking {
    font-weight: bold;
/*    font-family:"Arial Black", Gadget, "sans-serif";*/
    font-size: 110%;
    display: block;
}
.cal a:link.booking-timelink:hover,
.cal a:link.calendar-daylink:hover {
    text-decoration: underline;
}
.cal .calendar-mark .article-name {
/*    font-size: 0.8rem;*/
    line-height: 1.25;
    display: block;
}
#booking-form #action-button button,
.cal .mtssb-daily-action button {
/*    background-color: #FF4C00;*/
    background-color: #FCCF1E;
    color: #2E2F2F;
    border: 1px solid #2E2F2F;
    padding: 0.5rem 6rem;
/*    font-weight: bold;*/
    border-radius: 0.4rem;
}
#booking-form.content-form select, 
#booking-form.content-form input, 
#booking-form.content-form textarea {
    border: 1px solid #2E2F2F;
}
/*
.cal .header-row {
    background-color: #FCCF1E;
    padding: 0.5rem 0;
}
*/
.cal .monthly-prev-next {
    margin-top: -2.25rem;
}
.cal {
    color: #2E2F2F;
}

.cal .list-monthly-calendar table,
.cal .mix-calendar table,
.cal .timetable-calendar table,
.cal .multiple-calendar table,
.cal .monthly-calendar table,
.cal .side-calendar table {
    width: 100%;
    border: 1px solid #2E2F2F;
/*    margin-top: -1px;*/
}
.cal .list-calendar h3,
.cal .timetable-calendar h3,
.cal .multiple-calendar h3,
.cal .monthly-calendar h3,
.cal .side-calendar caption {
    text-align: center;
    padding: 1rem 0;
    margin: 0;
    border-top: 1px solid #2E2F2F;
    border-right: 1px solid #2E2F2F;
    border-left: 1px solid #2E2F2F;
}
.cal .list-calendar h3,
.cal .timetable-calendar h3,
.cal .multiple-calendar h3,
.cal .monthly-calendar h3,
.cal .side-calendar h3,
.cal .side-calendar caption,
.cal .header-row {
    background-color: #FCCF1E;
}
.cal .header-row {
    border-bottom: 1px solid #2E2F2F;
}
.cal .header-row th {
    color: #2E2F2F;
    padding: 1rem 0;
    font-weight: normal;
}
.cal .day-box.no-day {
    background-color: transparent;
}
.cal th.day-left,
.cal th.day-right {
    background-color: #F2F2F2;
    border-radius: 0;
}
.cal .mix-calendar td,
.cal .multiple-calendar td,
.cal .monthly-calendar td {
    padding: 1rem 0;
}
.cal .mix-calendar td,
.cal .multiple-calendar td,
.cal .monthly-calendar td,
.cal .side-calendar td {
    border-left: 1px solid #E3E3E3;
    border-right: 1px solid #E3E3E3;
    border-bottom: 1px solid #E3E3E3;
}

.cal table.mtssb-timetable-link {
    border-collapse: collapse;
    border-spacing: 0;
}
/*
.cal table.mtssb-timetable-link td {
    border: 0;
}
*/
.cal .mix-calendar .week-row > td:nth-child(1),
.multiple-calendar .week-row > td:nth-child(1),
.cal .monthly-calendar .week-row > td:nth-child(1),
.cal .side-calendar .week-row > td:nth-child(1) {
    border-left: 0;
}
.cal .mix-calendar .week-row > td:nth-last-child(1),
.multiple-calendar .week-row > td:nth-last-child(1),
.cal .monthly-calendar .week-row > td:nth-last-child(1),
.cal .side-calendar .week-row > td:nth-last-child(1) {
    border-right: 0;
}
.cal .mix-calendar .week-row:nth-last-child(1) td,
.multiple-calendar .week-row:nth-last-child(1) td,
.cal .monthly-calendar .week-row:nth-last-child(1) td,
.cal .side-calendar .week-row:nth-last-child(1) td {
    border-bottom: 0;
}
/*
.mix-calendar th, 
.mix-calendar td, 
.timetable-calendar th, 
.timetable-calendar td, 
.multiple-calendar th, 
.multiple-calendar td, 
.monthly-calendar th, 
.monthly-calendar td, 
*/
.cal .side-calendar,
.cal .side-calendar caption,
.cal .side-calendar a {
    color: #2E2F2F;
}
.cal .side-calendar a:link {
    text-decoration: none;
}
.cal .side-calendar a:link:hover {
    text-decoration: underline;
}
.cal .side-calendar th, 
.cal .side-calendar td {
    text-align: center;
    width: 14%;
}
.cal .side-calendar th a, 
.cal .side-calendar td a {
    display: block;
}
.cal .side-calendar td a,
.cal .side-calendar .header-row th {
    padding: .35rem 0;
}
.cal .side-calendar caption {
    caption-side: top;
    overflow: hidden;
    padding: .5rem 1rem;
}
.cal .side-calendar caption span,
.cal .side-calendar caption p {
    margin: 0;
    display: inline-block;
    line-height: normal;
}
.cal .side-calendar caption .prev_month {
    float: left;
}
.cal .side-calendar caption .next_month {
    float: right;
}
.cal .week-row .sun a,
.cal .list-header.sun, 
.cal .mix-calendar .header-row .sun, 
.cal .week-title.sun, 
.cal .day-box.sun .day-number {
    color: #ff6347;
}
.cal .week-row .sat a,
.cal .list-header.sat, 
.cal .mix-calendar .header-row .sat, 
.cal .week-title.sat, 
.cal .day-box.sat .day-number {
    color: #4169e1;
}