:root{
    --progress-background: #E1EADC;
    --background: #F8F8F8;
    --light-brown: #B5B0A1;
    --dark-brown: #968E7E;
    --danger: #FF3500;
    --pie-ornage: #FF947C;
    --pie-blue: #4ACCF5;
    --pie-yellow: #FFE395;
    --pie-green: #BCEF82;
    --tertiary: #04A3D5;
    --secondary: #8014C3;
    --primary: #02A18A;
    --black: #211F1C;
    --dark-border: #CED4DA;
    --light-border: #EFEFEF;
    --white: #FFFFFF;
    --widget-blue-bg: #D8E9EF;
    --widget-pink-bg: #ECDEEF;
    --widget-green-bg: #DFEADB;
    --highlight-green: #6DE65C;
    --dark-green-highlight: #0F4A3D;
    --dark-green: #05372C;

    --primary-dark: #03816e;
    --primary-light: #49baa9;
    --primary-faded : #E6F4F1;
    --light-background: #f8f6f2;

    --tertiary-dark: #057698;
    --tertiary-light: #4fcaef;
    --tertiary-faded :#d5f5ff;

    --secondary-dark: #4e1273;
    --secondary-light: #ae2dff;
    --secondary-faded :#f4e3ff;

    --blue : #1c7dfa;
    --blue-dark : #166fe4;
    --uploader-blue : #cee1ff;
    --danger-dark: #ca3a17;
    --danger-light: #ff6d48;
    --danger : #ef4464;
    --danger-faded : #ffedf0;
    --warning : #f48e19;
    --warning-dark : #e57d07;
    --warning-faded : #ffe6ca;
    --faded : #B9CAD2;
    --gray : #889BA4;
    --table-gray : #586e79;

    --shadow : 0px 2px 4px rgba(0, 0, 0, 0.05);
    --shadow-xxl : 0 25px 50px -12px rgba(0, 0, 0, 0.25);

    --input-radius: 0.4rem;
    --btn-radius : 0.4rem;
    --large-input-radius : 0.6rem;
    --gutter: 1.875rem;
    --table-head-font-size: 1rem;
    --base-container-width: 480px;
    --base-container-width-with-two-col: 480px;
    --generic-container-radius: 10px;
    --generic-container-padding: 3rem 2.5rem;
    --btn-height: 44px;
    --btn-padding: 0 1.5rem;
    --pda-cta-size : 80px;
    --pda-cta-radius: 5px;
    --pda-cta-padding : 6px 0;
    --pda-cta-gutter : 6px;
}
body{
    background-color: var(--background);
    color: var(--black);
    font-family: "Poppins", sans-serif;;
}
/** Texts **/
.text-primary{
    color: var(--primary) !important;
}
.text-secondary{
    color: var(--secondary) !important;
}
.text-tertiary, .text-info{
    color: var(--tertiary) !important;
}
.text-danger{
    color: var(--danger) !important;
}
.text-warning{
    color: var(--warning) !important;
}
/** Containers **/
.base-form, .base-container{
	width: 98%;
	max-width: var(--base-container-width);
    margin: 0 auto;
}
.base-container > .base-form{
    max-width: 100%;
    width: 100%;
}
.base-container.two-col, .two-col .base-form{
    max-width: var(--base-container-width-with-two-col);
}
.base-container{
    background-color: var(--white);
    padding: 3rem;
    border-radius: 0px;
    box-shadow: var(--shadow);
    border: 1px solid var(--light-border);
}
.generic-container{
    background-color: var(--white);
    padding: var(--generic-container-padding);
    border-radius: var(--generic-container-radius);
}
/** Button **/
.btn{
    height: var(--btn-height);
    padding: var(--btn-padding);
}
.btn-input{
    height: var(--btn-height);
}
.btn-group-lg > .btn, .btn-lg{
    padding: var(--btn-padding);
}
.btn-sm{
    height: auto !important;
    padding: 0.6rem 1rem !important;
    line-height: 1 !important;
}
.btn-xs{
    height: auto !important;
    padding: 0.4rem 0.6rem !important;
    line-height: 1 !important;
    font-size: 0.8rem;
}
.btn-lg{
    padding: 0.5rem 1.25rem !important;
}
.btn-rounded{
    border-radius: 10rem !important;
}
a.btn{
	text-decoration: none !important;
    line-height: calc(var(--btn-height) - 3px);
    padding: var(--btn-padding);
    padding-bottom: 1px;
    height: auto;
}
.btn:focus{
    border-color: var(--light-border) !important;
    box-shadow : 0 0 0 0.25rem var(--background) !important;
}
.btn-standard{
    min-width: 175px;
}
.btn-primary{
	background-color: var(--primary);
	border-color: var(--primary);
	color: var(--white);
    border-radius: var(--btn-radius);
}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active{
	box-shadow: none !important;
	background-color: var(--primary-dark) !important;
	border-color: var(--primary-dark) !important;
	color: var(--white) !important;
}
.btn-secondary{
	background-color: var(--secondary);
	border-color: var(--secondary);
	color: var(--white);
    border-radius: var(--btn-radius);
}
.btn-secondary:hover,.btn-secondary:focus,.btn-secondary:active{
	box-shadow: none !important;
	background-color: var(--secondary-dark) !important;
	border-color: var(--secondary-dark) !important;
	color: var(--white) !important;
}
.btn-tertiary{
	background-color: var(--tertiary);
	border-color: var(--tertiary);
	color: var(--white);
    border-radius: var(--btn-radius);
}
.btn-tertiary:hover,.btn-tertiary:focus,.btn-tertiary:active{
	box-shadow: none !important;
	background-color: var(--tertiary-dark) !important;
	border-color: var(--tertiary-dark) !important;
	color: var(--white) !important;
}
.btn-danger{
	background-color: var(--danger);
	border-color: var(--danger);
	color: var(--white);
    border-radius: var(--btn-radius);
}
.btn-danger:hover,.btn-danger:focus,.btn-danger:active{
	box-shadow: none !important;
	background-color: var(--danger-dark) !important;
	border-color: var(--danger-dark) !important;
	color: var(--white) !important;
}
.btn-light{
    background-color: var(--white);
    color : var(--primary);
	box-shadow: none;
    border-color: var(--light-border);
    border-radius: var(--btn-radius);
}
.btn-light:hover,.btn-light:focus{
    background-color: var(--white);
    border-color: var(--dark-border);
    box-shadow: none;
    color : var(--primary-dark);
}
.btn-danger.disabled, .btn-danger:disabled,
.btn-tertiary.disabled, .btn-tertiary:disabled,
.btn-primary.disabled, .btn-primary:disabled,
.btn-secondary.disabled, .btn-secondary:disabled  {
    color: var(--white);
    background-color: var(--gray);
    border-color: var(--gray);
}
.btn-action.crud-icon{
    width: var(--gutter);
    height: var(--gutter);
    padding: 0;
    background-color: var(--background);
    border: .5px solid var(--gray);
    border-radius: 50%;
    text-align: center;
    margin-right: calc(var(--gutter)/6);
    cursor: pointer;
    position: relative;
    line-height: 1;
    justify-content: center;
}
.btn-action.crud-icon .icon{
    font-size: 1.25rem;
}
.btn-action.crud-icon.btn-action-primary{
    background-color: var(--primary);
    color: var(--white);
    border-color: var(--primary-dark);
}
.btn-action.crud-icon.btn-action-danger{
    background-color: var(--danger);
    color: var(--white);
    border-color: var(--danger-dark);
}
.btn-action.crud-icon.btn-action-warning{
    background-color: var(--warning);
    color: var(--white);
    border-color: var(--warning-dark);
}
.btn-action.crud-icon.btn-action-blue{
    background-color: var(--blue);
    color: var(--white);
    border-color: var(--blue);
}
.btn-icon .icon{
    margin-right: 10px;
    font-size : 1.5rem;
}
.btn-icon.no-text .icon{
    margin-right: 0px;
}
.btn-icon.no-text .iconbtn-text{
    display: none;
}
table .btn-icon .icon{
    margin-right: 0px;
}
/* .btn-action.crud-icon.btn-action-plain{
    background-color: var(--gray);
    color: var(--white);
    border-color: var(--faded);
} */
/** Link */
a{
    color: var(--primary);
    text-decoration: none;
}
/** Form **/
.form-group{
    text-align: left;
    margin-bottom: 1.2rem;
}
.form-label{
    margin-bottom: 0.2rem;
    margin-left: 5px;
    font-weight: 500;
    color: var(--black);
}
.form-group.required label:after {
    content:" *";
	color: var(--danger-dark);
}
.form-control{
    line-height: 2.125 !important;
    border : 1px solid var(--light-border);
    border-radius: var(--input-radius);
    padding : 0.25rem 1rem;
    min-height: 48px;
}
.form-control-lg{
    line-height: 3.125rem !important;
    border-radius: var(--input-radius);
    font-size: 1.15rem;
    padding-left: 1.875rem 0.25rem;
}
.form-control-lg.number-sm, .form-control-lg.number-xs{
    padding-left: 1rem;
}
.has-error .help-block, .help-block-error{
    color: var(--danger);
    font-size : 0.9rem;
    font-weight: 500;
    margin-top: 0.2rem;
}
.form-control::placeholder, .select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered .select2-selection__placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: var(--light-brown);
    opacity: 1; /* Firefox */
}
.form-control:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: var(--dark-brown);
}
.form-control::-ms-input-placeholder { /* Microsoft Edge */
    color: var(--dark-brown);
}
.form-control:disabled, .form-control[readonly]{
    background-color: var(--background);
}
.hint-block{
    color : var(--gray) !important;
    font-size : 0.9rem;
    margin: 0.25rem 0;
}
.number-sm{
    max-width: 200px;
    text-align: center;
}
.number-xs{
    max-width: 130px;
    text-align: center;
}
.form-control:focus{
    border-color: var(--light-border) !important;
    box-shadow : 0 0 0 0.25rem var(--background) !important;
}
.select2 {
    width:100%!important;
}
.form-select:focus,
.select2-search__field:focus,
.select2-container--bootstrap-5.select2-container--focus .select2-selection, .select2-container--bootstrap-5.select2-container--open .select2-selection{
    border-color: var(--light-border) !important;
    box-shadow : 0 0 0 0.25rem var(--background) !important;
}
.select2-selection__choice{
    display: inline-block !important;
    background-color: var(--primary) !important;
    color: var(--white) !important;
    border-radius: var(--input-radius) !important;
}
.select2-selection__choice__remove{
    color: var(--white) !important;
    vertical-align: middle;
    margin-top: -3px;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") 100%/.75rem auto no-repeat !important;
}
.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option.select2-results__option--highlighted{
    background-color: var(--background) !important;
}
.select2-dropdown{
    border-radius: 10px !important;
    border: 0.5px solid var(--primary) !important;
}
.select2-search{
    padding: .75rem !important;
}
.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option.select2-results__option--disabled, .select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option[aria-disabled="true"]{
    color: var(--light-border);
}
.select2-container .select2-selection--single{
    height: 48px;
}
.select2-container .select2-selection--single.form-select-lg{
    height: 60px;
    padding: .9375rem 2.25rem .9375rem 1.875rem;
    border-radius: 1.875rem !important;
}
.select2-container .select2-selection--single .select2-selection__rendered{
    padding-left: 0px;
}
.select2-container--bootstrap-5 .select2-selection--single{
    padding: 12px 2.25rem 12px 1rem;
    border-radius: var(--input-radius) !important;
    border-color: var(--light-border) !important;
}
.select2-container .select2-selection--multiple{
    padding: 12px 1rem 12px 1rem;
    border-radius: var(--input-radius) !important;
    border-color: var(--light-border) !important;
    min-height: 48px !important;
    line-height: 1 !important;
}
.select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{
    margin-bottom: 0 !important;
    font-size: 0.9rem !important;
}
.select2-container--bootstrap-5.select2-container--disabled .select2-selection, .select2-container--bootstrap-5.select2-container--disabled.select2-container--focus .select2-selection{
    background-color: var(--background);
}
.select2-search--inline{
    display: none !important;
}
.show-search .select2-search--inline{
    display: inline-block !important;
    width: auto !important;
}
.show-search .select2-search {
    padding: 0rem !important;
}
.show-search .select2-search--inline textarea:focus{
    border-color: transparent !important;
    box-shadow : none !important;
}
.select2-selected-box{
    display: flex;
    width: auto;
    align-items: center;
    justify-content: start;
}
.select2-selected-box .icon{
    font-size: 24px;
    line-height: 1;
    margin-right: 5px;
    color: var(--primary);
}
.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option.select2-results__option--selected, .select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted){
    background-color: var(--background) !important;
    color: var(--black) !important;
}
.select2-results__group{
    /* text-transform: uppercase;
    background-color: var(--primary);
    display: block;
    padding: 8px 0 8px 8px !important;
    font-size: 13px;
    color: var(--white) !important;
    font-weight: bold !important;
    border-bottom: 1px solid var(--primary-dark); */
    display: block;
    padding: .375rem .75rem !important;
    font-size: 1rem;
    color: var(--gray) !important;
    font-weight: 400 !important;
}
.select2-results__options--nested > li{
    padding-left: 2.5rem !important;
    font-size: 0.8rem !important;
    text-transform: uppercase;
}
.input-group .form-control:focus
{
    border-color: var(--primary) !important;
    box-shadow : 0 0 0 0.25rem var(--background-transparent) !important;
}
textarea { resize: none; }
.joined-input{
    border : 1px solid var(--light-border);
    border-radius: .25rem;
}
.joined-input-divider{
    padding: 10px 2px;
}
.joined-input .form-control{
    border-width: 0px;
}
.joined-input .form-control:first-child{
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}
.joined-input .form-control:last-child{
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
}
.form-check:not(.form-switch){
    background-color: transparent;
    padding: 0.9rem 0;
    border-radius: 0.25rem;
    border: 1px solid transparent;
    margin-bottom: 0.1rem;
}
.form-check:not(.form-switch) .form-check-label{
    line-height: 20px;
    color: var(--primary);
}
.form-check:not(.form-switch) .form-check-input{
    margin-left: -0.05rem;
    margin-right: 0.75rem;
}
.form-check:not(.form-switch) .form-check-input:checked{
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='miter' stroke-width='1.5' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}
.form-check:not(.form-switch) .form-check-input:indeterminate {
    background-color: var(--highlight) !important;
    border-color: var(--highlight) !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%230B484E' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 10h8'/%3e%3c/svg%3e");
}
.table .form-check{
    padding: 0;
    max-width: 20px;
    max-height: 20px;
    min-height: 20px;
    margin-bottom: 0px;
}
.table .form-check .form-check-input{
    margin-right: 0;
    height: 18px;
    width: 18px;
}
.form-check-input:focus{
    border-color: var(--dark-border) !important;
    box-shadow : 0 0 0 0rem var(--light-brown) !important;
}
.form-check-sm{
    background-color: transparent;
    padding: 0.1rem 1rem;
    border-radius: 0rem;
    border: 1px solid transparent;
    margin-bottom: 0.1rem;
}
.d-flex .form-label{
    margin-bottom: 0;
    margin-left: 0;
}
.check-toggle{
    display: flex;
    align-items: top;
    margin-bottom: 1.2rem;
    color: var(--gray);
    font-size: 1.1rem;
    cursor: pointer;
}
.check-toggle .icon{
    font-size: 1.5rem;
    line-height: 1;
    margin-right: 0.3rem;
    margin-top: 0.2rem;
}
.check-toggle.selected{
    color: var(--black);
    font-weight: 600;
}
.check-toggle.selected .icon{
    color: var(--primary);
}
/** Table */
table {
    border-collapse: separate;
    border-spacing: 0;
    background-color: transparent;
}
.table > thead > * > *{
    font-weight: 600;
    font-size: var(--table-head-font-size);
    color: var(--white);
    border-width: 0px;
    border-bottom-color: var(--background);
    background-color: var(--dark-green);
    padding-top: calc(var(--gutter)/2);
    padding-bottom: calc(var(--gutter)/2);
}
.table > tbody:before {
    content:"@";
    display:block;
    line-height: 0px;
    text-indent:-99999px;
    font-size: 0;
}
.table > thead > * > * > a{
    color: var(--highlight-green);
}
.table > thead > * > *:first-child{
    border-top-left-radius: calc(var(--gutter)/4);
    /* border-bottom-left-radius: calc(var(--gutter)/4); */
}
.table > thead > * > *:last-child{
    border-top-right-radius: calc(var(--gutter)/4);
    /* border-bottom-right-radius: calc(var(--gutter)/4); */
}
.table > tbody > *:first-child > *:first-child{
    border-top-left-radius: calc(var(--gutter)/4);
    border-top-left-radius: 0px;
}
.table > tbody > *:first-child > *:last-child{
    border-top-right-radius: calc(var(--gutter)/4);
    border-top-right-radius: 0px;
}
.table > tbody > *:last-child > *:first-child{
    border-bottom-left-radius: calc(var(--gutter)/4);
}
.table > tbody > *:last-child > *:last-child{
    border-bottom-right-radius: calc(var(--gutter)/4);
}
.table > thead > * > *:first-child, .table > tbody > * > *:first-child{
    padding-left: calc(var(--gutter)/2);
}
.table > tbody > * > * {
    font-size: 15px;
    vertical-align: middle;
    border-color: var(--dark-border);
    padding: 0.75rem 0.6rem;
}
.table > tbody > :first-child > * {
    border-top-width: 1px;
}
.table > tbody > * > :first-child {
    border-left-width: 1px;
}
.table > tbody > * > :last-child {
    border-right-width: 1px;
}
.table > tbody > * > th {
    font-size: 1.25rem;
    font-weight: 600;
}
.table > tbody > * > td {
    color: var(--table-gray);
}
.table > tbody > * > td strong{
    color: var(--black);
    font-weight: 600;
    font-size: 1.05rem;
}
.table-sorter.active .icon{
    font-size : 16px;
}
.table > tbody > .pending > *{
    background-color: var(--light-border);
}
/** Modal */
.modal-header{
    background-color: var(--dark-green);
    color: var(--white);
    padding: calc(var(--gutter)/2);
}
.modal-header .btn-close{
    color: var(--white);
    background-color: var(--white);
    font-size: 10px;
    border-radius: 50%;
    margin-left: auto;
    margin-right: 0;
}
.modal-header .icon{
    font-size : 20px;
    background-color: var(--dark-green-highlight);
    color: var(--highlight-green);
    height: 32px;
    width: 32px;
    line-height: 32px;
    text-align: center;
    border-radius: 16px;
    margin-right: 8px;
    display: inline-block;
}
.modal-section-title, .section-title{
    padding: 0.6rem 0.6rem;
    background-color: var(--light-background);
    border-radius: 0.25rem;
    font-weight: 600;
    font-size: 0.85rem;
    margin-bottom: 0.75rem;
    color : var(--black);
    text-transform: uppercase;
    text-align: center;
}
.modal-section-title.empty{
    background-color: transparent;
}
.modal .table > thead > * > *{
    background-color: var(--background);
    color: var(--black);
    border-top-width: 1px;
    border-color: var(--dark-border);
}
.modal .table > thead > * > :first-child{
    border-left-width: 1px;
}
.modal .table > thead > * > :last-child{
    border-right-width: 1px;
}
.modal .table > tbody > * > th{
    font-size: 1rem;
}
/**
 * Popover
 */
#app-backdrop{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1050;
    width: 100vw;
    height: 100vh;
    background-color: var(--black) !important;
    display: none;
    opacity: 0.15;
}
#app-backdrop.show{
    display: block;
}
.app-popover a{
    color: var(--black);
}
.app-popover{
    z-index: 1060;
    position: absolute;
    background-color: white;
    box-shadow : 0px 0px 10px rgba(0, 0, 0, 0.15);
    display: none;
    padding: 0.4rem 1.125rem;
    max-width: 90%;
    width: auto;
}
.app-popover-menu{
    padding : 0.5rem 0rem;
    font-size : 0.875rem;
    border-bottom: 0.5px solid var(--background);
}
.app-popover-menu .icon{
    display: block;
    margin-right: 8px;
    width: 28px !important;
    text-align: center;
    font-size: 1.2rem;
}
.app-popover-menu:last-child{
    border-bottom-width: 0px;
}
.app-popover-menu .menu-text{
    padding-right: 2rem;
}
.app-popover.show{
    display: block;
}
.app-popover-full{
    padding : 0px;
}
.popover-title{
    height: 60px;
    background-color: var(--lake);
    color: var(--white);
    text-align: center;
    line-height: 60px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    font-size: 18px;
    font-weight: 600;
}
/**
 * Pagination
 */
 .page-item .page-link{
    border-radius: 2px !important;
    border-color: var(--primary-dark) !important;
    width: 32px;
    height: 32px;
    font-size: 14px;
    line-height: 30px;
    text-align: center;
    padding: 0px;
    font-weight: 500;
    margin-right: 4px;
    color: var(--primary);
    text-decoration: none !important;
    border-radius: 50% !important;
}
.page-item .page-link:hover{
    background-color: var(--widget-green-bg);
}
.page-item .page-link .icon{
    margin: 8px 0 0 1px;
    display: inline-block;
}
.page-item.prev .page-link .icon{
    margin-left: -1px;
    display: inline-block;
}
.page-item:last-child .page-link{
    margin-right: 0px;
}
.page-item.disabled .page-link{
    border-color: var(--gray) !important;
    color: var(--gray);
    background-color: var(--white);
}
.page-item.active .page-link{
    border-color: var(--primary) !important;
    color: var(--white);
    background-color: var(--primary);
    font-weight: 400;
}
.btn-pagination{
    height: 32px !important;
    font-size: 14px;
    color: var(--black) !important;
    border-color: var(--primary) !important;
}
.pagination-dropdown{
    margin-left: 5px;
}
.btn-pagination .icon{
    font-size: 11px;
    margin-left: 4px;
    margin-top: 2px;
    margin-right: 0px;
    display: none;
}
/** Tab **/
.nav-tabs{
    border-bottom: 1.5px solid var(--dark-border);
}
.nav-tabs .nav-link{
    background-color: transparent !important;
    color: var(--primary) !important;
    font-size: 16px;
    padding: 12px 20px;
    margin-right: 8px;
    margin-bottom: -1.5px !important;
    border-bottom-width: 3px !important;
}
.nav-tabs .nav-link:hover{
    border-color: transparent transparent var(--dark-green);
}
.nav-tabs .nav-link.active{
    border-color: transparent transparent var(--dark-green-highlight);
    font-weight: bold;
}
/** Alert **/
.alert{
    padding: 9px 16px;
    display: inline-block;
    max-width : 640px;
    width : 100%;
    margin: auto;
}
.alert-dismissible{
    padding-right: 64px;
}
.alert-dismissible .btn-close{
    padding: 9px 16px;
    margin-top: -16px;
    top : 50%;
    font-size: 14px;
}
.alert-success{
    background-color: var(--primary-faded) !important;
    border-color: var(--primary-dark) !important;
}
.alert-danger{
    background-color: var(--danger-faded) !important;
    border-color: var(--danger-dark) !important;
    color : var(--danger-dark) !important;
}
.alert-warning{
    background-color: var(--warning-faded) !important;
    border-color: var(--warning) !important;
    color: var(--warning) !important;
}
.alert-disabled{
    background-color: var(--primary-faded) !important;
    border-color: var(--gray) !important;
    color: var(--black) !important;
}

/** Loader **/
.loading{
    height: 100vh;
    width: 100vw;
    z-index: 3005;
    background-color: rgba(255,255,255,0.85);
}
.spinner {
    width: 80px;
    height: 80px;  
    position: relative;
    margin: 100px auto;
}
.double-bounce1, .double-bounce2 {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: var(--primary);
    opacity: 0.5;
    position: absolute;
    top: 0;
    left: 0;
    
    -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
    animation: sk-bounce 2.0s infinite ease-in-out;
} 
.double-bounce2 {
    -webkit-animation-delay: -1.0s;
    animation-delay: -1.0s;
} 
@-webkit-keyframes sk-bounce {
    0%, 100% { -webkit-transform: scale(0.0) }
    50% { -webkit-transform: scale(1.0) }
}  
@keyframes sk-bounce {
    0%, 100% { 
        transform: scale(0.0);
        -webkit-transform: scale(0.0);
    } 50% { 
        transform: scale(1.0);
        -webkit-transform: scale(1.0);
    }
}
/* Toast */
.app-toast-manager{
    width:100%;
    bottom: 0px;
    height:auto;
    position:fixed;
    display: flex;
    left : 0;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index : 1000010;
}
.app-toast{
    max-width: 400px;
    min-width: 300px;
    background-color: var(--primary-dark);
    color : #fff;
    font-size: 1rem;
    padding: 0.75rem 1.25rem;
    border-radius: 0.4rem;
    -webkit-box-shadow: var(--shadow-xxl);
    -moz-box-shadow: var(--shadow-xxl);
    box-shadow: var(--shadow-xxl);
    margin: 0px 0 15px;
}
.app-toast.danger{
    background-color: var(--danger);
}
.app-toast.warning{
    background-color: var(--warning-dark);
}
/** Utilities */
.noselect{
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
}
.search-bar{
    display: flex;
    align-items: center;
    justify-content: start;
    width: 100%;
}
.search-bar .select2-container--bootstrap-5 .select2-selection--single{
    height : 60px;
    padding : 18px 2.25rem 18px 1rem;
    border-radius: 0px !important;;
    border-width: 2px !important;
    border-right-width: 0px !important;
}
.search-bar .btn{
    max-height: 60px;
    width: auto;
    height: 60px;
    border-width: 2px;
    border-radius: 0px;
    padding: 0 1rem;
}
.search-bar .select2-container .select2-selection--single.first, 
.search-bar .btn:first-child{
    border-top-left-radius: var(--large-input-radius) !important;
    border-bottom-left-radius: var(--large-input-radius) !important;
}
.search-bar .btn:last-child{
    border-top-right-radius: var(--large-input-radius);
    border-bottom-right-radius: var(--large-input-radius);
}
.search-bar .btn:hover, .search-bar .btn:focus{
    border-color: var(--light-border);
    background-color: var(--primary-faded);
}
.search-bar .form-group{
    display: flex;
    align-items: center;
    justify-content: start;
    margin: 0px;
    background-color: var(--white);
    border-width: 2px 0 2px 2px;
    border-style: solid;
    border-color: var(--light-border);
}
.search-bar .form-group .icon{
    font-size: 24px;
    line-height: 1;
    margin: 0 5px;
    color: var(--primary);
}
.search-bar .form-control{
    height : 56px;
    padding : 18px 2.25rem 18px 1rem;
    border-radius: 0px !important;;
    border-width: 0px !important;
    border-right-width: 0px !important;
}
.search-bar .form-control:focus{
    box-shadow: none !important;
}
.search-bar .form-control.date{
    max-width: 140px;
}
.search-bar .form-control:disabled, .form-control[readonly]{
    background-color: transparent;
    cursor: not-allowed;
}
.search-bar .form-group.disabled{
    background-color: var(--background);
    cursor: not-allowed;
}
.search-bar .form-group.first{
    border-top-left-radius: var(--large-input-radius) !important;
    border-bottom-left-radius: var(--large-input-radius) !important;
}
.search-bar.stacked{
    display: block;
}
.search-bar.stacked > * {
    margin-bottom: 15px;
}
.search-bar.stacked .form-group{
    border-radius: var(--large-input-radius) !important;
    border-right-width: 2px;
}
.search-bar.stacked .form-group .form-control{
    border-radius: var(--large-input-radius) !important;
    padding-left: 0px;
}
.search-bar.stacked .form-group .icon{
    margin: 5px 5px 0 15px;
    padding-top: 2px;
    display: inline-block;
}
.search-bar.stacked .select2-container--bootstrap-5 .select2-selection--single{
    border-radius: var(--large-input-radius) !important;
    border-width: 2px !important;
    border-right-width: 2px !important;
}
.search-bar.stacked .btn{
    border-radius: var(--large-input-radius) !important;
}
.search-bar.stacked .form-control.date{
    width: 100%;
    max-width: none;
}
/** Grid */
.grid{
    margin-bottom: 1rem;
}
.crud-row, .crud-row .col{
    overflow: visible;
}
.crud-grid{
    border-radius: calc(var(--gutter)/4) !important;
    background-color: var(--white);
    border: 1px solid var(--light-border);
    min-height: 360px;
    max-width: 360px;
    margin: auto;
}
.grid-body{
    padding: calc(var(--gutter)/2);
}
.progress-indicator{
    position: relative;
    height: 40px;
    width: 40px;
    border-radius: 25px;
    background: var(--white-bg);
    margin: auto;
}
.progress-indicator-wrapper{
    font-size: 0.55rem;
    text-wrap: nowrap;
    margin-left: 10px;
    color: var(--black);
}
.progress-days{
    font-weight : bold;
    position: absolute;
    left: 0%;
    width: 100%;
    top: 0%;
    bottom: 0%;
    /* text-align: center;
    top: 50%;
    margin-top: -7px; */
    font-size: 16px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--black);
}
.progress-days .icon{
    font-size : 24px;
}
.grid-title{
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
    color: var(--black);
}
.grid-subtitle{
    font-size: 12px;
    color: var(--dark-brown);
    line-height: 1.2;
}
.grid-emp{
    font-size: 20px;
    font-weight: 500;
    margin-top: 24px;
    color: var(--black);
}
.crud-grid .img-container{
    min-height: 220px;
    width: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border-top-right-radius: calc(var(--gutter)/4);
    border-top-left-radius: calc(var(--gutter)/4);
    position: relative;
    background-origin: content-box;
    padding: var(--gutter);
    background-color: var(--background);
}
.crud-grid .img-container.no-image{
    background-origin: inherit;
    background-size: cover;
}
.grid-cta{
    display: block;
    width: 40px;
    height: 40px;
    background-color: var(--primary);
    border-radius: 50%;
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    line-height: 1;
    cursor: pointer;
    position: absolute;
    top: calc(var(--gutter)/2);
    right: calc(var(--gutter)/2);
}
.grid-cta .icon{
    transform: rotate(-45deg);
    margin-bottom: 3px;
    margin-left: 3px;
}
.crud-grid .img-container.danger .grid-cta{
    background-color: var(--danger);
}
.crud-grid .img-container.warning .grid-cta{
    background-color: var(--warning);
}
.data-section-title{
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    text-transform: uppercase;
    color: var(--black);
}
.data-section-data{
    color: var(--dark-brown);
}
.data-section{
    margin-bottom: 24px;
}
.data-section-header{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 8px;
}
.company-logo{
    width : var(--pda-cta-size);
    height: var(--pda-cta-size);
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--white);
    border: 2px solid var(--light-border);
    border-radius: var(--pda-cta-radius);
    margin: var(--pda-cta-gutter);
}
.company-logo img{
    max-width: 90%;
    max-height: 90%;
    width: auto;
    height: auto;
}
.pda-indicator .progress-indicator{
    width: calc(var(--pda-cta-size) - 36px);
    height: calc(var(--pda-cta-size) - 36px);
    margin-bottom: 2px;
}
.pda-indicator{
    width: var(--pda-cta-size);
    height: var(--pda-cta-size);
    background-color: var(--white);
    border: 2px solid var(--light-border);
    border-radius: var(--pda-cta-radius);
    font-size: 10px;
    line-height: 1;
    padding: var(--pda-cta-padding);
    text-wrap: wrap;
    margin: var(--pda-cta-gutter);
}
.pda-cta{
    width: var(--pda-cta-size);
    height: var(--pda-cta-size);
    background-color: var(--white);
    border: 2px solid var(--light-border);
    border-radius: var(--pda-cta-radius);
    font-size: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--pda-cta-padding);
    margin: var(--pda-cta-gutter);
    cursor: pointer;
    text-align: center;
}
.pda-cta .icon, .pda-cta-count{
    font-size: calc(var(--pda-cta-size) - 36px);
    line-height: 1;
    font-weight: 600;
}
.pda-cta.primary{
    background-color: var(--primary-faded);
    border-color: var(--primary-dark);
}
.pda-cta.primary .pda-cta-count, .pda-cta.primary .icon{
    color: var(--primary);
}
.pda-cta.tertiary{
    background-color: var(--tertiary-faded);
    border-color: var(--tertiary-dark);
}
.pda-cta.tertiary .icon, .pda-cta.tertiary .pda-cta-count{
    color: var(--tertiary);
}
.pda-cta-wrapper{
    margin-left: calc(var(--pda-cta-gutter) * -1);
}
/** Accordion Item **/
.accordion-item{
    margin-bottom: 10px;
    border: 1px solid var(--dark-border) !important;
    border-radius: 6px !important;
}
.accordion-button{
    font-size: 14px;
    padding: 15px;
    border-radius: 6px !important;
}
.accordion-button::after{
    font-size: 12px !important;
    width: 12px;
    height: 12px;
    background-size: 12px;
    margin-left: auto;
}
.accordion-button:not(.collapsed){
    font-weight: bold;
    padding-bottom: 0px;
    border-bottom-left-radius: 0px !important;
    border-bottom-right-radius: 0px !important;
}
.accordion-button:not(.collapsed), .accordion-body{
    background-color: var(--pie-yellow);
    box-shadow: none !important;
}
.accordion-body{
    font-size: 12px;
    padding: 15px;
    padding-top: 5px;
    padding-left: 30px;
}
/**
 * Impact Park
 */
.impact-risk{
    font-family: 'Courier New', Courier, monospace;
    font-weight: bold;
    font-size: 16px !important;
    display: inline-block;
    padding: 3px 6px;
    background-color: var(--light-background);
    border: 1px solid var(--light-border);
    border-radius: 5px;
}
.impact-risk.low{
    color: var(--primary);
    background-color: var(--primary-faded);
    border-color: var(--primary-light);
}
.impact-risk.high{
    color: var(--warning);
    background-color: var(--warning-faded);
    border-color:var(--warning-dark);
}
.impact-risk.veryhigh{
    color: var(--danger);
    background-color: var(--danger-faded);
    border-color: var(--danger-dark);
}
.impact-risk.medium{
    color: var(--tertiary);
    background-color: var(--tertiary-faded);
    border-color: var(--tertiary-dark);
}
@media (max-width: 991px) {
    .generic-container{
        padding : 1rem;
    }
    .search-bar .select2-container--bootstrap-5 .select2-selection--single{
        height: 39.2px !important;
        padding: 6px 2.25rem 6px 1rem !important;
        box-shadow: none !important;
    }

    .search-bar.stacked .select2-container--bootstrap-5 .select2-selection--single{
        height: 60px !important;
        padding : 18px 2.25rem 18px 1rem !important;
    }

    .header .btn-icon .icon{
        margin-right: 0px;
    }
}