/*
    Reset bootstrap html font-size of 10px.
    Body is set to 14px so should not usually matter but fixes font-sizes set in rem (eg. react-datepicker).
*/
html {
    font-size: 100%;
}

/* This class is added when ajax operation starts and removed when it ends. */
.busy, .busy * {
    cursor: progress !important;
}

.pointer {
    cursor: pointer;
}

.rotate {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
}

.rotateCC {
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
}

.glyphicon {
    -webkit-transition: -webkit-transform 0.5s;
    -moz-transition: -moz-transform 0.5s;
    -o-transition: -o-transform 0.5s;
    -ms-transition: -ms-transform 0.5s;
}

.panel-title #caret {
    margin-left: 5px;
}

/* Hides / removes horizontal scroll bar from jqGrid */
.ui-jqgrid-bdiv {
    overflow-x: hidden !important;
}

/* Fixes jqGrid paging and navigation input issue. */
.ui-jqgrid .ui-pg-input {
    height: 100% !important;
}

/* Fixes color in sub grid add buttons (links) */
.ui-widget-content a.btn-success {
    color: #fff;
}

.ui-datepicker {
    z-index: 9999 !important;
}

.ui-datepicker select {
    color: black;
}

.ui-datepicker select {
    color: initial;
}

.modal .ui-draggable .modal-header {
    cursor: pointer;
}

.margin-bottom-md {
    margin-bottom: 1em;
}

.margin-top-md {
    margin-top: 1em;
}

.margin-left-md {
    margin-left: 1em;
}

.margin-right-md {
    margin-right: 1em;
}

.spinner {
    background: url(56d4c7ce2d3591a021073d07a6ea7342.gif) no-repeat left;
    padding-left: 20px;
}

.test-bg-white {
    background-image: url(data:image/png;base64,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);
    background-repeat: repeat;
}

.test-bg-grey {
    background-image: url(data:image/png;base64,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);
    background-repeat: repeat;
}

div.center-items {
    display: flex;
    align-items: center;
}

table.table > tbody > tr.center-items > td {
    vertical-align: middle;
}

.list-bordered > li {
    border-top: 1px solid #dddddd;

    /* Hackish */
    padding-top: 5px;
    margin-top: -5px;
}

.list-bordered > li:first-child {
    border-top: 0;
}

.list-striped > li:nth-child(even) {
    background-color: #f9f9f9;
}

#page-error-indicator {
    position: fixed;
    right: 0;
    margin-top: 5px;
    margin-right: 10px;
    font-weight: bold;
    z-index: 999;
}

#page-error-indicator button {
    margin-left: 5px;
}

#page-error-indicator.blink {
    animation-name: page-error-indicator-blink;
    animation-duration: 1s;
    animation-iteration-count: infinite;
}

@keyframes page-error-indicator-blink {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
    100% {
        opacity: 1;
    }
}

.prw-time-input-fixed-width {
    width: 75px;
}

.prw-date-input-fixed-width {
    width: 115px;
}

/* bootstrap 4 bwc */
.form-horizontal > .form-group > .control-label {
    text-align: right;
}

.control-label {
    font-weight: 700;
}

/**
 Form layout
*/

.prw > .btn,
.prw > div > .btn {
    margin-right: 5px;
}

.prw .formRow {
    display:            table-row;
}

.prw .formRow > * {
    display:            table-cell;
    vertical-align:     middle;
    padding:            3px;
}

.prw .formRow > label {
    min-width:          150px;
}

.prw .formRow > ul {
    list-style-type:    none;
    color:              #ff0000;
}

.prw .formRow input[type="text"],
.prw .formRow input[type="email"],
.prw .formRow textarea {
    min-width:          200px;
}

.prw .formRow select,
.prw .formRow .select2-container {
    width:              205px;
}

.prw > header {
}

.prw > header .formSubmit .formError {
    color:              #ff0000;
    margin-right:       5px;
}

.form-horizontal .form-group {
    margin-right:       -14px; /* fix for overflow */
}


.prw .collectionAnchor {
    font-size:          1.1em;
    color:              #5c2d88;
}

.prw .hiddenCollection {
    visibility:         hidden;
    position:           absolute;
    display:            block;
}

.prw .prototype {
    display:            none;
}


.prw .formRow input[type="text"].dateInput,
.prw .formRow input[type="text"].jqdate {
    color:              #5c2d88;
    width:              89px;
    min-width:          89px;
}

.prw .formRow label.required:after {
    content:            " *";
    color:              #ff0000;
}

.prw .dateInputReadonly {
    color:              #5c2d88;
    width:              80px;
    border:             0;
}

.prw .dateInputError {
    color:              #5c2d88;
    width:              80px;
    border:             2px solid #EEEE00;
}

/* kind of hack to contain file input within another button and have it clickable with container as display content */
div.fileinput-button > button {
    position:           relative;
    overflow:           hidden;
}

div.fileinput-button > button > input[type="file"] {
    position:           absolute;
    left:               -10pt;
    top:                -10pt;
    font-size:          30pt;
    opacity:            0;
}

div.fileinput-button > span.file-chosen {
    padding-left:       5pt;
}

.select2-offscreen, .select2-offscreen:focus, [data-init-select2]  {
    opacity:            0;
    width:              auto !important;
    height:             inherit !important;
    z-index:            -1;
}

.select2-default {
    color:              #555555 !important;
}

.select2-offscreen, .select2-offscreen:focus {
    clip: rect(0 0 0 0) !important;
    width: 1px !important;
    height: 1px !important;
    border: 0 !important;
    margin: 1.8em 0 0 40px !important;
    padding: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    outline: 0 !important;
    left: 0 !important;
    top: auto !important;
}

.form-inline.datetime-widget .form-control {
    width: 50px;
    text-align: center;
}
/* first child is sr-only div nowadays... */
.form-inline.datetime-widget .form-control:nth-child(2) {
    width: auto;
    text-align: left;
}

table.datatables.floatThead-table > thead {
    background-color: #FFF;
}

table.datatables.floatThead-table {
    margin-top: 0 !important; /* Override margin from dataTables.bootstrap.css. Fixes issue where the header shifts down on scroll */
}

.datatables > tfoot > tr > th,
.datatables > tfoot > tr > td {
    padding: 10px 8px; /* Same padding in footer as in table body. See jquery.dataTables.css. */
}

.datatables > tbody > tr > td > a,
.jqgrid .gridMain > tbody > tr > td > a {
    display: block;
}

.datatables td.border-right, .datatables th.border-right,
.jqgrid td.border-right, .jqgrid th.border-right {
    border-right: 1px solid #CCC;
}

table.dataTable thead th {
    background-image: none !important;
}

.multiForm li {
    list-style-type:    none;
    padding:            2px;
}

.multiForm li.edit {
    cursor:             pointer;
}

.multiForm li.edit:hover {
    background-color:   #cccccc;
}

.multiForm li:nth-child(odd) {
    background-color:   #eeeeee;
}

.multiForm li:nth-child(even) {
    background-color:   #dddddd;
}

.multiForm h4 {
    font-size: 1.1em;
    color: #5c2d88;
    font-weight: bold;
    margin-top: 15px;
    margin-bottom: 5px;
}

.multiForm ul[data-section] li {
    font-size: 1em;
    color: #5c2d88;
    padding: 0;
}

.multiForm ul[data-section] li form {
    font-size: 1em;
    margin: 10px;
}

.multiForm footer {
    display: block;
    clear: both;
}

.multiForm ul[data-section] {
	padding-left: 0;
}

.multiForm li[data-section] {
    border-bottom: 1px solid #5C2D88;
}

.multiForm li[data-section]:first-child {
    border-top: 1px solid #5C2D88;
}

.multiForm ul[data-section] > li {
    padding: 5px;
}

.multiForm li[data-section] {
    padding: 5px;
}

.multiForm ul[data-section]:not(.edit) div.header {
    border-bottom: 0 solid #5C2D88;
}

.multiForm li button {
    font-size: 0.9em;
}

.multiForm li.empty-message {
    display: none;
}

.multiForm li.empty-message:first-child {
    display: block;
}

.multiForm > button.append {
    margin-top: 5px;
    margin-bottom: 5px;
}

.ng-multi-form .header-controls > div {
    margin-left: 10px;
}

.ng-multi-form .header-controls > div:first-child {
    margin-left: 0;
}

.ng-multi-form ul.items > li {
    border-bottom: 1px solid #ddd;
    padding: 5px;
}

.ng-multi-form ul.items > li:first-child {
    border-top: 1px solid #ddd;
}

.ng-multi-form ul.items > li:nth-child(even) {
    background: #f6f6f6
}

.ng-multi-form ul.items > li {
    min-height: 1em;
}

.ng-multi-form ul.items > li .item-header:hover {
    cursor: pointer;
    text-decoration: underline;
}

.ng-multi-form.readonly ul.items > li .item-header:hover {
    cursor: auto;
    text-decoration: none;
}

/* used to display tab content only after everything has been initialized */
#tabs, #wizard {
    display: none;
}

#tabs.initialized, #wizard.initialized {
    display: block;
}

#tabs a.ui-tabs-anchor, #wizard a.ui-tabs-anchor {
    outline: 0;
}

#tabs > div > div.loader, .tab-pane > div.loader, #wizard > div > div.loader, .ajax > div.loader {
    background: url(e8bfeda23cc6f2cbc071a7367f4d71c2.gif) no-repeat left;
    left: 0;
    right: 0;
}

