:root {
    --app-form-input-height: 28px;
    --app-ui-selectonemenu-selection-padding-top: 5px;
    --app-ui-datatable-thead-th-height: 32px;
    --app-ui-datatable-tbody-td-height: 28px;
}

/* bootstrap */
.btn {
    font-size: 12px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    height: 32px !important;
}

.btn-primary {
    background-color: #005A9C !important;
    border-color: #005A9C !important;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: #004A7E !important;
    border-color: #004A7E !important;
}

.btn-outline-primary {
    color: #005A9C !important;
    background-color: #ffffff !important;
    border: 2px solid #005A9C !important;
}

.btn-outline-primary:hover {
    color: #004A7E !important;
    background: rgba(33, 150, 243, .04) !important;
    border: 2px solid #004A7E !important;
}

.btn-danger {
    background-color: #d32f2f !important;
    border-color: #d32f2f !important;
}

.btn-danger:hover,
.btn-danger:focus {
    background-color: #c02929 !important;
    border-color: #c02929 !important;
}

.btn-outline-danger {
    color: #d32f2f !important;
    background-color: #ffffff !important;
    border: 2px solid #d32f2f !important;
}

.btn-outline-danger:hover {
    color: #c02929 !important;
    background: rgba(211, 47, 47, .04) !important;
    border: 2px solid #c02929 !important;
}

.btn-group-sm > .btn, .btn-sm {
    padding: .25rem .9rem;
}

.form-control,
.form-select {
    border: 2px solid #CDD8EC !important;
    color: #374B59;
    -webkit-box-shadow: inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    box-shadow: inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    -webkit-transition: box-shadow 180ms, border 180ms;
    -moz-transition: box-shadow 180ms, border 180ms;
    transition: box-shadow 180ms, border 180ms;
}

.form-control:focus,
.form-select:focus {
    outline: none;
    -webkit-transition: none;
    -moz-transition: none;
    transition: none;
    -webkit-box-shadow: 0 0 0 2px rgb(205 216 236 / 50%), inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    box-shadow: 0 0 0 2px rgb(205 216 236 / 50%), inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    -webkit-box-shadow: 0 0 0 2px rgb(205 216 236 / 50%);
    box-shadow: 0 0 0 2px rgb(205 216 236 / 50%);
}

input.form-control-sm {
    font-size: 12px !important;
    height: var(--app-form-input-height) !important;
}

.form-select {
    border: 2px solid #CDD8EC !important;
    color: #374B59;
    -webkit-box-shadow: inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    box-shadow: inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    -webkit-transition: box-shadow 180ms, border 180ms;
    -moz-transition: box-shadow 180ms, border 180ms;
    transition: box-shadow 180ms, border 180ms;
}

.form-select:focus {
    outline: none;
    -webkit-transition: none;
    -moz-transition: none;
    transition: none;
    -webkit-box-shadow: 0 0 0 2px rgb(205 216 236 / 50%), inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    box-shadow: 0 0 0 2px rgb(205 216 236 / 50%), inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    -webkit-box-shadow: 0 0 0 2px rgb(205 216 236 / 50%);
    box-shadow: 0 0 0 2px rgb(205 216 236 / 50%);
}

.form-select-sm {
    font-size: 12px !important;
    height: var(--app-form-input-height) !important;
}

.collapsing {
    transition: 0s !important;
}

/*.g-1, .gy-1 {
    --bs-gutter-y: 5px !important;
}

.g-2, .gy-2 {
    --bs-gutter-y: 12px !important;
}*/

/* end bootstrap */

/* primefaces */
.ui-widget {
    font-family: "Noto Sans", arial, sans-serif !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
}

.ui-button.ui-state-focus {
    box-shadow: none !important;
}

.btn-primary .ui-button {
    background-color: #005A9C !important;
    border-color: #005A9C !important;
    font-weight: 500 !important;
    text-transform: uppercase;
}

.btn-primary .ui-button:hover,
.btn-primary .ui-button:focus {
    background-color: #004A7E !important;
    border-color: #004A7E !important;
}

.ui-button.ui-button-text-only .ui-button-text {
    padding: 5px 14px !important;
}

.ui-button.ui-button-text-icon-left .ui-button-text {
    padding: 5px 14px 5px 29px !important;
}

.ui-menu .ui-menu-list .ui-menuitem .ui-menuitem-link {
    padding: .50rem 1rem !important;
}

.ui-icon {
    font-size: 13px !important;
}

.ui-button.ui-button-text-icon-left .ui-icon {
    top: 57% !important;
}

body .ui-commandlink, body .ui-link {
    color: #215CA1;
    text-decoration: underline;
}

body .ui-commandlink:hover, body .ui-link:hover {
    color: #2196f3;
    text-decoration: underline;
}

.ui-commandlink.btn,
.ui-commandlink.btn:hover {
    text-decoration: none !important;
    padding-top: 8px !important;
}

.ui-badge {
    padding: 5px !important;
}

body .ui-inputfield {
    font-family: "Noto Sans", arial, sans-serif !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
}

body .ui-dialog {
    z-index: 1040 !important;
}

body .ui-dialog .ui-dialog-titlebar {
    color: #005A9C;
    border-bottom: 3px solid #CDD8EC;
    padding: 0.6rem 1.5rem;
    font-size: 27px !important;
}

body .ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-icon .ui-icon-closethick {
    vertical-align: top !important;
}

body .ui-dialog.ui-confirm-dialog .ui-dialog-content {
    padding-top: 0.5rem !important;
}

.ui-dialog-mask {
    z-index: 1035 !important;
}

.p-datepicker .ui-inputfield {
    width: 100% !important;
    font-weight: 500 !important;
    height: calc(1.5em + .5rem + 2px);
}

body .ui-datepicker,
body .ui-selectonemenu-panel {
    z-index: 1045 !important;
}

body .ui-datepicker .ui-datepicker-calendar td {
    padding: 0 !important;
}

body .ui-datepicker.ui-input-overlay {
    min-width: 312px !important;
}

body .ui-selectonemenu {
    height: var(--app-form-input-height) !important;
}

body .ui-selectonemenu > span {
    padding-top: var(--app-ui-selectonemenu-selection-padding-top);
}

body .ui-growl {
    z-index: 1050 !important;
}

body .ui-datatable .ui-paginator {
    padding: 0 !important;
}

body .ui-paginator .ui-paginator-current, body .ui-paginator .ui-paginator-rpp-options {
    margin: 0.3rem;
}

.ui-paginator {
    text-align: left !important;
}

body .ui-datatable thead th,
body .ui-datatable tfoot td {
    font-size: 10px;
    text-align: left !important;
    text-transform: uppercase;
}

body .ui-datatable thead th {
    height: var(--app-ui-datatable-thead-th-height) !important;
    padding: 0 !important;
    background: #fff !important;
    border-right-color: #ffffff !important;
    border-width: 1px 6px 2px 0 !important;
    border-top-color: #CDD8EC !important;
    border-bottom-color: #CDD8EC !important;
}

body .ui-datatable thead th .ui-column-title {
    font-weight: 600 !important;
    font-size: 11px !important;
}

body .ui-datatable .ui-datatable-data > tr > td {
    height: var(--app-ui-datatable-tbody-td-height);
    font-size: 12px !important;
    /*font-weight: 500;*/
    padding: 0.4rem 0.5rem !important;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body .ui-datatable.app-datatable-uppercase .ui-datatable-data > tr > td {
    text-transform: uppercase;
}

/*body .ui-datatable .ui-widget-header{
    border-top: 1px solid #CDD8EC !important;
    background-color: #ffffff !important;
}

body .ui-datatable .ui-widget-header:first-child{
    border-top: none !important;
}*/

body .ui-widget-overlay {
    /*background: rgb(255 255 255 / 50%) !important;*/
}

body .ui-selectonebutton > .ui-button, body .ui-selectmanybutton > .ui-button {
    height: 26px;
}

body .ui-selectonebutton > .ui-button.ui-button-text-only .ui-button-text,
body .ui-selectmanybutton > .ui-button.ui-button-text-only .ui-button-text {
    padding: 3px 14px !important;
}

body .ui-selectbooleanbutton, body .ui-selectonebutton > .ui-button, body .ui-selectmanybutton > .ui-button {
    border: 2px solid #CDD8EC !important;
}

body .ui-selectonebutton > .ui-button:not(:last-child), body .ui-selectmanybutton > .ui-button:not(:last-child) {
    border-right-width: 1px !important;
}

body .ui-selectonebutton > .ui-button:not(:first-child), body .ui-selectmanybutton > .ui-button:not(:first-child) {
    border-left-width: 1px !important;
}

body .ui-selectbooleanbutton.ui-state-active, body .ui-selectonebutton > .ui-button.ui-state-active, body .ui-selectmanybutton > .ui-button.ui-state-active {
    background: #CDD8EC;
    border-color: #CDD8EC;
    color: #202D35;
}

body .ui-selectonebutton > .ui-button.ui-state-active:not(.ui-state-disabled):hover {
    background: #CDD8EC;
    border-color: #CDD8EC;
    color: #202D35;
}

body .ui-selectonebutton .ui-state-focus {
    box-shadow: none !important;
}

body .ui-selectbooleanbutton.app-input-required,
body .ui-selectonebutton.app-input-required,
body .ui-selectmanybutton.app-input-required {
    border: none !important;
}

body .ui-selectbooleanbutton.app-input-required,
body .ui-selectonebutton.app-input-required > .ui-button,
body .ui-selectmanybutton.app-input-required > .ui-button {
    border-color: #005A9C !important;
}

body .ui-selectcheckboxmenu {
    padding-top: 0 !important;
}

body .ui-selectcheckboxmenu.ui-state-focus {
    outline: none;
    -webkit-transition: none;
    -moz-transition: none;
    transition: none;
    -webkit-box-shadow: 0 0 0 2px rgb(205 216 236 / 50%), inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    box-shadow: 0 0 0 2px rgb(205 216 236 / 50%), inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    -webkit-box-shadow: 0 0 0 2px rgb(205 216 236 / 50%);
    box-shadow: 0 0 0 2px rgb(205 216 236 / 50%);
}

body .ui-selectcheckboxmenu .ui-selectcheckboxmenu-multiple-container.ui-inputfield {
    padding: 0.3rem 0.5rem !important;
}

body .ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item,
.ui-selectonemenu .ui-selectonemenu-label {
    font-weight: 500 !important;
}

body .ui-chkbox .ui-chkbox-box {
    width: 18px !important;
    min-width: 18px !important;
    height: 18px !important;
}

body .ui-chkbox .ui-chkbox-box .ui-chkbox-icon {
    margin-left: -7px !important;
    margin-top: -7px !important;
}

body .ui-chkbox .ui-chkbox-box.ui-state-focus {
    outline: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.ui-inputnumber .ui-inputfield {
    width: 100% !important;
    min-height: var(--app-form-input-height) !important;
    height: var(--app-form-input-height) !important;
    border: 2px solid #CDD8EC !important;
    color: #374B59;
    -webkit-box-shadow: inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    box-shadow: inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    -webkit-transition: box-shadow 180ms, border 180ms;
    -moz-transition: box-shadow 180ms, border 180ms;
    transition: box-shadow 180ms, border 180ms;
}

.ui-inputnumber .ui-inputfield:focus {
    outline: none;
    -webkit-transition: none;
    -moz-transition: none;
    transition: none;
    -webkit-box-shadow: 0 0 0 2px rgb(205 216 236 / 50%), inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    box-shadow: 0 0 0 2px rgb(205 216 236 / 50%), inset 0 1px 0 #f7f7f7, 0 1px 0 rgb(255 255 255 / 10%);
    -webkit-box-shadow: 0 0 0 2px rgb(205 216 236 / 50%);
    box-shadow: 0 0 0 2px rgb(205 216 236 / 50%);
}

.ui-inputnumber.app-input-required {
    border: none !important;
}

.ui-inputnumber.app-input-required .ui-inputfield {
    border: 2px solid #005A9C !important;
}

/* end primefaces */