:root {
    --o-black: #000 !important;
    --o-almost-black: #111 !important;
    --o-tinted-black: #222 !important;
    --o-light-black: #333 !important;
    --o-pale-black: #444 !important;
    --o-dark-grey: #555 !important;
    --o-shaded-grey: #666 !important;
    --o-medium-grey: #777 !important;
    --o-tinted-grey: #888 !important;
    --o-light-grey: #999 !important;
    --o-pale-grey: #aaa !important;
    --o-silver: #bbb !important;
    --o-dark-white: #ccc !important;
    --o-shaded-white: #ddd !important;
    --o-almost-white: #eee !important;
    --o-white: #fff !important;
    --o-dark-gainsboro: #D8D8D8 !important;
    --o-gainsboro: #dcdcdc !important;
    --o-light-gainsboro: #e8e8e8 !important;
    --o-dark-white-smoke: #f0f0f0 !important;
    --o-white-smoke: #f5f5f5 !important;
    --o-light-white-smoke: #f8f8f8 !important;
}

.ap {
    /* Quill Editor Emoji Plugin */
    margin-top: 2px !important;
}

.avatar-sm {
    width: 1rem !important;
    height: 1rem !important;
}

.bg-quote {
    width: 100% !important;
}

.blockquote-footer {
    margin-top: 5px !important;
}

a.btn-info {
    color: #fff !important;
}

.btn-google-plus-label {
    max-width: 90% !important;
}

.bx-xl {
    font-size: 1.75rem !important;
    font-weight: normal !important;
}

.card-datatable {
    padding-bottom: 0 !important;
    border-radius: 0.5rem !important;
}

.container-p-y:not([class^=pb-]):not([class*=" pb-"]) {
    padding-bottom: 0 !important;
}

.dashboard-mini-card {
    min-height: 182px;
}

.dashboard-mini-card-bg {
    position: relative;
    background-color: rgba(255, 255, 255, 0.5) !important;
}

.dashboard-mini-card-bg-img {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.dashboard-welcome {
    padding-right: 260px !important;
}

.dashboard-welcome blockquote {
    font-size: 1em !important;
    font-weight: 600 !important;
}

.welcome-dragon.small-screen::after {
    opacity: 0.2;
}

.dashboard-welcome.small-screen {
    padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x) !important;
}

.dashboard-welcome.small-screen blockquote {
    margin-bottom: 0 !important;
}

.dt-cell-max-width {
    max-width: 260px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.dt-col-total {
    text-align: right !important;
}

.dt-fixedheader {
    border-top-left-radius: 0.5rem !important;
    border-top-right-radius: 0.5rem !important;
    overflow: hidden;
    /* Ensure inner elements do not overflow */
}

.dt-money {
    color: #008000;
    text-align: right;
    font-weight: 500;
}

.dt-money-neg {
    color: #FF0000;
    text-align: right;
    font-weight: 500;
}

.dt-money-zero {
    color: #697a8d;
    text-align: right;
}

.dt-tree-l0 {
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: underline double;
}

.dt-tree-l1 {
    font-weight: bold;
    font-style: italic;
}

.dtrg-group {
    background-color: var(--o-dark-grey) !important;
}

.dtrg-level-1 {
    background-color: var(--o-light-grey) !important;
}

.dtrg-level-2 {
    background-color: var(--o-silver) !important;
}

.dtrg-level-3 {
    background-color: var(--o-shaded-white) !important;
}

.dtrg-level-4 {
    background-color: var(--o-almost-white) !important;
}

.dz-message {
    margin: 2rem !important;
}

.email-list-item-time {
    width: 100px !important;
}

.form-label {
    text-transform: uppercase;
    font-weight: 400 !important;
    font-size: 0.75rem !important;
    padding-bottom: 0.25rem !important;
}

.full-width {
    width: 100% !important;
}

.input-group .intl-tel-input .form-control {
    border-top-left-radius: 4px;
    border-top-right-radius: 0;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 0;
}

.intl-tel-input {
    display: table-cell;
    width: 100% !important;
}

.intl-tel-input .country-list {
    z-index: 5;
}

.intl-tel-input .selected-flag {
    z-index: 4;
}

.iti {
    width: 100% !important;
}

.light-style .dt-fixedheader.fixedHeader-floating.table.dataTable thead>tr>th,
.light-style .dt-fixedheader.fixedHeader-locked.table.dataTable thead>tr>th {
    background-color: var(--bs-primary-darker) !important;
    border-bottom-width: 1px;
    border-color: var(--bs-primary-superdark) !important;
}

.menu-vertical .menu-sub .menu-icon {
    margin-right: 0.5rem !important;
}

.mt-sm-3 {
    margin-top: 0 !important;
}

.mini-card-header img {
    height: 1.75rem !important;
    width: auto !important;
}

.mini-card-title-sm {
    flex: 0 0 110px !important;
}

.modal-info {
    position: relative;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: var(--bs-modal-padding);
    padding-top: 0;
    font-weight: bold;
}

.mt-neg-1 {
    margin-top: -0.25rem !important;
}

.mt-neg-2 {
    margin-top: -0.5rem !important;
}

.mt-neg-3 {
    margin-top: -1rem !important;
}

.mt-neg-4 {
    margin-top: -1.5rem !important;
}

.nav-pills .nav-item {
    margin-right: 0.5em !important;
    margin-bottom: 0.5em !important;
}

.nav-pills .nav-link {
    background-color: var(--o-light-white-smoke);
    box-shadow: 0 2px 4px var(--o-dark-white-smoke);
}

.nav-pills .nav-link:not(.active, .disabled):hover {
    color: var(--b-light-black) !important;
    background-color: var(--o-dark-white-smoke) !important;
    box-shadow: 0 2px 4px var(--o-light-gainsboro) !important;
}

.nav-pills .nav-link.active:hover {
    background-color: var(--bs-primary-darker) !important;
    box-shadow: 0 2px 4px var(--bs-primary-superdark) !important;
}

.pac-item,
.pac-item-query {
    font-family: inherit !important;
    font-size: inherit !important;
}

.page-item.active .page-link,
.page-item.active .page-link:hover,
.page-item.active .page-link:focus,
.pagination li.active>a:not(.page-link),
.pagination li.active>a:not(.page-link):hover,
.pagination li.active>a:not(.page-link):focus {
    z-index: 3;
    color: #fff !important;
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
}

.pc-featured-dashboard {
    height: 0;
    overflow: hidden;
    padding-bottom: 55%;
    position: relative;
    border-top-left-radius: 0.5rem !important;
    border-top-right-radius: 0.5rem !important;
}

.pc-featured-dashboard img {
    object-fit: cover;
    object-position: top;
    position: absolute;
    top: -40px;
    height: calc(100% + 40px);
    width: 100%;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.pc-featured {
    height: 0;
    overflow: hidden;
    padding-bottom: 75%;
    position: relative;
}

.pc-featured img {
    object-fit: cover;
    position: absolute;
    height: 100%;
    width: 100%;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.post .avatar {
    max-width: 22px !important;
    max-height: 22px !important;
}

.post .body p {
    margin: inherit !important;
    line-height: inherit !important;
    font-size: 1.05em !important;
}

.post .published {
    font-weight: 600;
}

.post-card .published {
    display: block;
    padding-bottom: 1em;
}

.post h6,
.post .h6,
.post h5,
.post .h5,
.post h4,
.post .h4,
.post h3,
.post .h3,
.post h2,
.post .h2,
.post h1,
.post .h1 {
    margin-top: 1.25em !important;
}

.ql-editor p {
    margin: inherit !important;
    line-height: inherit !important;
}

.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before {
    content: 'H6' !important;
}

.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before {
    content: 'H5' !important;
}

.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before {
    content: 'H4' !important;
}

.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before {
    content: 'H3' !important;
}

.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before {
    content: 'H2' !important;
}

.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before {
    content: 'H1' !important;
}

.ql-editor {

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        margin-top: 0.75em !important;
    }
}

.ql-editor img,
.ql-content img {
    max-width: 50% !important;
    display: block;
    margin: auto;
}

.ql-hr::before {
    content: '\2014';
    color: #697a8d;
}

.ql-imgur::before {
    content: '\22B7';
    color: #2e75c6;
}

.ql-syntax {
    background-color: #f8f9fa;
    color: #495057;
    padding: 0.5rem;
    margin: 1rem 0;
    border-radius: 0.25rem;
}

.select2-icon {
    height: 15px !important;
    padding-right: 5px !important;
}

.table thead tr th {
    padding-block: 0.75rem !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
}

.table th {
    font-size: 0.75rem !important;
}

.table>:not(caption)>*>* {
    padding: .5rem 1.25rem !important;
}

.tel-input {
    width: 100% !important;
}

.text-capitalize {
    text-transform: capitalize !important;
}

textarea {
    white-space: pre-wrap;
}

.toast-body-success {
    color: forestgreen !important;
}

.toast-container {
    position: fixed !important;
}

.toast-icon-success,
.toast-title-success {
    color: green !important;
}

.tt-input,
.tt-hint {
    font-size: inherit !important;
    line-height: inherit !important;
}

.tt-highlight {
    font-weight: bolder !important;
    color: #000 !important;
}

.tooltip-big .tooltip-inner {
    width: 100% !important;
    max-width: 400px !important;
    white-space: normal !important;
    word-wrap: break-word !important;
    word-break: break-all !important;
}

/* Extra small devices */
@media (max-width: 399px) {
    .body .ql-image {
        max-width: 100% !important;
        height: auto !important;
    }

    .tooltip-big .tooltip-inner {
        width: 300px !important;
        max-width: 300px !important;
    }
}

@media (max-width: 575.9px) {
    .body .ql-image {
        max-width: 100% !important;
        height: auto !important;
    }
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
    .body .ql-image {
        max-width: 100% !important;
        height: auto !important;
    }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .body .ql-image {
        max-width: 90% !important;
        height: auto !important;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .body .ql-image {
        max-width: 80% !important;
        height: auto !important;
    }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    .body .ql-image {
        max-width: 60% !important;
        height: auto !important;
    }
}

/* Extra extra large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
    .body .ql-image {
        max-width: 60% !important;
        height: auto !important;
    }
}