/* main */
html,
body {
    /*    margin: 40px;*/
    margin: 0px;
    padding: 0px;
    min-height: 100%;

    /* we can get html content from db that has font-family st inline so we add important here*/
    font-family: 'Saira', sans-serif !important;
}
body {
    /*    background: linear-gradient(to bottom, #ffffff 0px, #ffffff 180px, #c1c6ca 100%);*/
    background: linear-gradient(to bottom, #ffffff 0px, #ffffff 180px, #c1c6ca 1000px, #c1c6ca 1000px);
}

/* jquery tablesorter override */
table.tablesorter tr th.header{
    background: none;
    background-color: #ffffff;
}

/* from BottstraReboot*/
*,
*::before,
*::after {
    box-sizing: border-box;
}
/* Fix ui-dialog resize when using box-sizing: border-box */
.ui-dialog, .ui-dialog-content {
    box-sizing: content-box;
}

input,
textarea,
select,
button{
    font-family: 'Saira', sans-serif;
    border: 1px solid black;
    border-radius: 0.25em;
    padding-left: 0.2em;
    padding-right: 0.2em;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
}

textarea:disabled,
input:disabled,
select:disabled {
    color: #000000;
    background-color: #ffffff;
    border: 1px solid darkgrey;
}

fieldset{
    border-color: #e0e0e0;
    border-style: solid;
    border-top: 1px solid #b3b3b3;
    border-bottom: none;
    border-right: none;
    border-left: 1px solid #b3b3b3;
    border-top-left-radius: 3px;
}

fieldset legend{
    font-weight: bold;
}

a {
    /*    color: #000000;*/
    text-decoration: none;
    color: #394a5a;
}
a:hover{
    color: #b3b3b3;
    /*    color: #616161;*/
}

textarea{
    width: 100%;
    resize: vertical;
}

/*jquery ui override*/
.ui-autocomplete {
    max-height: 100px;
    max-width: 600px;
    overflow-y: auto;
    /*     prevent horizontal scrollbar */
    overflow-x: hidden;
}

.ui-autocomplete.tall-autocomplete {
    height: unset;
    min-height: 27px;
    max-height: calc(100vh - 300px);
}

.ui-autocomplete li{
    font-size: 0.8em;
}

/**
 * Prevent long labels barely fitting from wrapping when hovered due to
 *   scrollbar showing up if max-height and overflow auto is used and there's
 *   just enough height (pixel-perfect) to fit items.
 * This is due to items having margin -1 when hovered and last item will end up
 *   outside container and cause scroll, which in turn will wrap long items,
 *   causing UI/UX problems (e.g. clicking the wrong item).
 * The simpler way to solve this would otherwise be to apply overflow hidden to
 *   ui-menu-item, but that removes the border completely.
 * So we remove negative margin and remove the border to get the same effect.
 * This also removes useless scrollbar on single matches.
 */
.ui-menu .ui-menu-item:last-child .ui-state-focus,
.ui-menu .ui-menu-item:last-child .ui-state-active {
    margin-bottom: 0;
    border-bottom: 0;
}

.ui-widget{
    font-family: 'Saira', sans-serif
}
.ui-widget-overlay {
    opacity: .3;
}

/* buttons */
:root {
    --button-background: #394a5a;
    --button-color: white;
    --button-border: #536576;
    --button-hover-background: #536576;
    --button-hover-color: white;
    --button-hover-border: #394a5a;
    --button-active-background: white;
    --button-active-color: #394a5a;
    --button-active-border: #536576;
}
.panel-header, .header {
    --button-background: white;
    --button-color: #394a5a;
    --button-border: #536576;
    --button-hover-background: #becad5 /* +50% luminance */ /* #536576 */;
    --button-hover-color: #394a5a; /* white */
    --button-hover-border: white;
    --button-active-background: #536576; /* #394a5a */
    --button-active-color: white;
    --button-active-border: white;
}

/* dialog icons */
.ui-button {
}
.ui-button:hover, .ui-button:focus {
}
.ui-button:active, .ui-button.ui-state-active:hover {
    background: var(--button-active-background);
    color: var(--button-active-color);
    border: 1px solid var(--button-active-border);
}
.ui-button:active .ui-button-icon, .ui-button.ui-state-active:hover .ui-button-icon {
    filter: brightness(0.5);
}
/* dialog icons end */

.ui-button {
    padding: 0 0.4em;
}
.ui-dialog .ui-button {
    padding: 0.4em 1em;
}
.ui-dialog .ui-dialog-titlebar .ui-button {
    padding: 1px;
}

.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited, a.ui-button, a:link.ui-button, a:visited.ui-button,
.ui-button:not(.ui-button-icon-only) {
    background: var(--button-background);
    color: var(--button-color);
    border: 1px solid var(--button-border);
}
/* .ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus, */
.ui-button:not(.ui-button-icon-only):hover, .ui-button:not(.ui-button-icon-only):focus {
    background: var(--button-hover-background);
    color: var(--button-hover-color);
    border: 1px solid var(--button-hover-border);
}
/* .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, */
a.ui-button:active,
.ui-button:not(.ui-button-icon-only):active, .ui-button:not(.ui-button-icon-only).ui-state-active:hover {
    background: var(--button-active-background);
    color: var(--button-active-color);
    border: 1px solid var(--button-active-border);
}
/* custom */
.ui-button:not(.ui-button-icon-only).ui-state-highlight {
    background: red;
    color: white;
    border: 1px solid darkred;
}
.ui-button:not(.ui-button-icon-only).ui-state-highlight:hover {
    background: darkred;
    color: white;
    border: 1px solid red;
}
.ui-button:not(.ui-button-icon-only).ui-state-highlight:active {
    background: white;
    color: red;
    border: 1px solid darkred;
}
/* custom end */
/* buttons end */
/*jquery ui override end*/

.company-header{
    background: linear-gradient(to right, #394a5a, #536576);
    text-align: center;
    padding-top: 10px;
}

.company-header img{
    height: 60px;
}

.header{
    background: linear-gradient(to right, #394a5a, #536576);
    padding-top: 10px;
    padding-right: 20px;
    padding-left: 20px;
}

.header .crm-logo{
    height: 35px;
}

.footer{
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 15px;
    position: fixed;
    bottom: 0;
    right: 0;
    /*    width: 100%;*/
    pointer-events: none;
    z-index: 32767;
}
.footer img{
    position: relative;
    height: 30px;
    float: right;
    opacity: 0.5;
}

.header-line{

    border-bottom: 1px solid #707c87;
    margin-top: -3px;
}

.header img{
    height: 25px;
    /*    margin-right: 30px;*/
    margin-top: 25px;
}

.header div{
}

.header .fa,
.header .far,
.header .fas{
    color: #ffffff;
}

.header .icon-holder{
    padding-top: 25px;
}

.header span{
    margin-left: 10px;
    margin-right: 10px;
    /*    font-size: 2em;*/
    cursor: pointer;
}

/*.header2 span:hover{
        font-size: 2.5em;
    font-weight: bold;
}*/

.header .icon-button{
    padding-bottom: 10px;
    /*    margin-bottom: -3px;
        z-index: 999;*/
}

.header .icon-button:hover{
    border-bottom: 2px solid #ffffff;
}

.header .icon-button.selected{
    border-bottom: 3px solid #f60e12;
    /*    border-bottom: 4px solid #000000;*/
}


.wrapper {
    min-height: 100%;
}

.content {
    font-size: 0.8em;
}

textarea{
    font-size: 1em;
}




.shadow {
    box-shadow:0px 0px 5px rgba(0, 0, 0, 1);
}



/* panel */
.panel-header {
    /*    grid-area: panel-header;*/
    margin-bottom: 5px;
    /*    background-color: #394b5c;*/

    padding: 0px 30px;
    background: linear-gradient(to right, #394a5a, #536576);

}

.panel-header .panel-header-menu{
    padding: 20px 0px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;

    color: #ffffff;
}

.panel-header .panel-header-menu .header-menu-spacer{
    /*    display: inline-block;*/

    margin-left:3px;
    margin-right: 5px;
    border-left: 1px solid #ffffff;
    border-right: 1px solid #ffffff;
}

.panel-header .panel-header-menu .panel-title-holder{
    /*    color: #ffffff;*/
    font-size: 1.3em;
}

.panel-header .panel-header-menu .panel-menu-text-holder{
    font-size: 1.2em;
    font-weight: bold;
}

.panel-header .panel-header-icons{
    color: #ffffff;
}

.panel-content {
    grid-area: panel-content;
    padding: 0px 20px 10px 20px;
}

/* panel */

.panel-header .panel-header-buttons{
    padding-left: 10px;
}
/* panel with sub menu*/
.page-panel .page-panel-content .panel-header-buttons{
    padding-left: 17px;
}

.page-panel .page-panel-content .panel-header-buttons .panel-button,
.panel-header .panel-header-buttons .panel-button{
    background-color: #c9cdd1;
    background: linear-gradient(180deg, #c9cdd1 50%, #acb3b9);
    min-width: 150px;
    text-align: center;

    padding: 5px;
    cursor: pointer;
    border-top: 1px solid #b6b7ba;
    border-left: 1px solid #b6b7ba;
    border-right: 1px solid #b6b7ba;

    transform: skewX(40deg);
    border-top-right-radius: 5px;


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

.page-panel .page-panel-content .panel-header-buttons .panel-button:first-child,
.panel-header .panel-header-buttons .panel-button:first-child {
    border-left: none;
}
.page-panel .page-panel-content .panel-header-buttons .panel-button .hide-skew,
.panel-header .panel-header-buttons .panel-button .hide-skew {
    position: absolute;
    left: 0;
    top: 0;
    background-color: #c9cdd1;
    background: linear-gradient(180deg, #c9cdd1 50%, #acb3b9);
    height: 32px;
    width: 35px;
    margin-top: -1px;
    margin-left: -17px;
    transform: skewX(-40deg);
    border-top-left-radius: 5px;
    border-top: 1px solid #b6b7ba;
    border-left: 1px solid #b6b7ba;
}


.page-panel .page-panel-content .panel-header-buttons .panel-button.horizontal,
.panel-header .panel-header-buttons .panel-button.horizontal{
    float:left;
}


.page-panel .page-panel-content .panel-header-buttons .panel-button.selected,
.page-panel .page-panel-content .panel-header-buttons .panel-button.selected .hide-skew,
.panel-header .panel-header-buttons .panel-button.selected,
.panel-header .panel-header-buttons .panel-button.selected .hide-skew{
    background: none;
    background-color: #ffffff;
    /* color should be same as content-border */
}

.page-panel .page-panel-content .panel-header-buttons .panel-button.selected:hover,
.panel-header .panel-header-buttons .panel-button.selected:hover{
    cursor: default;
}


.page-panel .page-panel-content .panel-header-buttons .panel-button .button-text,
.panel-header .panel-header-buttons .panel-button .button-text{
    transform: skewX(-40deg);

}

.page-panel{
    /*    background-color: #ffffff;*/
    background-color: #fbf0d0;
    margin-top: 20px;
    margin-left: 10px;
    margin-right: 10px;

    border-top: 10px solid #788897;

    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

.page-panel .page-panel-title{
    border-bottom: 1px solid #cfcfcf;
    border-left: 1px solid #cfcfcf;
    border-right: 1px solid #cfcfcf;
    padding: 10px;

}

.page-panel .page-panel-title .title-text{
    font-weight: bold;
}

.page-panel .page-panel-content{
    border-left: 1px solid #cfcfcf;
    border-right: 1px solid #cfcfcf;
    border-bottom: 1px solid #cfcfcf;

    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;

    padding: 10px;
}

.styled-select {
    background: url("../images/15xvbd5.png") no-repeat 96% 0;
    height: 29px;
    overflow: hidden;
    width: 240px;
}

.styled-select select {
    background: transparent;
    border: 1px solid #e0e0e0;
    font-size: 14px;
    height: 29px;
    padding: 5px; /* If you add too much padding here, the options won't show in IE */
    width: 268px;
}

.semi-square {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

/*.pixle-left {
    width: 15px;
    height: 15px;
    float: left;
}
.pixle-left:hover{
    opacity: 0.7;
    cursor: pointer;
}

.pixle-right {
    width: 15px;
    height: 15px;
    float: right;
}
.pixle-right:hover{
    opacity: 0.7;
    cursor: pointer;
}*/

.left{
    float: left;
}

.right{
    float: right;
}

.hidden{
    display: none;
}

.visible{
    display: block;
}

.panel-bar{
    margin: 5px;
}


.sidebar {
    grid-area: sidebar;
}

/*.header2 {
    grid-area: header2;
}*/


.background-black{
    background-color: #221f1f;
}


.custom-button{
    padding: 2px 6px;
    ;
    border: 1px solid #b3b3b3;
    background-color: #e6e6e6;
    border-radius: 3px;
    display: inline-block;
}

.custom-button:hover{
    background-color: #f0f0f0;
    cursor: pointer;
}
.custom-button-hover:hover{
    background-color: #d9d9d9;
    cursor: pointer;
}

.custom-input{
    /*    border: none;
        border-bottom: 1px solid */
}

.custom-input:disabled{
}

.input-date{
    width: 100px;
}
.input-lg{
    width: 100%;
}

.custom-dialog{
    font-size: 0.8em;
}

.custom-dialog .ui-dialog-titlebar{
    background: linear-gradient(to right, #394a5a, #536576);
    color: #ffffff;
}

.custom-dialog .ui-widget-header{
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    border-top: none;
    border-left: none;
    border-right: none;
}
.custom-dialog.ui-dialog{
    padding: 0px;
}

.custom-dialog .ui-dialog-titlebar-buttonpane > a {
    margin-right: 5px;
}

.tooltip-wrapper{
    font-size: 0.8em;
}

.tooltip-wrapper a{
    color: #0000f0;
}

.tooltip-wrapper a:hover{
    color: #b3b3b3;
}


.search-holder{
    padding-top: 4px;
    padding-left: 4px;
    padding-right: 4px;
    padding-bottom: 4px;
    background-color: #808080;
    margin-right: 1px;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

.search-holder input{
    border: none;
}

.search-calendar-field{
    background-color: #d9d9d9;
    padding: 2px;

}
.search-calendar-field input{
    border: none;
    width: 80px;
}

.search-calendar-field span:hover{
    cursor: pointer;
}

.my-tooltip{
    padding: 2px;
    font-size: 0.8em;
    line-height: 1em;
}
/* Has to be "global" since used in jQuery UI tooltips */
.ui-tooltip .calendar-tooltip-buttons {
    margin-top: 6px;
    margin-bottom: 2px;
}
/******************************/

.toast {
    display:none;
    width:200px;
    height:20px;
    height:auto;
    position:absolute;
    z-index: 9999;
    left:50%;
    margin-left:-100px;
    bottom:10px;
    background-color: #d9d9d9;
    color: #000000;
    font-size: 0.9em;
    padding:10px;
    text-align:center;
    border-radius: 2px;
    -webkit-box-shadow: 0px 0px 24px -1px rgba(56, 56, 56, 1);
    -moz-box-shadow: 0px 0px 24px -1px rgba(56, 56, 56, 1);
    box-shadow: 0px 0px 24px -1px rgba(56, 56, 56, 1);
}

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

.long-input{
    width: 100%;
    box-sizing: border-box; /* width includes border and padding */
}
.table-lg{
    width: 100%;
    border-collapse: collapse;
}

.td-right{
    text-align: right;
    padding-right: 4px;
}

.table-striped {
    border-collapse: collapse;
}
.table-striped th, .table-striped td {
    padding: 3px; /* 1px + 2px remove border-spacing */
}
.table-striped > thead > * {
    background-color: #d6d6d6;
}
.table-striped > :not(thead):not(tbody):not(tfoot):nth-child(odd),
.table-striped > tbody > :nth-child(even) {
    background-color: #e6e6e6;
}
.table-striped > :not(thead):not(tbody):not(tfoot):hover,
.table-striped > tbody > :hover {
    background-color: #d6d6d6;
}
.table-striped > .selected,
.table-striped > tbody > .selected {
    background-color: #c6c6c6;
}
.table-striped > .selected:hover,
.table-striped > tbody > .selected:hover {
    background-color: #b6b6b6;
}
.table-striped .sortable:hover {
    background-color: #c6c6c6;
}
.sortable{
    white-space: pre;
    cursor: pointer;
}

.green{
    color: #00ff00;
}

.dark-green{
    color: #009900;
}

.red{
    color: #c00000;
}

.blue{
    color: #0000ff;
}

.yellowish{
    color: #f5af14;
}

.icon-hover{
    margin-left: 5px;
    margin-right: 5px;
    cursor: pointer;
}

.icon-hover:hover{
    opacity: 0.5;
}
.icon-hover.disabled{
    cursor: default;
}

.icon-hover.disabled:hover{
    opacity: 1;
}

.icon-column {
    width: 25px;
}
.short-column {
    width: 0%;
    white-space: nowrap;
}

.customer-left-menubar-title-holder {
    padding-left: 10px;
    padding-top: 5px;
    font-weight: bold;
    font-size: 1.2em;
}

.table-timereg-sum{
    border-collapse: collapse;
    /*background-color: #ffffff;*/
}
.table-timereg-sum tr{
    border-bottom: 1px solid #000000;
}
.table-timereg-sum td{
    padding-right: 5px;
}
.table-timereg-sum td.text-cell{
    display: inline-block;
    /*width: 180px;*/
}
.table-timereg-sum td.number-cell{
    text-align: right;
}
.timereg-sum-tooltip {
    max-width: unset;
}

.timreg-post{
    width: 100%;
    /*border: 1px solid #e0e0e0;*/
    margin: 5px 0px;
    word-wrap: break-word;
    border-radius: 3px;
}

.timreg-post .timereg-headline{
    background-color: #dadada;
    padding: 0px 5px;
    border: 1px solid #dbd1be;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}
.timreg-post .timereg-headline .timereg-title{
    width: 80%;
    cursor: pointer;
}

.timreg-post .timereg-headline .report-date{
    display: inline-block;
    width: 80px;
}
.timreg-post .timereg-headline .rid-date{
    display: inline-block;
    width: 65px;
}
.timreg-post .timereg-headline span{
    margin-top: 4px;
    margin-right: 5px;
}

.timreg-post .timereg-content{
    padding-left: 5px;
    background-color: white;
    border-top: 0.1px solid #e0e0e0; /* hack */
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    border-left: 1px solid #e0e0e0;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
}

.timreg-post .timereg-content.collapsed{
    max-height: 55px;
    overflow: hidden;
    word-break: break-word; /* Break non-breaking spaces from JProj */
}

.time-report-holder{
    background-color: #ffffff;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    border-left: 1px solid #e0e0e0;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    padding-left: 5px;
}
.time-report-holder .time-report-row{
    display: flex;
}

.time-report-holder .report-type{
    width: 10%;
}
.time-report-holder .report-text{
    width: 50%;
}
.time-report-holder .report-time{
    width: 20%;
}
.time-report-holder .report-price{
    width: 20%;
}

#workOverlaySpinner{
    position: fixed; /* Sit on top of the page content */
    display: none; /* Hidden by default */
    width: 100%; /* Full width (cover the whole page) */
    height: 100%; /* Full height (cover the whole page) */
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.5); /* Black background with opacity */
    z-index: 2147483647; /* Specify a stack order in case you're using a different order for other elements */
    cursor: wait; /* Add a pointer on hover */
}

#workOverlaySpinner .work-overlay-spinner{
    position: absolute;
    left: 50%;
    top: 50%;
    height:60px;
    width:60px;
    margin:0px auto;
    -webkit-animation: work-rotation .6s infinite linear;
    -moz-animation: work-rotation .6s infinite linear;
    -o-animation: work-rotation .6s infinite linear;
    animation: work-rotation .6s infinite linear;
    border-left:6px solid rgba(0,174,239,.15);
    border-right:6px solid rgba(0,174,239,.15);
    border-bottom:6px solid rgba(0,174,239,.15);
    border-top:6px solid rgba(0,174,239,.8);
    border-radius:100%;
}
@-webkit-keyframes work-rotation {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(359deg);
    }
}

@-moz-keyframes work-rotation {
    from {
        -moz-transform: rotate(0deg);
    }
    to {
        -moz-transform: rotate(359deg);
    }
}

@-o-keyframes work-rotation {
    from {
        -o-transform: rotate(0deg);
    }
    to {
        -o-transform: rotate(359deg);
    }
}

@keyframes work-rotation {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(359deg);
    }
}
