/* starting styling calendar */

.bss-events .bss_calendar_day {
    position: relative;
    margin: 0;
    width: 14.28%;
    height: 120px;
    float: left;
    color: #343434;
    border-bottom: 1px solid #484440;
    border-right: 1px solid #484440;
    transition: background-color 0.6s linear;
    padding: 5px;
    font-size: 1.3rem;
}

.bss-events .bss_calendar_day .bss_calendar_day_eventtitle {
    padding-left: 4px;
    display: inline-block;
    line-height: 1.6rem;
}

.bss-events .bss_calendar a, .bss-events .bss_calendar a:hover {
    color: #343434;
    text-decoration: none
}

.bss-events .bss_calendar .month-nav a, .bss-events .bss_calendar .month-nav a:hover {
    color: white;
}

.bss-events .bss_calendar .year-nav a, .bss-events .bss_calendar .year-nav a:hover {
    color: white;
}

.bss-events .bss_calendar .month-nav.pull-right {
    float: right;
    margin-right: 20px;
}

/*.bss_calendar .month-nav.pull-left {*/
/*    float: left;*/
/*    margin-left: 20px;*/
/*}*/

.bss-events .bss_calendar_day:hover {
    background-color: #cfd7ea;
}

.bss-events .bss_calendar_day_title {
    font-size: 10pt;
    font-weight: 600;
    color: #343434;
    padding-left: 3px;
}

.bss-events .bss_calendar_top {
    background-color: #484440;
    padding-top: 4px;
    color: #ffffff;
    padding-left: 20px;
}

.bss-events .bss_calendar_top span {
    font-size: 2rem;
    font-weight: 700;
}

.bss-events .bss_calendar_topmenu_item {
    display: inline-block;
    padding: 5px;
    border: 1px solid #484440;
    margin-bottom: -1px;
    cursor: auto;
    text-align: center;
    min-width: 50px;
}

.bss-events .bss_calendar_topmenu_item:not(.active) {
    cursor: pointer;
}

.bss-events .bss_calendar_topmenu_item.active {
    background-color: #484440;
}

.bss-events .bss_calendar_topmenu_item:not(:first-child) {
    border-left: 0px;
    margin-left: -5px;
}

.bss-events .bss_calendar_topmenu_item .fa {
    display: inline-block;
    padding: 2px;
    color: #484440;
    font-size: 16pt;
}

.bss-events .bss_calendar_topmenu_item.active .fa {
    color: #ffffff;
}

.bss-events .categories_row div div {
    padding: 10px;
    display: inline-block;
}

.bss-events .categories_row div {
    margin-top: 10px;
}

.bss-events .plus_count {
    position: absolute;
    bottom: 5px;
    right: 5px;
    color: white;
    border-radius: 100%;
    border: 2px solid white;
    padding: 4px;
    background-color: black;
    font-size: 12pt;
    font-weight: bold;
    font-family: Helvetica, sans-serif;
}

.bss-events .bss_calendar_day_list_row {
    transition: background-color 0.6s linear;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.bss-events .bss_calendar_day_list_row:hover {
    background-color: rgba(211, 211, 211, 0.6);
}

.bss-events #bssEventModal .modal-header {
    border-bottom: 0;
}

.bss-events #events-detail-modal-header-table tr td {
    padding: 2px 8px;
}

.bss-events .registration-info > div {
    position: relative;
}

.bss-events .registration-info > div > i {
    margin-right: 10px;
}

.bss-events #bssEventModal .modal-dialog {
    margin: 4vh auto auto auto;
}

.bss-events #bssEventModal .modal-content {
    margin-top: 4vh;
}

.bss-events #bssEventModal .modal-dialog {
    width: 70vw;
}

.bss-events #bssEventModal .image-container {
    margin-left: 0;
}

.bss-events #bssEventModal .subscribe-fields button[type="submit"] {
    float: right;
    padding: 6px 12px;
}

.bss-events #bssEventModal .icon-row i {
    font-size: 1.6em;
    margin-right: 10px;
}

.bss-events #bssEventContent .category-btn {
    border-radius: 4px;
    padding: 6px 10px;
}

.bss-events #bssEventModal .subscribe-fields { margin-top: 30px; }
.bss-events #bssEventModal .image-container img { width: 100%; height: auto; max-width: 200px; }

.bss-events .subscribe-fields input, .bss-events .subscribe-fields textarea, .bss-events .subscribe-fields select {
    border: 0;
    border-radius: 3px;
    padding: 4px 7px;
    width: 100%;
    color: #000;
    margin-bottom: 3px;
    max-width: 100%;
    outline: 0;
}

.bss-events .subscribe-fields select option {
    cursor: pointer;
    padding: 5px 8px;
    border-radius: 3px;
    margin-bottom: 2px;
}

.bss-events .subscribe-fields button {
    border: 0;
    background: #484440;
    color: #fff !important;
    padding: 4px 15px;
}

.bss-events .subscribe-fields button .mce-ico {
    color: #fff !important;
}

.bss-events .subscribe-fields button .mce-caret {
    border-top: 4px solid #fff !important;
}

.bss-events #bssEventModal .subscribe-fields select option:checked,
.bss-events #bssEventModal .subscribe-fields select:focus option:checked {
    background-color: #484440 !important;
    color: #fff !important;
}

.bss-events .donthover:hover {
    text-decoration: none;
}

.bss-events #bssEventModal #event-detail-content img {
    max-width: 100%;
}

.bss-events #bssEventModal .toggle-group label.toggle-on {
    width: 48px;
    background: #68b6f8;
}

.bss-events #bssEventModal .toggle-group label.toggle-off {
    width: 48px;
    color: #fff;
    background: #939393;
}

.bss-events #bssEventModal div.panel.panel-default[data-appointmentid] {
    background-color: #00000008;
    padding: 7px;
    border-radius: 3px;
    margin-bottom: 10px;
}

.bss-events div#event-detail-content {
    margin-left: 10px;
}

.bss-events .bss_calendar_main {
    border-left: 1px solid #484440;
    position: relative;
    display: inline-block;
}

.bss-events #bssEventContent .categories_row a, .bss-events #bssEventModal a, .bss-events #eventEditBtn {
    text-decoration: none;
    display: inline-block;
    position: relative;
}

.bss-events #bssEventContent .icon-row .donthover i {
    display: inline-block;
    margin-right: 10px;
}

.bss-events #bssEventContent.container {
    max-width: 100%;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.bss-events .icon-row {
}

.bss-events .typo3-messages {
    list-style: none;
}


/*bss-custom-checkbox with opposite value for DELETE IMAGE*/
/* input for type="checkbox" */
.bss-events .bss-custom-checkbox > input {
    position: absolute;
    opacity: 0;
}

/* label for .custom-checkbox */
.bss-events .bss-custom-checkbox > span {
    display: inline-flex;
    align-items: center;
    user-select: revert;
}

/* pseudo element ::before in label */
.bss-events .bss-custom-checkbox > span::before {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
    background-color: red;
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    flex-shrink: 0;
    flex-grow: 0;
    border: 1px solid #767676;
    border-radius: 0.25em;
    margin-right: 0.4em;
    margin-left: 0.15em;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 50% 50%;
}

/* checked */
.bss-events .bss-custom-checkbox > input:checked + span::before {
    background-color: #ffffff;
}

.bss-events .row.event-preview-body-row {
    overflow: hidden;
    word-wrap: break-word;
    margin-left: -15px;
    margin-right: 15px;
}

.bss-events .event-detail-link-container .bss-event-detail-link {
    position: relative;
    max-width: 100%;
}

.bss-events .event-detail-link-container {
}

.bss-events .bss_calendar_day_list_row {
    padding-top: 10px;
    padding-bottom: 10px;
    margin: 10px 0;
    margin-left: 0px;
    max-width: 100%;
    position: relative;
}

.bss-events .bss_calendar_day_list_row .bss-event-detail-link {
    flex: 1 1 auto;
    min-width: 0;
}

.bss-events .bss-calendar-row-actions {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    align-self: stretch;
}

.bss-events .bss-calendar-action-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    color: inherit;
    font-size: 1.75rem;
    line-height: 1;
}

.bss-events .event-preview-body-row {
    padding-left: 4px;
}

.bss-events .bss_calendar_top {
    display: flex;
    justify-content: space-between;
}

.bss-events .bss-events-month-switch {
    width: 100%;
    min-height: 27px;
    display: flex;
    justify-content: space-between;
    padding-right: 20px;
}

.bss-events .bssevents-form .create-form .has-label-inline input {
    width: 100%;
}

.bss-events .show-active-images-row {
    display: flex;
    margin-top: 30px;
}

.bss-events .show-active-images-row .image-col {
    padding-right: 10px;
}

.bss-events .slots {
    display: none;
    width: 50%;
}

.bss-events .visible.slots {
    display: inline-block !important;
    width: 15% !important;
    margin-left: 15px;
    margin-bottom: 0;
}

.bss-events .toggle-add-slots {
    display: inline-block;
}

.bss-events .add-slots-label {
    margin-top: 10px;
}

.bss-events input.slots {
    position: relative;
    width: 15% !important;
    min-width: 60px;
}

.bss-events .add-slots-wrapper {
    margin-bottom: 30px;
}

.bss-events .additionalInformationLabel {
    margin-top: 20px;
}

.bss-events form.create-form .registration-container label.registrationLabel {
    width: 100% !important;
}

.bss-events .export-panel { padding: 20px; background-color: rgba(0, 0, 0, .2); }
.bss-events .export-panel .tui-datepicker-footer {
    background: #fff;
    z-index: 10000000;
    position: relative;
}

/*
Responsive Stuff
*/
@media (min-width: 576px) {
    .bss-events .modal-dialog {
        max-width: 1000px !important;
        margin: 1.75rem auto;
    }
}

@media (max-width: 768px) {
    .bss-events #bssEventModal .modal-dialog {
        width: 96vw;
        margin-bottom: 40px;
    }
}
