/* Generated by AmadeeCssBundleServlet — flattened amadee.css. Edit the sources, not this. */
@layer framework.original, framework.overrides, framework.fa, framework.extension, legacy, general, chunk, page;

/* ===== icons.css ===== */
@layer legacy {
.ui-icon.larger {
    background-size: 24px 24px;
    margin-top: -12px;
    margin-left: -12px;
    width: 24px;
    height: 24px;
}

.icon-en {
    background-image: url('../img/en-32.png') !important;
}

.icon-de {
    background-image: url('../img/de-32.png') !important;
}

.icon-teamViewer {
    background-image: url('../img/teamviewer.png') !important;
}

.icon-fa-appl-INSTANCE {
    position: relative;
}

.icon-fa-appl-INSTANCE:before {
    content: "\f0c0";
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    padding-right: 0.5em;
}

.icon-fa-appl-TOPIC {
    position: relative;
}

.icon-fa-appl-TOPIC:before {
    content: "\f007";
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    padding-right: 0.5em;
}

.icon-fa-appl-CANCEL {
    position: relative;
}

.icon-fa-appl-CANCEL:before {
    content: "\f235";
    font-family: 'FontAwesome';
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    padding-right: 0.5em;
}

}

/* ===== buttons.css ===== */
@layer legacy {
/** BUTTONS **/

.btn{
    min-width: 6em;
    text-align: left;
    /*box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14),0 3px 1px -2px rgba(0,0,0,0.12),0 1px 5px 0 rgba(0,0,0,0.2) !important;*/
}

.btn-sm {
    min-width: 5em;
}
.btn.small,
.btn-xs {
    min-width: 4em;
}

.btn-padded {
    padding: 0.5em;
}

.btn.btn-icon-only{
    min-width: auto;
    width: auto;
}
.btn-iconOnly {
    min-width: 10px; !important;
    max-width: 10px; !important;
    width: auto; !important;
}

.lightCalendarButton .ui-button.ui-datepicker-trigger.ui-state-hover {
    background-color: #e6e6e6;
}

.lightCalendarButton .ui-button.ui-datepicker-trigger .ui-icon:hover,
.ui-selectbooleanbutton.btn-default .ui-icon:hover {
    background-color: #e6e6e6;
}

.lightCalendarButton .ui-button.ui-datepicker-trigger {
    background-color: #fff;
    border-radius: 3px;
    border: 1px solid #ccc;
}



.btn > .ui-button > .ui-button-text {
    padding-left: 2em !important;
}

.ui-selectonebutton.btn > .ui-button > .ui-button-text {
    padding: 3px 0 0 0 !important;
    min-width: 100px;
}

.ui-fileupload-simple.btn-margin {
    margin-right: 1em;
}

.ui-button.btn,
.ui-link.btn,
.ui-commandlink.btn,
.ui-widget.ui-selectbooleanbutton.btn,
.ui-widget.ui-selectonebutton.btn,
.btn > .ui-button,
div.btn,
.ui-fileupload .ui-button
{
    display:inline-block;
    text-align: center;
    text-shadow: none;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
}
/* quill magic */
.ql-formats .btn{
    width: auto !important;
}

.ui-commandlink.btn.btn-displayInitial{
    display: initial; !important;
}

.ui-commandlink.btn.btn-showAsMenuItem{
    display: block;
    padding-top: 2px;
    padding-bottom: 2px;
    padding-left: 4px;
    text-decoration: none;
    font-size: 1.02em;
    float: left;
    width: 94%;
    text-align: left;
    border-radius: 0px;
}

.ui-commandlink.btn.btn-showAsMenuItem:hover{
    background-color: #0082c2;
    color: white;
}

.ui-link.btn,
.ui-commandlink.btn,
.ui-widget.ui-selectbooleanbutton.btn,
.ui-widget.ui-selectonebutton.btn{
    display: inline-block;
    text-decoration: none;
}

.ui-link.btn.btn-link,
.ui-commandlink.btn.btn-link,
.ui-widget.ui-selectbooleanbutton.btn.btn-link,
.ui-widget.ui-selectonebutton.btn.btn-link{
    font-weight: 400;
    color: #337ab7;
    border-radius: 0;
}

.ui-commandlink.btn.btn-margin,
.ui-widget.ui-selectbooleanbutton.btn.btn-margin,
.ui-widget.ui-selectonebutton.btn.btn-margin,
.ui-button.btn.btn-margin,
.ui-link.btn.btn-margin{
    margin: 3px;
}

.ui-link.btn.btn-width75,
.ui-commandlink.btn.btn-width75,
.ui-widget.ui-selectbooleanbutton.btn.btn-width75,
.ui-widget.ui-selectonebutton.btn.btn-width75,
.ui-button.btn.btn-width75,
.btn.btn-width75 > .ui-button{
    min-width: 75px;
    max-width: 75px;
}

.ui-link.btn.btn-width200,
.ui-commandlink.btn.btn-width200,
.ui-widget.ui-selectbooleanbutton.btn.btn-width200,
.ui-widget.ui-selectonebutton.btn.btn-width200,
.ui-button.btn.btn-width200,
.btn.btn-width200 > .ui-button{
    min-width: 200px;
    max-width: 200px;
}

.ui-link.btn.btn-width100,
.ui-commandlink.btn.btn-width100,
.ui-widget.ui-selectbooleanbutton.btn.btn-width100,
.ui-widget.ui-selectonebutton.btn.btn-width100,
.ui-button.btn.btn-width100,
.btn.btn-width100 > .ui-button{
    min-width: 100px;
    max-width: 100px;
}

.ui-link.btn.btn-width110,
.ui-commandlink.btn.btn-width110,
.ui-widget.ui-selectbooleanbutton.btn.btn-width110,
.ui-widget.ui-selectonebutton.btn.btn-width110,
.ui-button.btn.btn-width110,
.btn.btn-width110 > .ui-button{
    min-width: 110px;
    max-width: 110px;
}

.ui-link.btn.btn-width120,
.ui-commandlink.btn.btn-width120,
.ui-widget.ui-selectbooleanbutton.btn.btn-width120,
.ui-widget.ui-selectonebutton.btn.btn-width120,
.ui-button.btn.btn-width120,
.btn.btn-width120 > .ui-button{
    min-width: 120px;
    max-width: 120px;
}

.ui-link.btn.btn-width140,
.ui-commandlink.btn.btn-width140,
.ui-widget.ui-selectbooleanbutton.btn.btn-width140,
.ui-widget.ui-selectonebutton.btn.btn-width140,
.ui-button.btn.btn-width140,
.btn.btn-width140 > .ui-button{
    min-width: 140px;
    max-width: 140px;
}

.ui-link.btn.ui-state-focus,
.ui-link.btn.active,
.ui-link.btn:active,
.ui-commandlink.btn.ui-state-focus,
.ui-commandlink.btn.active,
.ui-commandlink.btn:active,
.ui-widget.ui-selectbooleanbutton.btn.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.active,
.ui-widget.ui-selectbooleanbutton.btn:active,
.ui-widget.ui-selectonebutton.btn.ui-state-focus,
.ui-widget.ui-selectonebutton.btn.active,
.ui-widget.ui-selectonebutton.btn:active,
.ui-button.btn.ui-state-focus,
.btn > .ui-button.ui-state-focus,
.ui-button.btn.active,
.btn > .ui-button.active,
.ui-button.btn:active
.btn > .ui-button:active{
    background-image: none;
    outline: 0;
    -webkit-box-shadow: inset 0 3px 5px rgba(0,0,0,.125);
    box-shadow: inset 0 3px 5px rgba(0,0,0,.125);
}
.ui-link.btn.ui-state-disabled,
.ui-link.btn.ui-state-focus.ui-state-disabled,
.ui-link.btn.ui-state-hover.ui-state-disabled,
.ui-commandlink.btn.ui-state-disabled,
.ui-commandlink.btn.ui-state-focus.ui-state-disabled,
.ui-commandlink.btn.ui-state-hover.ui-state-disabled,
.ui-widget.ui-selectbooleanbutton.btn.ui-state-disabled,
.ui-widget.ui-selectbooleanbutton.btn.ui-state-focus.ui-state-disabled,
.ui-widget.ui-selectbooleanbutton.btn.ui-state-hover.ui-state-disabled,
.ui-widget.ui-selectonebutton.btn.ui-state-disabled,
.ui-widget.ui-selectonebutton.btn.ui-state-focus.ui-state-disabled,
.ui-widget.ui-selectonebutton.btn.ui-state-hover.ui-state-disabled,
.ui-button.btn.ui-state-disabled,
.btn > .ui-button.ui-state-disabled,
.ui-button.btn.ui-state-focus.ui-state-disabled,
.btn > .ui-button.ui-state-focus.ui-state-disabled,
.ui-button.btn.ui-state-hover.ui-state-disabled,
.btn > .ui-button.ui-state-hover.ui-state-disabled{
    pointer-events: none;
    cursor: not-allowed;
    filter: alpha(opacity=65);
    -webkit-box-shadow: none;
    box-shadow: none;
    opacity: .65;
}

.ui-link.btn.btn-default,
.ui-commandlink.btn.btn-default,
.ui-widget.ui-selectbooleanbutton.btn.btn-default,
.ui-button.btn.btn-default:not(.ui-buttonset),
.btn.btn-default > .ui-button,
div.btn.btn-default{
    color: #333;
    background-color: #fff;
    border-color: #ccc;
}
.ui-link.btn.btn-primary,
.ui-commandlink.btn.btn-primary,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary,
.ui-button.btn.btn-primary,
.btn.btn-primary > .ui-button,
div.btn.btn-primary:not(.ui-buttonset),
.ui-fileupload .ui-button{
    color: #fff;
    background-color: #337ab7;
    border-color: #2e6da4;
}
.ui-link.btn.btn-success,
.ui-commandlink.btn.btn-success,
.ui-widget.ui-selectbooleanbutton.btn.btn-success,
.ui-button.btn.btn-success,
.btn.btn-success > .ui-button,
div.btn.btn-success:not(.ui-buttonset){
    color: #fff;
    background-color: #5cb85c;
    border-color: #4cae4c;
}
.ui-link.btn.btn-info,
.ui-commandlink.btn.btn-info,
.ui-widget.ui-selectbooleanbutton.btn.btn-info,
.ui-button.btn.btn-info,
.btn.btn-info > .ui-button,
div.btn.btn-info:not(.ui-buttonset){
    color: #fff;
    background-color: #5bc0de;
    border-color: #46b8da;
}
.ui-link.btn.btn-warning,
.ui-commandlink.btn.btn-warning,
.ui-widget.ui-selectbooleanbutton.btn.btn-warning,
.ui-button.btn.btn-warning,
.btn.btn-warning > .ui-button,
div.btn.btn-warning:not(.ui-buttonset){
    color: #fff;
    background-color: #f0ad4e;
    border-color: #eea236;
}
.ui-link.btn.btn-danger,
.ui-commandlink.btn.btn-danger,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger,
.ui-button.btn.btn-danger,
.btn.btn-danger > .ui-button,
div.btn.btn-danger:not(.ui-buttonset){
    color: #fff;
    background-color: #d9534f;
    border-color: #d43f3a;
}
.ui-button.btn.btn-primary .ui-icon,
.btn.btn-primary > .ui-button .ui-icon,
.ui-button.btn.btn-success .ui-icon,
.btn.btn-success > .ui-button .ui-icon,
.ui-button.btn.btn-info .ui-icon,
.btn.btn-info > .ui-button .ui-icon,
.ui-button.btn.btn-warning .ui-icon,
.btn.btn-warning > .ui-button .ui-icon,
.ui-button.btn.btn-danger .ui-icon,
.btn.btn-danger > .ui-button .ui-icon,
.ui-fileupload .ui-button .ui-icon{
    background-image: url("../../../faces/javax.faces.resource/images/ui-icons_ffffff_256x240.png?ln=primefaces-bootstrap");
}
.ui-button.btn.btn-link,
.btn.btn-link > .ui-button{
    border-color: transparent;
}


/** font awesome **/
.btn.btn-xs > .ui-button .ui-button-icon-left + .ui-button-text {
    padding-left: 2em;
}
.ui-button-text-icon-left .ui-icon.fa {
    margin-top: -6px;
}
.btn.btn-xs .ui-button-icon-left.fa {
    font-size: 11px;
}


.ui-link.btn.btn-default.ui-state-active,
.ui-link.btn.btn-default:focus,
.ui-link.btn.btn-default.ui-state-focus,
.ui-link.btn.btn-default:hover,
.ui-link.btn.btn-default.ui-state-hover,
.ui-commandlink.btn.btn-default.ui-state-active,
.ui-commandlink.btn.btn-default:focus,
.ui-commandlink.btn.btn-default.ui-state-focus,
.ui-commandlink.btn.btn-default:hover,
.ui-commandlink.btn.btn-default.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn-default.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn-default:focus,
.ui-widget.ui-selectbooleanbutton.btn-default.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn-default:hover,
.ui-widget.ui-selectbooleanbutton.btn-default.ui-state-hover,
.ui-button.btn.btn-default.ui-state-active,
.btn.btn-default > .ui-button.ui-state-active,
.ui-button.btn.btn-default:focus,
.btn.btn-default > .ui-button:focus,
.ui-button.btn.btn-default.ui-state-focus,
.btn.btn-default > .ui-button.ui-state-focus,
.ui-button.btn.btn-default.hover,
.btn.btn-default > .ui-button.hover,
.ui-button.btn.btn-default.ui-state-hover,
.btn.btn-default > .ui-button.ui-state-hover,
div.btn.btn-default:not(.ui-buttonset):hover{
    color: #333333;
    background-color: #e6e6e6;
    border-color: #adadad;
}
.ui-link.btn.btn-default.ui-state-disabled.ui-state-active,
.ui-link.btn.btn-default.ui-state-disabled:focus,
.ui-link.btn.btn-default.ui-state-disabled.ui-state-focus,
.ui-link.btn.btn-default.ui-state-disabled:hover,
.ui-link.btn.btn-default.ui-state-disabled.ui-state-hover,
.ui-commandlink.btn.btn-default.ui-state-disabled.ui-state-active,
.ui-commandlink.btn.btn-default.ui-state-disabled:focus,
.ui-commandlink.btn.btn-default.ui-state-disabled.ui-state-focus,
.ui-commandlink.btn.btn-default.ui-state-disabled:hover,
.ui-commandlink.btn.btn-default.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-default.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-default.ui-state-disabled:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-default.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-default.ui-state-disabled:hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-default.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectonebutton.btn.btn-default.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectonebutton.btn.btn-default.ui-state-disabled:focus,
.ui-widget.ui-selectonebutton.btn.btn-default.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectonebutton.btn.btn-default.ui-state-disabled:hover,
.ui-widget.ui-selectonebutton.btn.btn-default.ui-state-disabled.ui-state-hover,
.ui-button.btn.btn-default.ui-state-disabled,
.btn.btn-default > .ui-button.ui-state-disabled,
.ui-button.btn.btn-default.ui-state-disabled.ui-state-active,
.btn.btn-default > .ui-button.ui-state-disabled.ui-state-active,
.ui-button.btn.btn-default.ui-state-disabled:focus,
.btn.btn-default > .ui-button.ui-state-disabled:focus,
.ui-button.btn.btn-default.ui-state-disabled.ui-state-focus,
.btn.btn-default > .ui-button.ui-state-disabled.ui-state-focus,
.ui-button.btn.btn-default.ui-state-disabled:hover,
.btn.btn-default > .ui-button.ui-state-disabled:hover,
.ui-button.btn.btn-default.ui-state-disabled.ui-state-hover,
.btn.btn-default > .ui-button.ui-state-disabled.ui-state-hover  {
    background-color: #fff;
    border-color: #ccc;
}

.ui-link.btn.btn-primary.ui-state-active,
.ui-link.btn.btn-primary:focus,
.ui-link.btn.btn-primary.ui-state-focus,
.ui-link.btn.btn-primary:hover,
.ui-link.btn.btn-primary.ui-state-hover,
.ui-commandlink.btn.btn-primary.ui-state-active,
.ui-commandlink.btn.btn-primary:focus,
.ui-commandlink.btn.btn-primary.ui-state-focus,
.ui-commandlink.btn.btn-primary:hover,
.ui-commandlink.btn.btn-primary.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary:hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary.ui-state-hover,
.ui-button.btn.btn-primary.ui-state-active,
.btn.btn-primary > .ui-button.ui-state-active,
.ui-button.btn.btn-primary:focus,
.btn.btn-primary > .ui-button:focus,
.ui-button.btn.btn-primary.ui-state-focus,
.btn.btn-primary > .ui-button.ui-state-focus,
.ui-button.btn.btn-primary.hover,
.btn.btn-primary > .ui-button.hover,
.ui-button.btn.btn-primary.ui-state-hover,
.btn.btn-primary > .ui-button.ui-state-hover,
div.btn.btn-primary:not(.ui-buttonset):hover  {
    color: #fff;
    background-color: #286090;
    border-color: #204d74;
}
.ui-link.btn.btn-primary.ui-state-disabled.ui-state-active,
.ui-link.btn.btn-primary.ui-state-disabled:focus,
.ui-link.btn.btn-primary.ui-state-disabled.ui-state-focus,
.ui-link.btn.btn-primary.ui-state-disabled:hover,
.ui-link.btn.btn-primary.ui-state-disabled.ui-state-hover,
.ui-commandlink.btn.btn-primary.ui-state-disabled.ui-state-active,
.ui-commandlink.btn.btn-primary.ui-state-disabled:focus,
.ui-commandlink.btn.btn-primary.ui-state-disabled.ui-state-focus,
.ui-commandlink.btn.btn-primary.ui-state-disabled:hover,
.ui-commandlink.btn.btn-primary.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary.ui-state-disabled:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary.ui-state-disabled:hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-primary.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectonebutton.btn.btn-primary.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectonebutton.btn.btn-primary.ui-state-disabled:focus,
.ui-widget.ui-selectonebutton.btn.btn-primary.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectonebutton.btn.btn-primary.ui-state-disabled:hover,
.ui-widget.ui-selectonebutton.btn.btn-primary.ui-state-disabled.ui-state-hover,
.ui-button.btn.btn-primary.ui-state-disabled,
.btn.btn-primary > .ui-button.ui-state-disabled,
.ui-button.btn.btn-primary.ui-state-disabled.ui-state-active,
.btn.btn-primary > .ui-button.ui-state-disabled.ui-state-active,
.ui-button.btn.btn-primary.ui-state-disabled:focus,
.btn.btn-primary > .ui-button.ui-state-disabled:focus,
.ui-button.btn.btn-primary.ui-state-disabled.ui-state-focus,
.btn.btn-primary > .ui-button.ui-state-disabled.ui-state-focus,
.ui-button.btn.btn-primary.ui-state-disabled:hover,
.btn.btn-primary > .ui-button.ui-state-disabled:hover,
.ui-button.btn.btn-primary.ui-state-disabled.ui-state-hover,
.btn.btn-primary > .ui-button.ui-state-disabled.ui-state-hover  {
    background-color: #337ab7;
    border-color: #2e6da4;
}

.ui-link.btn.btn-success.ui-state-active,
.ui-link.btn.btn-success:focus,
.ui-link.btn.btn-success.ui-state-focus,
.ui-link.btn.btn-success:hover,
.ui-link.btn.btn-success.ui-state-hover,
.ui-commandlink.btn.btn-success.ui-state-active,
.ui-commandlink.btn.btn-success:focus,
.ui-commandlink.btn.btn-success.ui-state-focus,
.ui-commandlink.btn.btn-success:hover,
.ui-commandlink.btn.btn-success.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-success.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-success:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-success.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-success:hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-success.ui-state-hover,
.ui-button.btn.btn-success.ui-state-active,
.btn.btn-success > .ui-button.ui-state-active,
.ui-button.btn.btn-success:focus,
.btn.btn-success > .ui-button:focus,
.ui-button.btn.btn-success.ui-state-focus,
.btn.btn-success > .ui-button.ui-state-focus,
.ui-button.btn.btn-success.hover,
.btn.btn-success > .ui-button.hover,
.ui-button.btn.btn-success.ui-state-hover,
.btn.btn-success > .ui-button.ui-state-hover,
div.btn.btn-success:not(.ui-buttonset):hover  {
    color: #fff;
    background-color: #449d44;
    border-color: #398439;
}
.ui-link.btn.btn-success.ui-state-disabled.ui-state-active,
.ui-link.btn.btn-success.ui-state-disabled:focus,
.ui-link.btn.btn-success.ui-state-disabled.ui-state-focus,
.ui-link.btn.btn-success.ui-state-disabled:hover,
.ui-link.btn.btn-success.ui-state-disabled.ui-state-hover,
.ui-commandlink.btn.btn-success.ui-state-disabled.ui-state-active,
.ui-commandlink.btn.btn-success.ui-state-disabled:focus,
.ui-commandlink.btn.btn-success.ui-state-disabled.ui-state-focus,
.ui-commandlink.btn.btn-success.ui-state-disabled:hover,
.ui-commandlink.btn.btn-success.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-success.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-success.ui-state-disabled:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-success.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-success.ui-state-disabled:hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-success.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectonebutton.btn.btn-success.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectonebutton.btn.btn-success.ui-state-disabled:focus,
.ui-widget.ui-selectonebutton.btn.btn-success.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectonebutton.btn.btn-success.ui-state-disabled:hover,
.ui-widget.ui-selectonebutton.btn.btn-success.ui-state-disabled.ui-state-hover,
.ui-button.btn.btn-success.ui-state-disabled,
.btn.btn-success > .ui-button.ui-state-disabled,
.ui-button.btn.btn-success.ui-state-disabled.ui-state-active,
.btn.btn-success > .ui-button.ui-state-disabled.ui-state-active,
.ui-button.btn.btn-success.ui-state-disabled:focus,
.btn.btn-success > .ui-button.ui-state-disabled:focus,
.ui-button.btn.btn-success.ui-state-disabled.ui-state-focus,
.btn.btn-success > .ui-button.ui-state-disabled.ui-state-focus,
.ui-button.btn.btn-success.ui-state-disabled:hover,
.btn.btn-success > .ui-button.ui-state-disabled:hover,
.ui-button.btn.btn-success.ui-state-disabled.ui-state-hover,
.btn.btn-success > .ui-button.ui-state-disabled.ui-state-hover   {
    background-color: #5cb85c;
    border-color: #4cae4c;
}

.ui-link.btn.btn-info.ui-state-active,
.ui-link.btn.btn-info:focus,
.ui-link.btn.btn-info.ui-state-focus,
.ui-link.btn.btn-info:hover,
.ui-link.btn.btn-info.ui-state-hover,
.ui-commandlink.btn.btn-info.ui-state-active,
.ui-commandlink.btn.btn-info:focus,
.ui-commandlink.btn.btn-info.ui-state-focus,
.ui-commandlink.btn.btn-info:hover,
.ui-commandlink.btn.btn-info.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-info.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-info:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-info.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-info:hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-info.ui-state-hover,
.ui-button.btn.btn-info.ui-state-active,
.btn.btn-info > .ui-button.ui-state-active,
.ui-button.btn.btn-info:focus,
.btn.btn-info > .ui-button:focus,
.ui-button.btn.btn-info.ui-state-focus,
.btn.btn-info > .ui-button.ui-state-focus,
.ui-button.btn.btn-info.hover,
.btn.btn-info > .ui-button.hover,
.ui-button.btn.btn-info.ui-state-hover,
.btn.btn-info > .ui-button.ui-state-hover,
div.btn.btn-info:not(.ui-buttonset):hover {
    color: #fff;
    background-color: #31b0d5;
    border-color: #269abc;
}
.ui-link.btn.btn-info.ui-state-disabled.ui-state-active,
.ui-link.btn.btn-info.ui-state-disabled:focus,
.ui-link.btn.btn-info.ui-state-disabled.ui-state-focus,
.ui-link.btn.btn-info.ui-state-disabled:hover,
.ui-link.btn.btn-info.ui-state-disabled.ui-state-hover,
.ui-commandlink.btn.btn-info.ui-state-disabled.ui-state-active,
.ui-commandlink.btn.btn-info.ui-state-disabled:focus,
.ui-commandlink.btn.btn-info.ui-state-disabled.ui-state-focus,
.ui-commandlink.btn.btn-info.ui-state-disabled:hover,
.ui-commandlink.btn.btn-info.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-info.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-info.ui-state-disabled:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-info.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-info.ui-state-disabled:hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-info.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectonebutton.btn.btn-info.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectonebutton.btn.btn-info.ui-state-disabled:focus,
.ui-widget.ui-selectonebutton.btn.btn-info.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectonebutton.btn.btn-info.ui-state-disabled:hover,
.ui-widget.ui-selectonebutton.btn.btn-info.ui-state-disabled.ui-state-hover,
.ui-button.btn.btn-info.ui-state-disabled,
.btn.btn-info > .ui-button.ui-state-disabled,
.ui-button.btn.btn-info.ui-state-disabled.ui-state-active,
.btn.btn-info > .ui-button.ui-state-disabled.ui-state-active,
.ui-button.btn.btn-info.ui-state-disabled:focus,
.btn.btn-info > .ui-button.ui-state-disabled:focus,
.ui-button.btn.btn-info.ui-state-disabled.ui-state-focus,
.btn.btn-info > .ui-button.ui-state-disabled.ui-state-focus,
.ui-button.btn.btn-info.ui-state-disabled:hover,
.btn.btn-info > .ui-button.ui-state-disabled:hover,
.ui-button.btn.btn-info.ui-state-disabled.ui-state-hover,
.btn.btn-info > .ui-button.ui-state-disabled.ui-state-hover  {
    background-color: #5bc0de;
    border-color: #46b8da;
}

.ui-link.btn.btn-warning.ui-state-active,
.ui-link.btn.btn-warning:focus,
.ui-link.btn.btn-warning.ui-state-focus,
.ui-link.btn.btn-warning:hover,
.ui-link.btn.btn-warning.ui-state-hover,
.ui-commandlink.btn.btn-warning.ui-state-active,
.ui-commandlink.btn.btn-warning:focus,
.ui-commandlink.btn.btn-warning.ui-state-focus,
.ui-commandlink.btn.btn-warning:hover,
.ui-commandlink.btn.btn-warning.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-warning.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-warning:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-warning.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-warning:hover,
.ui-button.btn.btn-warning.ui-state-active,
.btn.btn-warning > .ui-button.ui-state-active,
.ui-button.btn.btn-warning:focus,
.btn.btn-warning > .ui-button:focus,
.ui-button.btn.btn-warning.ui-state-focus,
.btn.btn-warning > .ui-button.ui-state-focus,
.ui-button.btn.btn-warning.hover,
.btn.btn-warning > .ui-button.hover,
.ui-button.btn.btn-warning.ui-state-hover,
.btn.btn-warning > .ui-button.ui-state-hover,
div.btn.btn-warning:not(.ui-buttonset):hover {
    color: #fff;
    background-color: #ec971f;
    border-color: #d58512;
}
.ui-link.btn.btn-warning.ui-state-disabled.ui-state-active,
.ui-link.btn.btn-warning.ui-state-disabled:focus,
.ui-link.btn.btn-warning.ui-state-disabled.ui-state-focus,
.ui-link.btn.btn-warning.ui-state-disabled:hover,
.ui-link.btn.btn-warning.ui-state-disabled.ui-state-hover,
.ui-commandlink.btn.btn-warning.ui-state-disabled.ui-state-active,
.ui-commandlink.btn.btn-warning.ui-state-disabled:focus,
.ui-commandlink.btn.btn-warning.ui-state-disabled.ui-state-focus,
.ui-commandlink.btn.btn-warning.ui-state-disabled:hover,
.ui-commandlink.btn.btn-warning.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-warning.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-warning.ui-state-disabled:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-warning.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-warning.ui-state-disabled:hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-warning.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectonebutton.btn.btn-warning.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectonebutton.btn.btn-warning.ui-state-disabled:focus,
.ui-widget.ui-selectonebutton.btn.btn-warning.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectonebutton.btn.btn-warning.ui-state-disabled:hover,
.ui-widget.ui-selectonebutton.btn.btn-warning.ui-state-disabled.ui-state-hover,
.ui-button.btn.btn-warning.ui-state-disabled,
.btn.btn-warning > .ui-button.ui-state-disabled,
.ui-button.btn.btn-warning.ui-state-disabled.ui-state-active,
.btn.btn-warning > .ui-button.ui-state-disabled.ui-state-active,
.ui-button.btn.btn-warning.ui-state-disabled:focus,
.btn.btn-warning > .ui-button.ui-state-disabled:focus,
.ui-button.btn.btn-warning.ui-state-disabled.ui-state-focus,
.btn.btn-warning > .ui-button.ui-state-disabled.ui-state-focus,
.ui-button.btn.btn-warning.ui-state-disabled:hover,
.btn.btn-warning > .ui-button.ui-state-disabled:hover,
.ui-button.btn.btn-warning.ui-state-disabled.ui-state-hover,
.btn.btn-warning > .ui-button.ui-state-disabled.ui-state-hover {
    background-color: #f0ad4e;
    border-color: #eea236;
}

.ui-link.btn.btn-danger.ui-state-active,
.ui-link.btn.btn-danger:focus,
.ui-link.btn.btn-danger.ui-state-focus,
.ui-link.btn.btn-danger:hover,
.ui-link.btn.btn-danger.ui-state-hover,
.ui-commandlink.btn.btn-danger.ui-state-active,
.ui-commandlink.btn.btn-danger:focus,
.ui-commandlink.btn.btn-danger.ui-state-focus,
.ui-commandlink.btn.btn-danger:hover,
.ui-commandlink.btn.btn-danger.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger:hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger.ui-state-hover,
.ui-button.btn.btn-danger.ui-state-active,
.btn.btn-danger > .ui-button.ui-state-active,
.ui-button.btn.btn-danger:focus,
.btn.btn-danger > .ui-button:focus,
.ui-button.btn.btn-danger.ui-state-focus,
.btn.btn-danger > .ui-button.ui-state-focus,
.ui-button.btn.btn-danger.hover,
.btn.btn-danger > .ui-button.hover,
.ui-button.btn.btn-danger.ui-state-hover,
.btn.btn-danger > .ui-button.ui-state-hover,
div.btn.btn-danger:not(.ui-buttonset):hover{
    color: #fff;
    background-color: #c9302c;
    border-color: #ac2925;
}
.ui-link.btn.btn-danger.ui-state-disabled.ui-state-active,
.ui-link.btn.btn-danger.ui-state-disabled:focus,
.ui-link.btn.btn-danger.ui-state-disabled.ui-state-focus,
.ui-link.btn.btn-danger.ui-state-disabled:hover,
.ui-link.btn.btn-danger.ui-state-disabled.ui-state-hover,
.ui-commandlink.btn.btn-danger.ui-state-disabled.ui-state-active,
.ui-commandlink.btn.btn-danger.ui-state-disabled:focus,
.ui-commandlink.btn.btn-danger.ui-state-disabled.ui-state-focus,
.ui-commandlink.btn.btn-danger.ui-state-disabled:hover,
.ui-commandlink.btn.btn-danger.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger.ui-state-disabled:focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger.ui-state-disabled:hover,
.ui-widget.ui-selectbooleanbutton.btn.btn-danger.ui-state-disabled.ui-state-hover,
.ui-widget.ui-selectonebutton.btn.btn-danger.ui-state-disabled.ui-state-active,
.ui-widget.ui-selectonebutton.btn.btn-danger.ui-state-disabled:focus,
.ui-widget.ui-selectonebutton.btn.btn-danger.ui-state-disabled.ui-state-focus,
.ui-widget.ui-selectonebutton.btn.btn-danger.ui-state-disabled:hover,
.ui-widget.ui-selectonebutton.btn.btn-danger.ui-state-disabled.ui-state-hover,
.ui-button.btn.btn-danger.ui-state-disabled,
.btn.btn-danger > .ui-button.ui-state-disabled,
.ui-button.btn.btn-danger.ui-state-disabled.ui-state-active,
.btn.btn-danger > .ui-button.ui-state-disabled.ui-state-active,
.ui-button.btn.btn-danger.ui-state-disabled:focus,
.btn.btn-danger > .ui-button.ui-state-disabled:focus,
.ui-button.btn.btn-danger.ui-state-disabled.ui-state-focus,
.btn.btn-danger > .ui-button.ui-state-disabled.ui-state-focus,
.ui-button.btn.btn-danger.ui-state-disabled:hover,
.btn.btn-danger > .ui-button.ui-state-disabled:hover,
.ui-button.btn.btn-danger.ui-state-disabled.ui-state-hover,
.btn.btn-danger > .ui-button.ui-state-disabled.ui-state-hover {
    background-color: #d9534f;
    border-color: #d43f3a;
}

/** button sizes */
.ui-link.btn.btn-lg,
.ui-commandlink.btn.btn-lg,
.ui-widget.ui-selectbooleanbutton.btn.btn-lg,
.ui-widget.ui-selectonebutton.btn.btn-lg,
.btn.btn-lg > .ui-button .ui-button-text,
.ui-button.btn.btn-lg .ui-button-text,
div.btn.btn-lg{
    padding: 10px 16px;
    font-size: 18px;
    line-height: 1.3333333;
    border-radius: 0;
}
.ui-link.btn.btn-lg,
.ui-commandlink.btn.btn-lg,
.ui-widget.ui-selectbooleanbutton.btn.btn-lg,
.ui-widget.ui-selectonebutton.btn.btn-lg,
.ui-button.btn.btn-lg.ui-corner-all,
.btn.btn-lg > .ui-button.ui-corner-all,
div.btn.btn-lg{
    border-radius: 6px;
}
.ui-button.btn.btn-lg.ui-corner-left,
.btn.btn-lg > .ui-button.ui-corner-left{
    border-bottom-left-radius: 6px;
    border-top-left-radius: 6px;
}
.ui-button.btn.btn-lg.ui-corner-right,
.btn.btn-lg > .ui-button.ui-corner-right{
    border-bottom-right-radius: 6px;
    border-top-right-radius: 6px;
}

.ui-link.btn,
.ui-commandlink.btn,
.ui-widget.ui-selectbooleanbutton.btn,
.ui-widget.ui-selectonebutton.btn,
.btn > .ui-button .ui-button-text,
.ui-button.btn .ui-button-text{
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    border-radius: 0;
}
.ui-link.btn,
.ui-commandlink.btn,
.ui-widget.ui-selectbooleanbutton.btn,
.ui-widget.ui-selectonebutton.btn,
.ui-button.btn.ui-corner-all,
.btn > .ui-button.ui-corner-all,
div.btn{
    border-radius: 4px;
}
.ui-button.btn.ui-corner-left,
.btn > .ui-button.ui-corner-left{
    border-bottom-left-radius: 4px;
    border-top-left-radius: 4px;
}
.ui-button.btn.ui-corner-right,
.btn > .ui-button.ui-corner-right{
    border-bottom-right-radius: 4px;
    border-top-right-radius: 4px;
}

.ui-link.btn.btn-sm,
.ui-commandlink.btn.btn-sm,
.ui-widget.ui-selectbooleanbutton.btn.btn-sm,
.ui-widget.ui-selectonebutton.btn.btn-sm,
.btn.btn-sm > .ui-button .ui-button-text,
.ui-button.btn.btn-sm .ui-button-text,
div.btn.btn-sm{
    padding: 5px 10px;
    font-size: 11px;
    line-height: 1.5;
    border-radius: 0;
}
.ui-link.btn.btn-sm,
.ui-commandlink.btn.btn-sm,
.ui-widget.ui-selectbooleanbutton.btn.btn-sm,
.ui-widget.ui-selectonebutton.btn.btn-sm,
.ui-button.btn.btn-sm.ui-corner-all,
.btn.btn-sm > .ui-button.ui-corner-all,
div.btn.btn-sm{
    border-radius: 3px;
}
.ui-button.btn.btn-sm.ui-corner-left,
.btn.btn-sm > .ui-button.ui-corner-left{
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px;
}
.ui-button.btn.btn-sm.ui-corner-right,
.btn.btn-sm > .ui-button.ui-corner-right{
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px;
}

.ui-link.btn.btn-xs,
.ui-commandlink.btn.btn-xs,
.ui-widget.ui-selectbooleanbutton.btn.btn-xs,
.ui-widget.ui-selectonebutton.btn.btn-xs,
.btn.btn-xs > .ui-button .ui-button-text,
.ui-button.btn.btn-xs .ui-button-text,
div.btn.btn-xs,
.ui-fileupload.btn-xs .ui-button .ui-button-text{
    padding: 1px 5px;
    font-size: 11px;
    line-height: 1.5;
    border-radius: 0;
}
.ui-link.btn.btn-xs,
.ui-commandlink.btn.btn-xs,
.ui-widget.ui-selectbooleanbutton.btn.btn-xs,
.ui-widget.ui-selectonebutton.btn.btn-xs,
.ui-button.btn.btn-xs.ui-corner-all,
.btn.btn-xs > .ui-button.ui-corner-all,
div.btn.btn-xs{
    border-radius: 3px;
}
.ui-button.btn.btn-xs.ui-corner-left,
.btn.btn-xs > .ui-button.ui-corner-left{
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px;
}
.ui-button.btn.btn-xs.ui-corner-right,
.btn.btn-xs > .ui-button.ui-corner-right{
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px;
}

.ui-link.btn.btn-iconOnly,
.ui-commandlink.btn.btn-iconOnly,
.ui-widget.ui-selectbooleanbutton.btn.btn-iconOnly,
.ui-widget.ui-selectonebutton.btn.btn-iconOnly,
.ui-commandButton.btn.btn-iconOnly,
.btn.btn-iconOnly > .ui-button .ui-button-text,
.ui-button.btn.btn-iconOnly .ui-button-text{
    padding: 1px 5px;
    font-size: 11px;
    line-height: 1.5;
    border-radius: 0;
}
.ui-link.btn.btn-iconOnly,
.ui-commandlink.btn.btn-iconOnly,
.ui-widget.ui-selectbooleanbutton.btn.btn-iconOnly,
.ui-widget.ui-selectonebutton.btn.btn-iconOnly,
.ui-button.btn.btn-iconOnly.ui-corner-all,
.btn.btn-iconOnly > .ui-button.ui-corner-all{
    border-radius: 3px;
}
.ui-button.btn.btn-iconOnly.ui-corner-left,
.btn.btn-iconOnly > .ui-button.ui-corner-left{
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px;
}
.ui-button.btn.btn-iconOnly.ui-corner-right,
.btn.btn-iconOnlyxs > .ui-button.ui-corner-right{
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px;
}

/* buttons with icons */
.btn .fa-stack{
    font-size: 0.8em;
}

.ui-button.ui-button-icon-only.btn.btn-lg {
    width: 46px;
}
.ui-button.ui-button-icon-only.btn.btn-lg .ui-button-icon-left{
    left: 21px;
}
.ui-button.ui-button-text-icon-right.btn.btn-lg .ui-button-text{
    padding-right: 32px;
}
.ui-button.ui-button-text-icon-right.btn.btn-lg .ui-button-icon-right{
    right:9px;
}
.ui-button.ui-button-text-icon-left.btn.btn-lg .ui-button-text{
    padding-left: 32px;
}
.ui-button.ui-button-text-icon-left.btn.btn-lg .ui-button-icon-left{
    left:9px;
}

.ui-button.ui-button-text-icon-right.btn .ui-button-text{
    padding-right: 28px;
}
.ui-button.ui-button-text-icon-left.btn .ui-button-text{
    padding-left: 28px;
}

.ui-button.ui-button-icon-only.btn.btn-sm {
    width: 30px;
}
.ui-button.ui-button-icon-only.btn.btn-sm .ui-button-icon-left{
    left: 14px;
}
.ui-button.ui-button-text-icon-right.btn.btn-sm .ui-button-text{
    padding-right: 20px;
}
.ui-button.ui-button-text-icon-right.btn.btn-sm .ui-button-icon-right{
    right:2px;
}
.ui-button.ui-button-text-icon-left.btn.btn-sm .ui-button-text{
    padding-left: 20px;
}
.ui-button.ui-button-text-icon-left.btn.btn-sm .ui-button-icon-left{
    left:2px;
}

.ui-button.ui-button-icon-only.btn.btn-xs {
    width: 22px;
}
.ui-button.ui-button-icon-only.btn.btn-xs .ui-button-icon-left{
    left: 10px;
}
.ui-button.ui-button-text-icon-right.btn.btn-xs .ui-button-text{
    padding-right: 16px;
}
.ui-button.ui-button-text-icon-right.btn.btn-xs .ui-button-icon-right{
    right:0px;
}
.ui-button.ui-button-text-icon-left.btn.btn-xs .ui-button-text{
    padding-left: 16px;
}
.ui-button.ui-button-text-icon-left.btn.btn-xs .ui-button-icon-left{
    left:0px;
}

.ui-button.ui-button-icon-only.btn.btn-iconOnly {
    width: 10px;
}
.ui-button.ui-button-icon-only.btn.btn-iconOnly .ui-button-icon-left{
    left: 10px;
}
.ui-button.ui-button-text-icon-right.btn.btn-iconOnly .ui-button-text{
    padding-right: 16px;
}
.ui-button.ui-button-text-icon-right.btn.btn-iconOnly .ui-button-icon-right{
    right:0px;
}
.ui-button.ui-button-text-icon-left.btn.btn-iconOnly .ui-button-text{
    padding-left: 16px;
}
.ui-button.ui-button-text-icon-left.btn.btn-iconOnly .ui-button-icon-left{
    left:0px;
}

.ui-link.ui-widget.btn.entity-btn,
.ui-commandlink.ui-widget.btn.entity-btn{
    display: inline-block;
    margin-right: 3px;
    padding: 3px 6px;
    min-width: 1em;
    margin-top: -5px;
    margin-bottom: -5px;
}

.wizard-navigation .btn {
    margin-right: 0.5em;
}
}

/* ===== typography.css ===== */
@layer legacy {
/* ALIGNMENT CLASSES */
.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}
.text-left {
    text-align: left;
}
.text-justify {
    text-align: justify;
}
.text-nowrap {
    white-space: nowrap;
}
.text-wrap{
    white-space: normal;
    text-wrap: wrap;
}
.text-line-through {
    text-decoration: line-through;
}

.text-no-decoration {
    text-decoration: none;
}

a.text-no-decoration:hover {
    color: #31708f;
}

/* Context colors*/
.text-disabled {
    opacity: 0.4;
}
.text-muted {
    color: #777 !important;
}
.text-primary {
    color: #337ab7;
}
.text-success {
    color: #3c763d;
}
.text-info {
    color: #31708f;
}
.text-warning {
    color: #8a6d3b;
}
.text-danger {
    color: #a94442;
}

/* Tinted variants: add the matching alert background behind the coloured text (a soft callout),
   without the alert box's padding/margin/border. Compound with a .text-<variant> class. */
.text-success.tinted {
    background-color: #dff0d8;
}
.text-info.tinted {
    background-color: #d9edf7;
}
.text-warning.tinted {
    background-color: #fcf8e3;
}
.text-danger.tinted {
    background-color: #f2dede;
}

/* Context sizes*/
.text-05x {
    font-size: 0.5em;
}
.text-075x {
    font-size: 0.75em;
}
.text-08x {
    font-size: 0.8em;
}
.text-085x {
    font-size: 0.85em;
}
.text-09x {
    font-size: 0.9em;
}
.text-095x {
    font-size: 0.95em;
}
.text-1x {
    font-size: 1em;
}
.text-120x {
    font-size: 1.2em;
}
.text-150x {
    font-size: 1.5em;
}

/* Context strength*/
.text-strong {
    font-weight: bold;
}
.text-normal {
    font-weight: normal;
}

.text-italic {
    font-style: italic;
}

/* quick floats */
.pull-left {
    float: left !important;
}
.pull-right {
    float: right !important;
}
/* clearfix */
.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

/* Headings*/
.h1,
.h2,
.h3,
.h4,
.h5,
.h6{
    display: block;
    margin: 10px 0;
    font-family: inherit;
    font-weight: bold;
    line-height: 20px;
    color: inherit;
    text-rendering: optimizelegibility;
}

.h1,
.h2,
.h3 {
    font-size: 40px;
}

.h1 {
    font-size: 38.5px;
}

.h2{
    font-size: 31.5px;
}

.h3 {
    font-size: 24.5px;
}

.h4 {
    font-size: 17.5px;
}

.h5 {
    font-size: 14px;
}

.h6 {
    font-size: 11.9px;
}


}

/* ===== layout.css ===== */
@layer legacy {
/** FLOW LAYOUT - components align from left to right (or other way
around if layout-item right style is used) one next to other. Once they fill whole space
they start over in the next line. **/
.flow-layout{
    display: block;
    padding: 0.5em;
    /*padding-left: 0.5em;*/
    /*padding-right: 0.5em;*/
    width: auto;
    box-sizing: border-box;
}
.flow-layout.no-outer-margin{
    display: block;
    padding: 0;
}
.flow-layout.no-outer-margin-side{
    display: block;
    padding-left: 0;
    padding-right: 0;
}
.flow-layout:after{
    content: "";
    display: block;
    clear: both;
}
.flow-layout>.layout-item{
    display: inline-block;
    margin-left: 0.5em;
    margin-right: 0.5em;
    box-sizing: border-box;
}
.flow-layout.no-inner-margin>.layout-item{
    margin: 0;
}
.flow-layout>.layout-item.left{
    float: left;
}
.flow-layout>.layout-item.right{
    float: right;
}
.flow-layout>.layout-item.fill{
    display: block;
    overflow: hidden;
    width: auto;
}
.flow-layout.no-outer-margin>.layout-item.left{
    margin-left: 0;
}
.flow-layout.no-outer-margin>.layout-item.right{
    margin-right: 0;
}

.hp100 {height: 100%;}

.hpx200 {height: 200px;}
.hpx250 {height: 250px;}
.mhpx200{max-height: 200px;}
.mhpx400{max-height: 400px;}

.wp3 { width: 3%; }
.wp4 { width: 4%; }
.wp5 { width: 5%; }
.wp7 { width: 7%; }
.wp8 { width: 8%; }
.wp9 { width: 9%; }
.wp10 { width: 10%; }
.wp12 { width: 12%; }
.wp13 { width: 13%; }
.wp14 { width: 14%; }
.wp15 { width: 15%; }
.wp17 { width: 17%; }
.wp20 { width: 20%; }
.wp25 { width: 25%; }
.wp26 { width: 26%; }
.wp27 { width: 27%; }
.wp30 { width: 30%; }
.wp35 { width: 35%; }
.wp37 { width: 37%; }
.wp40 { width: 40%; }
.wp45 { width: 45%; }
.wp50 { width: 50%; }
.wp60 { width: 60%; }
.wp70 { width: 70%; }
.wp80 { width: 80%; }
.wp90 { width: 90%; }
.wp95 { width: 95%; }
.wp100 { width: 100%; }
.we10 { width: 1.0em; }
.we15 { width: 1.5em; }
.we20 { width: 2.0em; }
.we25 { width: 2.5em; }
.we30 { width: 3.0em; }
.we35 { width: 3.5em; }
.we40 { width: 4.0em; }
.we45 { width: 4.5em; }
.we50 { width: 5.0em !important; }
.we55 { width: 5.5em !important; }
.we60 { width: 6.0em !important; }
.we65 { width: 6.5em !important; }
.we70 { width: 7.0em; }
.we75 { width: 7.5em; }
.we80 { width: 8.0em; }
.we90 { width: 9.0em; }
.we100 { width: 10.0em; }
.we110 { width: 11.0em; }
.we120 { width: 12.0em; }
.we130 { width: 13.0em; }
.we140 { width: 14.0em; }
.we150 { width: 15.0em; }
.we160 { width: 16.0em; }
.we170 { width: 17.0em; }
.we180 { width: 18.0em; }
.we190 { width: 19.0em; }
.we200 { width: 20.0em; }
.we210 { width: 21.0em; }
.we220 { width: 22.0em; }
.we250 { width: 25.0em; }
.we270 { width: 27.0em; }
.we300 { width: 30.0em; }
.we350 { width: 35.0em; }
.we400 { width: 40.0em; }
.we480 { width: 48.0em; }

.minW1 { min-width: 1px; }

.float-left {
    float: left;
}

.float-right {
    float: right;
}


.layout-20-80-flexible{
    display:table;
}

.layout-20-80-flexible>.item-20{
    display:table-cell;
    width: 20%;
    min-width: 100px;
    max-width: 170px;
}

.layout-20-80-flexible>.item-80{
    display:table-cell;
    width:auto;
}

.entity-actions {
    display: block;
    width: 20%;
    min-width: 100px;
    max-width: 170px;
    float: left;

}

.entity-actions .btn {
    display: block;
    width: 85%;
    text-align: left;
    margin-right: 2px;
    margin: 1px;
}

.entity-block{
    display: block;
    float: left;
}
.entity-block .details-row > i.fa {
    width: 20px;
    min-width: 20px;
    text-align: center;
    color: #666;
}
.entity-block .details-row{
    font-size: 0.8rem;
}

.entity-title,
.entity-title .ui-widget{
    font-size: 0.9rem;
}
.entity-list-dt .entity-title {
    font-size: inherit;
}

.entity-title a.ui-link.ui-widget,
a.entity-link.ui-link.ui-widget,
a.entity-link.ui-commandlink.ui-widget,
a.external-link {
    color: #3b73af;
    text-decoration: none;
}

.instructions {
    color: #999;
    font-style: italic;
    margin-right: 1em;
}

/** HORIZONTAL SPLIT LAYOUT - components fill-up available space from left to
right, so that the available space gets split among the items. All the items have the same height. **/
.horizontal-split-layout{
    display: table;
    table-layout: fixed;
}
.horizontal-split-layout.condensed{
    width: auto;
}
.horizontal-split-layout>.layout-item{
    display:table-cell;
}

.horizontal-split-layout.space-items-apart{
    border-spacing: 0.5em;
}

/** CARD - components stack one beneath the other. All the items have the same width. **/
.card{
    display: block;
    border: 1px solid rgb(204,204,204);
    background: #ffffff;
    border-radius: 4px;
    padding: 2px;
}
.vertical-stack-layout>.layout-item{
    display:block;
}

/** ALIGNMENT **/
.top-aligned{
    vertical-align: top;
}
.middle-aligned{
    vertical-align: middle;
}
.middle-aligned-flex{
    display: flex;
    align-items: center;
}
.bottom-aligned{
    vertical-align: bottom;
}


/** FLEX LAYOUTS **/

.flex-row-left-aligned{
    display: flex;
    justify-content: left;
    align-items: baseline;
}
.flex-row-center-aligned{
    display: flex;
    justify-content: center;
    align-items: baseline;
}
.flex-row-right-aligned{
    display: flex;
    justify-content: right;
    align-items: baseline;
}
.flex-row-leftright-aligned-items-spaced-apart{
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.flex-column-topbottom-aligned-items-stretched{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: start;
}

.flex-grow-1{
}

/** GRID LAYOUTS **/
.grid-vertical-split{
    display: grid;
    grid-template-rows: repeat(auto-fit, minmax(200px, 1fr));
    grid-template-columns: 1fr;
    grid-gap: 1em;
}
.grid-layout.condensed{
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}
.grid-layout.condensed-small{}


/** MARGIN **/
.margin-left{
    margin-left: 0.5em;
}
.margin-right{
    margin-right: 0.5em;
}

.margin-light-left{
    margin-left: 0.2em;
}
.margin-light-right{
    margin-right: 0.2em;
}

.margin-strong{
    margin-left: 1em;
    margin-right: 1em;
    margin-top: 1em;
    margin-bottom: 1em;
}

/** PADDING **/
.top-padded-light{
    padding-top: 0.2em;
}
.top-padded{
    padding-top: 0.5em;
}
.top-padded-strong{
    padding-top: 1em;
}
.top-padded-extreme{
    padding-top: 4em;
}
.left-padded-light{
    padding-left: 0.2em;
}
.left-padded{
    padding-left: 0.5em;
}
.left-padded-strong{
    padding-left: 1em;
}
.left-padded-extreme{
    padding-left: 4em;
}
.right-padded-light{
    padding-right: 0.2em;
}
.right-padded{
    padding-right: 0.5em;
}
.right-padded-strong{
    padding-right: 1em;
}
.right-padded-extreme{
    padding-right: 4em;
}
.side-padded-light{
    padding-left: 0.2em;
    padding-right: 0.2em;
}
.side-padded{
    padding-left: 0.5em;
    padding-right: 0.5em;
}
.side-padded-strong{
    padding-left: 1em;
    padding-right: 1em;
}
.side-padded-extreme{
    padding-left: 4em;
    padding-right: 4em;
}
.padded-light{
    padding-left: 0.5em;
    padding-right: 0.5em;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}
.padded-strong{
    padding-left: 1em;
    padding-right: 1em;
    padding-top: 1em;
    padding-bottom: 1em;
}

.padded {
    padding: 0.5em;
}

.bottom-padded {
    padding-bottom: 0.5em;
}

/** MARGIN **/
.left-margin-06em{
    margin-left: 0.6em;
}

.left-margin {
    margin-left: 0.5em;
}

.side-margin {
    margin-left: 0.5em;
    margin-right: 0.5em;
}

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

.right-margin-light {
    margin-right: 0.5em;
}

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

.top-margin-06em {
    margin-top: 0.6em;
}

.top-margin-light {
    margin-top: 0.5em;
}

.top-margin-strong {
    margin-top: 1em;
}
.top-margin-extreme {
    margin-top: 5em;
}

.bottom-margin {
    margin-bottom: 0.5em;
}

.bottom-margin-light {
    margin-bottom: 0.5em;
}

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

.bottom-margin-double {
    margin-bottom: 2em;
}
.padded-bottom{
    padding-bottom: 1em;
}

.display-flex {
    display: flex;
}

.flex-horizontal-right {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}

.flex-horizontal-left {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
}

.flex-horizontal-center {
    display: flex;
    flex-direction: row;
    justify-content: center;
}


.flex-horizontal-valign-top {
    align-items: flex-start;
}

.flex-horizontal-valign-center {
    align-items: center;
}

.flex-horizontal-valign-baseline {
    align-items: baseline;
}

.flex-filler{
    flex: 1000;
}
.flex-wrap{
    flex-wrap: wrap;
}
.flex-horizontal-item-filler{
    flex: 1000;
}

.flex-vertical-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.flex-vertical-top {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.flex-vertical-bottom {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.flex-vertical-halign-left {
    align-items: flex-start;
}
.flex-vertical-halign-right {
    align-items: flex-end;
}
.flex-vertical-halign-center {
    align-items: center;
}
.flex-vertical-halign-stretch {
    align-items: stretch;
}


.no-margin {
    margin: unset !important;
}

.wpx5 { width: 5px; }
.wpx10 { width: 10px; }
.wpx20 { width: 20px; }
.wpx30 { width: 30px; }
.wpx40 { width: 40px; }
.wpx45 { width: 45px; }
.wpx50 { width: 50px; }
.wpx55 { width: 55px; }
.wpx60 { width: 60px; }
.wpx68 { width: 68px; }
.wpx70 { width: 70px; }
.wpx75 { width: 75px; }
.wpx80 { width: 80px; }
.wpx95 { width: 95px; }
.wpx100 { width: 100px; }
.wpx110 { width: 110px; }
.wpx120 { width: 120px; }
.wpx130 { width: 130px; }
.wpx140 { width: 140px; }
.wpx150 { width: 150px; }
.wpx160 { width: 160px; }
.wpx165 { width: 165px; }
.wpx175 { width: 175px; }
.wpx190 { width: 190px; }
.wpx200 { width: 200px; }
.wpx220 { width: 220px; }
.wpx225 { width: 225px; }
.wpx230 { width: 230px; }
.wpx250 { width: 250px; }
.wpx260 { width: 260px; }
.wpx270 { width: 270px; }
.wpx275 { width: 275px; }
.wpx300 { width: 300px; }
.wpx305 { width: 305px; }
.wpx330 { width: 330px; }
.wpx350 { width: 350px; }
.wpx400 { width: 400px; }
.wpx420 { width: 420px; }
.wpx425 { width: 425px; }
.wpx445 { width: 445px; }
.wpx470 { width: 470px; }
.wpx500 { width: 500px; }
.wpx525 { width: 525px; }
.wpx550 { width: 550px; }
.wpx600 { width: 600px; }
.wpx650 { width: 650px; }
.wpx675 { width: 675px; }
.wpx700 { width: 700px; }
.wpx800 { width: 800px; }
.wpx920 { width: 920px; }
.wpx930 { width: 930px; }
}

/* ===== wizard.css ===== */
@layer legacy {
/******* PF wizard ********/
.ui-wizard-step-titles {

}

.ui-wizard-step-titles .ui-wizard-step-title {
    float: none;
    display: inline-block;
    cursor: default;
    color: #aaa;
    text-align: center;
    width: 10em;

    background-color: #f6f6f6;
    background-image: none;

    border-color: transparent;
    border-radius: 0;

    box-shadow: none;
}

.ui-wizard-step-titles .ui-wizard-step-title.ui-state-highlight {
    color: #333;

    background-color: #fff;
    background-image: none;
}

.ui-wizard-content {
    background-color: white;
    padding: .5em;
    margin: 0px;
}

.ui-wizard-content .ui-grid-row > label {
    position: relative;
    font-weight: bold;
    font-size: small;
    margin-bottom: 5px;
    width: 100%;
}

.ui-wizard-content .ui-grid-row > label:after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: -2px;
    height: 1px;
    width: 100%;
    /** background-image: linear-gradient(to right, #0088cc, transparent); **/
}

.ui-wizard-content .ui-grid-row .field-value {
    margin-bottom: 1em;
}

.ui-wizard-content .ui-grid-row .field-value > .field-controls {
    float: right;
}

.ui-wizard-content .ui-grid-row .wizard-navigation {
    width: 100%;
    text-align: left;
}

.ui-wizard-content .ui-grid-row .wizard-navigation > button {
    width: 10em;
}

.ui-wizard-content span.todo {
    display: none;
    unicode-bidi: embed;
    font-family: monospace;
    white-space: pre;
    font-size: medium;
    color: orangered;
}
.ui-wizard-content span.todo.q {
    color: blueviolet;
}

.ui-wizard-content .ui-datalist .ui-datalist-data li.ui-datalist-item{
    display: block;
}


/******* Lookup details ******/

.ui-wizard .details-row {
    margin-top: 0.5em;
}

.ui-wizard .details-row > i.fa {
    width: 30px;
    text-align: center;
}

}

/* ===== tableStyling.css ===== */
@layer legacy {
/** ALERTS **/
.datatable-row-obsolete{
    color: #000000 !important;
    background-color: #cfcfcf !important;
    background-image: none !important;
}
.datatable-row-success{
    color: #468847 !important;
    background-color: #dff0d8 !important;
    background-image: none !important;
}

.datatable-row-info{
    color: #3a87ad !important;
    background-color: #d9edf7 !important;
    background-image: none !important;
}

.datatable-row-error{
    color: #b94a48 !important;
    background-color: #f2dede !important;
    background-image: none !important;
}

.datatable-row-valid{
    color: #000000 !important;
    background-color: #cfffd9 !important;
    background-image: none !important;
}

.ui-datatable tr.datatable-row-attention{
    color: #ec6f00;
    background-color: #ffe5ce;
    background-image: none;
}

.ui-datatable tr.datatable-row-attention.ui-state-highlight{
    color: #ffe5ce;
    background-color: #ec6f00;
    background-image: none;
}

.ui-datatable tr.datatable-row-same{
    color: #6f9338;
    background-color: #c6f78e;
    background-image: none;
}

.ui-datatable tr.datatable-row-same.ui-state-highlight{
    color: #c6f78e;
    background-color: #6f9338;
    background-image: none;
}

.ui-datatable tr.datatable-row-changed{
    color: #AE563E;
    background-color: #FFA992;
    background-image: none;
}

.ui-datatable tr.datatable-row-changed.ui-state-highlight{
    color: #FFA992;
    background-color: #AE563E;
    background-image: none;
}

.ui-datatable tr.datatable-row-new{
    color: #AE9B3E;
    background-color: #FFEC92;
    background-image: none;
}

.ui-datatable tr.datatable-row-new.ui-state-highlight{
    color: #FFEC92;
    background-color: #AE9B3E;
    background-image: none;
}

.ui-datatable tr.datatable-row-deprecated{
    text-decoration: line-through;
}

.ui-datatable tr.datatable-row-current{
    color: #3a87ad ;
    background-color: #d9edf7;
    background-image: none;
}
.ui-datatable tr.datatable-row-current.ui-state-highlight{
    color: #d9edf7 ;
    background-color: #3a87ad;
    background-image: none;
}
.noHeader.ui-datatable table thead tr {
    display: none;
}

/* subtable */
.ui-datatable tr.ui-expanded-row-content{
    background-color: #eaeaea;
}

.ui-datatable tr.ui-expanded-row-content>td{
    padding: 0px 0px 4px 10px !important
}

.ui-datatable tr.ui-expanded-row-content tr.ui-widget-content.ui-datatable-odd{
    background: #eaeaea;
}
.ui-datatable tr.ui-expanded-row-content tr.ui-widget-content.ui-datatable-even{
    background: #efefef;
}
.ui-datatable tr.ui-expanded-row-content tr.ui-widget-content:hover{
    background: #f0f0f0;
}

.ui-datatable tr.ui-expanded-row-content>td>*{
    background-color: white;
}

/* table utils */
table td.content-fit{
    word-wrap: break-word;
    white-space: pre;
}

/* light tint for account entry rows by side (debit = Soll, credit = Haben) */
.account-entry-credit{
    background-color: #ecf6ec;
}

.account-entry-debit{
    background-color: #fdecec;
}
}

/* ===== lookup.css ===== */
@layer legacy {
span.more > span {
    font-size: smaller;
    border: 1px solid #666;
    border-radius: 3px;
    padding: 1px;
    color: #666;
}

/*.ui-tooltip .more ul.ui-datalist-data {*/
/*    margin: .5em;*/
/*    padding-left: 1.5em;*/
/*}*/


}

/* ===== crud.css ===== */
@layer legacy {
body.crudContent {

}

body.crudContent .title-addon .btn,
.crud .title .title-addon .btn{
    margin: 0em .3em;
    min-width: 7em;
    text-align: left;
}

.crud {

}
.crud.crud-dialog {
    padding: 0 1em;
}

.crud .ui-tabs-panels {
    padding: 0 2px 2px 2px;
    margin-bottom: 1em;
}

.crud .ui-messages.ui-widget {
    margin: 10px;
}

.crud .align-right {
    text-align: right;
}


.crud .ui-tabs.ui-tabs-top {
    border-bottom: none;
}
.crud .ui-tabs .ui-tabs-panel {
    padding: 1em 0 0 0;
}

/*.ui-tabs .ui-widget-header {*/
/*    border: none;*/
/*}*/

div.crud.section,
.crud div.section{
    background-color: #FFF;
    margin: 4px 4px;
}

div.crud.section .subsection,
.crud div.section .subsection{
    background-color: #eee;
    margin: 10px 5px;
}

.subsection .subsection-title{
    font-size: larger !important;
    padding: 0px 0px 10px 10px;
    padding: 5px 5px 0px 10px;
    display: block;
}

.crud div.section-filter {
    padding: 4px 0px;
    float: right;
}

.crud .listItem .section-title {
    font-size: large !important;
    font-weight: bold; !important;
    padding: 0px 0px 10px 10px;
}

.crud label.section-label {
    font-size: medium !important;
}
.crud label.section-label button{
    margin-left: 1em;
}
.crud label.small-label {
    font-size: 0.98em !important;
}

.crud .ui-datalist-header label.section-label {
    padding: 4px 0px !important;
}

.crud label:not(.ui-selectonemenu-label):not(.ui-paginator-rpp-label):not(.ui-helper-hidden),
.crud .ui-widget label:not(.ui-selectonemenu-label):not(.ui-paginator-rpp-label):not(.ui-selectcheckboxmenu-label):not(.ui-helper-hidden) {
    padding: 2px 6px 0px;
    display: inline-block;
    font-size: small;
    font-weight: bold;
}
.crud label.ui-state-error {
    border: none;
    background: inherit;
    color: #b94a48;
}

.crud .general-info .value {
    font-weight: bold;
}

.crud label.ui-state-disabled {
    background: none;
    opacity: 0.4;
}

.crud .value-aligned {
    padding: 2px 6px 3px;
    display: block;
}
.crud .value {
    padding: 2px 6px 3px;
    display: block;
    font-size: 15px;
}

.crud .value.dontmessupfonts {
    padding: 2px 6px 3px;
    display: block;
    font-size: inherit;
}

.crud .entity-info .value {
    font-weight: bold;
}

.crud .value.condensed {
    padding-top: 0px;
    padding-bottom: 0px;
}

.crud .value.with-sublist {
    padding: 0px;
}

.crud .value.entity {
    font-size: inherit;
}

.crud .value.small {
    font-size: small;
}

.crud .value .details-row > i.fa {
    width: 20px;
    min-width: 20px;
    text-align: center;
    color: #666;
}

.crud .details-row {
    font-weight: normal;
}

.crud .value .ui-widget-content {
    border: none;
}
.crud .value .section .ui-widget-content {
    border: 1px solid #dddddd;
}

.crud .ui-widget-content.ignoreWidgetDefault .ui-widget-header,
      .ui-widget-content.ignoreWidgetDefault .ui-carousel-button {
    background-color: white;
    border: none;
}

.crud tr.ui-widget-content:hover {
    background-color: #eee;
}

.crud .ui-datalist .ui-datalist-header {
    border: none;
    background-color: transparent;
    padding: 0px;
    text-align: left;
}

.crud .value .ui-datalist .ui-datalist-empty-message {
    padding: 0;
    font-style: italic;
}

.crud .value .ui-datalist .ui-datalist-data {
    margin: 0px;
    padding: 0px;
    list-style: none;
}

/** When using a rowExpansion in a table so some kind of a sub table **/
.crud .value .ui-expanded-row-content .ui-datalist .ui-datalist-data .ui-datalist-item {
    margin: 0px 0px 3px;
    background-color: #f6f6f6;
}
.crud .value .ui-datalist .ui-datalist-data .ui-datalist-item {
    margin: 5px 0px;
    background-color: #f6f6f6;
}
.crud .value .ui-datalist .ui-datalist-data .ui-datalist-item span:not(.ui-chkbox-label) {
    vertical-align: middle;
}
.crud .value .ui-datalist .ui-datalist-data .ui-datalist-item a.btn-info:hover + span {
    color: #31b0d5;
}
.crud .value .ui-datalist .ui-datalist-data .ui-datalist-item a.btn-danger:hover + span {
    color: #c9302c;
}

.crud .value .ui-datalist .ui-datalist-data .ui-datalist-item:hover {
    background-color: #eee;
}

.crud .actions-trigger .flex-actions .btn {
    width: 90%;
    text-align: center;
}

.crud .actions-trigger .actions .btn {
    margin: 1px;
    width: 90%;
    text-align: left;
}

.crud .actions-trigger .flex-actions.stacked .btn,
.crud .actions-trigger .actions.stacked .btn {
    width: auto;
}

.crud .actions-trigger .flex-actions {
    visibility: hidden;
}

.crud .actions-trigger .actions {
    display: none;
}

.crud .actions-trigger:hover .flex-actions {
    visibility: visible;
}

.crud .actions-trigger:hover .actions {
    display: inline-block;
}

/* Workaround due to PF6 Bug? - see https://github.com/primefaces/primefaces/issues/244#issuecomment-214228742 */
.ui-selectonemenu {
    min-width: 0 !important;
}

/** this max-width is some pfusch unfortunatelly applied to the whole application. But I cannot use it in the wizard therefor I have to add this shitty check**/
.crud .value:not(.wizard-field) div.ui-selectonemenu,
.crud .value:not(.wizard-field) textarea,
.crud .value:not(.wizard-field) input:not(.ui-spinner-input) {
    max-width: 350px;
}

.crud .value div.ui-selectonemenu,
.crud .value textarea,
.crud .value input:not(.ui-spinner-input) {
    width: 100%;
}

.crud .value.noMaxWidth span.ui-autocomplete,
.crud .value.noMaxWidth textarea,
.crud .value.noMaxWidth input {
    max-width: none;
}

.crud .value span.pe-timepicker,
.crud .value input.pe-timepicker-input  {
    max-width: 80px;
    min-width: 50px;
}

.crud .value:not(.longCalendar) input.hasDatepicker {
    width: auto;
    min-width: 6.5em;
    max-width: 6.5em;
}
.crud .value .longCalendar input.hasDatepicker {
    width: auto;
    min-width: 170px;
    max-width: 180px;
}

.crud .value.date-time input.hasDatepicker {
    width: auto;
    min-width: 120px;
    max-width: 150px;
}

.crud .value span.ui-autocomplete input.ui-autocomplete-input {
    width: auto;
}
.crud .value div.ui-selectonemenu {
    width: 92%;
}

.crud .value input.pe-timepicker-input {
    width: 85%;
}
.crud .value .pe-timepicker-trigger {
    margin: 0px;
    height: 1.8em;
    width: 2em;
}

.crud .ui-selectonemenu-trigger,
.crud .ui-selectonemenu-label {
    border: unset;
}

.crud .value .ui-selectonemenu .ui-selectonemenu-trigger .ui-icon {
    margin-top: 0.5em;
}
.crud .value .ui-selectonemenu .ui-selectonemenu-trigger {
    padding: 0 0.5em;
}
.crud .empty-dependent-select {
    font-style: italic;
    color: silver;
}


.crud .ui-button-text-only .ui-button-text {
    padding: .2em 1em;
}

.crud .value input.dial {
    max-width: initial;
    min-width: initial;
}

.crud .fourCharInput {
    max-width: 60px;
    min-width: 50px;
}

.crud .sixCharInput {
    max-width: 90px;
    min-width: 75px;
}

.crud .eightCharInput {
    max-width: 140px;
    min-width: 120px;
}

.crud .twentyCharInput {
    max-width: 300px;
    min-width: 250px;
}


/** checkbox, radio labels **/
.crud .ui-widget.ui-selectmanycheckbox label,
.crud .ui-widget.ui-selectoneradio label{
    display: inline-block !important;
    padding: 3px;
}

.crud .ui-widget.ui-selectmanycheckbox.showAsActiveInAnyStatus {
    background: none;
    font-weight: normal !important;
}

.crud .ui-widget.ui-selectmanycheckbox.showAsActiveInAnyStatus label.ui-state-disabled {
    opacity: 100;
}



.crud .action-buttons {
    margin-top: 1em;
}

.crud .action-buttons a.btn {
    margin-right: .5em;
}


.crud .entity-actions {
    display: block;
    width: 30%;
    min-width: 100px;
    max-width: 170px;
    float: left;

}

.crud .entity .entity-actions .btn {
    display: block;
    width: 85%;
    text-align: left;
    margin: 1px;
}

.crud .ui-tooltip .entity-title a.ui-link.ui-widget,
.crud .ui-tooltip a.entity-link.ui-link.ui-widget,
.crud .ui-state-highlight a.entity-link.ui-link.ui-widget,
.crud .ui-tooltip a.entity-link.ui-commandlink.ui-widget,
.crud .ui-tooltip a.external-link {
    color: #ffffff;
    text-decoration: none;
}

.crud .section-button {
    margin-left: 1em;
}

.crud .entity-title a.ui-link.ui-widget:hover,
.crud a.entity-link.ui-link.ui-widget:hover,
.crud a.entity-link.ui-commandlink.ui-widget:hover,
.crud a.external-link:hover {
    color: #2860af;
    transition: color 1s ease;
    text-decoration: underline;
}

.crud .listItem,
      .ui-widget-content.listItem .ui-carousel-viewport,
      .ui-widget-content.listItem .ui-carousel-item.ui-widget-content  {
    margin: 5px 0px;
    background-color: #f6f6f6;
}

.crud .value div.ui-selectonemenu.max125,
.crud .value span.ui-autocomplete.max125 input.ui-autocomplete-input,
.crud .value.max125{
    min-width: 100px !important;
    max-width: 125px !important;
}

.crud .value div.ui-selectonemenu.max180,
.crud .value span.ui-autocomplete.max180 input.ui-autocomplete-input{
    min-width: 150px;
    max-width: 180px;
}

.crud .value div.ui-selectonemenu.max40,
.crud .value .ui-inputNum.max40 .pe-inputNumber {
    min-width: 40px;
    max-width: 40px;
}

.crud .value div.ui-selectonemenu.max65,
.crud .value .ui-inputNum.max65 .pe-inputNumber {
    min-width: 65px;
    max-width: 65px;
}

.crud .value div.ui-selectonemenu.max80,
      .value .ui-inputNum.max80 .pe-inputNumber,
.crud .value.max80 {
    min-width: 80px !important;
    max-width: 80px !important;
}

.crud .value span.ui-autocomplete.max250 input.ui-autocomplete-input,
.crud .value .ui-inputfield.ui-inputtext.max250 {
    min-width: 150px;
    max-width: 250px;
}

.crud .value span.ui-autocomplete.max275 input.ui-autocomplete-input,
.crud .value .ui-inputfield.ui-inputtext.max275 {
    min-width: 175px;
    max-width: 275px;
}

.crud .value.max50 input {
    min-width: 40px;
    max-width: 50px !important;
}


.crud .value span.ui-autocomplete.width50 input.ui-autocomplete-input,
.crud .value .ui-inputfield.ui-inputtext.width50,
.crud .value .width50 input.ui-spinner-input {
    width: 50px;
}

.crud .value span.ui-autocomplete.width70 input.ui-autocomplete-input,
.crud .value .ui-inputfield.ui-inputtext.width70,
.crud .value .width70 input.ui-spinner-input {
    width: 70px;
}

.crud .value span.ui-autocomplete.width70 input.ui-autocomplete-input,
.crud .value .ui-inputfield.ui-inputtext.width70,
.crud .value .width70 input.ui-spinner-input {
    width: 70px;
}

.crud .value span.ui-autocomplete.width70 input.ui-autocomplete-input,
.crud .value .ui-inputfield.ui-inputtext.width70,
.crud .value .width70 input.ui-spinner-input {
    width: 70px;
}

.crud .value span.ui-autocomplete.width300 input.ui-autocomplete-input,
.crud .value .ui-inputfield.ui-inputtext.width300 {
    width: 300px;
}

.crud .value span.ui-autocomplete.width300 input.ui-autocomplete-input,
.crud .value .ui-inputfield.ui-inputtext.width300 {
    width: 330px;
}

.crud .value span.ui-calendar.dateSelector {
    min-width: 100px;
    max-width: 150px;
}

/**
    There should be always some padding right so that the fields more or less will look like they have the same size.
    Due to css in primefaces as well as in amadee you cannot just simply use a right-padding or so as some fields will not be 100% by default, some have another
    padding and so on.
    So I invented some special css field that should be just used in the wizard. This will remove lots of paddings from the original components or amadee
 **/

.crud .wizard-sectionHeader {
    font-size: x-large !important;
}

.crud .wizard-field.rpad-strong {
    padding-right: 2em !important;
    margin-right: 0 !important;
}
.crud .wizard-field.rpad {
    padding-right: 1em !important;
    margin-right: 0 !important;
}
.crud .wizard-field .ui-autocomplete {
    width: 100%;
}
.crud .wizard-field .ui-autocomplete input:not(.ui-spinner-input) {
    width: 95% !important;
}
.crud .wizard-field .ui-selectonemenu {
    width: 100% !important;
    padding-right: 0;
}
.crud .wizard-field .ui-inputfield {
    padding-right: 0;
    padding-left: 2px;
}

.crud .value span.ui-spinner,
.crud .value input.ui-spinner-input {
    min-width: initial;
    max-width: initial;
}

.personEditor-mergeDialog.ui-selectoneradio label {
    min-width: 150px;
}

.crud .value input.ui-spinner-input {
    width: initial;
}

.crud .value.preWrap {
    white-space: pre-wrap;
}

.crud .ui-grid-row.dialogInnerButtons {
    position:absolute;
    bottom: 10px;
    left: 10px;
}

.crud .ui-widget .dialogInnerWidth {
    position: relative;
    min-height: 480px;
}

.crud .page-content .ui-datalist {
    margin-left: 0.5em;
    margin-right: 0.5em;
}
/* Fixing collisions between .crud and .frm (frm.css now lives in the general layer). These counter the
   .crud label padding (crud.css above) and the .crud .page-content .ui-datalist margin (just above) for
   forms; they stay in legacy alongside what they fight and go out once .crud goes out. */
.crud .frm .frm-item .frm-label{
   padding:0 !important;
}
.crud .page-content .frm  .ui-datalist{
    margin:0 !important;
}

.crud .ui-paginator {
    padding: 0.5em 0;
    border: unset;
}

.crud .ui-datatable-header,
.crud .ui-panelmenu-content {
    border: unset;
}

.crud .ui-wizard-content {
    border-radius: 0 .3em .3em .3em;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14),0 3px 1px -2px rgba(0,0,0,0.12),0 1px 5px 0 rgba(0,0,0,0.2);
}

.crud .ui-wizard-step-title {
    border-radius: .3em .3em 0 0;
    box-shadow: -2px -2px 2px 0 rgba(0,0,0,0.07);
}

.crud > .ui-datatable.entity-list-dt  {
    padding-top: 1em;
    padding-bottom: 0.5em;
    /*padding-left: 1em;*/
    /*padding-right: 1em;*/
    border-radius: .3em;
    background: #f5f5f5;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14),0 3px 1px -2px rgba(0,0,0,0.12),0 1px 5px 0 rgba(0,0,0,0.2);
}

.crud .ui-picklist .ui-picklist-list{
    height:450px;
}

.crud .ui-picklist .ui-picklist-list-wrapper {
    width: 45%;
}

.crud .ui-selectcheckboxmenu .ui-selectcheckboxmenu-trigger {
    height: 93%;
}

.crud .ui-selectcheckboxmenu .ui-selectcheckboxmenu-token {
    font-size: 0.98rem;
}

.crud .ui-rating.ui-state-disabled {
    background-color: inherit;
}
}

/* ===== statuses.css ===== */
@layer legacy {
/*
Status coloring
*/

.ui-state-highlight .status,
.ui-state-highlight.status {
    color: #000000;
}

/* fa coloring */

i.orstatus-PENDING {
    color: #cae9f6;
    padding-right: 5px;
}

i.orstatus-NEW,
i.orstatus-OPTEDIN,
i.statusIcon.PLANNED,
i.statusIcon.DRAFT,
i.statusIcon.RESERVED,
i.a4e-statusIcon.ACCEPTED {
    color: #d9edf7;
    padding-right: 5px;
}

i.orstatus-REJECTED,
i.statusIcon.CANCELLED,
i.statusIcon.DISCARDED,
i.statusIcon.EXPIRED,
i.statusIcon.INACTIVE,
i.a4e-statusIcon.REJECTED,
i.a4e-statusIcon.REVOKED,
i.a4e-statusIcon.TRASHED,
i.a4e-statusIcon.EXPIRED {
    color: #f2dede;
    padding-right: 5px;
}

i.orstatus-COMPLETED,
i.statusIcon.ACCEPTED,
i.statusIcon.ACTIVE,
i.statusIcon.PROCESSED,
i.statusIcon.HANDED_OUT,
i.statusIcon.RETURNED,
i.a4e-statusIcon.ACTIVE
{
    color: #dff0d8;
    padding-right: 5px;
}

/* status div background settings */

div .orstatus.PENDING {
    background-color: #cae9f6;
}

div .orstatus.NEW,
div .orstatus.OPTEDIN,
div .status.PLANNED,
div .status.DRAFT,
div .status.RESERVED,
div .journal-status.UnknownLessonJournal,
div .journal-status.ProvisionalLessonJournal,
div .a4e-status.ACCEPTED,
div .message-status.OPEN_WAITING,
div .message-status.DRAFT,
div .import-status.IN_PROGRESS,
div .export-status.STARTING,
div .export-status.STARTED,
div .template-status.OK,
div .template-status.PREDEFINED,
div .person-status.GDPR_RETENTION,
div .utilization.UNDERSTAFFED,
div .status-journal.PROVISIONAL,
div .status-journal.UNKNOWN{
    background-color: #d9edf7;
}

div .orstatus.COMPLETED,
div .status.ACCEPTED,
div .status.ACTIVE,
div .status.PROCESSED,
div .journal-status.HeldLessonJournal,
div .status.HANDED_OUT,
div .status.RETURNED,
div .a4e-status.ACTIVE,
div .import-status.SUCCESS,
div .export-status.COMPLETED,
div .message-status.DONE,
div .utilization.COMPLETE,
div .person-status.ACTIVE,
div .entity.isBooked.true,
div .status-journal.HELD,
td.isBooked.true {
    background-color: #ececdd;
}

div .import-status.ERRORS {
    background-color: #E3E8CDFF;
}

div .orstatus.REJECTED,
div .status.CANCELLED,
div .status.DISCARDED,
div .status.EXPIRED,
div .status.INACTIVE,
div .journal-status.NotHeldLessonJournal,
div .status.SUSPENDED,
div .import-status.FAILED,
div .a4e-status.REJECTED,
div .a4e-status.REVOKED,
div .a4e-status.TRASHED,
div .a4e-status.EXPIRED,
div .export-status.STOPPING,
div .export-status.STOPPED,
div .export-status.FAILED,
div .export-status.ABANDONED,
div .export-status.UNKNOWN,
div .message-status.OPEN,
div .template-status.OBSOLETE,
div .utilization.OVERSTAFFED,
div .person-status.TRASHED,
div .person-status.GDPR_FORGOTTEN,
div .sofException.cancelled.true,
div .manualCompensable.likeCancelled.true,
div .entity.isBooked.false,
td.isBooked.false,
div .status-journal.NOT_HELD{
    background-color: #f2dede;
}

div .family.member.observed.true {
    background-color: #dddddd;
}

div .family.member.observed.false {
    background-color: inherit;
}

div .isAcceptedAndInactive.true {
    background-color: #d1cfcf;
}

div .indicateDisabled.true {
    color: #d1cfcf;
}

div .attendance-note.true {
    background-color: #ffffc0 !important;
}

div.isORHidden.true {
    opacity: 60%;
}

div .score.LOW {
    background-color: #ecf6e8;
}
div .score.MEDIUM {
    background-color: #c3dcb9;
}
div .score.HIGH {
    background-color: #7aa47a;
}
div .score.VERY_HIGH {
    background-color: #447e44;
    color: #ffffff;
}

.password-weak{
    background-color: #f2dede;
    color: #a94442;
}
.password-strong {
    background-color: #ecf6e8;
    color: #3c763d;
}
}

/* ===== fonts.css ===== */
@layer legacy {
/* cyrillic-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 300;
    src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v15/0eC6fl06luXEYWpBSJvXCBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 300;
    src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v15/Fl4y0QdOxyyTHEGMXX8kcRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 300;
    src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v15/-L14Jk06m6pUHB-5mXQQnRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+1F00-1FFF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 300;
    src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v15/I3S1wsgSg9YCurV6PUkTORJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0370-03FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* vietnamese */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 300;
    src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v15/NYDWBdD4gIq26G5XYbHsFBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 300;
    src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v15/Pru33qjShpZSmG3z6VYwnRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 300;
    src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v15/Hgo13k-tfSpn0qi1SFdUfVtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/ek4gzZ-GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
    unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/mErvLBYg_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/-2n2p-_Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
    unicode-range: U+1F00-1FFF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/u0TOpm082MNkS5K0Q4rhqvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
    unicode-range: U+0370-03FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* vietnamese */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/NdF9MtnOpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
    unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/Fcx7Wwv8OzT71A3E1XOAjvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
    unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/CWB0XYA8bzo0kSThX0UTuA.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/ZLqKeelYbATG60EpZBSDyxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/oHi30kwQWvpCWqAhzHcCSBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/rGvHdJnr2l75qb0YND9NyBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+1F00-1FFF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/mx9Uck6uB63VIKFYnEMXrRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0370-03FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* vietnamese */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/mbmhprMH69Zi6eEPBYVFhRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/oOeFwZNlrTefzLYmlVV1UBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/77FXFjRbGzN4aCrSFhlh3hJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/isZ-wbCXNKAbnjo6_TwHThJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/UX6i4JxQDm3fVTc1CPuwqhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+1F00-1FFF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/jSN2CGVDbcVyCnfJfjSdfBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0370-03FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* vietnamese */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/PwZc-YbIL414wB9rB1IAPRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/97uahxiqZRoncBaCEI3aWxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
    unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/d-6IYplOFocCacKzxwXSOFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 300;
    src: local('Roboto Light Italic'), local('Roboto-LightItalic'), url(https://fonts.gstatic.com/s/roboto/v15/7m8l7TlFO-S3VkhHuR0atzTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
    unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 300;
    src: local('Roboto Light Italic'), local('Roboto-LightItalic'), url(https://fonts.gstatic.com/s/roboto/v15/7m8l7TlFO-S3VkhHuR0atzUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 300;
    src: local('Roboto Light Italic'), local('Roboto-LightItalic'), url(https://fonts.gstatic.com/s/roboto/v15/7m8l7TlFO-S3VkhHuR0at0bcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
    unicode-range: U+1F00-1FFF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 300;
    src: local('Roboto Light Italic'), local('Roboto-LightItalic'), url(https://fonts.gstatic.com/s/roboto/v15/7m8l7TlFO-S3VkhHuR0at2o_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
    unicode-range: U+0370-03FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* vietnamese */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 300;
    src: local('Roboto Light Italic'), local('Roboto-LightItalic'), url(https://fonts.gstatic.com/s/roboto/v15/7m8l7TlFO-S3VkhHuR0at76up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
    unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 300;
    src: local('Roboto Light Italic'), local('Roboto-LightItalic'), url(https://fonts.gstatic.com/s/roboto/v15/7m8l7TlFO-S3VkhHuR0atyYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
    unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 300;
    src: local('Roboto Light Italic'), local('Roboto-LightItalic'), url(https://fonts.gstatic.com/s/roboto/v15/7m8l7TlFO-S3VkhHuR0at44P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 400;
    src: local('Roboto Italic'), local('Roboto-Italic'), url(https://fonts.gstatic.com/s/roboto/v15/WxrXJa0C3KdtC7lMafG4dRTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
    unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 400;
    src: local('Roboto Italic'), local('Roboto-Italic'), url(https://fonts.gstatic.com/s/roboto/v15/OpXUqTo0UgQQhGj_SFdLWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 400;
    src: local('Roboto Italic'), local('Roboto-Italic'), url(https://fonts.gstatic.com/s/roboto/v15/1hZf02POANh32k2VkgEoUBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
    unicode-range: U+1F00-1FFF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 400;
    src: local('Roboto Italic'), local('Roboto-Italic'), url(https://fonts.gstatic.com/s/roboto/v15/cDKhRaXnQTOVbaoxwdOr9xTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
    unicode-range: U+0370-03FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* vietnamese */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 400;
    src: local('Roboto Italic'), local('Roboto-Italic'), url(https://fonts.gstatic.com/s/roboto/v15/K23cxWVTrIFD6DJsEVi07RTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
    unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 400;
    src: local('Roboto Italic'), local('Roboto-Italic'), url(https://fonts.gstatic.com/s/roboto/v15/vSzulfKSK0LLjjfeaxcREhTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
    unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 400;
    src: local('Roboto Italic'), local('Roboto-Italic'), url(https://fonts.gstatic.com/s/roboto/v15/vPcynSL0qHq_6dX7lKVByfesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 500;
    src: local('Roboto Medium Italic'), local('Roboto-MediumItalic'), url(https://fonts.gstatic.com/s/roboto/v15/OLffGBTaF0XFOW1gnuHF0TTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
    unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 500;
    src: local('Roboto Medium Italic'), local('Roboto-MediumItalic'), url(https://fonts.gstatic.com/s/roboto/v15/OLffGBTaF0XFOW1gnuHF0TUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 500;
    src: local('Roboto Medium Italic'), local('Roboto-MediumItalic'), url(https://fonts.gstatic.com/s/roboto/v15/OLffGBTaF0XFOW1gnuHF0UbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
    unicode-range: U+1F00-1FFF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 500;
    src: local('Roboto Medium Italic'), local('Roboto-MediumItalic'), url(https://fonts.gstatic.com/s/roboto/v15/OLffGBTaF0XFOW1gnuHF0Wo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
    unicode-range: U+0370-03FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* vietnamese */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 500;
    src: local('Roboto Medium Italic'), local('Roboto-MediumItalic'), url(https://fonts.gstatic.com/s/roboto/v15/OLffGBTaF0XFOW1gnuHF0b6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
    unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 500;
    src: local('Roboto Medium Italic'), local('Roboto-MediumItalic'), url(https://fonts.gstatic.com/s/roboto/v15/OLffGBTaF0XFOW1gnuHF0SYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
    unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 500;
    src: local('Roboto Medium Italic'), local('Roboto-MediumItalic'), url(https://fonts.gstatic.com/s/roboto/v15/OLffGBTaF0XFOW1gnuHF0Y4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 700;
    src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url(https://fonts.gstatic.com/s/roboto/v15/t6Nd4cfPRhZP44Q5QAjcCzTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
    unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* cyrillic */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 700;
    src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url(https://fonts.gstatic.com/s/roboto/v15/t6Nd4cfPRhZP44Q5QAjcCzUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 700;
    src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url(https://fonts.gstatic.com/s/roboto/v15/t6Nd4cfPRhZP44Q5QAjcC0bcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
    unicode-range: U+1F00-1FFF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* greek */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 700;
    src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url(https://fonts.gstatic.com/s/roboto/v15/t6Nd4cfPRhZP44Q5QAjcC2o_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
    unicode-range: U+0370-03FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* vietnamese */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 700;
    src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url(https://fonts.gstatic.com/s/roboto/v15/t6Nd4cfPRhZP44Q5QAjcC76up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
    unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin-ext */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 700;
    src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url(https://fonts.gstatic.com/s/roboto/v15/t6Nd4cfPRhZP44Q5QAjcCyYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
    unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}
/* latin */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 700;
    src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url(https://fonts.gstatic.com/s/roboto/v15/t6Nd4cfPRhZP44Q5QAjcC44P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
}

.font-small{
    font-size: 12px;
}

.font-normal{
    font-size: 15px;
}

.font-larger{
    font-size: 16px;
}

a.link-normal{
    color: #2860af;
    transition: color 1s ease;
    text-decoration: underline;
}
a.link-inverse{
    color: #ffffff;
    transition: color 1s ease;
    text-decoration: underline;
}

}

/* ===== amadeeCore.css ===== */
@layer legacy {
@font-face {
    font-family: Amadee;
    src: url(../font/truetype.ttf);
}

.hidden { display: none !important; }
.no-padding { padding: unset !important; }

.ui-widget {
    font-family: "Roboto", "Amadee", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

html{
    height: 100%;
}

body{
    margin: 0;
    padding: 0;
    font-size: 0.8rem;
    font-family: "Roboto", "Amadee", "Helvetica Neue", Helvetica, Arial, sans-serif;
    height: inherit;

    background-color: #DDD;
}

body.in-dialog {
    background-color: #fff;
    box-sizing: border-box;
    display: block;
}





/*if something's not highlighted within somethings what's highlighted*/
.ui-state-highlight  .ui-state-default .ui-icon{
    background-image:url("../../../faces/javax.faces.resource/images/ui-icons_333333_256x240.png?ln=primefaces-bootstrap")
}



/* disabled too light */
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
    opacity: .7;
    filter: Alpha(Opacity=70);
    background-image: none;
}

/* toolbar can have a caption */
.ui-toolbar .caption{
    height: 1.8em;
    box-sizing: border-box;
    font-weight: bold;
    font-size: 1.2em;
    padding-top: 0.4em;
    margin-right: 0.1em;
}
/* toolbar can have a spacer */
.ui-toolbar .spacer{
    height: 0.2em;
    width: 0.2em;
    display: inline-block;
}

/** FORM **/
.form-inline{
    display: flex;
}
.form-regular.padded{
    padding-top: 2em;
    padding-bottom: 1.8em;
}
.form-regular .ui-grid-row{
    padding-top: 0em;
}
.form-regular .ui-grid-row .ui-grid-row{
    padding-top: 0;
}
.form-regular .ui-grid-row{
    padding-top: 0em;
}
.form-inline .form-label,
.form-regular .form-label{
    padding-left: 0.5em;
    padding-right: 0.5em;
    text-align: right;
    vertical-align: top;
    padding-top: 0.3em;
    height: 2em;
    border: none;
}
.form-inline .form-label:first-of-type{
    padding-left: 0;
}
.form-inline .form-label.fa,
.form-regular .form-label.fa{
    padding-top: 0.4em;
}

.form-label.ui-state-error{
    background: none;
}

.form-section-title{
    display: inline-block;
    font-size: 1.1em;
    font-weight: bold;
    padding: 0.25em;
    padding-bottom: 0;
}
div.section{
    background-color: #FFF;
    margin: 4px 4px;
    padding: 0.5em;
    border-radius: 4px 4px 4px 4px;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14),0 3px 1px -2px rgba(0,0,0,0.12),0 1px 5px 0 rgba(0,0,0,0.2);
}

div.section.section-borderless {
    border: none;
    padding: 0;
}

div.section .section-title{
    font-size: 16px;
    font-weight: bold;
    display: block;
    /*border-bottom: 1px solid #dddddd;*/
    /*margin-bottom: 0.5em;*/
    /*padding-bottom: 0.5em;*/
    /*padding-top: 0.5em;*/
}
div.section:empty{
    display: none;
}


.help-block{
    color: #595959;
}

.help-block.error{
    color: #b94a48;
}

.help-block.inline{
    display: inline-block;
    font-size: 0.85em;
    padding-left: 2em;
    vertical-align: top;
    padding-top: 0.3em;
}

.help-block{
    display: block;
    white-space: pre-line;
}
/* Renders multi-line free text (e.g. notes) with newlines preserved and long words wrapped. */
.preWrap{
    white-space: pre-wrap;
    overflow-wrap: break-word;
}
.help-block .ui-message{
    margin-bottom: 0.3em;
}
.help-block .ui-message:empty{
    margin-bottom: 0;
}

/** COMPACT FORM **/
input.input-max-width,
.input-max-width input,
textarea.input-max-width,
.ui-autocomplete.input-max-width,
.input-max-width .ui-autocomplete-input,
.ui-selectonemenu.input-max-width,
.ui-selectonelistbox.input-max-width{
    width: 100%  !important;
    box-sizing: border-box;
    max-width: none !important;
}
input.input-small,
.input-small .ui-autocomplete-input{
    width: 20em;
}

/** TEMPLATES **/
/* Top-nav toolbar + menu chrome moved to layers/chunk/tt-pageMenu.css (AM-7858). The dropdown
   overlays below stay here — PrimeFaces appends them to <body>, outside the .tt-pageMenu root. */
.ui-menu.ui-menu-dynamic {
    width: auto;
    min-width: 20em;
}

.ui-overlaypanel-content .ui-menu {
    width: auto;
}

.ui-overlaypanel-content .ui-menu .ui-menuitem-text {
    padding-right: 0.3em;
}

.ui-menu-dynamic .ui-menuitem-text {
    padding-top: 0.3em;
    padding-bottom: 0.3em;
    padding-right: 0.3em;
}


.page-title{
    background-color: #034562;
    height: 2.5rem;
    padding: 0 0.7rem;
    color: white;
    box-shadow:  0 4px 5px 0 rgba(0,0,0,0.14),0 1px 10px 0 rgba(0,0,0,0.12),0 2px 4px -1px rgba(0,0,0,0.2);
}
.page-title .title{
    font-size: 1.2rem;
    font-weight: normal;
    margin-left: 0.3rem;
}
.page-title .title .icon {
    font-size: 1.5rem;
    margin-right: 0.7rem;
}

.page-content{
    margin: .7rem;
}

.center {
    margin:auto auto;
    display:block;
}

.entity-info {
    margin: 1em;
    border-radius: .3em;
    padding-bottom: 0.3em;
    padding-left: 0.5em;
    padding-right: 0.5em;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14),0 3px 1px -2px rgba(0,0,0,0.12),0 1px 5px 0 rgba(0,0,0,0.2);
}

.crudContent form .crud .entity-info label, .crud .general-info label {
    font-weight: normal !important;
}

.rounded {
    border-radius: .3em;
}

.ui-overlaypanel-content {
    padding: unset;
    margin: -1px;
}

.underline {
    border-bottom: 1px solid rgb(221, 221, 221); padding-bottom:11px;
}

#form\:sofMenu .ui-menu-list .ui-menuitem {
    margin-right: 0.5em;
}

#form\:sofMenu {
    margin: 5px 5px;
}

.section-title-underlined {
    border-bottom: 1px solid rgb(221, 221, 221);
    padding-bottom:11px;
}

.ui-scrollpanel-content {
    right: 13px;
    width: 98% !important;
}

.ui-scrollpanel {
    width: 100% !important;
}

.ui-scrollpanel-container {
    width: 100% !important;
}

ul.ui-menu-child {
    white-space: nowrap;
    width: auto !important;
}

.no-scrollbar {
    -ms-overflow-style: none;
    overflow: auto;
}

.ui-panelgrid.ui-noborder .ui-panelgrid-cell {
    padding: 0px 0px;
}
}

/* ===== list.css ===== */
@layer legacy {
.ui-datalist.horizontal .ui-datalist-content>div{
    float:left;
    box-sizing: border-box;
}
.ui-datalist.horizontal .ui-paginator-bottom{
    clear: both;
}

.ui-datalist.scrollable{
    overflow: auto;
}

.ui-datalist.transparent .ui-datalist-content{
    background-color: transparent !important;
}

.ui-datalist.transparent .ui-datalist-data .ui-datalist-item {
    background-color: transparent !important;
}

.ui-datalist.borderless .ui-datalist-content.ui-widget-content,
.ui-panelgrid.borderless .ui-widget-content .ui-panelgrid-cell{
    border: none !important;
    margin: unset !important;
}

.ui-datalist.borderless .ui-datalist-content.ui-widget-content .ui-datalist-data{
    margin: unset !important;
}

.ui-datalist.zebra .ui-datalist-data li.ui-datalist-item:nth-child(even) {
    background-color: #f6f6f6  !important;
}

.ui-datalist.indicates-hover .ui-datalist-data .ui-datalist-item:hover {
    background-color: #eee  !important;
}


.ui-datalist.bulletless ul.ui-datalist-data{
    list-style-type: none !important;
    padding: unset !important;;
}


/* Plain UL, OL */
ul.plain,
ol.plain {
    list-style-type: none !important;
    padding: unset !important;
    margin: unset !important;
}



}

/* ===== report_default.css ===== */
@layer legacy {
/** FILTER */
.report-filter-caption{
    font-weight: 600;
}
.report-filter-content{
    margin-bottom: 10px;
}
span.report-filter-composite-bracket,
span.report-filter-composite-delimiter{
    font-weight: bold;
}
span.report-filter-value{
    font-style: italic;
}
span.report-filter-name{
    font-style: italic;
}



/** WHOLE TABLE **/
table.report{
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

/** HEADER **/
table.report thead tr td{
    background-color: #ffffff;
    font-weight: 600;
    border-bottom: 3px double black;
}


/** GROUP ROWS **/
table.report tbody tr.group-header-footer.level-0{
    font-size: 130%;
    font-weight: 700;
}
table.report tbody tr.group-header.level-0{
    background-color: #f8f8f8;
}

table.report tbody tr.group-header-footer.level-1{
    font-size: 120%;
    font-weight: 600;
}
table.report tbody tr.group-header.level-1{
    background-color: #f8f8f8;
}

table.report tbody tr.group-header-footer.level-2{
    font-size: 115%;
    font-weight: 500;
}
table.report tbody tr.group-header.level-2{
    background-color: #efefef;
}

table.report tbody tr.group-header-footer.level-3{
    font-size: 110%;
    font-weight: 500;
}
table.report tbody tr.group-header.level-3{
    background-color: #f5f5f5;
}

table.report tbody tr.group-header-footer.level-4{
    font-size: 105%;
    font-weight: 500;
}
table.report tbody tr.group-header.level-4{
    background-color: #f9f9f9;
}

table.report tbody tr.group-header-footer.level-5{
    font-size: 105%;
    font-weight: 400;
}
table.report tbody tr.group-header.level-5{
    background-color: #fcfcfc;
}

table.report tbody tr.group-footer td div.content{
    border-top: 1px solid black;
}

table.report tbody tr.level-1 td:first-of-type div.content{
    margin-left: 0.5em;
}
table.report tbody tr.level-2 td:first-of-type div.content{
    margin-left: 1em;
}
table.report tbody tr.level-3 td:first-of-type div.content{
    margin-left: 1.5em;
}
table.report tbody tr.level-4 td:first-of-type div.content{
    margin-left: 2em;
}
table.report tbody tr.level-5 td:first-of-type div.content{
    margin-left: 2.5em;
}
table.report tbody tr.level-n td:first-of-type div.content{
    margin-left: 3em;
}

table.report tbody tr.table-header:last-of-type td div.content{
    border-bottom: 10px double green;
}
table.report tbody tr.table-footer:first-of-type td div.content{
    border-top: 10px double green;
}

/** ROWS **/
table.report tbody tr.data{

}

table.report tbody tr.data.even{

}

table.report tbody tr.data.odd{

}

/** CELLS **/
table.report tbody tr.data td{
    padding-left: 0.65em;
    /*padding-right: 0.65em;*/

    /*max-width: 0;*/
    /*overflow: auto;*/
    /*text-overflow: ellipsis;*/
    /*white-space: normal;*/
    word-wrap: break-word;
}





/** COMMON **/
table.report td div.content{
    margin: 0;
    padding: 0;
    word-wrap: break-word;
}

table.report td{
    vertical-align: middle;
}

table.report td.right{
    text-align: right;
}
table.report td.left{
    text-align: left;
}
table.report td.center{
    text-align: center;
}

}

/* ===== layers/framework/overrides/_general.css ===== */
@layer framework.overrides {
/*
    Cross-cutting PrimeFaces widget/state overrides — not tied to any single component. Bundled FIRST
    within the framework.overrides layer (the leading "_" sorts ahead of the ui-*.css component files),
    so a component file can override this baseline.
*/
.ui-widget {
    font-size: inherit;
}
.ui-widget .ui-widget {
    font-size: inherit;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
    background-image: none;
    border-color: #ccc;
}

/* overlay too dark */
.ui-widget-overlay {
    opacity: 0.3;
}

}

/* ===== layers/framework/overrides/ui-accordion.css ===== */
@layer framework.overrides {
/* PrimeFaces Accordion overrides. */
/* accordion should look nicer */
.ui-accordion .ui-accordion-header{
    background-color: #f5f5f5;
    border-color: #ddd;
    color: #333;
    text-shadow: none;
}
.ui-accordion .ui-accordion-header:hover{
    background-color: #e6e6e6;/* #2b81a6; */
    border-color: #adadad;
}
.ui-accordion .ui-accordion-header .ui-icon {
    display: block;
}

}

/* ===== layers/framework/overrides/ui-calendar.css ===== */
@layer framework.overrides {
/* PrimeFaces Calendar overrides. */
.ui-calendar .ui-inputfield{
    box-sizing: border-box;
}

}

/* ===== layers/framework/overrides/ui-datalist.css ===== */
@layer framework.overrides {
/* PrimeFaces DataList overrides. */
.ui-datalist .ui-datalist-data {
    margin: 0px;
    padding: 0px;
}

}

/* ===== layers/framework/overrides/ui-datatable.css ===== */
@layer framework.overrides {
/* PrimeFaces DataTable overrides. */
.ui-datatable thead th,
.ui-datatable tbody td,
.ui-datatable tfoot td,
.ui-datatable tfoot th,
.ui-datatable .ui-widget-header .ui-state-default {
    border: transparent;
}

.ui-datatable .ui-icon {
    display: inline-block;
}

.ui-datatable .ui-icon:hover {
    background-color: #337ab7;
}

/* datatable filters should span through whole column*/
.ui-datatable thead .ui-column-filter{
    width: 100%;
    box-sizing: border-box;
}

}

/* ===== layers/framework/overrides/ui-datepicker.css ===== */
@layer framework.overrides {
/* PrimeFaces DatePicker overrides (selector root is .p-datepicker). */
.p-datepicker .ui-inputfield{
    box-sizing: border-box;
}

}

/* ===== layers/framework/overrides/ui-dialog.css ===== */
@layer framework.overrides {
/* PrimeFaces Dialog overrides. */
/* Since dynamic dialog height gets calculated on the server side, adding paddings here quickly messes things up
   rendering the dialog content outside of the dialog itself.   */
.ui-dialog.ui-widget-content[data-pfdlgcid] .ui-dialog-titlebar,
.ui-dialog.ui-widget-content[data-pfdlgcid] .ui-dialog-content{
    padding-bottom:0px !important;
    padding-top:0px !important
}

.ui-dialog.ui-confirm-dialog .ui-confirm-dialog-message{
    max-width: 800px;
    text-wrap-mode: wrap;
}

}

/* ===== layers/framework/overrides/ui-growl.css ===== */
@layer framework.overrides {
/* PrimeFaces Growl overrides. */
/* bigger growl */
.ui-growl {
    width: 700px;
    right: 10px;
    top: 150px;
}
.ui-growl-message {
    width: 600px;
}
.ui-growl .ui-shadow {
    -moz-box-shadow: 0px 5px 10px rgba(0,0,0,0.8) !important;
    -webkit-box-shadow: 0px 5px 10px rgba(0,0,0,0.8) !important;
    box-shadow: 0px 5px 10px rgba(0,0,0,0.8) !important;
}

}

/* ===== layers/framework/overrides/ui-inputnumber.css ===== */
@layer framework.overrides {
/* PrimeFaces InputNumber overrides. */
.ui-inputnumber.ui-state-error{
    border: none;
    background: none;
}
.ui-inputnumber .ui-inputfield{
    box-sizing: border-box;
}

}

/* ===== layers/framework/overrides/ui-inputtext.css ===== */
@layer framework.overrides {
/* PrimeFaces InputText overrides. */
.ui-inputtext.ui-inputfield{
    box-sizing: border-box;
}

}

/* ===== layers/framework/overrides/ui-inputtextarea.css ===== */
@layer framework.overrides {
/* PrimeFaces InputTextarea overrides. */
.ui-inputtextarea.ui-inputfield{
    box-sizing: border-box;
}

}

/* ===== layers/framework/overrides/ui-messages.css ===== */
@layer framework.overrides {
/* PrimeFaces Messages overrides. */
.ui-messages.hides-details-for-non-globals li[global="false"] .ui-messages-error-detail{
    display: none;
}

.ui-messages.ui-messages-noicon {
    margin:0;
}

.ui-messages.ui-messages-noicon .ui-messages-info-summary,
.ui-messages.ui-messages-noicon .ui-messages-warn-summary,
.ui-messages.ui-messages-noicon .ui-messages-error-summary,
.ui-messages.ui-messages-noicon .ui-messages-fatal-summary{
    margin-left: 0;
}
.ui-messages.ui-messages-noicon ul>li{
    padding-top: 0.25em;
    padding-bottom: 0.25em;
}

}

/* ===== layers/framework/overrides/ui-panel.css ===== */
@layer framework.overrides {
/* PrimeFaces UI-Panel overrides. */
/* panel should fit into it's container */
.ui-panel{
    box-sizing: border-box;
}

}

/* ===== layers/framework/overrides/ui-password.css ===== */
@layer framework.overrides {
/* PrimeFaces Password overrides. */
.ui-password.ui-inputfield{
    box-sizing: border-box;
}

}

/* ===== layers/framework/overrides/ui-schedule.css ===== */
@layer framework.overrides {
.ui-schedule .fc .fc-today { /* today */
    color: #000;
    background: none;
}
.ui-schedule .fc .fc-event{
    padding: 1px;
}
.ui-schedule .fc .fc-event.topicColor-0{
    background-color: #fa5858;
    border-color: #657383;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-1{
    background-color: #fa8258;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-2{
    background-color: #faac58;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-3{
    background-color: #95b9c7;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-4{
    background-color: #f3e5ab;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-5{
    background-color: #d0fa58;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-6{
    background-color: #acfa58;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-7{
    background-color: #82fa58;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-8{
    background-color: #58fa58;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-9{
    background-color: #58fa82;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-10{
    background-color: #58faac;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-11{
    background-color: #58fad0;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-12{
    background-color: #58faf4;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-13{
    background-color: #58d3f7;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-14{
    background-color: #58acfa;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-15{
    background-color: #5882fa;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-16{
    background-color: #5858fa;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-17{
    background-color: #8258fa;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-18{
    background-color: #fa5882;
    border-color: #d1d0ce;
    color: #000000;
}
.ui-schedule .fc .fc-event.topicColor-19{
    background-color: #8e35ef;
    border-color: #8e35ef;
    color: #000000;
}

.ui-schedule .fc .fc-event.topicColor-notHeld {
    background-color: #dcdcdc;
    border-color: #ff5c5c;
    border-width: 3px;
    color: #000000;
}

.ui-schedule .fc .fc-event.topicColor-substituted {
    background-color: #dcdcdc;
    border-color: #ffe45c;
    border-width: 3px;
    color: #000000;
}

.ui-schedule .fc .fc-content {
    line-height:  10px;
}

}

/* ===== layers/framework/overrides/ui-selectonemenu.css ===== */
@layer framework.overrides {
/* PrimeFaces SelectOneMenu overrides. */
.ui-selectonemenu{
    box-sizing: content-box;
}
.ui-selectonemenu label.ui-selectonemenu-label{
    box-sizing: content-box;
}

.ui-selectonemenu.outer-sized{
    box-sizing: border-box;
}
.ui-selectonemenu.outer-sized label.ui-selectonemenu-label{
    box-sizing: border-box;
}

/* select one menu quick search realign*/
.ui-selectonemenu-panel .ui-selectonemenu-filter-container,
.ui-selectonemenu-panel .ui-selectonemenu-filter{
    box-sizing: border-box;
    width: 100%;
}

/* disabled menu */
.ui-selectonemenu.ui-state-disabled{
    background-color: white;
    line-height: normal;
    border-top-color: rgba(0, 0, 0, 0.247059);
    border-left-color: rgba(0, 0, 0, 0.247059);
    border-right-color: rgba(0, 0, 0, 0.247059);
}
.ui-selectonemenu.ui-state-disabled .ui-selectonemenu-trigger{
    display:none;
}

}

/* ===== layers/framework/overrides/ui-spinner.css ===== */
@layer framework.overrides {
/* PrimeFaces Spinner overrides. */
.ui-spinner .ui-button{
    position: absolute;  /** fixes an override introduced by query-builder.**/
}

}

/* ===== layers/framework/overrides/ui-tabs.css ===== */
@layer framework.overrides {
/* PrimeFaces TabView overrides. */
.ui-tabs .ui-tabs-nav.ui-widget-header {
    border-top: none;
    border-left: none;
    border-right: none;
}
.ui-tabs .ui-tabs-nav.ui-widget-header li.ui-state-active {
    background-color: #eeeeee;
}
.ui-tabs .ui-tabs-panels {
    padding: 0 2px 2px 2px;
    margin-bottom: 1em;
}
.ui-tabs .ui-tabs-panels .ui-tabs-panel {
    padding: 1em 0 0 0;
}

}

/* ===== layers/framework/overrides/ui-toggleswitch.css ===== */
@layer framework.overrides {
/* PrimeFaces ToggleSwitch overrides. */
.ui-toggleswitch .ui-toggleswitch-slider {
    -moz-transition: background-color 0.3s;
    -o-transition: background-color 0.3s;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
    border-radius: 30px;
    background-color: #72707080;
}

.ui-toggleswitch.ui-toggleswitch-checked .ui-toggleswitch-slider {
    background-color: #286090;
}

.ui-toggleswitch .ui-toggleswitch-slider::before {
    background-color: #ffffff;
    height: 1.250em;
    width: 1.250em;
    left: .25em;
    bottom: .25em;
    border-radius: 50%;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

}

/* ===== layers/framework/overrides/ui-tooltip.css ===== */
@layer framework.overrides {
/* PrimeFaces Tooltip overrides. */
.ui-tooltip{
    margin: .5em;
    padding: .5em;
}

.ui-tooltip .ui-tooltip-text {
    background-color: whitesmoke; !important;
    color: #000000; !important;
}

}

/* ===== layers/framework/extension/ui-datatable-nested-table.css ===== */
@layer framework.extension {
/*
    p:dataTable variant "nested-table" — a borderless, header-less inner table for rendering a sub-list
    inside a parent datatable cell (e.g. contract sponsorships). Used via styleClass="nested-table".
    framework.extension: an opt-in named variant of the .ui-datatable component, so the root is
    .ui-datatable.nested-table.
*/
.ui-datatable.nested-table thead {
    display: none;
}
.ui-datatable.nested-table .ui-widget-content {
    border: none;
}
.ui-datatable.nested-table tbody td {
    padding: 1px 2px;
    overflow: hidden;
    border-width: 0px;
    border-style: none;
}

}

/* ===== layers/framework/extension/ui-fileupload-icon-only.css ===== */
@layer framework.extension {
/*
    p:fileUpload variant "icon-only" — shrink the choose button toward just its icon. Used via
    styleClass="icon-only" (alongside just-buttons). framework.extension: an opt-in named variant of the
    .ui-fileupload component, so the root is .ui-fileupload.icon-only.
*/
.ui-fileupload.icon-only .ui-fileupload-buttonbar .ui-button{
    min-width: 1.9em;
}

}

/* ===== layers/framework/extension/ui-fileupload-just-buttons.css ===== */
@layer framework.extension {
/*
    p:fileUpload variant "just-buttons" — show just the upload button(s): collapse the widget and hide
    the file-list table columns/preview. Used via styleClass="just-buttons". framework.extension: an
    opt-in named variant of the .ui-fileupload component, so the root is .ui-fileupload.just-buttons.
*/
.ui-fileupload.just-buttons .ui-fileupload-content .ui-fileupload-files > tbody,
.ui-fileupload.just-buttons .ui-fileupload-content .ui-fileupload-files > tbody > tr,
.ui-fileupload.just-buttons .ui-fileupload-content .ui-fileupload-files > tbody > tr > td,
.ui-fileupload.just-buttons,
.ui-fileupload.just-buttons .ui-fileupload-content,
.ui-fileupload.just-buttons .ui-fileupload-buttonbar {
    border: none;
    background: none;
    margin: 0;
    padding: 0;
    display: inline-block;
}

.ui-fileupload.just-buttons .ui-fileupload-content {
    margin-left: 5px;
    margin-bottom: -16px;
}

.ui-fileupload.just-buttons .ui-fileupload-content .ui-fileupload-files > tbody > tr > td:nth-child(1),
.ui-fileupload.just-buttons .ui-fileupload-content .ui-fileupload-files > tbody > tr > td:nth-child(2),
.ui-fileupload.just-buttons .ui-fileupload-content .ui-fileupload-files > tbody > tr > td:nth-child(3),
.ui-fileupload.just-buttons .ui-fileupload-content .ui-fileupload-files > tbody > tr > td:nth-child(5) {
    display: none;
}

.ui-fileupload.just-buttons .ui-fileupload-buttonbar .ui-button{
    font-weight: normal;
    font-size: 11px;
}
.ui-fileupload.just-buttons .ui-fileupload-row{
    font-size: 12px;
}

.ui-fileupload.just-buttons .ui-fileupload-row .ui-fileupload-preview{
    display: none;
}

.ui-fileupload.just-buttons .ui-button{
    min-width: 9em;
}

}

/* ===== layers/framework/extension/ui-fileupload-just-content.css ===== */
@layer framework.extension {
/*
    p:fileUpload variant "just-content" — show only the drag'n'drop area (buttonbar hidden), used via
    styleClass="just-content". framework.extension: an opt-in named variant of the .ui-fileupload
    component, so the root is .ui-fileupload.just-content. Self-contained (no button-system overlap).
*/
.ui-fileupload.just-content .ui-fileupload-buttonbar{
    display: none;
}
.ui-fileupload.just-content .ui-fileupload-content {
    display: inline-block;
    border: 1px dotted #dddddd;
    border-radius: 5px;
    box-sizing: border-box;
    width: 100%;
    min-height: 4em;
}
.ui-fileupload.just-content .ui-fileupload-content .ui-fileupload-files{
    min-height: 4em;
}
.ui-fileupload.just-content .ui-fileupload-row{
    font-size: 12px;
}
.ui-fileupload.just-content .ui-fileupload-row .ui-fileupload-preview{
    display: none;
}

}

/* ===== layers/general/alert.css ===== */
@layer general {
/*
    Bootstrap-derived alert component — the alert box, applied via styleClass="alert alert-<variant>"
    (info/success/warning/danger), optionally alert-dismissible with a .close dismiss control.
    general layer: reusable across many pages, not tied to one template/composite, so no tt-/cc- prefix.

    Scoping: every selector is anchored on .alert. The contextual variants are compound-scoped
    (.alert.alert-<variant>) because they are only ever modifiers on the box; the standalone "coloured
    text" usages that used to rely on a bare .alert-<variant> now live in .text-<variant>.tinted
    (typography.css). The dismiss control's rules were unscoped Bootstrap globals (button.close / .close);
    since .close only appears inside an alert (a data-dismiss="alert" control) they are scoped under .alert
    too. The base .close rules precede .alert.alert-dismissible .close, which anyway wins by specificity
    (0,3,0 vs 0,2,0), keeping its color: inherit over the base color: #000.
*/
.alert {
    padding: 15px;
    margin-bottom: 20px;
    border: 1px solid transparent;
    border-radius: 4px;
}
.alert h4 {
    margin-top: 0;
    color: inherit;
}
.alert .alert-link {
    font-weight: bold;
}
.alert > p,
.alert > ul {
    margin-bottom: 0;
}
.alert > p + p {
    margin-top: 5px;
}

/* Dismiss control — a .close element (button or link) lives inside every dismissible alert. */
.alert button.close {
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
}
.alert .close {
    float: right;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    filter: alpha(opacity=20);
    opacity: .2;
}

.alert.alert-dismissable,
.alert.alert-dismissible {
    padding-right: 35px;
}
.alert.alert-dismissable .close,
.alert.alert-dismissible .close {
    position: relative;
    top: -2px;
    right: -21px;
    color: inherit;
}

.alert.alert-success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6;
}
.alert.alert-success hr {
    border-top-color: #c9e2b3;
}
.alert.alert-success .alert-link {
    color: #2b542c;
}
.alert.alert-info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1;
}
.alert.alert-info hr {
    border-top-color: #a6e1ec;
}
.alert.alert-info .alert-link {
    color: #245269;
}
.alert.alert-warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc;
}
.alert.alert-warning hr {
    border-top-color: #f7e1b5;
}
.alert.alert-warning .alert-link {
    color: #66512c;
}
.alert.alert-danger {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1;
}
.alert.alert-danger hr {
    border-top-color: #e4b9c0;
}
.alert.alert-danger .alert-link {
    color: #843534;
}

}

/* ===== layers/general/download-hint.css ===== */
@layer general {
.download-hint {
    position: fixed;
    top: 130px;
    right: 24px;
    z-index: 10000;
    max-width: 24em;
    margin: 0;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .3);
    cursor: pointer;
    opacity: 1;
    transition: opacity .3s ease;
}

.download-hint .fa-arrow-up {
    display: block;
    margin-bottom: 8px;
    font-size: 1.6em;
    line-height: 1;
    text-align: right;
}

}

/* ===== layers/general/frm.css ===== */
@layer general {
/*
    Form styling — applied via styleClass="frm …". There is a dev-doc document describing the usage.
*/
.frm{
}

/*========== Layouts ==========*/
/*
    A regular form is a 12-column grid: items stack full-width by default and can be
    packed side by side with `frm-item-narrow-n-12` (see the "Frm grid" section below).
    Vertical and horizontal rhythm both come from the single --frm-grid-gap gutter.
*/
.frm.frm-regular{
    --frm-grid-gap: 8px;
    --frm-grid-col: calc((100% - 11 * var(--frm-grid-gap)) / 12);
    /* Shaved off every span so a full (sum = 12) row can never round-over and wrap the
       last item. k items on a row lose only k * epsilon of their combined width — far
       below one gap — so the layout stays visually exact. */
    --frm-grid-epsilon: 0.5px;
    display: flex;
    flex-flow: row wrap;
    column-gap: var(--frm-grid-gap);
    row-gap: var(--frm-grid-gap);
}
.frm.frm-inline{
    display: flex;
    flex-direction: row;
}

/*========== Frm Width ==========*/

.frm.frm-narrow-width{
    max-width: 500px;
}
.frm.frm-full-width{
    max-width: unset;
}

/*========== Frm Item ==========*/
.frm.frm-regular .frm-item{
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    /*align-items: stretch; THIS IS THE DEFAULT */
    /*align-items: flex-start; SHOULDN'T BE this, beacause then you have to make every sub-component to stretch to 100%*/
}
/*
    Some components do not behave when stretched (e.g. p:autoComplete). For them frm-item has to be non-stretching one.
*/
.frm.frm-regular .frm-item.no-stretch {
    align-items: flex-start;
}

/*.frm.frm-regular .frm-item:last-child{*/
/*    margin-bottom: 0px;*/
/*}*/

.frm.frm-inline .frm-item{
    display: flex;
    flex-shrink: 0;
    flex-direction: row;
}

.frm .frm-item .frm-label,
.frm .frm-item label.frm-label /* TODO this line can get removed once .ui-widget{font-size:0.98em;} goes out */
{
    font-size: 0.8rem;
}

.frm .frm-item{
    font-size: 0.9rem;
}

.frm .frm-item .frm-label,
.frm.frm-inverted .frm-item
{
    font-weight: bold;
}

.frm .frm-item,
.frm.frm-inverted .frm-item .frm-label
{
    font-weight: normal;
}

.frm .frm-item label.ui-state-error {
    border: none;
    background: inherit;
    color: #b94a48;
}

/*========== Frm grid (twelfths) ==========*/
/*
    A regular form lays its items out on a 12-column grid. An item is full width by
    default; add `frm-item-narrow-n-12` (n = 1..11) to make it n twelfths wide.
    Consecutive narrow items whose spans sum to <= 12 share a row; the next item that
    would overflow 12 wraps to the following row. A full-width item always starts (and
    ends) its own row.

    Sizing derives from one fixed gutter (--frm-grid-gap, defined on .frm-regular above),
    so the twelfths keep exact proportions regardless of form width:

        col     = (100% - 11 * gap) / 12          (width of one twelfth)
        span(n) = n * col + (n - 1) * gap          (an item spanning n twelfths also
                                                     swallows the n-1 gaps between them)

    The inter-item gap itself is supplied once by `column-gap`, so each item only needs
    to declare its own span(n): k items summing to N columns plus the (k-1) column-gaps
    between them occupy exactly span(N); at N = 12 that is 100%.
*/

/*
    A `frm-item-group` is a full-width sub-container that is itself a grid: it occupies
    a whole row of its parent grid (flex: 0 0 100%), then lays its own children out
    exactly like the top-level grid — full-width items stack, `frm-item-narrow-n-12`
    children pack into twelfths. It reuses the inherited --frm-grid-* variables, so the
    sizing and rhythm stay identical at any nesting depth. Use it for a wrapper that
    holds several frm-items (e.g. a conditionally-rendered block or a panel body) so
    those items keep grid behaviour even though the outer grid's gap only reaches the
    group itself.

    Every item rule below therefore matches a direct child of EITHER the grid or a
    group. The direct-child combinator is kept in both cases so the twelfths never leak
    into a nested, unrelated `frm` block, and so flex-basis is only ever applied inside
    a row-wrap parent (in a column parent it would set height, not width).
*/
.frm.frm-regular .frm-item-group{
    flex: 0 0 100%;
    display: flex;
    flex-flow: row wrap;
    column-gap: var(--frm-grid-gap);
    row-gap: var(--frm-grid-gap);
}

/*
    Collapse an empty group. A group that is always in the DOM (e.g. an ajax-update
    target) but whose conditional content isn't rendered would otherwise sit as a
    zero-height full-width row and still consume a row-gap. Keyed on element children
    (:has(> *)) rather than :empty, because JSF renders the source whitespace inside the
    div — so it is never truly :empty. Reverts to flex automatically once an ajax update
    puts a child element back. Same specificity as the rule above, so it must follow it.
*/
.frm.frm-regular .frm-item-group:not(:has(> *)){
    display: none;
}

/*
    Base: every direct child of a grid context (the grid itself or a group) fills its
    own full-width row by default — frm-items, and any stray non-frm-item block such as
    a buttons row or a `p:messages`. `frm-item-narrow-n-12` overrides this to a twelfth
    via higher specificity. This is what lets an un-tagged block sit on its own row, so
    nothing in a regular form ever falls back to content sizing.
*/
.frm.frm-regular > *,
.frm.frm-regular .frm-item-group > *{
    flex: 0 0 100%;
    /* border-box so any padding/border on an item stays inside its span(n): keeps the
       twelfths summing to 12 = 100% and stops a full-width item from overflowing. */
    box-sizing: border-box;
}

/* twelfths: flex-basis = span(n) - epsilon = n * col + (n - 1) * gap - epsilon */
.frm.frm-regular > .frm-item.frm-item-narrow-1-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-1-12 {
    flex: 0 0 calc(var(--frm-grid-col) - var(--frm-grid-epsilon));
}
.frm.frm-regular > .frm-item.frm-item-narrow-2-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-2-12 {
    flex: 0 0 calc(2 * var(--frm-grid-col) + 1 * var(--frm-grid-gap) - var(--frm-grid-epsilon));
}
.frm.frm-regular > .frm-item.frm-item-narrow-3-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-3-12 {
    flex: 0 0 calc(3 * var(--frm-grid-col) + 2 * var(--frm-grid-gap) - var(--frm-grid-epsilon));
}
.frm.frm-regular > .frm-item.frm-item-narrow-4-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-4-12 {
    flex: 0 0 calc(4 * var(--frm-grid-col) + 3 * var(--frm-grid-gap) - var(--frm-grid-epsilon));
}
.frm.frm-regular > .frm-item.frm-item-narrow-5-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-5-12 {
    flex: 0 0 calc(5 * var(--frm-grid-col) + 4 * var(--frm-grid-gap) - var(--frm-grid-epsilon));
}
.frm.frm-regular > .frm-item.frm-item-narrow-6-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-6-12 {
    flex: 0 0 calc(6 * var(--frm-grid-col) + 5 * var(--frm-grid-gap) - var(--frm-grid-epsilon));
}
.frm.frm-regular > .frm-item.frm-item-narrow-7-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-7-12 {
    flex: 0 0 calc(7 * var(--frm-grid-col) + 6 * var(--frm-grid-gap) - var(--frm-grid-epsilon));
}
.frm.frm-regular > .frm-item.frm-item-narrow-8-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-8-12 {
    flex: 0 0 calc(8 * var(--frm-grid-col) + 7 * var(--frm-grid-gap) - var(--frm-grid-epsilon));
}
.frm.frm-regular > .frm-item.frm-item-narrow-9-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-9-12 {
    flex: 0 0 calc(9 * var(--frm-grid-col) + 8 * var(--frm-grid-gap) - var(--frm-grid-epsilon));
}
.frm.frm-regular > .frm-item.frm-item-narrow-10-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-10-12 {
    flex: 0 0 calc(10 * var(--frm-grid-col) + 9 * var(--frm-grid-gap) - var(--frm-grid-epsilon));
}
.frm.frm-regular > .frm-item.frm-item-narrow-11-12,
.frm.frm-regular .frm-item-group > .frm-item.frm-item-narrow-11-12 {
    flex: 0 0 calc(11 * var(--frm-grid-col) + 10 * var(--frm-grid-gap) - var(--frm-grid-epsilon));
}

/*========== Frm Item List - a list within a Frm Item==========*/
.frm .frm-item .frm-item-list-header{
    font-weight: bold;
    font-size: 0.8rem;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
    width: 100%;
}

.frm .frm-item .frm-item-list.ui-datalist{
    width: 100%;
}

.frm .frm-item .frm-item-list.ui-datalist .ui-datalist-data .ui-datalist-item{
    margin: 0.2em 0;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
    background-color: #f6f6f6;
}

.frm .frm-item .frm-item-list.ui-datalist .ui-paginator{
    font-size: 13px;
}

}

/* ===== layers/general/lookupDataTable.css ===== */
@layer general {
/*
    Shared datatable styling applied via styleClass="lookupDataTable" on lookup / overview data tables.
    general layer: reusable but not tied to a single template or composite, so no tt-/cc- prefix.
*/
.lookupDataTable .columns-btn {
    float: right;
    margin-top: -0.1em;
}

.lookupDataTable .entity-title,
.lookupDataTable .entity-title .entity-link,
.lookupDataTable td {
    font-size: 14px;
}

.lookupDataTable .ui-datatable-header {
    padding: .6em;
}

.lookupDataTable .ui-datatable-header .calendarFilter > input {
    width: 6em;
    margin: 0em 0.3em;
}

}

/* ===== layers/general/person-role.css ===== */
@layer general {
/*
    Person-role coloring — the short-designation badge shown next to a person's name, tinted per role.
    The badge element carries the .person-role root class plus the per-role class emitted by
    PersonRole.getCssStyleClass() (.person-role-<role>) and .person-role-short-designation. general layer:
    every selector leads with the .person-role root (compounded), keeping the file single-root scoped.
*/
.person-role.person-role-short-designation{
    font-weight: bold;
}
.person-role.person-role-sponsor{
    color: darkorange;
}
.person-role.person-role-student{
    color: blue;
}
.person-role.person-role-member{
    color: purple;
}
.person-role.person-role-employee{
    color: plum;
}
.person-role.person-role-guardian{
    color: darkolivegreen;
}
.person-role.person-role-teacher{
    color: darkolivegreen;
}

}

/* ===== layers/general/pill.css ===== */
@layer general {
/*
    .pill — small colored swatch (rounded, bordered box), shape only; callers set background-color inline
    (the grouping composites color it per group). general layer: reusable styling not owned by any one
    template/composite, so the root is the plain filename class .pill.
*/
.pill {
    display: inline-block;
    font-size: 85%;
    line-height: 1;
    padding: .2em .6em;
    border-radius: .25em;
    border: 1px solid rgb(153,153,153);
}

}

/* ===== layers/general/sidemenu.css ===== */
@layer general {
/*
    .sidemenu — a vertical menu of standalone links (p:link, which renders as .ui-link), e.g. the GDPR
    feature menu (page/gdpr/_feature_gdpr_menu.xhtml). general layer: reusable styling not owned by any
    one template/composite, so the root is the plain filename class .sidemenu.
*/
.sidemenu > .ui-link {
    color: #0088CC;
    text-decoration: none;
    text-align: left;
    padding-left: 1em;
    display: block;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}
.sidemenu > .ui-link.ui-state-active {
    background: none;
    background-color: #eeeeee;
}

}

/* ===== layers/chunk/cc-alterRelatedJournals.css ===== */
@layer chunk {
/*
    alterRelatedJournals composite (resources/components/composite/education/alterRelatedJournalsFeature.xhtml) —
    styling for the "alter related journals" feature: the reset-to-defaults bar, the per-instance/grouped
    journal lists, and the collapsible group panels (FontAwesome chevron toggler). chunk layer: styling of a
    reusable composite component, so the root is the cc- class .cc-alterRelatedJournals, added on the
    composite's implementation wrapper.
*/
.cc-alterRelatedJournals .list-cell {
    min-width: 100px;
    min-height: 2em;
    padding-top: 0.5em;
}
.cc-alterRelatedJournals .journal-group {
    margin-bottom: 1rem;
}

/* "reset to defaults" action — only present once the user has overridden a suggestion, kept to the right */
.cc-alterRelatedJournals .reset-to-defaults-bar {
    text-align: right;
    margin-bottom: 0.5rem;
}

/* group title row: status box, change trigger, the group-wide picker and the journal count, all on one line,
   aligned by their text baseline */
.cc-alterRelatedJournals .journal-group-title {
    gap: 0.5em;
    width: 100%;
}
.cc-alterRelatedJournals .journal-group-title .group-status {
    padding: 0.25rem 1rem;
    min-width: 10rem;
    text-align: center;
}

/* toggler chevron on the far left, rendered with FontAwesome instead of the default +/- sprite */
.cc-alterRelatedJournals .journal-group > .ui-panel-titlebar {
    display: flex;
    align-items: center;
}
.cc-alterRelatedJournals .journal-group > .ui-panel-titlebar .ui-panel-title {
    float: none;
    flex: 1 1 auto;
}
.cc-alterRelatedJournals .journal-group > .ui-panel-titlebar .ui-panel-titlebar-icon {
    order: -1;
    float: none;
    margin: 0 0.5em 0 0;
    text-decoration: none;
}
.cc-alterRelatedJournals .journal-group > .ui-panel-titlebar .ui-panel-titlebar-icon .ui-icon {
    background: none !important;
    text-indent: 0;
    overflow: visible;
    width: auto;
    height: auto;
    line-height: 1;
}
/* generic rule first so a chevron shows whatever the toggler's state class is */
.cc-alterRelatedJournals .journal-group > .ui-panel-titlebar .ui-panel-titlebar-icon .ui-icon:before {
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: none;
    font-size: 14px;
    content: "\f054"; /* chevron-right (collapsed) */
}
.cc-alterRelatedJournals .journal-group > .ui-panel-titlebar .ui-panel-titlebar-icon .ui-icon-minusthick:before {
    content: "\f078"; /* chevron-down (expanded) */
}

}

/* ===== layers/chunk/cc-notesList.css ===== */
@layer chunk {
/*
    notesList composite (resources/components/composite/dm/notesList.xhtml) — removes the intrinsic top
    spacing of the reminder-remindee datalist so the first remindee sits flush with the top of the row,
    level with the reminder date/time beside it. chunk layer: styling of a reusable composite, so the root
    is the cc- class .cc-notesList, added on the notes dataTable.

    In the chunk layer (above legacy) these override the .crud .value .ui-datalist … margins by layer order,
    so the !important the inline version needed is no longer required.
*/
.cc-notesList .ui-datalist.note-reminders,
.cc-notesList .ui-datalist.note-reminders .ui-datalist-content,
.cc-notesList .ui-datalist.note-reminders .ui-datalist-content.ui-widget-content,
.cc-notesList .ui-datalist.note-reminders .ui-datalist-data,
.cc-notesList .ui-datalist.note-reminders .ui-datalist-data .ui-datalist-item {
    padding-top: 0;
    margin-top: 0;
}

}

/* ===== layers/chunk/cc-queryBuilder.css ===== */
@layer chunk {
/*
    queryBuilder composite (resources/components/composite/queryBuilder.xhtml) — styling for the jQuery
    QueryBuilder widget and its searchable filter combobox. chunk layer: dependency CSS of a reusable
    composite component, so the root is the cc- class .cc-queryBuilder.

    Two compound roots, each identifying the element itself (not by DOM nesting) — both the builder root
    and the jQuery-UI autocomplete menu sit outside any wrapper we control (the plugin adds .query-builder
    to our own div; the menu is appended to <body>):
      .cc-queryBuilder.query-builder  the builder root — our div carries class="cc-queryBuilder" and the
                                      plugin (query-builder.js) adds .query-builder alongside it.
      .cc-queryBuilder.menu           the autocomplete dropdown — tagged in queryBuilder.xhtml via
                                      $input.autocomplete("instance").menu.element.addClass("cc-queryBuilder menu").
*/
.cc-queryBuilder.query-builder, .cc-queryBuilder.query-builder * {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.cc-queryBuilder.query-builder {
  font-family: sans-serif;
}

.cc-queryBuilder.query-builder .pull-right {
  float: right !important;
}

.cc-queryBuilder.query-builder .btn {
  text-transform: none;
  display: inline-block;
  padding: 6px 12px;
  margin-bottom: 0px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.42857;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  user-select: none;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}

.cc-queryBuilder.query-builder .btn.focus, .cc-queryBuilder.query-builder .btn:focus, .cc-queryBuilder.query-builder .btn:hover {
  color: #333;
  text-decoration: none;
}

.cc-queryBuilder.query-builder .btn.active, .cc-queryBuilder.query-builder .btn:active {
  background-image: none;
  outline: 0px none;
  box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.125) inset;
}

.cc-queryBuilder.query-builder .btn-success {
  color: #FFF;
  background-color: #5CB85C;
  border-color: #4CAE4C;
}

.cc-queryBuilder.query-builder .btn-primary {
  color: #FFF;
  background-color: #337AB7;
  border-color: #2E6DA4;
}

.cc-queryBuilder.query-builder .btn-danger {
  color: #FFF;
  background-color: #D9534F;
  border-color: #D43F3A;
}

.cc-queryBuilder.query-builder .btn-success.active, .cc-queryBuilder.query-builder .btn-success.focus,
.cc-queryBuilder.query-builder .btn-success:active, .cc-queryBuilder.query-builder .btn-success:focus,
.cc-queryBuilder.query-builder .btn-success:hover {
  color: #FFF;
  background-color: #449D44;
  border-color: #398439;
}

.cc-queryBuilder.query-builder .btn-primary.active, .cc-queryBuilder.query-builder .btn-primary.focus,
.cc-queryBuilder.query-builder .btn-primary:active, .cc-queryBuilder.query-builder .btn-primary:focus,
.cc-queryBuilder.query-builder .btn-primary:hover {
  color: #FFF;
  background-color: #286090;
  border-color: #204D74;
}

.cc-queryBuilder.query-builder .btn-danger.active, .cc-queryBuilder.query-builder .btn-danger.focus,
.cc-queryBuilder.query-builder .btn-danger:active, .cc-queryBuilder.query-builder .btn-danger:focus,
.cc-queryBuilder.query-builder .btn-danger:hover {
  color: #FFF;
  background-color: #C9302C;
  border-color: #AC2925;
}

.cc-queryBuilder.query-builder .btn-group {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.cc-queryBuilder.query-builder .btn-group > .btn {
  position: relative;
  float: left;
}

.cc-queryBuilder.query-builder .btn-group > .btn:first-child {
  margin-left: 0px;
}

.cc-queryBuilder.query-builder .btn-group > .btn:first-child:not(:last-child) {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
}

.cc-queryBuilder.query-builder .btn-group > .btn:last-child:not(:first-child) {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}

.cc-queryBuilder.query-builder .btn-group .btn + .btn, .cc-queryBuilder.query-builder .btn-group .btn + .btn-group,
.cc-queryBuilder.query-builder .btn-group .btn-group + .btn, .cc-queryBuilder.query-builder .btn-group .btn-group + .btn-group {
  margin-left: -1px;
}

.cc-queryBuilder.query-builder .btn-xs, .cc-queryBuilder.query-builder .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.cc-queryBuilder.query-builder dl {
    width: 100%
}
/* Searchable column (filter) selection: styling for the jQuery UI autocomplete combobox.
   The jQuery UI menu classes (.ui-menu/.ui-autocomplete) are not covered by the PrimeFaces
   theme, so the dropdown is styled here (mirrors the hand-rolled query-builder jQuery UI CSS). */
.cc-queryBuilder.query-builder .rule-filter-container .rule-filter-combobox {
  display: inline-block;
  position: relative;
  vertical-align: middle;
}

.cc-queryBuilder.query-builder .rule-filter-container .rule-filter-search {
  width: 100%;
  min-width: 50em;
  padding-right: 24px; /* room for the caret */
}

/* Readonly rules (e.g. the obligatory time range) disable the underlying select; the combobox
   mirrors that state and must read as non-editable too. */
.cc-queryBuilder.query-builder .rule-filter-container .rule-filter-combobox.disabled .rule-filter-search {
  background-color: #eeeeee;
  cursor: not-allowed;
}

.cc-queryBuilder.query-builder .rule-filter-container .rule-filter-combobox.disabled .rule-filter-combobox-toggle {
  cursor: not-allowed;
}

/* Dropdown caret button, so the control clearly reads as a searchable dropdown. */
.cc-queryBuilder.query-builder .rule-filter-container .rule-filter-combobox-toggle {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 22px;
  padding: 0;
  margin: 0;
  border: none;
  border-left: 1px solid #cccccc;
  background: transparent;
  cursor: pointer;
  line-height: 0;
}

.cc-queryBuilder.query-builder .rule-filter-container .rule-filter-combobox-toggle::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  vertical-align: middle;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid #555555;
}

/* The autocomplete dropdown is appended to <body> (outside the component), so it can't be reached by
   nesting; it is tagged with the root class in queryBuilder.xhtml and scoped by compound class instead. */
.cc-queryBuilder.menu {
  position: absolute;
  z-index: 100010; /* above PrimeFaces dialogs/overlays */
  max-height: 18em;
  overflow-y: auto;
  overflow-x: hidden;
  list-style: none;
  margin: 0;
  padding: 2px 0;
  background: #ffffff;
  border: 1px solid #bfbfbf;
  border-radius: 3px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

.cc-queryBuilder.menu .ui-menu-item {
  list-style: none;
  margin: 0;
}

.cc-queryBuilder.menu .ui-menu-item-wrapper {
  display: block;
  padding: 4px 10px;
  color: #333333;
  white-space: nowrap;
  cursor: pointer;
}

.cc-queryBuilder.menu .ui-menu-item-wrapper.ui-state-active {
  background: #2a6496;
  color: #ffffff;
}

}

/* ===== layers/chunk/tt-pageMenu.css ===== */
@layer chunk {
/*
    Top navigation bar (pageMenu.xhtml, included by the pageWithMenu template). Chunk layer:
    every selector leads with the .tt-pageMenu root, which is
    placed on the .page-menu wrapper. The dropdown overlays themselves (.ui-menu-dynamic …) are
    PrimeFaces-appended to <body>, outside this root — they stay in the framework overrides.
*/
.tt-pageMenu {
    background-color: white;
}

.tt-pageMenu .main-toolbar.ui-toolbar {
    border: none;
    border-bottom: 1px solid #005f89;
    border-radius: 0;
    background: none;
    padding-left: 0.5em;
    padding-right: 0.5em;
}

.tt-pageMenu .main-toolbar .logo {
    height: 1.5em;
    width: 1.8em;
    display: inline-block;
    position: relative;
    top: 0.25em;
}

.tt-pageMenu .main-toolbar.ui-toolbar .ui-button.fake-ui-menubutton,
.tt-pageMenu .main-toolbar.ui-toolbar .ui-button.fake-ui-menuicon {
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    box-shadow: none;
}

.tt-pageMenu .main-toolbar.ui-toolbar .ui-button.fake-ui-menubutton.ui-state-hover,
.tt-pageMenu .main-toolbar.ui-toolbar .ui-button.fake-ui-menuicon.ui-state-hover {
    background-color: #E6E6E6;
}

.tt-pageMenu .main-toolbar.ui-toolbar .ui-button.fake-ui-menubutton .ui-button-text {
    padding: .3em 1.7em .3em 0.7em;
}

.tt-pageMenu .main-toolbar.ui-toolbar .ui-button.fake-ui-menuicon {
    padding: 0px 0.6rem;
    line-height: 1.2;
    min-width: auto;
    width: auto;
}

.tt-pageMenu .main-toolbar.ui-toolbar .ui-button.fake-ui-menuicon .ui-icon.ui-button-icon-left {
    margin-top: -0.6rem;
    margin-left: -0.6rem;
    width: 1.2rem;
    height: 1.2rem;
    font-size: 1.2rem;
    background-size: 1.5rem;
}

.tt-pageMenu .menu-link {
    font-weight: normal;
    padding: .3em 1em .3em 0.3em;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.tt-pageMenu .menu-link:hover {
    background-color: #E6E6E6;
}

/* Unread chat-message count bubble, shown next to the App menu item. */
.tt-pageMenu .unread-badge {
    top: 7px;
    box-sizing: border-box;
    text-align: center;
    border-radius: 50%;
    padding: 0;
    font-size: .75rem;
    font-weight: 700;
    min-width: 1.2rem;
    height: 1.2rem;
    line-height: 1.2rem;
    background-color: #d32f2f;
    color: #fff;
    position: absolute;
}

}

/* ===== layers/chunk/tt-popup.css ===== */
@layer chunk {
/*
    popupTemplate (resources/template/popupTemplate.xhtml) — the popup/dialog shell shared by every popup
    view. A CSS-grid that pins the footer buttons to the bottom and lets the content area scroll instead of
    pushing the footer off-screen when the content grows. chunk layer: styling owned by a reusable template,
    so the root is the tt- class .tt-popup, added on the popup form.

    Keep the footer buttons pinned at the bottom: let the content track shrink below its intrinsic size and
    scroll instead of pushing the footer off-screen when the journals table grows.
*/
.tt-popup .popup-grid {
    display: grid;
    grid-template-rows: minmax(0, 1fr) 4rem;
    grid-template-columns: 1fr;
    grid-gap: 1em;
    grid-template-areas: "content" "footer";

    height: 100%;
    max-height: 100%;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.tt-popup .popup-grid > .content {
    overflow: auto;
    min-height: 0;
}

}

/* ===== layers/page/pg-appointmentsOverview-overview.css ===== */
@layer page {
/*
    page/appointmentsOverview/overview.xhtml — the attendance overview.
    page layer: styling specific to this one page, so the root is the pg_ class
    .pg-appointmentsOverview-overview (applied on the page's root div).
*/
.pg-appointmentsOverview-overview .crud {
    width: 100%;
}

.pg-appointmentsOverview-overview .crud {
    border-spacing: 0 5px ;
}
.pg-appointmentsOverview-overview .crud tr:hover:not(:first-child) {
    background-color: #f5f5f5;
}
.pg-appointmentsOverview-overview .crud button {
    box-shadow: none !important;
}

.pg-appointmentsOverview-overview .status {
    width: 35px;
    height: 35px;
}
.pg-appointmentsOverview-overview .status span {
    position: relative;
    top: 10px;
    left: 10px;
}

.pg-appointmentsOverview-overview table .actions-trigger {
    width: 40px;
    text-align: center;
}
.pg-appointmentsOverview-overview table .actions-trigger > div {
    width: 20px;
}
.pg-appointmentsOverview-overview table .actions-trigger .flex-actions {
    height: 60px;
    overflow: visible;
    position: relative;
}
.pg-appointmentsOverview-overview table .actions-trigger .flex-actions > div {
    position: absolute;
    bottom: 10px;
    border-left: 1px solid #eee;
}

.pg-appointmentsOverview-overview table .row-enrollment .column-student {
    width: 250px;
    padding-left: 100px;
}
.pg-appointmentsOverview-overview table .row-enrollment .column-studentInfo {
    width: 250px;
    padding-left: 5px;
}
.pg-appointmentsOverview-overview table .row-enrollment .column-student .student-name {
    font-size: 1.3em;
    padding: 2px 0;
}
.pg-appointmentsOverview-overview table .row-enrollment .column-student .student-contact {
    font-size: 1em;
}
.pg-appointmentsOverview-overview table .row-enrollment .column-termin {
    width: 15px;
    text-align: center;
}
.pg-appointmentsOverview-overview table .row-enrollment .column-termin .empty-presence {
    width: 30px;
    height: 30px;
    border: 1px solid #ccc;
}

.pg-appointmentsOverview-overview table .row-enrollment .column-termin .attendance-button {
    height: 30px;
    background: none;
    border: none;
}
.pg-appointmentsOverview-overview table .mark-button {
    padding-bottom: 5px;
}

.pg-appointmentsOverview-overview hr {
    margin: 0 10px;
}

}

/* ===== layers/page/pg-education-dialogMassEnrollment.css ===== */
@layer page {
/*
    dialog_mass_enrollment page (page/education/dialog_mass_enrollment.xhtml) — the mass-enrollment dialog:
    a 2x2 grid holding the lesson-instance and enrollment tables, drag-and-drop of enrollments onto lesson
    instances, and the "skipping problematic changes" error dialog. page layer, so the root is the pg_ class
    .pg-education-dialogMassEnrollment.

    The root is compounded onto the elements themselves (not carried by a wrapper) in three spots, because a
    wrapper div would break the grid's height:100% chain and the drag helper lives outside the dialog:
      .pg-education-dialogMassEnrollment.dialog_mass_enrollments_grid  the grid container div.
      .pg-education-dialogMassEnrollment.ui-datalist-plain-header      the error-dialog list header.
      .pg-education-dialogMassEnrollment.le-drag-helper                the floating drag clone, which the DND
                                                                       script appends to <body> (outside the
                                                                       dialog) and tags via addClass.
*/
.pg-education-dialogMassEnrollment.dialog_mass_enrollments_grid {
    display: grid;
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    grid-gap: 1em;
    align-content: stretch;

    height: 100%;
}

.pg-education-dialogMassEnrollment.dialog_mass_enrollments_grid .persons {
    grid-row: 1 / 3;
    grid-column: 2 / 3;
}

.pg-education-dialogMassEnrollment tr.active-drop {
    background-color: rgb(240, 240, 240) !important;
}

.pg-education-dialogMassEnrollment tr.highlight-drop {
    background-color: rgb(220, 220, 220) !important;
}

/* the floating clone shown while dragging one or several enrollment rows */
.pg-education-dialogMassEnrollment.le-drag-helper {
    border-collapse: collapse;
    table-layout: fixed;
    background-color: #fff;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.35);
    opacity: 0.92;
    pointer-events: none;
}

.pg-education-dialogMassEnrollment.le-drag-helper td {
    box-sizing: border-box; /* set widths come from outerWidth(), so include padding + border */
    padding: 4px 8px;
    border: 1px solid #ddd;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

/* Plain data list header */
.pg-education-dialogMassEnrollment.ui-datalist-plain-header {
    background-color: #fbfbfb;
    font-weight: bold;
    border-bottom: 1px solid black;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
    width: 100%;
}

}

/* ===== layers/page/pg-home-show.css ===== */
@layer page {
.pg-home-show {
    background: linear-gradient(105deg, #e3f1ee 0%, #dcebf3 55%, #f4f8f7 100%);
    border: 1px solid #dbe4e1;
    border-radius: 4px;
    box-shadow: 0 1px 2px rgba(16,40,36,.06), 0 1px 3px rgba(16,40,36,.10);
    margin: .3em;
    padding: 10px 16px;
    overflow: hidden;
}

.pg-home-show .ui-grid-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

}

/* ===== layers/page/pg-schedule-resourceRadar.css ===== */
@layer page {
/* Week selector (left filter panel): full-width dropdown with prev/today/next below. */
.pg-schedule-resourceRadar .rr-week { width: 100%; }
.pg-schedule-resourceRadar .rr-week-nav { display: flex; gap: 6px; margin-top: 6px; }
.pg-schedule-resourceRadar .rr-week-nav .btn { flex: 1; }

/* Toolbar above the timeline: day-of-week selector on the left, zoom selector right-aligned. */
.pg-schedule-resourceRadar .rr-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; width: 100%; font-size: 16px;}

/* Time-line general styling */
.pg-schedule-resourceRadar .rr-timeline .timeline-event-content { margin: 0 }
.pg-schedule-resourceRadar .rr-timeline .timeline-event-content .rr-ev { padding: 5px; border:1px solid black; border-radius: 2px; }

/* Occupied slots link to their show page (opened in a new tab); make the whole box clickable. */
.pg-schedule-resourceRadar .rr-timeline .timeline-event-content .rr-ev-link { display: block; text-decoration: none; color: inherit; cursor: pointer; }

.pg-schedule-resourceRadar .rr-timeline .rr-lane-name,
.pg-schedule-resourceRadar .rr-timeline .rr-lane-sub { display: block; }
.pg-schedule-resourceRadar .rr-timeline .rr-lane-name { padding-top: 0.3em;}
.pg-schedule-resourceRadar .rr-timeline .rr-lane-sub { margin-left: 1em; padding-bottom: 0.3em; }

/* Free insight — grey "available" bars and grey/red hatched "future-occupation" segments.
   These events carry no text, so strip the padding/border chrome of the base .rr-ev box. */
.pg-schedule-resourceRadar .rr-timeline .timeline-event-content .rr-ev.rr-free,
.pg-schedule-resourceRadar .rr-timeline .timeline-event-content .rr-ev.rr-futocc{
    height: 100%; min-height: 22px; padding: 0;
}
.pg-schedule-resourceRadar .rr-timeline .timeline-event-content .rr-ev.rr-free { background: #d5dae1; border-color: #b9c0ca; }
.pg-schedule-resourceRadar .rr-timeline .timeline-event-content .rr-ev.rr-futocc {
    border-color: #d9534f;
    background-color: #d9cdd0;
    background-image: repeating-linear-gradient(45deg,
    transparent 0, transparent 4px, #e0736e 4px, #e0736e 6px);
    cursor: help;
}

/* Result caption + empty-state message. */
.pg-schedule-resourceRadar .rr-empty { padding: 26px; text-align: center; color: #9aa2ae; font-style: italic; }

/* Legend (left rail). */
.pg-schedule-resourceRadar .rr-legend { display: flex; flex-wrap: wrap;}
.pg-schedule-resourceRadar .rr-legend .rr-item { display: inline-flex; align-items: center; margin: 0 12px 4px 0; color: #5b6472; font-size: 12px; }
.pg-schedule-resourceRadar .rr-legend .rr-sw { display: inline-block; width: 14px; height: 12px; border-radius: 2px; margin-right: 5px; }
.pg-schedule-resourceRadar .rr-legend .rr-sw.rr-sw-free   { background: #d5dae1; border: 1px solid #b9c0ca; }
.pg-schedule-resourceRadar .rr-legend .rr-sw.rr-sw-futocc {
    border: 1px solid #d9534f;
    background-color: #d9cdd0;
    background-image: repeating-linear-gradient(45deg,
    transparent 0, transparent 2px, #e0736e 2px, #e0736e 3px);
}

}
