:root {
    --wizard-stepper--active: rgba(101,113,255,.2);
    --wizard-stepper--active-font: #0d6efd ;
    --wizard-circle-border-color: #0d6efd!important;
    --wizard-line-color: #dee2e6;
    --wizard-circle-color: #dee2e6;
    --wizard-stepper--disabled: #dee2e6;
    --wizard-stepper--disabled-font: #dee2e6;
    --primary-color: #0d6efd!important;
    --wizard-stepper--btn-bg: rgba(101,113,255,.2);
    --wizard-stepper--btn-color: #6571ff;
    --wizard-stepper--btn-border-color: transparent;
}

.ripple-primary .p-ink {
    background: rgb(33 150 243 / 30%);
}

.ripple-danger .p-ink {
    background: rgb(211 47 47 / 30%);
}

.ripple-warning .p-ink {
    background: rgb(255 193 7 / 30%);
}

.ripple-success .p-ink {
    background: rgb(16 183 89 / 30%);
}

.font-style-normal {
    font-style: normal;
}

.p-input-icon-left .p-input-icon-right > .p-inputtext {
    padding-left: 2rem;
}

.w-stepper {
    --circle-size: clamp(0.5rem, 1vw, 1.25rem)!important;
}

.step-view {
    background: transparent!important;
}

.step-view .col-12 {
    padding-top: 0!important;
    padding-bottom: 0!important;
}

.w_stepper__item_content::before {
    border: 2px solid transparent;
}

.w-stepper__item.active .w_stepper__item_content::before, .w-stepper__item.completed .w_stepper__item_content::before {
    border-color: var(--wizard-circle-border-color);
}

.w-stepper__item.active:not(:first-child)::before, .w-stepper__item.completed:not(:first-child)::before {
    background-color: var(--wizard-circle-border-color)!important;
}

.w-stepper__item.active .w_stepper__item_content::before {
    background-color: var(--wizard-circle-border-color)!important;
}

.w-stepper__item.active, .w-stepper__item.completed {
    color: var(--wizard-stepper--active-font)!important;
}

.w-stepper__item:not(:first-child)::before {
    z-index: 0!important;
}

.form-control:disabled {
    opacity: 1!important;
}

.p-dialog .p-dialog-header {
    padding: 1rem!important;
    border-bottom: 1px solid rgba(72, 94, 144, 0.16)!important;
    border-radius: 0!important;
}

.p-dialog .p-dialog-footer {
    padding: 0 2rem 1.5rem 2rem!important;
}

.p-dialog .p-dialog-footer button {
    min-width: 100px;
}

.p-dialog .p-dialog-footer button:last-child, .p-button .p-button-icon-left:not(.pi) {
    margin-right: 0!important;
}

.p-dialog .p-dialog-header h3 {
    margin-bottom: 0;
    /* color: #0036af; */
    /* font-weight: bold; */
}

.p-float-label.p-input-icon-left, .p-float-label.p-input-icon-right,
.p-float-label .p-input-icon-left, .p-float-label .p-input-icon-right {
    display: block;
}

.p-float-label.p-input-icon-right .p-calendar,
.p-float-label .p-inputnumber {
    display: flex;
}

.p-float-label .p-input-icon-left .p-inputtext, .p-float-label .p-input-icon-right .p-inputtext {
    width: 100%;
}

.p-float-label input:focus ~ label, .p-float-label input.p-filled ~ label, .p-float-label textarea:focus ~ label, .p-float-label textarea.p-filled ~ label, .p-float-label .p-inputwrapper-focus ~ label, .p-float-label .p-inputwrapper-filled ~ label {
    top: 2px!important;
    background: #fff;
    padding: 1px 5px;
    border-radius: 3px;
    color: #2196F3;
}

.p-dialog .p-dialog-content {
    padding: 1rem 2rem 1.5rem!important;
}

.p-dialog .p-dialog-content .field:first-child {
    margin-top: 0.25rem;
}

.vr-wizard--footer {
    margin-top: 20px;
}

/* .p-datatable .p-datatable-thead > tr > th,
.p-datatable .p-datatable-tbody > tr > td {
    padding: 8px 10px;
} */

.p-button+.p-button {
    margin-left: 0.5rem;
}

/* .p-datatable .p-datatable-thead > tr > th,
.p-datatable .p-datatable-tbody > tr > td {
    white-space: nowrap;
    line-height: 1.5;
} */

.p-toast {
    width: 20rem!important;
    font-size: 0.85rem!important;
}

.p-toast-top-right {
    top: 65px!important;
    right: 10px!important;
}

.vr-wizard--btn {
    background: var(--wizard-stepper--btn-bg) !important;
    color: var(--wizard-stepper--btn-color) !important;
    border: 1px solid var(--wizard-stepper--btn-border-color) !important;
    cursor: pointer !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    padding: 0.5rem 1rem !important;
    margin: 0 0.5rem !important;
}

.vr-wizard--btn:disabled {
    background: var(--wizard-stepper--active)!important;
    color: var(--wizard-stepper--active-font)!important;
    opacity: 0.5 !important;
    cursor: no-drop!important;
}

.p-error, .p-float-label > .p-invalid + label {
    color: #f44336!important;
}

.p-error {
    line-height: 1.2;
    display: inline-block;
}

.p-confirm-dialog .p-dialog-footer .btn-default {
    background-color: transparent;
    /* color: #2196F3!important; */
    border: 1px solid #e9ecef!important;
    /* font-size: 1rem!important; */
}

.p-confirm-dialog .p-dialog-footer .btn-default:enabled:hover {
    background: rgb(33 150 243 / 4%)!important;
    box-shadow: none;
}

.p-confirm-dialog .p-dialog-footer .btn-default:enabled:focus {
    box-shadow: none;
}

.table-image {
    max-width: 100px;
    max-height: 45px;
    display: block;
    margin: auto;
}

.p-disabled.p-dropdown {
    background: #e0e6ed!important;
    cursor: not-allowed !important;
}

.p-error:not(.pi) {
    line-height: 1!important;
}

.p-error:empty:not(.pi) {
    display: none;
}

.p-inputtext:enabled:focus {
    box-shadow: none!important;
}

.wd-200 {
    width: 200px!important;
}

.theme-calendar.p-datepicker {
    padding: 0!important;
    width: 307.875px!important;
    min-width: 307.875px!important;
    max-width: 307.875px!important;
}

.theme-calendar.p-datepicker .p-datepicker-header {
    padding: 0 1rem!important;
    padding-top: 0.5rem!important;
    border-bottom: 0!important;
}

.theme-calendar.p-datepicker table {
    font-size: 14px!important;
    margin: 0 10px 10px!important;
    width: calc(100% - 20px)!important;
}

.theme-calendar.p-datepicker .p-yearpicker, .theme-calendar.p-datepicker .p-monthpicker {
    margin: 0 10px 10px!important;
}

.theme-calendar.p-datepicker table th, .theme-calendar.p-datepicker table td {
    padding: 0!important;
}

.theme-calendar.p-datepicker table th > span {
    width: auto!important;
    height: auto!important;
}

.theme-calendar.p-datepicker table td > span {
    width: 39px!important;
    max-width: 39px!important;
    height: 39px!important;
    line-height: 39px!important;
    margin: 0!important;
}

.theme-calendar.p-datepicker table th {
    text-align: center;
    color: rgba(0,0,0,0.54);
    font-weight: 600;
}

.theme-calendar.p-datepicker table td.p-datepicker-today > span.p-highlight, .theme-calendar.p-datepicker table td > span.p-highlight {
    background: #0d6efd!important;
    border-color: #0d6efd!important;
    color: #fff!important;
}

.p-datepicker table td.p-datepicker-today > span {
    border-color: #959ea9!important;
    background: transparent!important;
}

.p-datepicker table td > span:focus, .p-datepicker:not(.p-disabled) .p-monthpicker .p-monthpicker-month:not(.p-disabled):focus, .p-dropdown:not(.p-disabled).p-focus {
    box-shadow: none!important;
}

.theme-calendar.p-datepicker .p-datepicker-header .p-datepicker-title {
    display: flex;
    justify-content: center;
    width: 207px;
}

.theme-calendar.p-datepicker .p-datepicker-header .p-datepicker-title button {
    font-size: 110%!important;
    font-weight: 300!important;
    text-align: center;
}

.theme-calendar.p-datepicker .p-datepicker-header .p-datepicker-title button:first-child {
    min-width: 115px;
}

.theme-calendar.p-datepicker .p-datepicker-header .p-datepicker-title button:last-child {
    width: 6ch!important;
    font-size: 105%!important;
    font-weight: 400!important;
}

.theme-calendar.p-datepicker .p-datepicker-header .p-datepicker-title button:focus, .p-datepicker:not(.p-disabled) .p-yearpicker .p-yearpicker-year:not(.p-disabled):focus {
    box-shadow: none!important;
}

button {
    user-select: none;
}

.p-datatable .p-datatable-loading-overlay {
    background-color: rgb(249 251 252 / 85%)!important;
}

textarea.form-control {
    resize: none;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeOut {
    from { opacity: 1; }
    to { opacity: 0; }
}

@media (max-width: 768px) {
    .p-dialog:not(.p-dialog-maximized) {
        width: calc(100% - 20px)!important;
    }

    .p-dialog .p-dialog-content {
        padding: 1rem 1.225rem 1rem!important;
    }

    .p-dialog.p-confirm-dialog {
        width: 100vw !important;
        height: 100vh !important;
        top: 0px !important;
        left: 0px !important;
        max-height: 100%;
        background-color: #fff;
    }
    .p-dialog.p-confirm-dialog .p-dialog-header {
        border-bottom: 0!important;
    }

    .p-dialog-title {
        display: none;
    }

    .confirm-dialog-content {
        position: relative;
        z-index: 1;
    }

    .p-dialog.p-confirm-dialog .p-dialog-footer {
        display: flex;
        flex-direction: column-reverse;
        margin-top: 2rem;
    }

    .p-dialog.p-confirm-dialog .p-dialog-footer > .btn:not(#back-to-top):not([class*="rounded-"]) {
        border-radius: var(--tb-border-radius-pill)!important;
    }

    .p-dialog.p-confirm-dialog .p-dialog-footer > .p-button+.p-button {
        margin-left: 0;
    }

    .p-dialog.p-confirm-dialog .p-dialog-footer > .p-confirm-dialog-reject {
        margin-top: 0.5rem;
    }

    .p-dialog.p-confirm-dialog .p-dialog-footer > .btn.p-confirm-dialog-accept:not(#back-to-top):not([class*="rounded-"]) {
        font-size: 1rem!important;
    }

    /* Clouds Animation */
    .clouds-container {
        position: absolute;
        width: 100%;
        overflow: hidden;
        left: 0;
        opacity: 0.3;
    }
    
    .cloud {
        width: 200px;
        height: 60px;
        background: #c9dbe9;
        border-radius: 200px;
        -moz-border-radius: 200px;
        -webkit-border-radius: 200px;
        position: relative; 
    }
    
    .cloud:before, .cloud:after {
        content: '';
        position: absolute; 
        background: #c9dbe9;
        width: 100px; height: 80px;
        position: absolute; top: -15px; left: 10px;
        
        border-radius: 100px;
        -moz-border-radius: 100px;
        -webkit-border-radius: 100px;
        
        -webkit-transform: rotate(30deg);
        transform: rotate(30deg);
        -moz-transform: rotate(30deg);
    }
    
    .cloud:after {
        width: 120px; height: 120px;
        top: -55px; left: auto; right: 15px;
    }
    
    .x1 {
        -webkit-animation: moveclouds 15s linear infinite;
        -moz-animation: moveclouds 15s linear infinite;
        -o-animation: moveclouds 15s linear infinite;
    }
    
    .x2 {
        left: 200px;
        -webkit-transform: scale(0.6);
        -moz-transform: scale(0.6);
        transform: scale(0.6);
        opacity: 0.6;
        -webkit-animation: moveclouds 25s linear infinite;
        -moz-animation: moveclouds 25s linear infinite;
        -o-animation: moveclouds 25s linear infinite;
    }
    
    .x3 {
        left: -250px; top: -200px;
        -webkit-transform: scale(0.8);
        -moz-transform: scale(0.8);
        transform: scale(0.8);
        opacity: 0.8;
        -webkit-animation: moveclouds 20s linear infinite;
        -moz-animation: moveclouds 20s linear infinite;
        -o-animation: moveclouds 20s linear infinite;
    }
    
    .x4 {
        left: 470px; top: -250px;
        -webkit-transform: scale(0.75);
        -moz-transform: scale(0.75);
        transform: scale(0.75);
        opacity: 0.75;
        -webkit-animation: moveclouds 18s linear infinite;
        -moz-animation: moveclouds 18s linear infinite;
        -o-animation: moveclouds 18s linear infinite;
    }
    
    .x5 {
        left: -150px; top: -150px;
        -webkit-transform: scale(0.8);
        -moz-transform: scale(0.8);
        transform: scale(0.8);
        opacity: 0.8;
        -webkit-animation: moveclouds 20s linear infinite;
        -moz-animation: moveclouds 20s linear infinite;
        -o-animation: moveclouds 20s linear infinite;
    }
    
    @-webkit-keyframes moveclouds {
        0% {margin-left: 100%;}
        100% {margin-left: -100%;}
    }
    
    @-moz-keyframes moveclouds {
        0% {margin-left: 100%;}
        100% {margin-left: -100%;}
    }
    
    @-o-keyframes moveclouds {
        0% {margin-left: 100%;}
        100% {margin-left: -100%;}
    }

    .is-danger .ldl-ani.comment-box > path {
        fill: #ff8080!important;
    }

    .is-danger .ldl-ani.comment-box-content > path {
        fill: #fff!important;
    }
}

.text-edited {
    text-decoration: line-through;
}

.loader-absolute {
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 100;
    background-color: rgb(249 251 252 / 85%)!important;
    left:0;
    top:0;
}

.p-toast {
    opacity: 0.9;
}

.p-toast .p-toast-message {
    margin: 0 0 1rem 0;
    box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
    border-radius: 6px;
}

.p-toast .p-toast-message .p-toast-message-content {
    padding: 1rem;
    border-width: 0 0 0 6px;
}

.p-toast .p-toast-message .p-toast-message-content .p-toast-message-text {
    margin: 0 0 0 1rem;
}

.p-toast .p-toast-message .p-toast-message-content .p-toast-message-icon {
    font-size: 2rem;
}

.p-toast .p-toast-message .p-toast-message-content .p-toast-message-icon.p-icon {
    width: 2rem;
    height: 2rem;
}

.p-toast .p-toast-message .p-toast-message-content .p-toast-summary {
    font-weight: 700;
}

.p-toast .p-toast-message .p-toast-message-content .p-toast-detail {
    margin: 0.5rem 0 0 0;
}

.p-toast .p-toast-message .p-toast-icon-close {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: transparent;
    transition: background-color 0.2s, color 0.2s, box-shadow 0.2s;
}

.p-toast .p-toast-message .p-toast-icon-close:hover {
    background: rgba(255, 255, 255, 0.3);
}
  
.p-toast .p-toast-message .p-toast-icon-close:focus {
    outline: 0 none;
    outline-offset: 0;
    box-shadow: 0 0 0 0.2rem #BFDBFE;
}

.p-toast .p-toast-message.p-toast-message-info {
    background: #e9e9ff!important;
    border: solid #696cff!important;
    border-width: 0 0 0 6px!important;
    color: #696cff!important;
}

.p-toast .p-toast-message.p-toast-message-info .p-toast-message-icon,
.p-toast .p-toast-message.p-toast-message-info .p-toast-icon-close {
    color: #696cff!important;
}

.p-toast .p-toast-message.p-toast-message-success {
    background: #e4f8f0!important;
    border: solid #1ea97c!important;
    border-width: 0 0 0 6px!important;
    color: #1ea97c!important;
}

.p-toast .p-toast-message.p-toast-message-success .p-toast-message-icon,
.p-toast .p-toast-message.p-toast-message-success .p-toast-icon-close {
    color: #1ea97c!important;
}

.p-toast .p-toast-message.p-toast-message-warn {
    background: #fff2e2!important;
    border: solid #cc8925!important;
    border-width: 0 0 0 6px!important;
    color: #cc8925!important;
}

.p-toast .p-toast-message.p-toast-message-warn .p-toast-message-icon,
.p-toast .p-toast-message.p-toast-message-warn .p-toast-icon-close {
    color: #cc8925!important;
}

.p-toast .p-toast-message.p-toast-message-error {
    background: #ffe7e6!important;
    border: solid #ff5757!important;
    border-width: 0 0 0 6px!important;
    color: #ff5757!important;
}

.p-toast .p-toast-message.p-toast-message-error .p-toast-message-icon,
.p-toast .p-toast-message.p-toast-message-error .p-toast-icon-close {
    color: #ff5757!important;
}

.p-password {
    width: 100%;
}

.p-input-icon-left>i, .p-input-icon-left>svg, .p-input-icon-right>i, .p-input-icon-right>svg, .p-float-label label {
    margin-top: 0!important;
    transform: translateY(-50%);
}

.pointer {
    cursor: pointer;
}

.p-component {
    font-family: inherit!important;
    font-size: inherit!important;
    font-weight: inherit!important;
}

.p-link:focus {
    box-shadow: 0;
}

.p-button.p-button-danger.btn-primary:enabled:focus {
    box-shadow: 0 0 0 0.2rem #dae3ff!important;
}

.hide-header .p-dialog-header, .hide-footer .p-dialog-footer {
    display: none;
}

.p-dialog.header-b-0 .p-dialog-header {
    border-bottom: 0!important;
}

.field > label {
    margin-bottom: 0.25rem;
}

.form-group {
    margin-bottom: 1.5rem;
}

.p-button.p-button-icon-only {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fc-event{
    cursor: pointer!important;
}

.p-dropdown-items {
    margin: 0;
    padding: 0.5rem 0;
}

.p-invalid > .p-inputtext {
    border-color: #f44336;
}

div:where(.swal2-container) {
    z-index: 1102 !important;
}

small.p-error {
    margin-top: 0.5rem;
}

.table-fixed {
    table-layout: fixed;
}

.border-collapse-separate {
    border-collapse: separate;
}

.fw-500 {
    font-weight: 500;
}

@media (max-width: 991.98px){
    .chat-conversation {
        height: calc(100vh - 333px);
    }

    #layout-wrapper .context-container{
        height:calc(100vh - 375px);
    }
}

.zi-101{
    z-index: 101;
}
