body, html {
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    -moz-user-select: none;
    user-select: none;
    text-align: inherit;
    -webkit-user-drag: none;
}

body[data-kt-drawer="on"] {
    overflow-y: hidden;
}

.property-tabs {
    height: 38px;
    border: 1px solid transparent !important;
}

.property-tabs.active,
.property-tabs:hover {
    color: var(--bs-primary);
    border: 1px solid var(--bs-primary) !important;
}

.property-tabs,
.property-tabs i {
    color: var(--bs-secondary-inverse);
}

.property-tabs:hover i,
.property-tabs.active i {
    color: var(--bs-primary);
}

html[data-bs-theme="dark"] .property-tabs,
html[data-bs-theme="dark"] .property-tabs i {
    color: #ccc;
}

html[data-bs-theme="dark"] .property-tabs:hover,
html[data-bs-theme="dark"] .property-tabs.active,
html[data-bs-theme="dark"] .property-tabs:hover i,
html[data-bs-theme="dark"] .property-tabs.active i {
    color: #000;
}

#kt_app_content_container {
    padding-bottom: 20px;
}

@media (max-width: 991.98px) {
    .app-container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

@media (min-width: 992px) {
    .app-container {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

.errordiv {
    padding: 10px 12px;
    font-size: 13px;
    line-height: 20px;
    color: #fff;
    text-align: left;
    vertical-align: middle;
    background-color: var(--bs-primary);
    width: auto;
    min-width: 120px;
    min-height: 24px;
    display: none;
    position: absolute;
    z-index: 9999;
    top: 65px;
    border-radius: 3px;
}

.errordiv:before {
    position: absolute;
    top: -6px;
    left: 13px;
    display: inline-block;
    border-right: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 7px solid transparent;
    content: '';
}

.errordiv:after {
    position: absolute;
    top: -6px;
    left: 13px;
    display: inline-block;
    border-right: 6px solid transparent;
    border-bottom: 6px solid var(--bs-primary);
    border-left: 6px solid transparent;
    content: '';
}

.form-select.select2-selection--multiple {
    padding-left: .55rem;
}

.form-select.select2-selection--multiple .select2-search.select2-search--inline {
    padding-left: .33rem;
}

.modal-body {
    max-height: calc(100vh - 190px);
    overflow-y: auto;
}

.app-header {
    background-color: var(--bs-light);
}

table[id^="data_table"] thead tr,
#mainTable thead tr {
    background: var(--bs-primary-light);
}

table[id^="data_table"] thead tr th:first-child,
#mainTable thead tr th:first-child {
    border-left: 4px solid var(--bs-primary-light);
}

.fancybox__container {
    z-index: 1056 !important;
}

.select2-container--bootstrap5 .select2-selection {
    height: auto !important;
}

.tag-items a {
    border-radius: 16px;
    background-color: var(--bs-light);
    font-size: var(--bs-btn-font-size);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    border: 1px solid var(--bs-gray-300);
    color: var(--bs-gray-700);
    transition: all 0.3s ease;
}

.tag-items a.disabled {
    cursor: default;
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
}

.tag-items a:not(.disabled):hover,
.tag-items a.active {
    background: var(--bs-primary-light);
    color: var(--bs-primary);
    border-color: var(--bs-primary) !important;
}

.tag-items a:not(.disabled):hover {
    transform: translateY(-2px);
}

.tag-items a:not(.disabled):hover i,
.tag-items a.active i{
    color: var(--bs-primary);
}

@media (max-width: 991.98px) {
    .app-header {
        position: fixed;
        width: 100%;
        z-index: 2;
    }

    .app-wrapper {
        padding-top: var(--bs-app-header-height);
    }

    #addNewFloating,
    #actionAddItem {
        position: fixed;
        width: 40px;
        height: 40px;
        bottom: 94px;
        line-height: 40px;
        right: 15px;
        z-index: 1;
        border-radius: 100%;
        -moz-box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
        -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
        box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
        padding: 0;
        font-size: 21px;
    }

    #addNewFloating i,
    #actionAddItem i {
        font-size: 24px;
    }
}

@media all and (max-width: 480px) {
    #kt_app_content_container {
        padding-bottom: 0;
    }

    #kt_app_content_container .nav-container {
        overflow-x: auto;
        overflow-y: hidden;
    }

    #kt_app_content_container .nav-container .nav {
        white-space: nowrap;
        flex-wrap: nowrap;
        margin: 0 15px;
    }

    #kt_app_content_container .nav-container .nav .nav-item:last-child .nav-link {
        margin-right: 20px;
    }

    #kt_app_content_container .nav-container .nav.nav-line-tabs-2x .nav-item {
        margin-bottom: 0;
    }

    #mobile-toolbar {
        position: fixed;
        bottom: 0;
        z-index: 1;
        background: var(--bs-app-header-minimize-bg-color);
        width: 100%;
        left: 0;
        padding: 15px 20px;
        box-shadow: inset 0 10px 8px -11px #CCC, inset 0 0 0 0 #CCC;
    }

    div[data-bs-dismiss="modal"] i {
        font-size: 22px !important;
    }

    .modal-body {
        max-height: calc(100vh - 240px);
        overflow-y: auto;
    }
}

.no-avatar {
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: white;
    flex-shrink: 0;
    position: relative;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    text-transform: uppercase;
}

/* Letter gradients A-Z */
.no-avatar.char-a {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

.no-avatar.char-b {
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
}

.no-avatar.char-c {
    background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
}

.no-avatar.char-d {
    background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
}

.no-avatar.char-e {
    background: linear-gradient(135deg, #fa709a 0%, #fee140 100%);
}

.no-avatar.char-f {
    background: linear-gradient(135deg, #30cfd0 0%, #330867 100%);
}

.no-avatar.char-g {
    background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
}

.no-avatar.char-h {
    background: linear-gradient(135deg, #ff9a9e 0%, #fecfef 100%);
}

.no-avatar.char-i {
    background: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%);
}

.no-avatar.char-j {
    background: linear-gradient(135deg, #ff6e7f 0%, #bfe9ff 100%);
}

.no-avatar.char-k {
    background: linear-gradient(135deg, #e0c3fc 0%, #8ec5fc 100%);
}

.no-avatar.char-l {
    background: linear-gradient(135deg, #f43b47 0%, #453a94 100%);
}

.no-avatar.char-m {
    background: linear-gradient(135deg, #fa8bff 0%, #2bd2ff 0%, #2bff88 100%);
}

.no-avatar.char-n {
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
}

.no-avatar.char-o {
    background: linear-gradient(135deg, #5ee7df 0%, #b490ca 100%);
}

.no-avatar.char-p {
    background: linear-gradient(135deg, #d299c2 0%, #fef9d7 100%);
}

.no-avatar.char-q {
    background: linear-gradient(135deg, #89f7fe 0%, #66a6ff 100%);
}

.no-avatar.char-r {
    background: linear-gradient(135deg, #fddb92 0%, #d1fdff 100%);
}

.no-avatar.char-s {
    background: linear-gradient(135deg, #9890e3 0%, #b1f4cf 100%);
}

.no-avatar.char-t {
    background: linear-gradient(135deg, #a1c4fd 0%, #c2e9fb 100%);
}

.no-avatar.char-u {
    background: linear-gradient(135deg, #d57eeb 0%, #fccb90 100%);
}

.no-avatar.char-v {
    background: linear-gradient(135deg, #e8198b 0%, #c7eafd 100%);
}

.no-avatar.char-w {
    background: linear-gradient(135deg, #f794a4 0%, #fdd6bd 100%);
}

.no-avatar.char-x {
    background: linear-gradient(135deg, #6a85b6 0%, #bac8e0 100%);
}

.no-avatar.char-y {
    background: linear-gradient(135deg, #a3bded 0%, #6991c7 100%);
}

.no-avatar.char-z {
    background: linear-gradient(135deg, #9795f0 0%, #fbc8d4 100%);
}

/* Number gradients 0-9 */
.no-avatar.char-0 {
    background: linear-gradient(135deg, #fc5c7d 0%, #6a82fb 100%);
}

.no-avatar.char-1 {
    background: linear-gradient(135deg, #38ef7d 0%, #11998e 100%);
}

.no-avatar.char-2 {
    background: linear-gradient(135deg, #ee9ca7 0%, #ffdde1 100%);
}

.no-avatar.char-3 {
    background: linear-gradient(135deg, #c471f5 0%, #fa71cd 100%);
}

.no-avatar.char-4 {
    background: linear-gradient(135deg, #48c6ef 0%, #6f86d6 100%);
}

.no-avatar.char-5 {
    background: linear-gradient(135deg, #f857a6 0%, #ff5858 100%);
}

.no-avatar.char-6 {
    background: linear-gradient(135deg, #00cdac 0%, #8ddad5 100%);
}

.no-avatar.char-7 {
    background: linear-gradient(135deg, #fc4a1a 0%, #f7b733 100%);
}

.no-avatar.char-8 {
    background: linear-gradient(135deg, #4158d0 0%, #c850c0 0%, #ffcc70 100%);
}

.no-avatar.char-9 {
    background: linear-gradient(135deg, #0093e9 0%, #80d0c7 100%);
}

.menu-state-bg .menu-item .menu-link.active {
    background-color: var(--bs-primary-light);
}

.menu-state-bg .menu-item .menu-link .menu-title {
    color: var(--bs-gray-700);
}

.tox .tox-edit-area::before {
    border: 0 !important;
}

.tox .tox-dialog__header {
    padding-top: 16px !important;
}

.tox .tox-dialog__footer {
    padding-bottom: 16px !important;
}

.tox .tox-dialog {
    max-width: 600px !important;
}

.image-input.image-input-empty [data-kt-image-input-action=download] {
    display: none;
}

.pwa-install-item .btn {
    height: 35px;
}

.pwa-install-modal .pwa-install-icon {
    width: 64px;
    height: 64px;
    border-radius: 14px;
    background: #0B0B0B;
    object-fit: cover;
}

.pwa-install-steps {
    counter-reset: pwa-step;
}

.pwa-install-steps li {
    position: relative;
    padding-left: 2.25rem;
    margin-bottom: 0.85rem;
    list-style: none;
}

.pwa-install-steps li::before {
    counter-increment: pwa-step;
    content: counter(pwa-step);
    position: absolute;
    left: 0;
    top: 0.05rem;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    background: var(--bs-light-primary);
    color: var(--bs-primary);
    font-size: 0.75rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

html.pwa-standalone .pwa-install-item {
    display: none !important;
}

@media (display-mode: standalone) {
    .pwa-install-item {
        display: none !important;
    }
}