body {
    margin: 0;
    padding: 0;
    background-color: #EEE;
}

/* global application */
body a {
    color: #10ABAE;
    text-decoration: none;
}
body a:hover {
    color: #12B8BB;
    text-decoration: none;
}

@media print {
    body {
        /* override for print */
        background-color: #FFFFFF;
    }

    .hide-on-print {
        display: none !important;
    }
}

/* structure */
#main-header {
    height: 80px;
    background-color: #FFF;
    border-bottom: 5px solid #10ABAE;
}

#header-logo {
    height: 100%;
    padding: 10px;
}
#header-logo img {
    height: 60px;
}

#header-session {
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 10pt;
}
#header-session  i {
    margin-left: 10px;
    margin-right: 2px;
}

#header-admin a {
    font-size: 10pt;
    color: #DDD;
    text-decoration: none;
}
#header-admin a:hover {
    color: #BBB;
    text-decoration: none;
}

#main-container {
    min-height: 240px;
    box-shadow: inset 0px 3px 3px #BBB;
    padding: 10px;
}

#main-navigation {
    margin-bottom: 15px;
}

#main-footer {
    padding-top: 5px;
    padding-bottom: 5px;
    text-align: center;
    font-size: 10pt;
}

/* global classes */
.font-green { color: #10ABAE; }
.font-yellow { color: #FCC630; }
.font-red { color: #E4043A; }
.font-grey { color: #BBBBBB; }
.font-dark { color: #232323; }
.font-light { color: #FFFFFF; }

.bg-green { background-color: #10ABAE; }
.bg-yellow { background-color: #FCC630; }
.bg-red { background-color: #E4043A; }
.bg-grey { background-color: #B5BDC0; }
.bg-dark { background-color: #232323; }
.bg-light { background-color: #FFFFFF; }

.put-inline {
    display: inline-block;
}
.put-content-inline {
    display: flex;
    flex-direction: row;
}

.allow-crlf {
    white-space: pre-line;
}

.print-prevent-break {
    break-inside: avoid;
}
.print-break-page {
    page-break-before: always;
}

.big-message {
    margin-top: 30px;
    text-align: center;
    font-size: 14pt;
    font-style: italic;
}
.big-message span {
    margin-left: 5px;
}

.jn-card {
    padding: 10px;
    box-shadow: 0 2px 1px -1px rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 1px 3px 0 rgba(0, 0, 0, 0.12);
    border-radius: 4px;
    margin-bottom: 15px;
}

.jn-card-header {
    background-color: #f7f7f7;
    border-bottom: 1px solid #dddddd;
    border-radius: 4px;
    margin-bottom: 10px;
    padding: 5px 10px;
    font-weight: bold;
}

.jn-datatable-row-deleted {
    background-color: #F7DCC8 !important;
    color: #AAA !important;
    font-style: italic;
}
.jn-datatable-row-info, .jn-datatable-cell-info {
    background-color: #FCBE99 !important;
}
.jn-datatable-row-alert, .jn-datatable-cell-alert {
    background-color: #FF8E8E !important;
}

.jn-traffic-light-red {
    background-color: #FFACA2 !important;
}
.jn-traffic-light-orange {
    background-color: #FDD891 !important;
}
.jn-traffic-light-green {
    background-color: #ACE0AD !important;
}

.jn-row-disabled {
    background-color: #f2f2f2 !important;
    color: #AAA !important;
    font-style: italic;
}
.jn-row-ok {
    background-color: #D6FFED !important;
}
.jn-row-error {
    background-color: #FF8E8E !important;
}
.jn-row-warning {
    background-color: #FDF6DF !important;
}
.jn-row-alert {
    background-color: #F7DBBA !important;
}

.jn-cell-alert-highlight {
    background-color: #FFEAE7 !important;
    color: #BB0000 !important;
    font-weight: 500;
}

.jn-cell-true {
    background-color: #D6FFED;
    color: #333333;
}
.jn-cell-false {
    background-color: #F7CDC8;
    color: #333333;
}

.jn-male {
    color: #0099C7;
}
.jn-female {
    color: #CF8EB1;
}

.jn-section-info-highlight {
    background-color: #CAE1E1;
    border-radius: 15px;
    padding: 5px;
    text-align:center;
}

.jn-section-warning {
    background-color: #FFE9D6;
    border-radius: 15px;
    padding: 5px;
    text-align:center;
    font-size: 10pt;
    font-style: italic;
}

.jn-section-title {
    font-size: 10pt;
    color: #10abae;
    text-transform: uppercase;
}

.jn-section-question {
    margin-top: 10px;
}

.jn-minor-info {
    font-size: 10pt;
    font-style: italic;
}

.jn-scrollable-modal > div.ui-dialog-content {
    overflow: hidden auto;
    padding: 0px;
}
.jn-scrollable-modal-content {
    overflow: hidden auto;
    height: calc(80vh - 100px);
    padding: 12px;
}
.jn-scrollable-modal-content-alt {
    height: calc(80vh - 100px);
    padding: 12px;
}

.jn-media-modal > div.ui-dialog-content {
    background-color: #323639;
    overflow: hidden;
    height: 100%;
    padding: 0px;
}

.jn-resizable-texteditor {
    height: 100% !important;
}
.jn-resizable-texteditor div.ql-editor {
    resize: vertical;
    overflow: auto;
    height: 250px;
    min-height: 100px;
}
.ql-editor {
    font-family: inherit;
    font-size: 11pt;
}

.jn-readonly-texteditor {
    min-height: 80px;
}
.jn-readonly-texteditor div.ql-container {
    border: none;
}

@-moz-keyframes custom-spin {
    100% {
        -moz-transform: rotate(360deg);
    }
}
@-webkit-keyframes custom-spin {
    100% {
        -webkit-transform: rotate(360deg);
    }
}
@keyframes custom-spin {
    100% {
        -webkit-transform: rotate(360deg);
        transform:rotate(360deg);
    }
}

/* OVERRIDE PRIMEFACES STYLES */
body .ui-button, body .ui-overlaypanel-close {
    background: #10ABAE !important;
    border: 1px solid #10ABAE !important;
}
body .ui-button.ui-state-hover,  body .ui-overlaypanel-close.ui-state-hover {
    background: #0f989b !important;
    border-color: #0f989b !important;
}

body .ui-button.jn-btn-red {
    background-color: #BB0000 !important;
    border: 1px solid #800000 !important;
}
body .ui-button.ui-state-hover.jn-btn-red {
    background-color: #AA0000 !important;
    border: 1px solid #990000 !important;
}

body .ui-button.jn-btn-yellow {
    background-color: #BB9900 !important;
    border: 1px solid #9D8301 !important;
}
body .ui-button.ui-state-hover.jn-btn-yellow {
    background-color: #AF9001 !important;
    border: 1px solid #917801 !important;
}

.ui-menu {
    border: 1px solid #DDDDDD !important;
}
.ui-menubar,.ui-menu-child,.ui-menu {
    background: #F7F7F7 !important;
    border-radius: 5px !important;
    padding: 0 !important;
}
.ui-datatable .ui-datatable-header {
    background: #F7F7F7 !important;
    border: 1px solid #DDDDDD !important;
}
.ui-datatable thead th {
    background-color: #333333 !important;
    padding: 8px !important;
    text-align: center !important;
    color: #DDDDDD !important;
}
body .ui-datatable thead th.ui-state-active {
    background: #10ABAE !important;
}
body .ui-datatable thead th .ui-column-title {
    font-size: 10pt;
}
.ui-datatable .ui-paginator {
    background: #F7F7F7 !important;
    border: 1px solid #DDDDDD !important;
    padding: 0.5rem !important;
}
.ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-active {
    background: #10ABAE !important;
}

.ui-datatable .ui-datatable-data > tr > td {
    border: 1px solid #DDDDDD !important;
    padding: 5px !important;
}
.ui-datatable .ui-datatable-data > tr.ui-state-highlight {
    background: #10ABAE !important;
}
body .ui-datatable thead th .ui-sortable-column-badge {
    background: #333333 !important;
}

.ui-dialog .ui-dialog-titlebar {
    padding: 5px !important;
}

.ui-chkbox .ui-chkbox-box.ui-state-active {
    border-color: #10ABAE !important;
    background: #10ABAE !important;
}

.ui-button.rounded-button.ui-button-icon-only {
    background: #FFFFFF !important;
    border: none !important;
    width: 25px !important;
    height: 25px !important;
    margin: 0 2px !important;
    vertical-align: middle !important;
    color: #10ABAE !important;
}
.ui-button.rounded-button.ui-button-icon-only:not(:disabled):hover {
    background: #e6fcff !important;
    border: none !important;
}

.ui-selectonemenu-item.ui-state-highlight,
 .ui-selectlistbox-item.ui-state-highlight,
 .ui-autocomplete-item.ui-state-highlight,
 .ui-picklist-item.ui-state-highlight,
 .ui-treenode-label.ui-state-highlight,
 .ui-tabs-nav li.ui-tabs-header.ui-state-active,
 .ui-radiobutton .ui-radiobutton-box.ui-state-active {
    background: #10ABAE !important;
}

body .ui-selectonelistbox .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item > td,
 body .ui-selectmanymenu .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item > td {
    padding: 0.33rem 0.8rem;
}

body .ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item-group {
    background: #D6EBEB;
    padding: 0.33rem 0.8rem;
}

body .ui-tabs .ui-tabs-nav li.ui-tabs-header {
    padding: 6px 12px;
}
body .ui-tabs .ui-tabs-nav li.ui-tabs-header a {
    font-weight: normal;
}

body .ui-accordion .ui-accordion-header, body .ui-accordion .ui-accordion-header.ui-state-active {
    background-color: unset;
    padding: 6px 12px;
    color: #10ABAE;
}
body .ui-accordion .ui-accordion-header:hover, body .ui-accordion .ui-accordion-header.ui-state-active:hover {
    background-color: #10ABAE;
    border-color: #C8C8C8;
    color: #F2F2F2;
}
body .ui-accordion .ui-accordion-header.ui-state-active, body .ui-accordion .ui-accordion-header:focus {
    border-color: #C8C8C8;
    box-shadow: none;
}

body .ui-autocomplete-panel .ui-autocomplete-items .ui-autocomplete-item.ui-state-highlight {
    background: #007ad9;
    color: #ffffff;
}

body .ui-inputfield.ui-state-focus {
    border-color: #10ABAE;
}

body .ui-wizard .ui-wizard-step-titles .ui-wizard-step-title {
    padding: 8px 12px;
    font-size: 12pt;
}
body .ui-wizard .ui-wizard-step-titles .ui-wizard-step-title.ui-state-highlight {
    background-color: #10ABAE;
}
body .ui-wizard-content .ui-panel .ui-panel-content {
    border: none;
    padding: 15px 0px 5px 0px;
}

body .ui-steps .ui-steps-item .ui-menuitem-link .ui-steps-number {
    width: 25px;
    height: 25px;
    font-size: 12pt;
}
body .ui-steps .ui-steps-item.ui-state-highlight .ui-steps-number {
    background-color: #10ABAE;
    border-color: #10ABAE;
}
body .ui-steps .ui-steps-item .ui-menuitem-link .ui-steps-title {
    font-size: 12pt;
    font-style: italic;
}
body .ui-steps .ui-steps-item.ui-state-highlight .ui-steps-title {
    color: #10ABAE;
    font-style: normal;
}

body .ui-datepicker .ui-icon {
    text-indent: 0px;
}

body .ui-messages .ui-messages-error {
    padding: 8px;
    margin: 10px 0px;
    font-size: 10pt;
    font-weight: normal;
    font-style: italic;
}

body .ui-messages .ui-messages-info {
    background: #D6FFED;
    padding: 8px;
    margin: 10px 0px;
    font-size: 10pt;
    font-weight: normal;
    font-style: italic;
    color: #034b00;
}

body .ui-progressbar .ui-progressbar-value {
    background: #10ABAE !important;
}

body .ui-fileupload-filename {
    overflow: hidden;
    height: 35px;
    font-size: 10pt;
}
body .ui-fileupload-filename:not(:empty) {
    visibility: hidden;
    position: relative;
}
body .ui-fileupload-filename:not(:empty):after {
    visibility: visible;
    position: absolute;
    top: 6px;
    left: 6px;
    font-family: "Font Awesome 5 Free";
    font-size: 14pt;
    font-weight: 900;
    content: "\f110";/* f382 */
    -webkit-animation:custom-spin 2s linear infinite;
    -moz-animation:custom-spin 2s linear infinite;
    animation:custom-spin 2s linear infinite;
}
