/**
 * Bookings
 */

input[type=submit].em-booking-submit,
input[type=submit].em-booking-submit:hover,
input[type=submit].em-booking-submit:focus
{
    height: 44px;
    line-height: 44px;
}

.em-booking-form .em-form-required,
.bookingForm .userInfo label
{
    font-size: 13px;
    font-weight: normal;
    padding-bottom: 10px;
}

.em-booking-form-details label,
.em-booking-form table.em-tickets th,
.em-booking-message-error li
{
    color: #4b556a !important; /* 75%-Dunkelblau */
}

.em-booking-form .em-form-required
{
    color: #009fda !important;
}

.em-booking-message
{
    color: #009fda;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}

/* overwrite attributes that are set by events manager */
.em-booking-message
{
    background-color: transparent !important;
    border: none !important;
    color: #009fda !important;
    margin: 0px !important;
    padding: 0px !important;
}

.bookingForm .userInfo
{
    color: #4b556a !important; /* 75%-Dunkelblau */
}

.em-booking-message-error p
{
    color: red !important;
}

.bookingForm .userInfo
{
    font-size: 16px;
}

input[type=submit].em-booking-submit,
input[type=submit].em-booking-submit:hover,
input[type=submit].em-booking-submit:focus
{
    font-size: 18px;
}

#training-booking-content .eventBox,
.em-booking-form table.em-tickets .em-attendee-fieldset
{
    margin-right: 20px;
}

#training-booking-content h2
{
    margin-top: 30px;
    text-align: center;
}

#training-booking-content > div.eventIntroduction,
#training-booking-content > div.content,
#training-booking-content .content .eventBox > div,
#training-booking-content h2
{
    margin-bottom: 30px;
}

#training-booking-content .categoryImage
{
    display: inline-block;
    margin-right: 10px;
}

#training-booking-content .categoryImage:empty
{
    display: none;
}

#training-booking-content .eventMainData
{
    display: inline-block;
    vertical-align: bottom;
}

/* booking form */

.em-booking-form-details .em-tickets-spaces,
.em-booking-form table.em-tickets .em-ticket-select
{
    margin-bottom: 0px;
    margin-top: 10px;
}

.em-booking-form table.em-tickets,
.em-booking-form div.attendeeStart
{
    margin-left: 10px;
}

.em-booking-form-details div.attendeeStart
{
    margin-left: 0px;
}

.em-booking-form-details .contactPerson
{
    margin-bottom: 0px;
    margin-top: 30px;
}

.em-booking-form-details .options,
.em-booking-form-details .terms
{
    margin-top: 40px;
}

.bookingForm .userInfo .input-user-field,
.em-booking-form .input-text
{
    border: none;
    display: inline-block;
    margin: 10px 1% 0px 0px;
    padding: 0px;
}

.em-booking-form .input-text
{
    background-color: transparent;
    max-width: 48%;
}

.bookingForm .userInfo
{
    margin-left: 10px;
    margin-right: 10px;
}

.bookingForm .userInfo .input-user-field
{
    width: 48%;
}

.bookingForm .userInfo label
{
    display: block;
}

.bookingForm .userInfo .data
{
    background-color: #dedde5 !important;
    box-shadow: none !important;
    border: 1px solid #bdbdcb !important;
    cursor: not-allowed;
    display: inline-block;
    line-height: 36px;
    overflow: hidden;
    padding-left: 10px;
    padding-right: 10px;
    width: 100%;
}

.em-booking-form table.em-tickets th
{
    margin-bottom: 2px;
}

.em-booking-form-details,
.em-booking-form-details div,
.em-booking-form-details .input-text input,
.em-booking-form label,
.em-booking-form table.em-tickets
{
    width: 100%;
}

.em-booking-form .requiredHint
{
    margin-bottom: 20px;
    margin-top: 20px;
}

.em-booking-submit
{
    width: 180px !important;
}

.em-booking-form .dhvc-form-tickets_spaces-box
{
    clear: left;
    display: block;
    height: 36px;
    margin-bottom: 20px;
    width: 100px;
}

.em-booking-form .dhvc-form-tickets_spaces-box .dhvc-form-select
{
    display: block;
}

.em-booking-form .dhvc-form-tickets_spaces-box .dhvc-form-select select
{
    height: 36px;
}

.em-booking-message-error
{
    text-align: left;
}

.em-booking-message-error p
{
    font-size: 16px;
}

.em-booking-message-error ul
{
    font-size: 13px;
    margin-top: 5px;
}

.em-booking-message-error li
{
    font-weight: normal;
}

.em-booking-form table.em-tickets .em-attendee-fieldset
{
    margin-right: 20px;
}

.bookedOut, .spaces
{
    float: right;
}

.bookedOut
{
    color: #FF0000 !important;
}


/**
 * Trainings
 */

.slTrainings
{
    text-align: left;
}

.slTrainings table.em-calendar td
{
    line-height: 32px;
    width: 32px;
}

.slTrainings table.em-calendar td:not(.month_name)
{
    font-size: 13px;
}

.slTrainings table.em-calendar tr:not(.days-names) td
{
    color: #4b556a;
}

.slTrainings table.em-calendar tr td.eventless-post,
.slTrainings table.em-calendar tr td.eventless-pre
{
    color: #bdbdcb;
}

.slTrainings table.em-calendar tr td.eventful-post a,
.slTrainings table.em-calendar tr td.eventful-pre a,
.slTrainings table.em-calendar tr td.eventful a,
.slTrainings table.em-calendar tr td.eventful-noneType a,
.slTrainings table.em-calendar tr td.eventful-today a
{
    display: block;
    color: white;
    text-decoration: none;
}

.slTrainings table.em-calendar tr td.eventful-today
{
    background-color: transparent;
}

.slTrainings table.em-calendar tr.days-names td
{
    color: #4b556a;
    font-weight: bold;
}

.slTrainings table.em-calendar thead a.em-calnav
{
    color: transparent;
    line-height: 32px;
}

.slTrainings table.em-calendar thead a.em-calnav:before
{
    color: transparent;
    color: white; /* todo: das sieht doppelt aus! */
    font-family: FontAwesome;
    font-size: 32px;
    position: absolute;
}

.slTrainings table.em-calendar thead a.em-calnav-next:before
{
    content: '\f0da';
    padding-left: 3px;
}

.slTrainings table.em-calendar thead a.em-calnav-prev:before
{
    content: '\f0d9';
    padding-right: 3px;
}

.slTrainings table.em-calendar thead
{
    background-color: #009fda;
}
.slTrainings table.em-calendar thead tr td.month_name
{
    color: #003359;
    font-size: 24px;
    font-weight: normal;
    line-height: 32px;
}

.slTrainings table.em-calendar tr td.eventless-today,
.slTrainings table.em-calendar tr td.eventful-today a
{
    font-size: 16px;
    font-weight: bold;
}

.slTrainings table.em-calendar tr td.eventless-today
{
    background-color: transparent;
}

.slTrainings table.em-calendar td
{
    padding: 0px;
}

.slTrainings.normalWidth table.em-calendar
{
    display: inline-block;
}

.slTrainings.fullWidth table.em-calendar
{
    width: 100%;
}

.slTrainings table.em-calendar
{
    border: 1px solid #009fda;
}

.slTrainings table.em-calendar td
{
    line-height: 32px;
    width: 32px;
}

.slTrainings table.em-calendar td:not(.month_name)
{
    font-size: 13px;
}

.slTrainings table.em-calendar tr:not(.days-names) td
{
    color: #4b556a;
}

.slTrainings table.em-calendar tr td.eventless-post,
.slTrainings table.em-calendar tr td.eventless-pre
{
    color: #bdbdcb;
}

.slTrainings table.em-calendar tr td.eventful-post a,
.slTrainings table.em-calendar tr td.eventful-pre a,
.slTrainings table.em-calendar tr td.eventful a,
.slTrainings table.em-calendar tr td.eventful-noneType a,
.slTrainings table.em-calendar tr td.eventful-today a
{
    color: white;
    display: block;
    text-decoration: none;
}

.slTrainings table.em-calendar tr td.eventful-today
{
    background-color: transparent;
}

.slTrainings table.em-calendar tr.days-names td
{
    color: #4b556a;
    font-weight: bold;
}

.slTrainings table.em-calendar thead a.em-calnav
{
    color: transparent;
    line-height: 32px;
}

.slTrainings table.em-calendar thead a.em-calnav:before
{
    color: transparent;
    color: white; /* todo: wieder doppelt */
    font-family: FontAwesome;
    font-size: 32px;
    position: absolute;
}

.slTrainings table.em-calendar thead a.em-calnav-next:before
{
    content: '\f0da';
    padding-left: 3px;
}

.slTrainings table.em-calendar thead a.em-calnav-prev:before
{
    content: '\f0d9';
    padding-right: 3px;
}

.slTrainings table.em-calendar thead
{
    background-color: #009fda;
}

.slTrainings table.em-calendar thead tr td.month_name
{
    color: #003359;
    font-size: 24px;
    font-weight: normal;
    line-height: 32px;
}

.slTrainings table.em-calendar tr td.eventless-today,
.slTrainings table.em-calendar tr td.eventful-today a
{
    font-size: 16px;
    font-weight: bold;
}

.slTrainings table.em-calendar tr td.eventless-today
{
    background-color: transparent;
}

.slTrainings table.em-calendar td
{
    padding: 0px;
}

.slTrainings.normalWidth table.em-calendar
{
    display: inline-block;
}

.slTrainings.fullWidth table.em-calendar
{
    width: 100%;
}

.slTrainings table.em-calendar
{
    border: 1px solid #009fda;
}


/**
 * Schooling
 */

.contentWithSidebar div.sl-sidebar .event
{
    padding-bottom: 5px;
    padding-top: 5px;
    text-align: left;
}


#training_content h2
{
    margin-top: 30px;
    text-align: center;
}

#training_content > div.eventIntroduction,
#training_content > div.content,
#training_content .content .eventBox > div,
#training_content h2
{
    margin-bottom: 30px;
}

#training_content .date
{
    margin-top: -20px;
}

#training_content .categoryImage
{
    display: inline-block;
    margin-right: 10px;
}

#training_content .categoryImage:empty
{
    display: none;
}

#training_content .eventMainData
{
    display: inline-block;
    vertical-align: bottom;
}

/**
 * Mediaqueries
 */

@media only screen and (max-width: 479px)
{
    .em-booking-form-details .em-tickets-spaces
    {
        margin-bottom: 0px;
        margin-top: 10px;
    }

    .em-booking-form .input-text,
    .bookingForm .userInfo .input-user-field
    {
        margin: 10px 0px 0px 0px;
    }

    .em-booking-form .input-field-email,
    .em-booking-form .input-field-phone
    {
        max-width: 98%;
    }

    .bookingForm .userInfo .input-user-field
    {
        width: 98%;
    }

    #training_content .categoryImage
    {
        width: 90px;
    }
}

@media only screen and (min-width: 480px) and (max-width: 800px)
{
    .slTrainings.bigStyle
    {
        margin-left: 10%;
        margin-right: 10%;
    }
}

@media only screen and (max-width: 800px)
{
    .slTrainings.bigStyle table.em-calendar
    {
        width: 100%;
    }

    .slTrainings.bigStyle .slCalendarLegend
    {
        margin-top: 20px;
    }

    .slTrainings.bigStyle .slCalendarLegend .slLegendEntry
    {
        display: inline-block;
        margin-right: 10px;
        min-width: 135px;
    }
}

@media only screen and (min-width: 801px)
{
    .slTrainings > div
    {
        display: inline-block;
        vertical-align: top;
    }

    .slTrainings.bigStyle
    {
        text-align: center;
    }

    .slTrainings.bigStyle > div
    {
        text-align: left;
    }

    .slTrainings.bigStyle table.em-calendar td
    {
        width: 64px;
    }

    .slTrainings.bigStyle .slCalendarLegend
    {
        padding-left: 30px;
    }

    #training_content
    {
        float: left;
        overflow: auto;
        padding-right: 265px;
        width: 100%;
    }

    #schooling-drawer:checked ~ #sl-schoolingsidebar
    {
        border: none;
    }
}
