/* Add here all your CSS customizations */
body{
    font-family: 'Montserrat';
}

.noselect {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}

.menu-search {
    margin-top: -4px;
    background-color:#ecedf0;
    width: 75%;
}

.dataTables_filter label{
    width:100%!important;
}

/*Igualar alturas del texto de los placeholders*/
.select2-container--bootstrap .select2-search__field::placeholder {   
    line-height: 36px!important;
}

/******CALENDAR************/

.calendar-searcher{
    height: 70px;
}


.zitelia-slot{
    float:left;
    margin-bottom: 10px;
    height:40px;
    padding-left: 0px;
    padding-right: 0px;
}

.zitelia-slot a{
    height:100%;

}

.zitelia-slot-admin{
    float:left;
    margin-bottom: 5px;
    height:50px;
    padding-left: 0px;
    padding-right: 0px;
}

.zitelia-slot-admin a {
    height: 100%;

}

.zitelia-slot-admin  .fc-event-title{
    line-height: 20px !important;
    font-size: 12px !important;
}

.zitelia-owner{
   /* border-bottom: 5px solid black;;*/
}

.triangle-down {
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid white;
    position: absolute;
    left:50%;
    transform: translateX(-50%);
    top:-1px;
}

.zitelia-competence{
    right:-8px;
    top:-5px;
    height: 20px;
    width: 20px;
    border:1px solid black;
    border-radius:100%;
    padding:5px;
    position: absolute;
    line-height:7px;
    color:white;
    font-weight: bold;
    background-color:red;
    text-align: center;
}

.zitelia-partner{
    right:-5px;
    bottom:-1px;
    height: 20px;
    width: 20px;
   /* border:1px solid black;*/
    border-radius:100%;
    padding:5px;
    position: absolute;
    line-height:9px;
    color:white;
    font-weight: bold;
  /*  background-color:#86ff77;*/
    text-align: center;
}

.fc .fc-daygrid-event .fc-event-title{
    line-height: 40px;

}

.fc-event-time{
    line-height: 40px;
}

td.fc-day{
    height: 100px !important;
}

.fc-day-today{
    background-color: inherit !important;
}

.fc-day-today .fc-daygrid-day-number{
    font-weight: bold !important;
    color:#9e4d3f !important;

}

.festivo .fc-event-main-frame{
    height: 100%;
}

.festivo .fc-event-title-container{

    height: 100%;
    min-height: 100%;
    display: flex;
    align-items: center;
}

.zitelia-title{
    font-weight: bold;
    font-size: 15px;
    text-align: center;
    width: 100%;
}

.intermitente{

     box-shadow: 0px 0px 20px;
     animation: infinite resplandorAnimation 2s;

 }

.effect-background{

    background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);
    background-size: 400% 400%;
    animation: gradient 15s ease infinite;

}

.fc-daygrid-day-bg{
    height: 100%;
}

.fc-daygrid-day{
    cursor: pointer;
}

.fc-bg-event{
    height: 100%;
}

.fc-bg-event .fc-event-title{
    color:black !important;
    text-transform: uppercase;
}

.fc-daygrid-day-number{
    font-size: 1.2em;
}


@keyframes resplandorAnimation {
    0%,100%{
        box-shadow: 0px 0px 20px;
    }
    50%{
        box-shadow: 0px 0px 0px;

    }

}

@keyframes gradient {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

.header-notes{
    left: 40px !important;
}

/***MODAL*********/


.mfp-content {
    height:95%;
}

#modalFull{
    height: 94%;
}

#modalFull .card{
    height: 100%;
}

.nav-tabs{
    display:inline-flex;
}

.nav-tabs li{
    margin-right: 10px;
    list-style-type:none;
}

.tab-owner{
    position: relative;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid white;
    left:50%;
    transform: translateX(-50%);
    top:0px;
    float: left;
}

.data-sheet-zitelia{

}


.img-frame{
    border: 2px solid black;
    overflow:hidden ;
    border-radius: 100%;
    width: 40px;
    height: 40px;
    margin: 0 auto;
}
@media(max-width: 320px){
    .header-notes {
        left: 18px !important;
    }

    #toggle-notes span {
        width: 68% !important;
    }
}

@media(max-width: 576px){
    #select-route > .card-body{
        padding-left: 0px;
        padding-right: 0px;
    }

    #partners > .card-body{
        padding-left: 0px;
        padding-right: 0px;
    }

    #collapse1Three > .card-body{
        padding-left: 0px;
        padding-right: 0px;
    }

    #collapse1Three .tab-content{
        padding-left: 0px;
        padding-right: 0px;
    }

    .fc-col-header-cell a.fc-col-header-cell-cushion {
        font-size: 10px;
    }

    .zitelia-title{
        font-size: 10px;
    }

    .zitelia-competence{
        height: 10px;
        width: 15px;
        line-height: 0px;
        font-size: 8px;
        padding: 5px 3px;
    }

    .zitelia-partner{
        height: 10px;
        width: 10px;
    }

    .zitelia-slot{
        height: 30px;
    }

    .triangle-down{
      border-left: 5px solid transparent;
      border-right: 5px solid transparent;
    }

    .fc .fc-daygrid-event .fc-event-title {
        line-height: 30px;
    }

    .fc-toolbar-title{
        font-size: 16px !important;
    }

    .fc-dayGridWeek-button{
        font-size: 11px !important;
    }
    .fc .fc-toolbar h2::before{
        font-size: 18px;
        top:0px;
        margin-right: 5px;
    }

    .festivo .fc-event-title{
        font-size: 8px !important;
        line-height: 12px;

    }

    .header-places {
        padding: 1px 3px  !important;
        font-size: 9px;
    }

    /*.header-places i{
        display: none;
    }*/
    .header-notes{
        left: 20px !important;
    }

    .span-notes{
        left: 3px !important;
    }


    .header-places i.fa-calendar-check{
        display: none;
    }

    .zitelia-partner {
        right: 3px;
        bottom: 7px;
        font-size: 9px;
    }
    .spn-fullname {
        margin-bottom: 0px !important;
        font-size: 5px !important;
        margin-top: -20px !important;
    }

    #div-route-selected label{
        font-size: 0.60rem ;
    }


}


@media (min-width: 768px) and (max-width: 1024px) {

    .zitelia-title{
        font-weight: bold;
        font-size: 13px;
    }

    #toggle-notes span {
        width: 82% !important;
    }

}





/*
  ##Device = Tablets, Ipads (landscape)
  ##Screen = B/w 768px to 1024px
*/

@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {

    /* CSS */
    .zitelia-title{
        font-weight: bold;
        font-size: 13px;
    }
}


.table thead tr th.actions-cell,
.table.table-condensed tbody tr td.actions-cell {
    max-width: 75px !important;
    width: 75px !important;
    min-width: 75px !important;
}


.actions-cell i {
    cursor: pointer;
}

.form-group{
    padding-top: 10px !important;
    margin-bottom: 10px !important;
}

.select2-container--bootstrap .select2-selection--multiple {
    height: auto !important;
    padding-bottom: 5px !important;
}

/****** MODAL CALENDAR ***********/

#modalSelectRoute .close{
    color: white;
}

#modalDetailDay .close{
    color: white;
}

#modalError .close{
    color: white;
}

/****** MODAL CALENDAR SELECCIONA RUTA ***********/


.datasheet-route{
    height: 60px;
    border: 1px solid #dddddd;
    border-radius: 10px;
    overflow: hidden;
    padding-right: 14px;
    padding-left: 0px !important;
}

.selected .datasheet-route{
    height: 60px;
    border: 3px solid black;
    border-radius: 10px;
    overflow: hidden;
    padding-right: 14px;
}

.datasheet-route .type-route{
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    line-height: 35px ;
    font-size: 18px ;
    color: black;
    border-right: 1px solid white;
    text-align: center;
    padding-left:1px;
    padding-right:1px;
}

.datasheet-route .name-route{
    padding: 0 0px 0px 10px;
    text-align: center;
  /*  line-height: 35px ;*/
    font-size: 18px ;
    color: black;
}

.datasheet-route .num-places-route{
    padding: 10px;
    text-align: center;
    line-height: 35px ;
    font-size: 18px ;
    color: black;

}

.datasheet-route .num-places-route span{

}

.selected > div{
    background-color:lightblue;
}

button > i{
    color: white !important;
}




html .featured-box-primary .icon-featured {
    background-color: white;
}

.icon-featured {
    display: inline-block;
    font-size: 0;
    margin: 10px 0 10px 0;
    width: 70px;
    height: 70px;

    border-radius: 50%;
    text-align: center;
    overflow-x: hidden;
    z-index: 1;

}

.result-routes{
    max-height: 400px;
    overflow-y: auto;
}

.btn-filter-main{
    margin-top: 10px;
}

#div-route-selected label{
    padding-top: 5px;
}

#div-route-selected span{
    display: block;
    font-size: 12px;
    margin-top:-2px;

}

#div-route-selected{

    margin-left: 10px;
    margin-right: 10px;

    font-size: 22px;
    color: white;
    text-align: center;

    margin-top: 8px;

}

.btn-filter-modal{
    font-size: 12px;
    background-color: white !important;
    border-color: #336b6c #336b6c #234949;
    color: #FFF;
}

.btn-filter-modal.active{
    font-size: 12px;
    background-color: white !important;
    background-image: none !important;
    border-color: #234949 #234949 #122627 !important;
    box-shadow: 0 0 0 0.2rem rgba(51, 107, 108, 0.5) !important;
}

#btn-partner > i{
    color:green !important;
}

#btn-competence > i{
    color:red !important;
}

.ui-pnotify {
    z-index: 1000000;
}

#btn-show-partners.active{
    box-shadow: 0 0 0 0.2rem rgba(205, 154, 57, 1) !important;

}

#btn-unselected-select-route{
    background-color: lightgray !important;
    border-color: lightgray !important;
    box-shadow:none !important;
}

#btn-unselected-select-route.active{
    background-color: #336b6c !important;
    border-color: #336b6c #336b6c #234949 !important;
    box-shadow:none !important;
}

#btn-selected-select-route{
    background-color: lightgray !important;
    border-color: lightgray !important;
    box-shadow:none !important;
}

#btn-selected-select-route.active{
    background-color: #336b6c !important;
    border-color: #336b6c #336b6c #234949 !important;
    box-shadow:none !important;
}

#btn-unselected-select-route i{
    color: #333 !important;
}

#btn-unselected-select-route.active i{
    color: white !important;
}

#btn-selected-select-route i{
    color: #333 !important;
}

#btn-selected-select-route.active i{
    color: white !important;
}

#btn-unselected-select-day{
    background-color: lightgray !important;
    border-color: lightgray !important;
    box-shadow:none !important;
}

#btn-unselected-select-day i{
    color: #333 !important;
}

#btn-unselected-select-day.active{
    background-color: #336b6c !important;
    border-color: #336b6c #336b6c #234949 !important;
    box-shadow:none !important;
}

#btn-unselected-select-day.active i{
    color: white !important;
}


#btn-selected-select-day.active{
    background-color: #336b6c !important;
    border-color: #336b6c #336b6c #234949 !important;
    box-shadow:none !important;

}

#btn-selected-select-day.active i{
    color: white !important;
}

#btn-selected-select-day{
    background-color: lightgray !important;
    border-color: lightgray !important;
    box-shadow:none !important;
}

#btn-selected-select-day i{
    color: #333 !important;
}

#btn-partner{
    background-color: lightgray !important;
    border-color: lightgray !important;
    box-shadow: none !important;
    color:black !important;
}

#btn-partner.active{
    background-color: #275152 !important;
    background-image: none !important;
    border-color: #234949 #234949 #122627 !important;
    box-shadow: none !important;
    color:white !important;
}

#btn-competence.active{
    background-color: #275152 !important;
    background-image: none !important;
    border-color: #234949 #234949 #122627 !important;
    box-shadow: none !important;
    color:white !important;
}

#btn-competence{
    background-color: lightgray !important;
    border-color: lightgray !important;
    box-shadow: none !important;
    color:black !important;
}

#btn-show-partners{
    background-color: lightgray !important;
    border-color: lightgray !important;
    box-shadow: none !important;
    color:black !important;
}

#btn-show-partners.active{
    background-color: #275152 !important;
    background-image: none !important;
    border-color: #234949 #234949 #122627 !important;
    box-shadow: none !important;

}

#btn-show-partners i{
    color:#333 !important;
}

#btn-show-partners.active i{
    color:white !important;
}


.mark-partner{
    position: absolute;
    bottom: -3px;
    color: black;
    left: 5px;
    font-size: 12px;
}

.mark-owner{
    position: absolute;
    top: -1px;
    color: black;
    left: 5px;
    font-size: 12px;
}

.mark-holiday{
    position: absolute;
    top: -1px;
    color: black;
    right: 5px;
    font-size: 12px;
}

.mark-exclusive{
    position: absolute;
    bottom: -12px;
    color: black;
    right: 14px;
    font-size: 12px;
    font-weight: bold;
}

.border-exclusive{
    border-color: #cb0000 !important;
    border-width: 2px;
}

.fc-daygrid-day-frame{
    height: 100% !important;
}

#loading {
    width: 100%;
    height: 100%;
    top: 120px;
    left: 470px;
    position: fixed;
    display: block;
    opacity: 0.7;
    background-color: #fff;
    z-index: 99;
    text-align: center;
    height: 50px;
    width: 50px;
}

#loading-image {
    position: absolute;
    top: 100px;
    left: 240px;
    z-index: 100;
    height: 50px;
    width: 50px;
}

.header-places{
    position: absolute;
    left: 10px;
    top:2px;

    color: #fff;
    border-radius: 8px;
    padding: 2px 5px 2px 4px;
    z-index: 100;
}



.fc .table-bordered a {
    text-transform: capitalize;
}

.fc-toolbar-title{
    text-transform: capitalize;
}
.offset{
    background-image: linear-gradient(30deg, #ffdc28, #fff9d9) !important;
    border-top:1px solid #333;
}

.offset-before{
    /*background-image: linear-gradient(30deg, #95c0fb, #f0f6fe) !important;*/
    background: rgb(255,83,83) !important;
    background: linear-gradient(90deg,rgba(255,83,83,1) 0%, rgba(255,255,255,1) 100%) !important;
}

.information-partner h4{
    line-height: 1.5em;
}


#wait{
    display:none;
    position:absolute;
    top:50%;
    left:50%;
    z-index:1000;
}

@-webkit-keyframes line-scale-pulse-out {
    0% {
        -webkit-transform: scaley(1);
        transform: scaley(1);
    }
    50% {
        -webkit-transform: scaley(0.4);
        transform: scaley(0.4);
    }
    100% {
        -webkit-transform: scaley(1);
        transform: scaley(1);
    }
}

@keyframes line-scale-pulse-out {
    0% {
        -webkit-transform: scaley(1);
        transform: scaley(1);
    }
    50% {
        -webkit-transform: scaley(0.4);
        transform: scaley(0.4);
    }
    100% {
        -webkit-transform: scaley(1);
        transform: scaley(1);
    }
}

.line-scale-pulse-out > div {
    background-color: #336b6c;
    width: 4px;
    height: 35px;
    border-radius: 2px;
    margin: 2px;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    display: inline-block;
    -webkit-animation: line-scale-pulse-out 0.9s -0.6s infinite cubic-bezier(0.85, 0.25, 0.37, 0.85);
    animation: line-scale-pulse-out 0.9s -0.6s infinite cubic-bezier(0.85, 0.25, 0.37, 0.85);
}

.line-scale-pulse-out > div:nth-child(2),
.line-scale-pulse-out > div:nth-child(4) {
    -webkit-animation-delay: -0.4s !important;
    animation-delay: -0.4s !important;
}

.line-scale-pulse-out > div:nth-child(1),
.line-scale-pulse-out > div:nth-child(5) {
    -webkit-animation-delay: -0.2s !important;
    animation-delay: -0.2s !important;
}


.spn-fullname{
    margin-bottom: 0px;
    font-size: 8px;
    margin-top: -15px;
}

.tab-route-selected{
    font-weight: bold;
    margin-right:40px !important;
}

.tab-route-selected > a{

}

#options-routes input{
    vertical-align: middle;
}

#options-routes span.span-option{
    vertical-align: middle;
}


.DivToScroll{   
    background-color: #F5F5F5;
    border: 1px solid #DDDDDD;
    border-radius: 4px 0 4px 0;
    color: #3B3C3E;
    font-size: 12px;
    left: -1px;
    padding: 10px 7px 5px;
}

.DivWithScroll{
    height:120px;
    overflow:scroll;
    overflow-x:hidden;
}

.modal-selector{
    max-width:1024px!important;
}

.modal-datatable{
    max-width:1280px!important;
}

table.dataTable thead th.dt-checkboxes-select-all, table.dataTable tbody td.dt-checkboxes-cell{
    min-width:42px; 
    max-width:42px;
    padding-right:12px!important;
}


.fc-daygrid-day-top{
    background-color: #ddd;
}

.tabs-citas li{
    opacity: 0.5;
}

.fc-daygrid-day-events{
    margin-top:0.4em !important;
    padding-right: 5px;
    padding-left: 5px;
}

/*AVISOS  Y DOCUMENTS*/

.div-document{
    border: 1px solid #777;
    padding: 10px;
    border-radius: 10px;
    cursor: pointer;
}

.div-notice {
    border: 1px solid #777;
    padding: 10px;
    border-radius: 10px;
    cursor: pointer;
}

.div-no-visto{
    position: absolute;
    bottom: -5px;
    right: 15px;
    font-size: 18px;
    color: red;

}

.div-visto{
    position: absolute;
    bottom: -5px;
    right: 15px;
    font-size: 18px;
    color: green;

}

#modal-subject{
    max-height:150px;
}

#modal-content{
    max-height:500px;
    overflow-y:auto;
    min-height: 250px;
}

.modal-date{
    position: absolute;
    top: 75px;
    right: 20px;
    font-weight: bold;

}

.div-no-see{
    box-shadow: 0 0 20px #ff7676;
}

.div-see{
    box-shadow: 0 0 20px #caffa8;
}

.div-attachment{
    position: absolute;
    bottom: -5px;
    left: 15px;
    font-weight: bold;
}

#div-ajuntos{
    padding: 10px;
}

#div-ajuntos a{
    margin-right: 10px;
}

#div-ajuntos i{
    font-size:20px;
}



.div-suggestion {
    border: 1px solid #777;
    padding: 10px;
    border-radius: 10px;
    cursor: pointer;
}

/* Estilo para summernote - editor de texto enriquecido */
.note-editor button i {
    color:#333!important;
}

.custom-file-label::after{
    content: "Elegir";
}

/**FOOTER
*/

#footer {
    background: #212529;
    border-top: 0px !important;
    font-size: 0.9em;
    margin-top: 50px;
    padding: 0;

    position: relative;
    bottom: 0;
    width: 100% !important;
    clear: both;
    display: block;
}

#footer .footer-copyright {
    background: #1c2023;
}

#footer {
    font-size: 0.9em;
}

#footer .footer-copyright nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

#footer .footer-copyright nav ul li:first-child {
    border: medium none;
    padding-left: 0;
}
#footer .footer-copyright nav ul li {
    display: inline-block;
    line-height: 12px;
    margin: 0;
    padding: 0 8px;
    padding-left: 8px;
}

.ul-footer-login{
    list-style: none;
    margin: 0;
    padding: 0;
}

.ul-footer-login li{
    display: inline-block;
    line-height: 12px;
    margin: 0;
    padding: 0 8px;
    padding-left: 8px;
}



html .btn-type-document.btn-secondary:focus,
html .btn-type-document.btn-secondary.focus {
    background-color: #d5aa58 !important;
    border-color: #d7af62 #d7af62 #cd9a39  !important;
    color: #FFF;
}


.spn-laboratorio{
    margin-bottom: 0px !important;
    font-size: 8px !important;
    margin-top: -13px !important;
    padding-bottom: 5px;
}

.spn-linea-laboratorio{
    margin-bottom: 0px !important;
    font-size: 8px !important;
    margin-top: -6px !important;
}

.btn-remove-route{
    right:0px;
    top:5px;
    height: 30px;
    width: 30px;
    padding:5px;
    position: absolute;
    font-weight: bold;
    text-align: center;
}


#spn-email{
    font-size:12px;
}

/* Cookie banner */
.cookie-consent-banner { position: fixed; bottom: 0; left: 0; z-index: 2; box-sizing: border-box; width: 100%; display: none;background-color:white;  }
.cookie-consent-banner__inner { max-width: 960px; margin: 0 auto; padding: 32px 0; }
.cookie-consent-banner__copy { margin-bottom: 16px; }
.cookie-consent-banner__actions { }
.cookie-consent-banner__header { margin-bottom: 8px; font-family: sans-serif, arial; font-weight: normal; font-size: 16px; line-height: 24px; }
.cookie-consent-banner__description { font-family: sans-serif, arial; font-weight: normal; color: #838F93; font-size: 16px; line-height: 24px; }

#toggle-notes span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 90%;
    display: inline-block;
    top: 5px;
    position: relative;
}


@media(max-width: 576px){
    #toggle-notes span {
        width: 79% !important;
    }
}


@media(max-width: 320px){
    #toggle-notes span {
        width: 68% !important;
    }
}


.color-primary i{
    color:#336b6c !important;
}

.Highlight {
    background-color: green!important;
    color: white!important;
}



/* Widget - Simple User List */
ul.simple-user-list {
    display: contents;
	list-style: none;
	padding: 0;
}

ul.simple-user-list li {
	margin: 0 0 20px;
}

ul.simple-user-list li .image {
	float: left;
	margin: 0 10px 0 0;
    width: 40px!important;
    height: 40px!important;
}

ul.simple-user-list li .img img {
    max-width: 40px!important;
    max-height: 40px!important;
}

ul.simple-user-list li .todo-actions{
    position: absolute;
    top: 14px;
    right: 0;
    bottom: 14px;
}

ul.simple-user-list li .title {
	color: #000011;
	display: block;
	line-height: 1.334;
}

ul.simple-user-list li .message {
	display: block;
	font-size: 11.2px;
	font-size: 0.7rem;
	line-height: 1.334;
}

ul li.status-available .profile-picture:after, ul li.status-warning .profile-picture:after, ul li.status-busy .profile-picture:after{
	display: none;
	position: relative;
	/*top: -4px;
	right: -4px;*/
	top:-40px;
	right:-25px;
	content: '';
	width: 15px;
	height: 15px;
	border: 2px solid #000;
	border-radius: 50%;
}

ul li.status-available .profile-picture:after {
	display: block;
	background-color: #1AAE88;
}

ul li.status-busy .profile-picture:after {
	display: block;
	background-color: #D2312D;
}

ul li.status-warning .profile-picture:after {
	display: block;
	background-color: #ffc107;
}

.q-toggle {
    min-width:30px!important;
    max-height: 25px;
}


