body,
html {
    height: 100%;
    width: 100%;
    padding: 0;
    margin: 0;
}



#left-col,
#content {
    padding: 8px;
}

#top-bar {
    position: relative;
    padding: 12px;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    /* height: 130px; */
    border-bottom: 3px solid rgba(115, 221, 158, 1);
    min-width: 1050px;
    width: 100%;
    box-sizing: border-box;
    /* padding: 0px 0px 50px 12px; */
}

#left-col {
    height: 100%;
    width: 250px;
    box-shadow: 0 0 50px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 10;
    box-sizing: border-box;
    float: left;
}

#left-col.is-dragging {
    padding-right: 25px !important;
}

#left-col:not(.is-dragging) {
    overflow-y: scroll !important;
}

#left-col .ui-draggable.ui-draggable-handle {
    cursor: default;
}

#right-col {
    width: calc(100% - 250px);
    height: calc(100% - 130px);
    float: right;
}

#content {
    /*background: purple;*/
    min-width: 1050px;
    height: 100%;
    box-sizing: border-box;
    overflow-y: scroll;
    padding: 15px 15px 0 15px;
    width: 100%;
    float: left;
}


/*#calendar{
    min-width: 1050px;
}*/

span#clientNamePlace > a {
    color: inherit;
}

span#clientNamePlace > a:hover {
    color: indianred;
}

span#clientNamePlace .inactive-badget {
    position: relative;
    bottom: 4px;
    left: 5px;
}

::-webkit-input-placeholder {
    /* WebKit, Blink, Edge */
    color: #999999;
}

:-moz-placeholder {
    /* Mozilla Firefox 4 to 18 */
    color: #999999;
    opacity: 1;
}

::-moz-placeholder {
    /* Mozilla Firefox 19+ */
    color: #999999;
    opacity: 1;
}

:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #999999;
}

::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #999999;
}


/*
input:focus {
   background: red;
}
*/

.search input {
    background: #f3f2f5;
    border-radius: 50px;
    border: 0px;
    padding: 6.5px 10px;
    font-size: 15px;
    box-sizing: border-box;
}

.search-employee {
    margin-top: 10px;
}

.search-employee > input,
.search-kunder > input {
    min-width: 180px;
    position: relative;
    max-width: 190px;
    padding-right: 30px;
}

.search-employee > #ic-search-emp,
.search-kunder > #ic-search-kunder {
    position: absolute;
    margin-top: 8px;
    margin-left: 10px;
    cursor: pointer;
}

.search-employee .include-inactive-checkbox-wrapper {
    display: flex;
}

.search-employee .include-inactive-checkbox-wrapper label {
    margin-left: 5px;
    font-size: 11px;
    vertical-align: middle;
    line-height: 0;
    margin-top: 10px;
    justify-content: flex-end;
}

.search-kunder {
    position: relative;
    /*margin-top: -51px;*/
    min-width: 240px;
    padding-top: 10px;
}

#searchDivClient {
    position: absolute;
    top: 45px;
    background: #f3f2f5;
    min-width: 450px;
    box-shadow: 0px 5px 18px rgba(0, 0, 0, 0.3);
    z-index: 5;
    max-height: 216px;
    overflow-y: scroll;
}

#searchDivClient ul {
    margin: 0;
    padding: 0;
}

#searchDivClient li {
    list-style-type: none;
    padding: 5px;
    border-bottom: 1px solid #ccc;
    cursor: pointer;
}

#searchDivClient li:hover {
    background: #e1dfe4;
}

li.clientSelected {
    background: #e1dfe4;
}

.unassigned-event {
    /*	background:#cccccc !important;
	border: 1px dashed #111111 !important;
	border-radius: 0px !important;*/
}

.ui-state-highlight {
    background: red !important;
    border: 4px;
}

.ui-droppable-active {
    background: yellow !important;
    border: 4px;
}

.ui-state-active {
    background: rgba(0, 0, 0, .4) !important;
    border: 4px;
}

.ui-droppable-hover {
    background: red !important;
    border: 4px;
}

.ui-state-hover {
    background: rgba(0, 0, 0, .8) !important;
    border: 4px;
}

.clearfix {
    clear: both;
}

div#deactivateEventDiv {
    margin-bottom: 10px;
}

div#activateManuallyEventDiv {
    margin-bottom: 10px;
}


/************************************/


/*     	EVENTS COLOR   	         */


/************************************/

.fc-blue {
    border: 1px solid #a6d1f3;
    border-left: 5px solid #a6d1f3;
    background: #e8f5f7;
}

.fc-blue-bg {
    background-color: #a6d1f3;
}


.fc-orange {
    border: 1px solid #ffdf75;
    border-left: 5px solid #ffdf75;
    background: rgb(255, 250, 233);
    border-radius: 8px;
}


.fc-orange .fc-time {
    background-color: #ffdf75;
    border-radius: 5px;
    padding: 2px 5px 2px 5px;
    display: inline-block;
    margin-bottom: 3px;
    font-weight: bold;
}


.fc-green {
    border: 1px solid #aed475;
    border-left: 5px solid #aed475;
    background: rgb(244, 255, 229);
    border-radius: 8px;
}

.fc-green .fc-time {
    background-color: #aed475;
    border-radius: 5px;
    padding: 2px 5px 2px 5px;
    display: inline-block;
    margin-bottom: 3px;
    font-weight: bold;
}

.fc-green-bg {
    background-color: #aed475;
}

.fc-red {
    border: 1px solid #e3a2a2;
    border-left: 5px solid #e3a2a2;
    background: #fbe6e6;
    border-radius: 8px;
}


.fc-red .fc-time {
    background-color: #e3a2a2;
    border-radius: 5px;
    padding: 2px 5px 2px 5px;
    display: inline-block;
    margin-bottom: 3px;
    font-weight: bold;
}

.fc-red-bg {
    background-color: #de7373;
}

.fc-grey {
    border: 1px solid #dcdcdc;
    border-left: 5px solid #dcdcdc;
    background: #f1f1f1;
    border-radius: 8px;

}


.fc-grey-bg {
    background-color: #dcdcdc;
}

.fc-birthday {
    border: 1px solid #BEC82D;
    border-left: 5px solid #BEC82D;
    background: #f2f4d5;
    color: #BEC82D;
    border-radius: 8px;

}

.fc-freeDay {
    border: 1px solid #73C8B4;
    border-left: 5px solid #73C8B4;
    background: #e3f4f0;
    border-radius: 8px;

    /*color: #73C8B4;*/
}

.e-emp-1 {
    border: 1px solid #a9a9a9;
    border-left: 5px solid #a9a9a9;
    background: #bfbebe;
}

.e-emp-2 {
    border: 1px solid #9b9a9a;
    border-left: 5px solid #9b9a9a;
    background: #b5b5b5;
}

.e-emp-3,
.e-emp-4,
.e-emp-5,
.e-emp-6,
.e-emp-7,
.e-emp-8,
.e-emp-9,
.e-emp-10,
.e-emp-11 {
    border: 1px solid #999999;
    border-left: 5px solid #999999;
    background: #b3b3b3;
}

.fc-strip-bg {
    background-image: url('../img/stripe-bg.png');
    border-left: 0;
    padding-left: 9px;
    border-style: dashed;
    border-top-style: solid;

}

.fc-strip-bg::before {
    content: " ";
    display: block;
    width: 5px;
    height: 100%;
    background-image: url(../img/stripe-bg.png);
    position: absolute;
    left: 0px;
    z-index: 123;
    top: 0;
    /* background: red; */
    border-style: dashed;
    border: 1px dashed;
    border-bottom: 0px;
}

.fc-blue.fc-strip-bg::before {
    border-color: #a6d1f3;
}

.fc-green.fc-strip-bg::before {
    border-color: #aed475;
}

.fc-red.fc-strip-bg::before {
    border-color: #de7373;
}

.fc-grey.fc-strip-bg::before {
    border-color: #dcdcdc;
}

#active-education-filters ul,
#active-language-filters ul,
#active-mobility-filters ul,
#active-applicationArea-filters ul,
#active-service-filters ul {
    margin: 0;
    padding: 0;
}

#active-education-filters li,
#active-language-filters li,
#active-mobility-filters li,
#active-applicationArea-filters li,
#active-service-filters li {
    width: 100%;
    margin-top: 5px;
    position: relative;
}

.fc-strip-bg .empName {
    font-weight: lighter;
}

.fc-strip-bg ul li {
    list-style-type: none;
}

#active-education-filters ul > li > span,
#active-language-filters ul > li > span,
#active-mobility-filters ul > li > span,
#active-applicationArea-filters ul > li > span,
#active-service-filters ul > li > span {
    position: absolute;
    right: 7px;
    top: 0px;
}

.filter-set {
    border: 1px solid #ddd;
    margin-top: 5px;
    margin-bottom: 5px;
    padding: 7px;
    border-radius: 18px;
    display: none;
}

.filter-set .filter-set-title {
    font-weight: bold;
    margin-left: 3px;
}

.btn-filter-active {
    background: rgba(0, 0, 0, .2) !important;
}

.fc-defaultAbsence {
    background: #ccc;
}

.fc-clientAbsence {
    border: 1px solid #B91482;
    border-left: 5px solid #B91482;
    background: #f1d0e6;
    color: #B91482;
}

.fc-employeeAbsence {
    border: 1px solid #DC281E;
    border-left: 5px solid #DC281E;
    background: #f8d4d2;
    color: #DC281E;
}

.fc-bg-absence {
    border: 1px solid #FF998F;
    border-left: 5px solid #FF998F;
    background: #FFDFDC;
    color: #FF998F;
}

.fc-holidays {
    border: 1px solid #69196c;
    background: #764ead;
    color: white;
}

.fc-event-employees ul {
    margin: 0px;
    padding: 0 0 0 0;
}

.fc-event-employees {
    margin-left: 0px;
}

.fc-title {
    font-weight: 700;
}

.fc-key-icons {
    float: right;
    margin-top: 0px;
    margin-right: 1px;
}

#calendar {
    /*max-width: 1200px;*/
    margin: 0 auto;
}

#calendar .fc-toolbar .fc-center h2 {
    cursor: pointer;
}

#calendar .fc-toolbar .fc-center h2::after {
    background-image: url(../img/calendar-icon.png);
    background-size: 18px 18px;
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-left: 5px;
    content: "";
}

.eventHighlight {
    box-shadow: 0px 0px 17px 2px rgb(141, 25, 213) !important;
}


/*.fc-time-grid .fc-slats td {
    height: 1em !important;
}*/


/************************************/


/*     	LEFT BAR    	         */


/************************************/

#employee-filters {
    /*margin-top: 15px;*/
}

#employee-list,
#employee-assigned-list,
#employee-selected-list,
#employee-list-two,
#employee-list-three {
    margin-top: 20px;
    background: white;
}

#employee-list ul,
#employee-assigned-list ul,
#employee-selected-list ul,
#employee-list-two ul,
#employee-list-three ul {
    margin: 0;
    padding: 0;
}

#employee-list li,
#employee-assigned-list li,
#employee-selected-list li,
#employee-list-two li,
#employee-list-three li {
    list-style-type: none;
    margin: 10px 0;
}

#employee-list label {
    margin: 0px;
}

#employee-list .spAddress,
#employee-assigned-list .spAddress,
#employee-selected-list .spAddress,
#employee-list-two .spAddress,
#employee-list-three .spAddress {
    margin: 0px;
    display: block;
}

#employee-list-two, #employee-list-three {
    max-height: 500px;
    overflow-y: scroll;
}

#filt-green {
    border-radius: 10px;
    padding: 0px 8px;
    background: rgba(150, 201, 89, 1);
    margin-left: 10px;
    cursor: pointer;
    text-align: center;
}

#filt-yellow {
    border-radius: 10px;
    padding: 0px 8px;
    background: rgba(237, 220, 0, 1);
    margin-left: 10px;
    cursor: pointer;
    text-align: center;
}

#filt-red {
    border-radius: 10px;
    padding: 0px 8px;
    background: rgba(207, 107, 79, 1);
    margin-left: 10px;
    cursor: pointer;
    text-align: center;
}

#ico-filt-green {
    fill: rgba(100, 140, 44, 1);
}

#ico-filt-yellow {
    fill: rgba(150, 136, 6, 1);
}

#ico-filt-red {
    fill: rgba(163, 59, 31, 1);
}

.left-column-header {
    background: #f7f7f7;
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 50px;
    width: 95%;
}

.br-green {
    border-left: 8px solid rgba(150, 201, 89, 1);
}

.br-purple {
    border-left: 8px solid rgb(166, 63, 177);
}

.br-yellow {
    border-left: 8px solid rgba(237, 220, 0, 1);
}

.br-red {
    border-left: 8px solid rgba(207, 107, 79, 1);
}

.br-assigned,
.br-gray {
    border-left: 8px solid rgba(0, 0, 0, .2) !important;
}

.br-green-emp-tooltip {
    border-left: 8px solid rgba(150, 201, 89, 1);
    border-top: 1px solid rgba(150, 201, 89, 1);
    border-bottom: 1px solid rgba(150, 201, 89, 1);
    border-right: 1px solid rgba(150, 201, 89, 1);
}

.br-yellow-emp-tooltip {
    border-left: 8px solid rgba(237, 220, 0, 1);
    border-top: 1px solid rgba(237, 220, 0, 1);
    border-bottom: 1px solid rgba(237, 220, 0, 1);
    border-right: 1px solid rgba(237, 220, 0, 1);
}

.br-red-emp-tooltip {
    border-left: 8px solid rgba(207, 107, 79, 1);
    border-top: 1px solid rgba(207, 107, 79, 1);
    border-bottom: 1px solid rgba(207, 107, 79, 1);
    border-right: 1px solid rgba(207, 107, 79, 1);
}

.br-assigned-emp-tooltip,
.br-gray-emp-tooltip {
    border-left: 8px solid rgba(0, 0, 0, .2) !important;
    border-top: 1px solid rgba(0, 0, 0, .2) !important;
    border-bottom: 1px solid rgba(0, 0, 0, .2) !important;
    border-right: 1px solid rgba(0, 0, 0, .2) !important;
}

.employeeTooltip,
.employee-card {
    background: #f5f6ff;
    padding: 0 5px;
    border-radius: 5px;
    overflow: auto;
    box-shadow: 0 0 5px rgba(0, 0, 255, .2);
    width: calc(100% - 10px);
    background-image: url(../img/stripe-bg.png);
}
div.employeeTooltip {
    width: 280px;
    padding: 0;
    font-size: 12px;
    position: absolute;
    z-index: 999;
    --arrow-top: 30px;
    background: #ffffff;
    border: 1px solid #d1d5db;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    border-radius: 8px;
}

@keyframes tooltipFadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

div.employeeTooltip > a:first-child,
div.employeeTooltip > p:first-of-type {
    background: #4f749c;
    color: white;
    padding: 8px 10px;
    margin: 0;
    font-size: 13px;
    line-height: 1.2;
}

div.employeeTooltip > a:first-child {
    display: inline-block;
    font-size: 10px;
    padding: 2px 6px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 3px;
    color: white;
    text-decoration: none;
    float: right;
    margin-left: 8px;
}

div.employeeTooltip > a:first-child:hover {
    background: rgba(255, 255, 255, 0.3);
}

div.employeeTooltip > p:first-of-type b a {
    color: white;
    text-decoration: none;
    font-weight: 600;
}

div.employeeTooltip > p:first-of-type b a:hover {
    text-decoration: underline;
}

div.employeeTooltip > p {
    margin: 0;
    padding: 3px 10px;
    color: #4b5563;
    line-height: 1.3;
}

div.employeeTooltip > p:not(:first-of-type) {
    padding: 3px 10px;
}

div.employeeTooltip > p img {
    vertical-align: middle;
    margin-right: 5px;
    width: 13px;
    height: 13px;
}

div.employeeTooltip > hr {
    margin: 4px 10px;
    border: none;
    border-top: 1px solid #e5e7eb;
}

div.employeeTooltip a {
    color: #3b82f6;
    text-decoration: none;
}

div.employeeTooltip a:hover {
    text-decoration: underline;
}

div.employeeTooltip > p b {
    color: #111827;
    font-weight: 600;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: block;
    margin-bottom: 2px;
    margin-top: 2px;
}

div.employeeTooltip > p:has(img[src*="alert-icon"]) {
    background: #fef2f2;
    border-left: 2px solid #ef4444;
    color: #991b1b;
    padding: 5px 10px;
    margin: 0;
}

div.employeeTooltip > p:has(img[src*="info-icon"]) {
    background: #eff6ff;
    border-left: 2px solid #3b82f6;
    color: #1e40af;
    padding: 5px 10px;
    margin: 0;
}

div.employeeTooltip:after,
div.employeeTooltip:before {
    right: 100%;
    top: var(--arrow-top);
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}

div.employeeTooltip:after {
    border-color: rgba(255, 255, 255, 0);
    border-right-color: #4f749c;
    border-width: 8px;
    margin-top: -8px;
}

div.employeeTooltip:before {
    border-color: rgba(209, 213, 219, 0);
    border-right-color: #d1d5db;
    border-width: 9px;
    margin-top: -9px;
}

div.employeeTooltip.right:after,
div.employeeTooltip.right:before {
    left: 100%;
    right: unset;
}

div.employeeTooltip.right:after {
    border-left-color: #4f749c;
    border-right-color: transparent;
}

div.employeeTooltip.right:before {
    border-left-color: #d1d5db;
    border-right-color: transparent;
}

div.mobilityfooter {
    padding:5px;
}

div.employeeTooltip span {
    display: inline-flex;
    align-items: center;
    background: #f3f4f6;
    padding: 2px 6px;
    border-radius: 10px;
    margin-right: 3px;
    margin-bottom: 2px;
    font-size: 10px;
    color: #6b7280;
}

div.employeeTooltip span img {
    width: 14px;
    height: 14px;
    margin-left: 3px;
    margin-right: 0;
}

div.employeeTooltip::-webkit-scrollbar {
    width: 4px;
}

div.employeeTooltip::-webkit-scrollbar-track {
    background: transparent;
}

div.employeeTooltip::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 2px;
}

div.employeeTooltip::-webkit-scrollbar-thumb:hover {
    background: #9ca3af;
}

div.employeeTooltip > p:empty {
    display: none;
}

div.employeeTooltip > p:last-child {
    padding-bottom: 8px;
}

div.employeeTooltip > p:has(b) {
    padding-top: 5px;
    padding-bottom: 3px;
}
div.employeeTooltip.right:before {
    border-left-color: #D1CFF3;
    border-right-color: transparent;
}

.emp-name {
    font-weight: 700;
    margin-left: 5px;
}

.emp-name-inactive {
    color: red;
    text-decoration: line-through;
}

.emp-info {
    display: flex;
    align-items: flex-end;
}

.emp-address {
    float: left;
    width: 80%;
    font-size: 13px;
}

.emp-dist {
    background: white;
    padding: 3px 8px;
    float: right;
    width: 40%;
    font-size: 11px;
    border-radius: 50px;
    text-align: center;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    /* position: absolute;
    right: 0px; */
}

.ui-dialog .ui-dialog-content {
    padding: 0 !important;
    margin: .5em 1em;
}


/* div.employeeTooltip {
    background: #fff1f1;
    padding: 5px 8px;
    border: solid 1px #ddd;
} */


/************************************/


/*     		TOP BAR    	         */


/************************************/

.avatar {
    /* float: left; */
    position: relative;
    left: 10px;
    min-width: 30px;
    border-left: 1px solid #ccc;
    padding-left: 0;
}

.avatarImg {
    width: 50px;
}

#genre {
    position: absolute;
    bottom: 10px;
    right: 30px;
}

.audit-relation-counter {
    /* min-width: 200px;
    padding-top: 10px; */
    padding: 10px 10px;
}

#audit-counter-label:not(.btn-disposition-top) {
    margin-top: 6px;
    margin-left: 10px;
    text-decoration: underline;
    color: #48B0F7;
    cursor: pointer;
}

.center-audits-task {
    margin: auto;
}

.client-container-top-bar {
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: flex-start;
    border-left: 1px solid #ccc;
}

.client-container-top-bar.report {
    border-right: 1px solid #ccc;
    justify-content: space-around;
}

#client-splitex-location {
    width: 95%;
    border-radius: 2px !important;
    height: 32px;
}

div.modal-body .audit-relation-counter {
    width: 100% !important;
    background: #dff2ff !important;
    border: none;
}

.glyphicon-tasks {
    font-size: 32px;
}

.client-name {
    float: left;
    font-size: 20px;
    font-weight: 600;
    /* min-width: 200px; */
    margin-right: 15px;
    /* margin-top: 35px; */
    margin-left: 15px;
    line-height: 20px;
    /* height: 42px; */
}

.client-container-top-bar *,
.client-name * {
    white-space: nowrap;
    overflow: visible;
}

.client-name .client-data li {
    margin-left: -20px;
    margin-top: 2px;
}

.client-address {
    font-size: 12px;
    /* width: 240px; */
    /* padding: 0 20px;
    color: #666666;
    /* border-right: 1px solid #ccc; */
    cursor: pointer !important;
    /* min-height: 42px; */
}

.client-data {
    font-size: 12px;
    /* min-width: 200px; */
    padding-left: 20px;
    /* padding: 0 20px; */
    color: #666666;
    /* border-right: 1px solid #ccc; */
    /* margin-right: 10px; */
    margin-bottom: 0;
}

.client-data ul {
    margin: 0px;
    padding: 0px;
}

.client-data li {
    list-style-type: none;
}


#client-phones {
    padding: 0 10px 0 10px;
    /* width: 130px;
    padding: 10px;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc; */
}

#client-alerts-area {
    color: #666666;
    min-width: 300px;
    font-size: 13px;
    padding: 5px;
    border: 1px solid #eee;
    height: 100px;
    margin-left: 15px;
    flex-grow: 1;
    z-index: 2;
}

#client-alerts-area.alerts-hidden {
    border: none;
}


#client-alert-note > p {
    /* background: #cc6c4d; */
    padding: 5px 10px;
    overflow-y: scroll;
    margin-bottom: 0;
    /* color: #ffffff; */
    color: black;
    height: 100%;
}

#client-alert-note .note-row {
}

#client-alert-note .note-row img:first {
    margin-top: 5px;
}

#client-alert-note .note-row img {
    margin-right: 5px;
    float: left;
    width: 20px;
}

#client-alert-note .note-row .note-text {
    border-bottom: 1px solid aliceblue;
    margin-bottom: 5px;
    padding-bottom: 5px;
    float: left;
    width: calc(100% - 25px);
    text-align: justify;
    line-height: 1.25;
}

.topRightOptions {
    display: flex;
    margin-left: 20px;
    margin-right: 8px;
    margin-top: 10px;
    justify-content: flex-end;
}

.messRight {
    /*width: 324px;*/
    width: 320px;
    float: right;
    /*background: #e1e1e1;*/
    /*    height: 100%;*/
    height: calc(100% - 100px);
    overflow: scroll;
    position: fixed;
    right: 0;
    z-index: 2;
    background: white;
}

.messagesBar ul,
.messIcons > ul {
    margin: 0px;
    padding: 0px;
}

.messagesBar > ul > li:not(.taskEventRequest, .changedSerie) {
    list-style-type: none;
    background: #f3f2f5;
    margin: 9px;
    border-radius: 5px;
    font-size: 13px;
}

.messIcons > ul {
    text-align: right;
    right: 5px;
    top: 5px;
    position: relative;
}

.messIcons > ul > li {
    list-style-type: none;
    display: inline-block;
    cursor: pointer;
    margin-left: 4px;
}

.messHeader {
    background: #e8eff3;
    box-shadow: none !important;
    border-radius: 5px 5px 0 0;
    padding: 6px;
    font-weight: 700;
    overflow: hidden;
    width: 100%;
}


.messagesBar > ul > li:not(.taskEventRequest, .changedSerie) .messHeader {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.messagesBar > ul > li:not(.taskEventRequest, .changedSerie) .messHeader:hover {
    cursor: pointer;
    background-image: url('../img/stripe-bg.png');
    padding-left: 65px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    background: #d2dfe7;
}


.messagesBar > ul > li:not(.taskEventRequest, .changedSerie) .messHeader:hover .messHeaderIcon {
    width: 55px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}



.employeefullName {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.messHeader:hover .employeefullName {
    color: #000;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}


.messHeaderIcon {
    float: left;
    margin-right: 10px;
    line-height: 33px;
}


.messagesBar > ul > li:not(.taskEventRequest, .changedSerie) .messHeader {
    background: #e8eff3;
    box-shadow: none !important;
    border-radius: 5px;
    padding: 6px 6px 6px 50px;
    font-weight: 700;
    overflow: auto;
    position: relative;
}


.messagesBar > ul > li:not(.taskEventRequest, .changedSerie) .messHeaderIcon {
    float: left;
    margin-right: 10px;
    line-height: 33px;
    padding: 6px;
    background-color: #f55753;
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 100%;
    text-align: center;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}


.messagesBar > ul > li:not(.taskEventRequest, .changedSerie) .messHeaderIcon i {
    color: #fff;
    font-size: 25px;
}


.messHeaderTitleArea {
    float: left;
}

.messHeaderTitleArea > p {
    margin: 0px;
}

.messHeaderDateUpdate {
}

p.messHeaderDateUpdate,
span.messHeaderDateUpdate {
    font-weight: lighter;
    color: #8a8a9c;
    font-size: 11px;
}

.modal-header p.messHeaderDateUpdate,
.modal-header span.messHeaderDateUpdate {
    color: #aaffee;
}

.messHeaderIcon > img {
    width: 25px;
}

.messHeader > .messIcon {
    top: 2px;
    position: relative;
}

.messContent {
    padding: 6px;
}

.messContent:first-letter {
    text-transform: capitalize;
}

.messagesIcon {
    position: relative;
    cursor: pointer;
}

.messagesIcon:hover i {
    font-size: 55px;
    color: #000;
}

.messagesIcon:hover .countMessages {
    top: 10px;
    left: -15px;
}

.messagesIcon i {
    font-size: 45px;
    color: #dedede;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}


.countMessages {
    position: absolute;
    top: 5px;
    left: -8px;
    background: red;
    color: white;
    border-radius: 50px;
    padding: 2px 7px;
    font-size: 13px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.goToCrmBtn > span {
    background: #606060;
    padding: 3px 10px;
    color: #ffffff;
    font-size: 13px;
    border-radius: 50px;
}

.goToCrmBtn > #ico-goToCrmBtn {
    position: absolute;
    top: 5px;
    margin-left: 5px;
}


/************************************/


/*     	FORM ADD TASK  	         */


/************************************/

#dialog-form input.str {
    width: 100%;
}

select[name="selectCalendarView"] {
    background: #cc6c4d;
    border: 0px;
    font-size: 13px;
    border-radius: 20px !important;
    color: white;
    height: 22px;
    padding: 0 25px 0 10px;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    -moz-border-radius: 50px;
    -webkit-border-radius: 50px;
}

.selectViewCont {
    position: relative;
}

.arrow-down {
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid #ffffff;
    position: absolute;
    right: 10px;
    top: 11px;
}

.btn-cal-ec {
    cursor: pointer;
    background: rgba(207, 226, 181, 1);
    padding: 2px 11px 2px 11px;
    border-radius: 15px;
    color: white;
    font-size: 14px;
}

.btn-cal-ec-active {
    background: rgba(150, 201, 89, 1);
}

#btnCloseEmployee,
#showKundeCal {
    margin-left: 10px;
}

.qtip-content b {
    font-size: 1.2em;
}

.qtip-content hr {
    border-top: 0px;
    border-bottom: 1px solid #F1D031;
}

.formDiv {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    clear: both;
}

.formDiv-half {
    width: 50%;
    float: left;
    padding: 10px;
    box-sizing: border-box;
}

.formDiv > label,
.formDiv-half > label,
.formDiv > div > label,
.formDiv-half > div > label {
    /*width:50%;*/
    display: block;
    /*font-style: italic;*/
    /*font-weight: 300;*/
    /*color: #999999;*/
    /*font-size: 12px;*/
    margin-bottom: 2px;
}

.formDiv > input,
.formDiv > textarea,
.formDiv-half > input,
.formDiv-half > textarea {
    width: 100%;
    border: 1px solid #eee;
    padding: 5px;
    font-size: 13px;
}

.formDiv-half > textarea {
    resize: none;
}

.hourPicker {
    display: relative;
    max-width: 60px;
    margin-top: 10px;
}

.hour {
    float: left;
}

.minutes {
    float: right;
}

.hour,
.minutes {
}

.hour input,
.minutes input {
    max-width: 20px;
    text-align: center;
}

.hourPicker > div > .m-up,
.hourPicker > div > .h-up {
    position: relative;
    left: 5px;
    bottom: 4px;
    cursor: pointer;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid #cccccc;
}

.hourPicker > div > .h-down,
.hourPicker > div > .m-down {
    position: relative;
    left: 5px;
    top: 4px;
    cursor: pointer;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid #cccccc;
}

.twoPoints {
    width: 0px;
    float: left;
    line-height: 38px;
    margin-left: 2px;
}

.timeStart {
    float: left;
    width: 40%;
}

.timeEnd {
    float: left;
    width: 40%;
}

.hoursBlock {
    margin-top: 10px;
}

.employeesAssignedModal,
.employeesRecommendedModal,
.qualityControlModalTxtModal {
    width: 100%;
    /*background:#f5f5f5;*/
    max-height: 200px;
    overflow-y: scroll;
}

.employeesAssignedModal ul,
.employeesRecommendedModal ul,
.qualityControlModalTxtModal ul {
    margin: 0;
    padding: 0;
}

.employeesAssignedModal li,
.employeesRecommendedModal li,
.qualityControlModalTxtModal li {
    list-style-type: none;
    margin: 10px 0;
    height: auto;
}

.timeStartDate,
.timeEndDate {
    width: 40%;
    float: left;
}

.timeStartDate input,
.timeEndDate input {
    width: 80%;
    margin-top: 18px;
}

.employee-card-modal, .employee-card-modal-push {
    position: relative;
    background: #f3f2f5;
    padding: 5px;
    border-radius: 5px;
    overflow: auto;
    box-shadow: 0 0 5px rgba(0, 0, 0, .2);
    width: 90%;
    font-size: 13px;
    cursor: pointer;
}

.employee-card-modal .emp-address, .employee-card-modal-push .emp-address {
    font-size: 11px;
    margin-left: 5px;
}


.dropEmployeeForPush .with-no-device {
    background-image: url(../img/stripe-bg.png) !important;;
    background-color: #f9c6c8 !important;
}

.dropEmployeeForPush .with-device {
    background-color: #d0f6bb !important;
    border-left-color: #489d48;
}

.dropEmployeeForPush .employeeInRed {
    background-color: #e8cfcf !important;
    border-left-color: #ce6a6a;
}

.emp-actions {
    position: absolute;
    top: 5px;
    right: 5px;
    cursor: pointer;
}

.emp-actions-modal {
    margin-left: 5px;
    cursor: pointer;
    float: right;
}


/************************************/


/*     		MAP  		         */


/************************************/

#map,
#contMapa {
    height: 95%;
}

.employeeHighlight {
    background: #77f6b0;
    -webkit-animation: backgrondHighlight .8s linear forwards;
    animation: backgrondHighlight .8s linear forwards;
}

@-webkit-keyframes backgrondHighlight {
    0% {
        background: #f3f2f5;
    }
    30% {
        background: #28a661;
    }
    100% {
        background: #77f6b0;
    }
}

@keyframes backgrondHighlight {
    0% {
        background: #f3f2f5;
    }
    30% {
        background: #28a661;
    }
    100% {
        background: #77f6b0;
    }
}

.avatarMap {
    width: 70px;
    height: auto;
    border-radius: 100%;
    /*float: left;*/
    margin-right: 15px;
    margin-bottom: 10px;
}

.textMap {
    min-width: 220px;
}


/************************************/


/*   		  	CALENDAR 	         */


/************************************/


/*#calendar{
	max-height: calc(100% - 120px) !important;
}*/


/************************************/


/*             LOCAL LOG 	     */


/************************************/

#local_log {
    position: absolute;
    background: rgba(255, 255, 255, .9);
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10;
}

#close_local_log {
    position: fixed;
    top: 20px;
    right: 20px;
    cursor: pointer;
    font-weight: bolder;
    background: #cccccc;
    padding: 10px 20px;
    border-radius: 50px;
}

#content_local_log {
    margin: 40px auto;
    max-width: 700px;
    background: rgba(255, 255, 255, 1);
    padding: 12px;
}

#content_local_log h2 {
    border-bottom: 1px solid #ccc;
}

#write_local_log,
#detail_local_log {
    padding: 5px;
    box-sizing: border-box;
    width: 50%;
    float: left;
}

div#write_local_log > ul {
    margin: 0;
    padding: 0;
}


img#genreFemale, img#genreMale {
    position: absolute;
    right: 0;
    top: 2px;
}

svg#icon-filter {
    padding: 5px;
    position: relative;
    left: 2px;
    top: 8px;
    cursor: pointer;
}


/* div#loadCalendar {
    width: 100%;
    height: 100%;
    position: fixed;
    background: rgba(255, 255, 255, .8);
    z-index: 9;
    display: none;
}

div#loadCalendar>img {
    margin-top: 20%;
    margin-left: 40%;
} */

.loadTopBar {
    animation: colorchange 1s infinite, infinite;
    /* animation-name followed by duration in seconds*/
    /* you could also use milliseconds (ms) or something like 2.5s */
    -webkit-animation: colorchange 1s infinite;
    /* Chrome and Safari */
}

.tooltipevent hr {
    border-top: 1px solid #bfbebe;
    border-bottom: 0;
    border-right: 0;
    border-left: 0;
    margin: 5px 0 !important;
}

.tooltipevent ul {
    margin: 0;
    padding: 0 15px;
}

.debug-bubble-info {
    position: relative;
    margin: 10px -10px -10px -10px;
    padding: 2px 2px 2px 5px;
    background: rgba(0, 0, 0, .1);
    font-size: 9px;
}

th.fc-day-header {
    background: #707d87;
    border-color: #707d87;
}

th.fc-day-header a {
    color: white !important;
}

.fc-center > h2 {
    font-size: 18px;
    font-weight: bolder;
}

.alert-non-edit {
    padding: 10px;
    background: #d8d5d5;
    color: black;
    font-weight: bold
}


/*.alert-non-edit{
    margin-top:10px;
    padding:10px;
    background:rgba(221,115,115,1);
    border-radius:5px;
    color:white;
    font-weight:bold
}*/

button.ui-button.ui-corner-all.ui-widget {
    font-size: 1em;
    border-radius: 5px;
}

.uiSuccess {
    color: white !important;
    background-color: #10cfbd !important;
    border-color: #0eb7a7 !important;
}

.uiSuccess:hover,
.uiSuccess:active,
.uiSuccess.hover {
    background-color: #0eb7a7 !important;
}

.employee-replacement-card-modal {
    padding: 5px 10px;
    border: 1px solid #c3c2c4;
    border-radius: 4px;
    margin: 10px 0 0 0;
    background: rgba(227, 223, 235, 0.58);
    position: relative;
}

.employee-selected-to-replacement {
    box-shadow: 0px 0px 17px 2px rgb(141, 25, 213) !important;
}

.employeesAssignedModal li, .qualityControlModalTxtModal li {
    margin-left: 10px;
}

.employeeHasKeyHover {
    position: relative;
    bottom: 1px;
    left: 5px;
}

span.fc-event-icons {
    position: absolute;
    right: 5px;
    top: 0px;
}

.modalServices p {
    margin-top: 5px;
    margin-bottom: 0px;
}

.modalServices .form-group {
    margin-bottom: 0px;
}

.modal {
    z-index: 999 !important;
}


#servicesModal .modal-dialog {
    min-width: 800px !important;
}

.modalServices .borderLeft {
    border-left: solid 1px black;
}

.modalServices .borderRight {
    border-right: solid 1px black;
}

#AddDefaultServiceModal .modal-dialog {
    /* width: calc(100% - 350px);
    margin-left: 300px; */
    min-width: 800px !important
}


/* @media (max-width: 1700px){
    #AddDefaultServiceModal .modal-dialog
    {
        min-width: 900px !important;
    }
} */

.row.category-row.modalServicesCategoryRow > div > .row:hover {
    background: #f8f8f8;
}

@media (max-width: 1300px) {
    #servicesModal .modal-dialog {
        min-width: 700px !important;
    }
}

@media (max-width: 1050px) {
    #servicesModal .modal-dialog {
        min-width: 600px !important;
    }
}

@media (max-width: 900px) {
    #servicesModal .modal-dialog {
        min-width: 90% !important;
    }
}

@media (max-width: 767px) {
    .modalServices .borderLeft {
        border-left: none;
    }

    .modalServices .borderRight {
        border-right: none;
    }

    .modalServices div > .rightCol > div:nth-child(1) {
        display: none;
    }

    .modalServices div > .rightCol > div:nth-child(2) {
        border-top: solid 1px black;
    }
}

.modalServicesCategoryRows > div {
    border-bottom: solid 1px black;
    padding: 5px 0;
}

.modalServicesCategoryRows > div:last-child {
    border-bottom: none;
}

.fc-toolbar.fc-header-toolbar {
    margin-bottom: 0px;
}

.ca-available {
    color: black;
}

.ca-notavailable {
    color: red;
}

.ca-accepthomeaccess {
    color: orange;
}

.ea-available {
    color: black;
}

.ea-notavailable {
    color: red;
}

.ea-available-manually-activated {
    color: red;
}

.ea-reemplaced {
    color: orange;
}

.txt-disabled {
    color: #888888;
}

.refreshDisposition {
    text-align: right;
    font-size: 11px;
}

.refreshDisposition .btn {
    padding: 3px 12px 17px !important;
}

button.btn.btn-default.btn-close.close {
    padding: 5px 10px;
}

.employee-card .icon {
    margin-left: 4px;
    position: relative;
    top: -1.5px;
    display: inline;
}

.tooltip-emp {
    margin: 8px;
    padding: 8px;
    background-color: white;
    position: absolute;
    z-index: 999;
}

.input-group.typeTime {
    width: 100%;
}


/* BV-1977 Scrollbar error
ul.sidebar-menu {
    height: calc(100% - 120px);
    overflow: scroll;
}
 */

.bgRed {
    background: red !important;
}

.txtWhite {
    color: white !important;
}

.ui-dialog div.vertical-button {
    margin-top: 15px;
}

.ui-dialog div.vertical-button button {
    display: block;
    width: 80%;
    margin: 5px auto;
}

.ui-dialog div.vertical-button button.unsign-btn {
    background-color: #FD998C !important;
    border-color: #FD998C !important;
}

.ui-dialog div.vertical-button button.sign-btn {
    background-color: #A0CAA8 !important;
    border-color: #A0CAA8 !important;
}

.ui-dialog div.vertical-button button i.fa {
    font-size: 24px;
    vertical-align: middle;
    float: left;
    margin-right: 5px;
}

.ui-dialog div.vertical-button button span {
    position: relative;
    top: 3px;
}

@keyframes colorchange {
    0% {
        border-color: rgba(115, 221, 158, 1);
    }
    50% {
        border-color: rgba(115, 221, 158, .2);
    }
    100% {
        border-color: rgba(115, 221, 158, 1);
    }
}

@-webkit-keyframes colorchange
    /* Safari and Chrome - necessary duplicate */

{
    0% {
        border-color: rgba(115, 221, 158, 1);
    }
    50% {
        border-color: rgba(115, 221, 158, .2);
    }
    100% {
        border-color: rgba(115, 221, 158, 1);
    }
}

.jsonToTable td {
    padding: 2px 10px;
}

.employee-card-modal.br-assigned .contract-signed-group-wrapper {
    margin-top: 10px;
}

.employee-card-modal.br-assigned .contract-signed-group-employee,
.employee-card-modal.br-assigned .employee-manually-activated,
.employee-card-modal.br-assigned .contract-signed-group-customer {
    display: inline;
    padding-top: 5px;
    color: red;
    background-color: #FD998C;
}

.employee-manually-activated  {
    display: inline;
    padding-top: 5px;
    color: red;
    background-color: transparent!important;
}

.employee-manually-activated label {
    margin-right:5px;
}


.employee-card-modal.br-assigned .contract-signed-group-employee.signed,
.employee-card-modal.br-assigned .employee-manually-activated.signed,
.employee-card-modal.br-assigned .contract-signed-group-customer.signed {
    color: green;
    background-color: #A0CAA8;
}

.employee-card-modal.br-assigned .contract-signed-group-employee.loading,
.employee-card-modal.br-assigned .employee-manually-activated.loading,
.employee-card-modal.br-assigned .contract-signed-group-customer.loading {
    pointer-events: none;
    /* color: black;
    cursor:not-allowed;
    background-color: grey;
    animation: blinker 1s linear infinite; */
}

@keyframes blinker {
    50% {
        opacity: 0;
    }
}

.employee-card-modal.br-assigned .contract-signed-group-employee.signed i.signed,
.employee-card-modal.br-assigned .employee-manually-activated.signed i.signed,
.employee-card-modal.br-assigned .contract-signed-group-customer.signed i.signed {
    display: inline;
}

.employee-card-modal.br-assigned .contract-signed-group-employee.signed i.not-signed,
.employee-card-modal.br-assigned .employee-manually-activated.signed i.not-signed,
.employee-card-modal.br-assigned .contract-signed-group-customer.signed i.not-signed {
    display: none;
}

.employee-card-modal.br-assigned .contract-signed-group-employee i.signed,
.employee-card-modal.br-assigned .employee-manually-activated i.signed,
.employee-card-modal.br-assigned .contract-signed-group-customer i.signed {
    display: none;
}

.employee-card-modal.br-assigned .contract-signed-group-employee i,
.employee-card-modal.br-assigned .employee-manually-activated-employee i,
.employee-card-modal.br-assigned .contract-signed-group-customer i {
    padding-left: 4px;
}


/*
    if (this.data.contractSigned) {
        this.$form.find('.contract-signed-group').css('color', 'green');
        this.$form.find('.contract-signed-group').css('background-color', '#A0CAA8');
        this.$form.find('i.signed').show();
        this.$form.find('i.not-signed').hide();
    } else {
        this.$form.find('.contract-signed-group').css('color', 'red');
        this.$form.find('.contract-signed-group').css('background-color', '#FD998C');
        this.$form.find('i.signed').hide();
        this.$form.find('i.not-signed').show();
*/

.contract-signed-group,
.contract-signed-group label {
    user-select: none;
    cursor: pointer;
}

.contract-signed-timestamp {
    color: green;
    font-size: 0.9em;
    font-style: italic;
    display: inline-block;
    margin-left: 10px;
}

.styled-checkbox > input + span::after {
    content: '\f096';
    width: 15px;
    height: 15px;
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    color: red;
    background-color: #FD998C;
    padding: 1px;
}

.styled-checkbox > input:checked + span::after {
    content: '\f046';
    width: 15px;
    height: 15px;
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    color: green;
    background-color: #A0CAA8;
    padding: 1px;
}

.styled-checkbox input {
    appearance: none;
}

#open-contract-generator-dialog {
    display: block;
    margin-left: 5%;
}

div[aria-describedby="dialog-contract-generator"].ui-widget.ui-widget-content {
    border: 1px solid #41A5FF;
    border-left: 5px solid #41A5FF;
    font-size: 1.2em;
}

div[aria-describedby="dialog-contract-generator"] table th,
div[aria-describedby="dialog-contract-generator"] table td {
    width: 70%;
    padding-right: 10px;
    padding-left: 5px;
}

div[aria-describedby="dialog-contract-generator"] table tr th:nth-child(2),
div[aria-describedby="dialog-contract-generator"] table tr td:nth-child(2) {
    width: 30%;
}

div[aria-describedby="dialog-contract-generator"] .bottom-border {
    border-bottom: 1px solid black;
}

div[aria-describedby="dialog-contract-generator"] .right-border {
    border-right: 1px solid black;
}

div[aria-describedby="dialog-contract-generator"] .ui-widget-header {
    background-color: #b2dbff;
}

div[aria-describedby="dialog-contract-generator"] .employee {
    margin-top: 13px;
    margin-bottom: 10px;
}

div[aria-describedby="dialog-contract-generator"] .document {
    margin-top: 5px;
    margin-bottom: 5px;
}

div[aria-describedby="dialog-contract-generator"] .document a {
    text-decoration: underline;
}

div[aria-describedby="dialog-contract-generator"] .document a img {
    margin-right: 3px;
}

div[aria-describedby="dialog-contract-generator"] .document a:active,
div[aria-describedby="dialog-contract-generator"] .document a:focus,
div[aria-describedby="dialog-contract-generator"] .document a,
div[aria-describedby="dialog-contract-generator"] .document a:hover {
    color: #41A5FF !important;
}


/* Absolute Center Spinner */

.loading-overlay {
    position: fixed;
    z-index: 999;
    height: 2em;
    width: 2em;
    overflow: visible;
    margin: auto;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    display: none;
    margin-top: 17%;
}


/* Transparent Overlay */

.loading-overlay:before {
    content: '';
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* animation: color 3s infinite linear; */
    background-color: #ffffffde;
}

.loader-circle,
.loader-circle:after {
    border-radius: 50%;
    width: 10em;
    height: 10em;
}

.loader-circle {
    margin: 60px auto;
    font-size: 10px;
    position: relative;
    text-indent: -9999em;
    border-top: 1.1em solid rgba(0, 231, 197, 1);
    border-right: 1.1em solid rgba(0, 231, 197, 0.4);
    border-bottom: 1.1em solid rgba(0, 231, 197, 1);
    border-left: 1.1em solid rgba(0, 231, 197, .4);
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation: load8 1.1s infinite linear;
    animation: load8 1.6s infinite linear;
}

@-webkit-keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes color {
    0% {
        background-color: rgba(135, 203, 193, 0.75);
    }
    50% {
        background-color: rgba(135, 203, 193, 0.45);
    }
    100% {
        background-color: rgba(135, 203, 193, 0.75);
    }
}


.emp-starts-in-future {
    background-color: #33c858;
    color: white;
    text-align: center;
    font-weight: 700;
}


/*
Push notification modal
 */
.forPushNotification:hover, .forPushNotification * :hover {
    cursor: move !important;
}

.forPushNotification:hover {
    background-color: #fafafa;
    box-shadow: 0 0 5px rgba(0, 0, 0, .2);
}


.forPushNotification input {
    display: none;
}

.dropEmployeeForPush {
    width: 100%;
    min-height: 200px;
    max-height: 200px;
    overflow-y: scroll;
    padding: 5px;
    list-style: none;
}


.dropEmployeeForPush .employee-card, .dropEmployeeForPush .employee-card-modal-push {
    margin-bottom: 15px !important;
    width: 100%;
}

.ui-state-active-drop {
    background-image: url(../img/stripe-bg.png) !important;;
    background-color: transparent !important;
}

.ui-state-hover {
    background-color: #edf2e4 !important;
}

.alert-custom-warning {
    background-color: #ffedd7 !important;
    border: solid 1px #ffd29c !important;
    border-radius: 5px !important;
    color: #b87628;
}

.alert-custom-success {
    background-color: #e1f5ca !important;
    border: solid 1px #d0f4a7 !important;
    border-radius: 5px !important;
    color: #728f51;
}

.pushBloqued {
    margin: 0;
    padding: 55px;
    background-color: #ffedd7 !important;
    border: solid 1px #ffd29c !important;
    border-radius: 5px !important;
    color: #b87628;
    text-align: center;
}

.pushBloqued i {
    font-size: 40px;
    display: block;
    margin-bottom: 25px;
}

.pushBloquedExisting {
    margin: 0;
    padding: 55px;
    background-color: rgba(255, 255, 255, 0.9) !important;
    background-image: url(../img/stripe-bg.png) !important;;
    border-radius: 0px !important;
    border: none !important;
    color: #8c0615;
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}


/*
DISPOSITION AUDIT AND PUSH BUTTON
 */

.btn-disposition-top {
    border-radius: 10px !important;
    color: #000;
    margin: 0 0 0 10px;
    text-decoration: none;
    cursor: pointer;
    background-color: #fff;
    border: solid 1px #dedede;
    padding: 5px;
    position: relative;
    font-size: 12px;
}

.btn-disposition-top:hover {
    -webkit-box-shadow: 0px 10px 13px -7px #5B5B5B, 5px 5px 15px 5px rgba(91, 91, 91, 0);
    box-shadow: 0px 10px 13px -7px #5B5B5B, 5px 5px 15px 5px rgba(91, 91, 91, 0);
}


.btn-disposition-top:hover svg {
    opacity: 1;

}

.btn-disposition-top svg {
    width: 40px;
    height: auto;
    opacity: 0.3;
}

.btn-disposition-top .badge {
    position: absolute;
    right: 5px;
    top: -5px;
}

.btn-disposition-top span:not(.badge) {
    display: block;
}


.client-container-top-bar #btnCreatePushEvent {
    display: block;
}

#containerEventPush i {
    font-style: normal;
    font-weight: bold;
}


#dialog-send-push-message .tab-pane {
    width: 100% !important;
}

#pushHistory {
    max-height: 300px;
    overflow-x: auto;
}

#listPushEmployees {
    max-height: 500px;
    overflow: auto;
}


.include-inactive-clients-checkbox-wrapper {
    margin-top: 35px;
}

.forFreeEventRequest {
    display: none;
}


/* Task for free event request */
.messagesBar > ul > li.taskEventRequest,
.messagesBar > ul > li.changedSerie {
    list-style-type: none;
    margin: 9px;
    border-radius: 5px;
    font-size: 13px;
    box-shadow: none;
    position: relative;
}


.messHeader .services ul {
    list-style: none !important;
    list-style-position: inside !important;
    margin: 10px 0 10px 0 !important;
    padding: 0 !important;
}

.messHeader .services ul li {
    background-color: rgba(255, 255, 255, 0.5);
    color: #000;
    padding: 3px 8px 3px 8px;
    margin: 0 10px 0 0 !important;
    display: inline-block;
    border-radius: 5px;
}


.eventTitle {
    position: relative;
    font-weight: 600;
    color: #fff;
    padding: 5px 25px 5px 5px;
    border-radius: 3px;
    font-size: 15px;
}

.eventTitle:after {
    right: 100%;
    top: 50%;
    border: solid transparent;
    content: "";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-width: 5px;
    margin-top: -5px;
}


.messagesBar > ul > li.green {
    border-left: solid 10px #76af38;
    background: #def3c8;
}

.messagesBar > ul > li.green .counter {
    background: #76af38;
}


.messagesBar > ul > li.green .eventTitle {
    background-color: #76af38;
}

.messagesBar > ul > li.green .eventTitle {
    background: #76af38;
}

.messagesBar > ul > li.green .eventTitle:after {
    border-right-color: #76af38;
}


.messagesBar > ul > li.green .messHeader {
    background: #def3c8;
    border: solid 1px #def3c8;
}

.messagesBar > ul > li.green .iconUser {
    color: #76af38;
}

.messagesBar > ul > li.red {
    border-left: solid 10px #ee220d;
    background: #f7dedc;
}

.messagesBar > ul > li.red .counter {
    background: #ee220d;
}

.messagesBar > ul > li.red .iconUser {
    color: #ee220d;
}

.messagesBar > ul > li.red .eventTitle {
    background-color: #ee220d;
}

.messagesBar > ul > li.red .eventTitle {
    background: #ee220d;
}

.messagesBar > ul > li.red .eventTitle:after {
    border-right-color: #ee220d;
}


.messagesBar > ul > li.red .messHeader {
    background: #f7dedc;
    border: solid 1px #ee220d;
}

.noReponseTask {
    background-color: #fff;
    border: dashed 1px #ee220d;
    border-radius: 5px;
    padding: 6px;
    color: #ee220d;
    margin-bottom: 10px;
    font-weight: 500;
}


.noReponseTaskWarning {
    background-color: #fff;
    border: dashed 1px #ff8c28;
    border-radius: 5px;
    padding: 6px;
    color: #ff8c28;
    margin-bottom: 10px;
    font-weight: 600;
    font-size: 13px;
}


.stripAnimated {
    position: relative;
    width: 100%;
    background: linear-gradient(90deg, rgba(255, 140, 40, 1) 0%, rgba(255, 255, 255, 1) 70%);
    background-size: 300% 400%;
    animation: gradient 15s ease infinite;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@keyframes gradient {
    0% {
        background-position: 0% 50%;
        color: #fff;
    }
    50% {
        color: #cb6c0c;
        background-position: 100% 50%;
    }
    100% {
        color: #fff;
        background-position: 0% 50%;
    }
}

.noReponseTask strong {
    font-weight: 800;
}


.messagesBar > ul > li.warning {
    border-left: solid 10px #ff8c28;
    background: #ffdda2;
}

.messagesBar > ul > li.warning .counter {
    background: #ff8c28;
}

.messagesBar > ul > li.warning .iconUser {
    color: #ff8c28;
}

.messagesBar > ul > li.warning .eventTitle {
    background-color: #ff8c28;
}

.messagesBar > ul > li.warning .eventTitle {
    background: #ff8c28;
}

.messagesBar > ul > li.warning .eventTitle:after {
    border-right-color: #ff8c28;
}


.messagesBar > ul > li.warning .messHeader {
    background: #fff5e7;
    border: solid 1px #ffdda2;
}


.messagesBar > ul > li.info {
    border-left: solid 10px #00a2ff;
    background: #c9ddee;
}

.messagesBar > ul > li.info .iconUser {
    color: #00a2ff;
}

.messagesBar > ul > li.info .counter {
    background: #00a2ff;
}

.messagesBar > ul > li.info .eventTitle {
    background-color: #00a2ff;
}

.messagesBar > ul > li.info .eventTitle {
    background: #00a2ff;
}

.messagesBar > ul > li.info .eventTitle:after {
    border-right-color: #00a2ff;
}

.messagesBar > ul > li.info .messHeader {
    background: #c9ddee;
    border: solid 1px #c9ddee;
}

.messagesBar > ul > li.taskEventRequest .messHeaderTitleArea,
.messagesBar > ul > li.changedSerie .messHeaderTitleArea {
    margin-left: 50px;
}

.messagesBar > ul > li.taskEventRequest .messHeaderIcon,
.messagesBar > ul > li.changedSerie .messHeaderIcon {
    width: 50px;
    position: absolute;
    left: 0;
    top: 10px;
    text-align: center;

}

.messagesBar > ul > li.taskEventRequest .counter,
.messagesBar > ul > li.changedSerie .counter {
    color: #fff;
    width: 40px;
    height: 40px;
    line-height: 40px;
    display: inline-block;
    text-align: center;
    font-size: 15px;
    border-radius: 50%;
    margin: 5px auto 0 auto !important;
    margin-right: 10px;
}


.messagesBar > ul > li.taskEventRequest .iconUser,
.messagesBar > ul > li.changedSerie .iconUser {
    font-size: 30px;
    margin: 20px 0 0 0;
}

.messagesBar > ul > li.taskEventRequest .iconQuestion,
.messagesBar > ul > li.changedSerie .iconQuestion {
    width: 40px !important;
    margin: 5px 0 0 0;
}

.messagesBar > ul > li.taskEventRequest .client ,
.messagesBar > ul > li.changedSerie .client {
    font-weight: 700;
    font-size: 15px;
}

.messagesBar > ul > li.taskEventRequest .client i,
.messagesBar > ul > li.changedSerie .client i {
    font-weight: 400;
}

.messagesBar > ul > li.taskEventRequest .services ul ,
.messagesBar > ul > li.changedSerie .services ul {
    list-style: none;
    margin-top: 10px;
    margin-bottom: 10px;
}

.messagesBar > ul > li.taskEventRequest .services ul li,
.messagesBar > ul > li.changedSerie .services ul li {
    display: inline-block;
    margin: 0 0 0 20px;
}


.messagesBar > ul > li.taskEventRequest .creator ,
.messagesBar > ul > li.changedSerie .creator {
    font-size: 12px;
    margin-top: 10px;
    font-style: italic;
    font-weight: normal;
}

.messagesBar > ul > li.taskEventRequest .lastComment,
.messagesBar > ul > li.changedSerie .lastComment {
    font-size: 12px;
    margin-top: 10px;
    font-weight: normal;
}


.messagesBar > ul > li.info .messHeader:hover,
.messagesBar > ul > li.red .messHeader:hover,
.messagesBar > ul > li.warning .messHeader:hover,
.messagesBar > ul > li.green .messHeader:hover {
    cursor: pointer;
    background-image: url('../img/stripe-bg.png');
}


.commentBox {
    position: relative;
    background-color: #fff;
    padding: 1.125em 1.5em;
    border-radius: 0.3rem;
    box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, .3), 0 0.0625rem 0.125rem rgba(0, 0, 0, .2);
}

.commentBox::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    bottom: 100%;
    left: 11.5em;
    border: .75rem solid transparent;
    border-top: none;
    border-bottom-color: #fff;
    filter: drop-shadow(0 -0.0625rem 0.0625rem rgba(0, 0, 0, .1));
}


.userComment {
    margin-top: 10px;
    padding: 15px;
    border: solid 1px rgba(255, 255, 255, 0.5);
    border-radius: 0.3rem;
    background-color: rgba(255, 255, 255, 0.5);
    font-weight: normal;
}

.messHeaderTitleAreaFreeEvent {
    width: calc(100% - 50px);
}


.commentBoxUser {
    position: relative;
    background-color: #fff;
    padding: 1.125em 1.5em;
    margin-top: 10px;
    width: 100%;
    border-radius: 0.3rem;
    box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, .3), 0 0.0625rem 0.125rem rgba(0, 0, 0, .2);
}

.commentBoxUser::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    bottom: 100%;
    left: 1.5em;
    border: .75rem solid transparent;
    border-top: none;
    border-bottom-color: #fff;
    filter: drop-shadow(0 -0.0625rem 0.0625rem rgba(0, 0, 0, .1));
}


#eventModalForm #btnCreatePushEvent {
    display: none;
}

/* Task event request in DashBoard */
.no-results-task {

    border-radius: 5px 5px 0 0;
    padding: 20px;
    overflow: auto;
    text-align: center;
    margin-top: 20px;
}

.no-results-task i {
    display: block;
    font-size: 40px;
    color: #5b9a4a;
    margin-bottom: 10px;
}


.employeePushFound {
    list-style: none;
    list-style-position: inside;
    margin: 0;
    padding: 0;
    max-height: 200px;
    overflow-y: auto;
}

.event-hours-row {
    display: none;
}


.eventEmployeeList li {
    display: inline-block;
}

.eventEmployeeList li:not(:last-child):after {
    display: inline-block;
    content: ",";
    margin-right: 3px;
}

#pushReplacementTitleContainer {
    display: none;
    text-align: center;
    background-color: #5b9a4a;
    padding: 8px;
    border-radius: 115px;
    margin-bottom: 20px;
    color: #fff;
}


/* Off canvas */
.off-canvas-toggle {
    float: left;
    padding: 0 15px;
}

.off-canvas {
    width: 380px;
    position: fixed;
    right: 0;
    top: 0;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    background-color: #fff;
    transform: translateX(100%);
    transition: .4s ease-in-out;
    z-index: 1060;
    padding: 20px;
    box-shadow: -8px 2px 18px -10px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: -8px 2px 18px -10px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: -8px 2px 18px -10px rgba(0, 0, 0, 0.3);

}

.off-canvas-active .off-canvas {
    transition: .5s ease-in-out;
    transform: translateX(0);
}


.off-canvas-overlay {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255, 0.8);
    z-index: 1050;
    visibility: hidden;
    opacity: 0;
    transition: .4s ease-in-out;
    cursor: default;
}

.off-canvas-overlay:hover {
    background-color: rgba(255,255,255, 0.5);
    cursor: pointer;

}

.off-canvas-active .off-canvas-overlay {
    opacity: 1;
    visibility: visible;
}

.textOffCanvas {
    /*
    position: absolute;
    top: 50%;
    left: 50%;
    width: 300px;
    transform: translate(-50%, -50%);
    z-index: 99;
    color: #fff;
    text-align: center;
    font-size: 20px;

     */
    display: none;

}

.textOffCanvas i {
    font-size: 35px;
    display: block;
}



#cloneFreeEventRequest .panel.orange .panel-heading,
.accordion-sidebar .panel.orange .panel-heading {
    -webkit-transition: all 0.2s ease;
    background-color: #ffe4bf ;
    border-color: #ffe4bf ;
    font-weight: bold;
    border-radius: 0;
    color: #cd6e1b;
}


#cloneFreeEventRequest .panel.green .panel-heading,
.accordion-sidebar .panel.green .panel-heading {
    -webkit-transition: all 0.2s ease;
    font-weight: bold;
    border-radius: 0;
    background-color: #d5ecb1 ;
    border-color: #d5ecb1 ;
    color: #6b9c23;

}

.accordion-sidebar button,
#pushFromFreeEventRequest button
{
    display: none;
}


.accordion-sidebar .col-xs-1,
#pushFromFreeEventRequest .col-xs-1
{
    display: none;
}

.accordion-sidebar .col-xs-11,
#pushFromFreeEventRequest .col-xs-11
{
    width: 100%;
}



#cloneFreeEventRequest .panel.orange,
.accordion-sidebar .panel.orange {
    border: solid 1px #ff8c28;
    margin-bottom: 18px !important;
    box-shadow: -8px 2px 18px -10px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: -8px 2px 18px -10px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: -8px 2px 18px -10px rgba(0, 0, 0, 0.3);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    color: #000;
    border-left: solid 5px #ff8c28;
}



#cloneFreeEventRequest .panel.green,
.accordion-sidebar .panel.green {
    border: solid 1px #aed475;
    margin-bottom: 18px !important;
    box-shadow: -8px 2px 18px -10px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: -8px 2px 18px -10px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: -8px 2px 18px -10px rgba(0, 0, 0, 0.3);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-left: solid 5px #aed475;
}




#cloneFreeEventRequest .panel input,
.accordion-sidebar .panel input
{
    float: right;
    border: solid 1px #fff;
    box-shadow: none;
    width: 18px;
    height: 18px;
    color: #000;
    margin: 0;
}

.yescircle {
    opacity: 0;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    z-index: 0;
    color: #fff;
    font-size: 20px;
    transition: all 0.3s ease;
}

.accordion-sidebar .panel.orange:hover {
    cursor: pointer;
    background-color: #fff5e7;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-color: #ff8c28;

}

.accordion-sidebar .panel.green:hover {
    cursor: pointer;
    background-color: #f7ffec;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-color: #76af38;
}


.accordion-sidebar .panel:hover .yescircle,
#cloneFreeEventRequest .panel:hover .yescircle
{
    opacity: 1;
    transition: all 0.3s ease;
}


.accordion-sidebar .panel.orange:hover .panel-heading ,
#cloneFreeEventRequest .panel.orange:hover .panel-heading,
{
    color: #fff!important;
    -webkit-transition: all 0.3s ease;
    background-color: #ff8c28;
    border-color: #ff8c28 ;
    font-weight: bold;
}


.accordion-sidebar .panel.green:hover .panel-heading,
#cloneFreeEventRequest .panel.green:hover .panel-heading{
    color: #fff!important;
    -webkit-transition: all 0.3s ease;
    background-color: #76af38 ;
    border-color: #76af38 ;
    font-weight: bold;
}


#cloneFreeEventRequest {
    text-align: left!important;
}

#cloneFreeEventRequest .radio,
#pushFromFreeEventRequest .radio
{
    display: none;
}
#cloneFreeEventRequest button {
    background-color: #ac1616;
    display: block;
    border: none;
    color: #fff;
    border-radius: 50%;
    padding: 10px;
    width: 40px;
    height: 40px;
    line-height: 20px;
}


.indent {
    padding-left: 30px;
}

.indent .fa {
    margin-left: -30px;
}

.accordion-sidebar .panel.orange .accordion-definition,
#cloneFreeEventRequest .panel.orange .accordion-definition {
    display: block;
    font-weight: bold;
    color: #ff8c28;
    font-size: 14px;
}

.accordion-sidebar .panel.green .accordion-definition,
#cloneFreeEventRequest .panel.green .accordion-definition {
    display: block;
    font-weight: bold;
    color: #81b13a;
    font-size: 14px;
}


.accordion-services {
    border-top: dashed 1px #dedede;
    display: block;
    margin-top: 5px;
    padding-top: 5px;
    color: #111111;
    font-size: 12px;
}

.rg-content {
    float: right;

}

#containerEmployees {
    margin-top: 20px;
}

#pushReplacementButtonContainer {
    display: none;
}


#pushFromFreeEventRequest .panel-heading,
#pushFromFreeEventRequest .panel:hover .panel-heading
{
    background-color: #edf2e4!important;
    color: #000!important;
    border-color: #edf2e4!important;
}

#pushFromFreeEventRequest  .panel{
    background-color: #fff!important;
    color: #000!important;
    border-color: #edf2e4!important;
}

.noresult {
    padding: 20px;
    text-align: center;
    color: #000;
}

.noresult i{
    color: #ff8c28;
    font-size: 25px;
    display: block;
}

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background-color: transparent;
}

::-webkit-scrollbar-thumb {
    background-color: #d4d4d4;
    border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
    background-color: #666;
    cursor: pointer;
}


.disposition { overflow: auto}


.modal-footer-mod {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 99;
    width: 100%;
    background-color: #fafafa;
    border-top: solid 1px #dedede!important;
    /*
    -webkit-box-shadow: -1px -7px 5px -3px rgba(0,0,0,0.2);
    -moz-box-shadow: -1px -7px 5px -3px rgba(0,0,0,0.2);
    box-shadow: -1px -7px 5px -3px rgba(0,0,0,0.2);

     */
}


.modal-body-mod {
    max-height: calc(70vh);
    overflow: auto;
    padding: 0 10px 50px 0!important;
    overflow-x: hidden;
}
.modal-footer-mod .form-group{
    margin-bottom: 0;
}

.container-checkbox-push {
    border:dashed 1px #dedede;
    background-color: #fafafa;
    padding:10px;
    margin:0 0 15px 0!important;
    display: block;
    font-weight: bold!important;
    color: #548643;
}


#eventsModal {
    padding: 3px !important;
    margin: 0;
}

#eventsModal form {
    padding: 0 !important;
    margin: 0;
}


#eventModalForm .tab-pane { padding: 15px;}

.listOtherEvents {
    padding: 15px;
    background-color: #fff;
    border:dotted 1px #dedede;
    font-size: 14px;
}


.listOtherEvents h3 {
    font-size: 17px;
    font-weight: 700;
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
    border-bottom: solid 1px #dedede;
}

.desactivatedEvent td {
    background-image: url('../img/stripe-bg.png');
    border: dashed 1px #dedede;
}


.notes-container {
    height: 100px!important;
    max-height: 100px!important;
    overflow: auto!important;
}

.fc-time-wrapper {
    display: flex;
    align-items: center;
    width: 100%;
}

.fc-time-wrapper .fc-time {
    flex-shrink: 0;
}

.fc-time-wrapper .first-employee {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-grow: 1;
    max-width: 100%;
    text-align: left;
    padding-left: 3px;
}


/* Configuration de la timeline en pixels */
:root {
    --timeline-start-hour: 6;      /* 06:00 - début de la journée */
    --timeline-end-hour: 19;       /* 19:00 - fin de la journée */
    --employee-column-width: 250px;
    --timeline-area-width: 1550px; /* 1800px - 250px (colonne employé) = 1550px pour la timeline */
    --total-wrapper-width: 1800px; /* Largeur totale du wrapper */
    --minutes-per-pixel: 1.987;    /* 1550px / 780min = 1.987 pixels par minute */
    --total-minutes: 780;          /* 13 heures * 60 = 780 minutes (6h-19h) */
    --default-start-hour: 8;       /* Heure de démarrage par défaut (08:00) */
}

/* Bouton toggle */
.scheduler-toggle-btn {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #4c6f94 0%, #5688bb 100%);
    border: none;
    border-radius: 50%;
    color: white;
    font-size: 24px;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
}

.scheduler-toggle-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 20px rgba(0,0,0,0.3);
}

/* Container principal */
.container-employees-availability {
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%) translateY(-20px);
    width: 100%;
    height: 100%;
    z-index: 49;
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    flex-direction: column;
    overflow: hidden;

}

.container-employees-availability.show {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

.employee-days-row {


}
.timeline-wrapper {
    width: 100%;
    display: flex;
    flex-direction: column;
    max-width: 1800px;
    overflow: hidden;
}

/* Header avec timeline fixe */
.header-timeline {
    display: flex;
    background: linear-gradient(135deg, #4c6f94 0%, #5688bb 100%);
    color: white;
    position: sticky;
    top: 0;
    z-index: 100;
    border-bottom: 2px solid rgba(255, 255, 255, 0.2);
    width: 100%;
}

.employee-header {
    width: var(--employee-column-width);
    min-width: var(--employee-column-width);
    padding: 15px 20px;
    font-weight: 600;
    border-right: 2px solid rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    background: rgba(0, 0, 0, 0.1);
}

.timeline-header {
    flex: 1;
    position: relative;
    height: 60px;
    background: linear-gradient(135deg, #4c6f94 0%, #5688bb 100%);
    overflow: hidden;
}

/* Graduations horaires principales */
.hour-mark {
    position: absolute;
    top: 0;
    height: 100%;
    border-left: 2px solid rgba(255, 255, 255, 0.3);
    display: flex;
    align-items: center;
    padding-left: 5px;
    font-weight: 600;
    font-size: 14px;
}

.hour-mark.major {
    border-left-color: rgba(255, 255, 255, 0.6);
    font-size: 16px;
}

/* Graduations des 15 minutes */
.quarter-mark {
    position: absolute;
    top: 0;
    height: 30px;
    border-left: 1px solid rgba(255, 255, 255, 0.15);
    width: 0;
}

/* Container avec scroll horizontal */
.employees-scroll-container {
    flex: 1;
    overflow-x: hidden;
    overflow-y: auto;
    background: #f8f9fa;
}

#employees-container {
    width: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 100vh;
}

#employees-container .employee-card {

    height:60px!important;
    min-height:60px!important;
    max-height:60px!important;
    overflow-y: auto!important;
    background-image: none!important;
    border-radius: 0!important;
    border-left: none!important;
}

.multi-day-timeline-content .employee-card {
    width:100%!important;
}


/* Ligne employé */
.employee-row {
    display: flex;
    border-bottom: 1px solid #e5e7eb;
    min-height: 60px;
    max-height: 60px;
    background: white;
    width: 100%;
}

.employee-row:nth-child(even) {
    background: #f9fafb;
}

.employee-row:hover {
    background: #f0f9ff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.employee-info {
    width: var(--employee-column-width);
    min-width: var(--employee-column-width);
}
.employee-info li {
    list-style: none;
}

.employee-checkbox {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: #4c6f94;
}

.employee-details {
    flex: 1;
}

.employee-name {
    font-weight: 600;
    color: #4f749c;
    margin-bottom: 4px;
    font-size: 16px;
}

.employee-stats {
    font-size: 12px;
    color: #6b7280;
    display: flex;
    gap: 10px;
}

/* Timeline container avec largeur fixe */
.timeline-container {
    flex: 1;
    position: relative;
    height: 60px;
    background: linear-gradient(90deg,
    transparent 0px,
    rgba(102, 126, 234, 0.05) 119px,
    transparent 238px,
    rgba(102, 126, 234, 0.05) 357px,
    transparent 476px,
    rgba(102, 126, 234, 0.05) 595px,
    transparent 714px,
    rgba(102, 126, 234, 0.05) 833px,
    transparent 952px,
    rgba(102, 126, 234, 0.05) 1071px,
    transparent 1190px,
    rgba(102, 126, 234, 0.05) 1309px,
    transparent 1428px,
    rgba(102, 126, 234, 0.05) 1550px
    );
    background-size: 119px 100%;
}

/* Lignes verticales pour marquer les heures */
.timeline-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(90deg, #e5e7eb 1px, transparent 1px);
    background-size: 119.23px 100%;
    pointer-events: none;
    z-index: 1;
}

/* Événements avec positionnement précis en pixels */
.appointment {
    position: absolute;
    top: 5px;
    height: 48px;
    border-radius: 6px;
    padding: 8px 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    border-left: 4px solid;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    z-index: 10!important;
    min-width: 10px;
    overflow: hidden;
}

.absence {
    height: 12px!important;
    z-index: 9999!important;
}



.appointment-title {
    font-weight: 600;
    font-size: 11px;
    color: inherit;
    white-space: nowrap;
    line-height: 1.2;
}


.appointment-replacement {
    font-weight: 300;
    font-size: 11px;
    color: inherit;
    white-space: nowrap;
    line-height: 1.2;
}


.appointment-time {
    font-size: 9px;
    opacity: 0.8;
    margin-top: 2px;
    line-height: 1;
}

/* Temps de trajet */
.travel-time {
    position: absolute;
    height: 25px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    cursor: pointer;
    transition: all 0.2s ease;
    z-index: 5;
    border: 1px dashed;
    font-weight: 500;
    min-width: 10px;
}

.travel-time:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    z-index: 15;
}

.travel-time.arrival {
    top: 65px;
    background: rgba(220, 252, 231, 0.9);
    border-color: #10b981;
    color: #047857;
}

.travel-time.departure {
    top: 65px;
    background: rgba(254, 243, 199, 0.9);
    border-color: #f59e0b;
    color: #d97706;
}

/* Types d'événements */
.appointment.office {
    background: #e9ecef;
    color: #495057;
    border-left-color: #6c757d;
}

.appointment.client {
    background: #4dabf7;
    color: #1971c2;
    border-left-color: #1971c2;
}

.appointment.server {
    background: #ffec99;
    color: #fab005;
    border-left-color: #fab005;
}

/* États de surbrillance */
.appointment.highlighted:not(.absence),
.travel-time.highlighted:not(.absence) {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
    z-index: 25 !important;
    border-width: 2px;
}

.employee-column-fixed .emp-info, .employees-container .emp-info {
    display: none;
}

.employee-column-fixed li {
    width: 100%;
}

.absence.highlighted  {
    cursor:default;
}

.appointment.highlighted {
    border-left-width: 6px;
}

/* Légende */
.legend {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding: 20px;
    background: #f8f9fa;
    border-top: 2px solid #e5e7eb;
}

.legend-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #495057;
}

.legend-color {
    width: 20px;
    height: 20px;
    border-radius: 4px;
    border-left: 4px solid;
}

/* Tooltip */
.tooltip {
    position: absolute;
    background: rgba(0, 0, 0, 0.9);
    color: white;
    padding: 12px 15px;
    border-radius: 8px;
    font-size: 13px;
    line-height: 1.4;
    max-width: 280px;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-50%) translateY(-100%);
    transition: all 0.2s ease;
    pointer-events: none;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.tooltip.show {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(-100%) translateY(-10px);
}

.tooltip::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 6px solid transparent;
    border-top-color: rgba(0, 0, 0, 0.9);
}

/* Responsive */
@media (max-width: 1200px) {
    :root {
        --employee-column-width: 200px;
    }
}

@media (max-width: 768px) {
    :root {
        --employee-column-width: 150px;
        --timeline-width: 500px;
    }

    .employee-name {
        font-size: 14px;
    }

    .employee-stats {
        font-size: 11px;
    }
}

.client-alerts-area {
    z-index: 0!important;
}
/* Filtres du scheduler */
.scheduler-filters {
    width: 100%;
    z-index: 51;
}

.filters-container {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.hour-cell:hover,
.dayItem:hover {
    background-color: rgba(59, 130, 246, 0.2)!important;
    z-index: 999999;
}

.filters-title {
    font-size: 18px;
    font-weight: 400;
    color: #4f749c;
    margin: 0 0 10px 0!important;

}


.date-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
}

.date-modal-content {
    background: white;
    border-radius: 12px;
    padding: 30px;
    max-width: 500px;
    width: 90%;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.date-modal-title {
    margin: 0 0 20px 0;
    font-size: 24px;
    color: #1e293b;
    text-align: center;
}

.date-modal-description {
    margin: 0 0 25px 0;
    color: #64748b;
    text-align: center;
    line-height: 1.5;
}

.date-modal-inputs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 25px;
}

.date-input-group {
    display: flex;
    flex-direction: column;
}

.date-input-label {
    display: block;
    font-weight: 600;
    color: #374151;
    margin-bottom: 8px;
}

.date-input {
    width: 100%;
    padding: 12px;
    border: 2px solid #e5e7eb;
    border-radius: 8px;
    font-size: 16px;
    transition: border-color 0.2s;
    box-sizing: border-box;
}

.date-input:focus {
    border-color: #3b82f6;
    outline: none;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.date-modal-buttons {
    display: flex;
    gap: 15px;
    justify-content: flex-end;
}

.date-modal-btn {
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.date-modal-btn-cancel {
    background: #f1f5f9;
    color: #64748b;
}

.date-modal-btn-cancel:hover {
    background: #e2e8f0;
    color: #475569;
}

.date-modal-btn-confirm {
    background: #3b82f6;
    color: white;
}

.date-modal-btn-confirm:hover {
    background: #2563eb;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.4);
}

@media (max-width: 600px) {
    .date-modal-inputs {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .date-modal-buttons {
        flex-direction: column;
    }
}

.employee-loading-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    border-radius: 4px;
}

.loading-spinner {
    width: 20px;
    height: 20px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid #3498db;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.employee-left-col {
    position: relative;
}

.employee-left-col .header-card, .employee-left-col .header-card * {
    border:none!important;
    box-shadow: none!important;
}


.employee-left-col * {
    box-shadow: none!important;
    padding:0!important;
}


.employee-left-col::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    border-bottom: 2px solid #dedede;
}

#genreMale,
#genreFemale {
    width: 24px!important;
}

#complete-client-card #genreMale,
#complete-client-card #genreFemale {
    right:-5px!important;
    top:0!important;
    width: 24px!important;
}
#complete-client-card .avatarImg {
    display:none;
}

#complete-client-card .avatar {
    min-width: 20px!important;
}




#client_infos_modal {
    border: 1px solid #b8e2c8;
    background-color: #d4f4dd;
    color: #28a745;
    padding: 5px;
    border-radius: 5px;
    margin-bottom: 20px;
}

.redAbsence {
    border: 1px solid #f5b8b8!important;
    background-color: #ffdada!important;
    color: #dc3545!important;
}




.employee-card,
li[data-employee] {
    cursor: pointer;
}

.filter-btn {
    padding: 6px 16px;
    background: #4c6f94;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.2s;
}

.filter-btn:hover {
    background: #699acd;
}

.filter-btn:active {
    transform: scale(0.95);
}

.employee-name {
    font-weight: 600;
    margin-bottom: 4px;
}
.employee-name.align-left {
    text-align: left;
}
.employee-name.align-right {
    text-align: right;
}

.employee-header-timeline {
    display:block;
    font-weight: 700;
    font-size: 16px;
    margin-bottom: 8px;
    text-align: left;
}


#fixed-column-container, #scrollable-column-container {
    width: 100%;
}

.row-selected {
}


#client-info-cell { display:block!important;}
.client-timeline-row .timeline-container {
    border-bottom:solid 5px #000!important;
}
.scrollable-rows-container {
    padding-top:60px;
}

.employee-loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.7);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 50;
}

.spinner {
    width: 28px;
    height: 28px;
    border: 3px solid #ccc;
    border-top-color: #3498db;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}


@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.appointment.shadow,
.client-appointment.shadow,
.client-appointment.shadow:hover {
    box-shadow: 0px 0px 17px 2px rgb(141, 25, 213) !important;
    z-index: 20000 !important;
}

.source-event-simple {
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    padding: 12px 16px;
    margin-bottom: 16px;
}

.simple-main {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
    font-size: 14px;
}

.simple-label {
    color: #6c757d;
    font-weight: 500;
}

.simple-employee {
    color: #212529;
    font-weight: 600;
}

.simple-arrow {
    color: #adb5bd;
}

.simple-info {
    font-size: 12px;
    color: #6c757d;
    padding-left: 0px;
}

.source-event-multiple {
    padding: 16px;
}

.employees-selection {
    display: flex;
    flex-direction: column;
    gap: 8px;
    background: #f9fafb;
    padding: 12px;
    border-radius: 6px;
    margin: 8px 0;
}

.employee-checkbox-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px;
    cursor: pointer;
    transition: background 0.2s;
    border-radius: 4px;
}

.employee-checkbox-item:hover {
    background: #f3f4f6;
}

.employee-replace-checkbox {
    width: 18px;
    height: 18px;
    cursor: pointer;
}

.employee-checkbox-item span {
    font-size: 13px;
    color: #374151;
    font-weight: 500;
}