:root {
    --menu-bg: #111c43;
    --menu-prime-color: #a3aed1;
    --primary-rgb: 132, 90, 223;
    --body-bg-rgb: 240, 241, 247;
    --secondary-rgb: 35, 183, 229;
    --warning-rgb: 245, 184, 73;
    --info-rgb: 73, 182, 245;
    --success-rgb: 38, 191, 148;
    --danger-rgb: 230, 83, 60;
    --light-rgb: 243, 246, 248;
    --dark-rgb: 35, 35, 35;
    --orange-rgb: 255, 165, 5;
    --pink-rgb: 231, 145, 188;
    --teal-rgb: 18, 194, 194;
    --purple-rgb: 137, 32, 173;
    --default-body-bg-color: rgb(var(--body-bg-rgb));
    --success-color: rgb(var(--success-rgb));
    --warning-color: rgb(var(--warning-rgb));
    --primary-color: rgb(var(--primary-rgb));
    --danger-color: rgb(var(--danger-rgb));
    --primary-border: rgb(var(--primary-rgb));
    --primary01: rgba(var(--primary-rgb), 0.1);
    --primary02: rgba(var(--primary-rgb), 0.2);
    --primary03: rgba(var(--primary-rgb), 0.3);
    --primary04: rgba(var(--primary-rgb), 0.4);
    --primary05: rgba(var(--primary-rgb), 0.5);
    --primary06: rgba(var(--primary-rgb), 0.6);
    --primary07: rgba(var(--primary-rgb), 0.7);
    --primary08: rgba(var(--primary-rgb), 0.8);
    --primary09: rgba(var(--primary-rgb), 0.9);
    --primary005: rgba(var(--primary-rgb), 0.05);
    --default-font-family: "Open Sans", sans-serif;
    --default-font-weight: 400;
    --default-text-color: #333335;
    --default-border: #e3e3e3;
    --default-background: #f7f8f9;
    --menu-border-color: rgba(255, 255, 255, 0.1);
    --header-bg: #fff;
    --header-prime-color: #536485;
    --header-border-color: #f3f3f3;
    --custom-white: #fff;
    --custom-black: #000;
    --bootstrap-card-border: #f3f3f3;
    --list-hover-focus-bg: #f5f6f7;
    --text-muted: #8c9097;
    --input-border: #a1a5ae;
    --form-control-bg: #ffffff;
    --gray-1: #f9fafb;
    --gray-2: #f2f4f5;
    --gray-3: #e6eaeb;
    --gray-4: #dbdfe1;
    --gray-5: #949eb7;
    --gray-6: #7987a1;
    --gray-7: #4d5875;
    --gray-8: #383853;
    --gray-9: #323251;
    --white-1: rgba(255, 255, 255, 0.1);
    --white-2: rgba(255, 255, 255, 0.2);
    --white-3: rgba(255, 255, 255, 0.3);
    --white-4: rgba(255, 255, 255, 0.4);
    --white-5: rgba(255, 255, 255, 0.5);
    --white-6: rgba(255, 255, 255, 0.6);
    --white-7: rgba(255, 255, 255, 0.7);
    --white-8: rgba(255, 255, 255, 0.8);
    --white-9: rgba(255, 255, 255, 0.9);
    --black-1: rgba(0, 0, 0, 0.1);
    --black-2: rgba(0, 0, 0, 0.2);
    --black-3: rgba(0, 0, 0, 0.3);
    --black-4: rgba(0, 0, 0, 0.4);
    --black-5: rgba(0, 0, 0, 0.5);
    --black-6: rgba(0, 0, 0, 0.6);
    --black-7: rgba(0, 0, 0, 0.7);
    --black-8: rgba(0, 0, 0, 0.8);
    --black-9: rgba(0, 0, 0, 0.9);
    --background-close: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23333'%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") center/1em auto no-repeat;
}

[data-header-styles=dark] {
    --header-bg: var(--custom-white) !important;
    --header-border-color: rgba(255, 255, 255, 0.1) !important;
    --header-prime-color: rgba(255, 255, 255, 0.6) !important;
}

[data-menu-styles=dark] {
    --menu-bg: var(--custom-white) !important;
    --menu-prime-color: #8f9bb3 !important;
    --menu-border-color: rgba(255, 255, 255, 0.1) !important;
}

[data-theme-mode=dark] {
    --body-bg-rgb: 26, 28, 30;
    --body-bg-rgb2: 37, 39, 41;
    --menu-bg: rgb(var(--body-bg-rgb));
    --menu-border-color: rgba(255, 255, 255, 0.1);
    --menu-prime-color: rgba(255, 255, 255, 0.6);
    --header-bg: rgb(var(--body-bg-rgb));
    --header-prime-color: rgba(255, 255, 255, 0.6);
    --header-border-color: rgba(255, 255, 255, 0.1);
    --custom-white: rgb(var(--body-bg-rgb));
    --custom-black: #fff;
    --default-border: rgba(255, 255, 255, 0.1);
    --default-text-color: rgba(255, 255, 255, 0.7);
    --light-rgb: 43, 46, 49;
    --dark-rgb: 240, 245, 248;
    --bootstrap-card-border: rgba(255, 255, 255, 0.1);
    --list-hover-focus-bg: rgba(255, 255, 255, 0.1);
    --default-background: rgba(255, 255, 255, 0.07);
    --default-body-bg-color: rgb(var(--body-bg-rgb2));
    --text-muted: rgba(255, 255, 255, 0.5);
    --input-border: #313335;
    --form-control-bg: #232628;
    --gray-100: #110f0f;
    --gray-200: #17171c;
    --gray-300: #393946;
    --gray-400: #505062;
    --gray-500: #73738c;
    --gray-600: #8f8fa3;
    --gray-700: #ababba;
    --gray-800: #c7c7d1;
    --gray-900: #e3e3e8;
    --white-1: rgba(0, 0, 0, 0.1);
    --white-2: rgba(0, 0, 0, 0.2);
    --white-3: rgba(0, 0, 0, 0.3);
    --white-4: rgba(0, 0, 0, 0.4);
    --white-5: rgba(0, 0, 0, 0.5);
    --white-6: rgba(0, 0, 0, 0.6);
    --white-7: rgba(0, 0, 0, 0.7);
    --white-8: rgba(0, 0, 0, 0.8);
    --white-9: rgba(0, 0, 0, 0.9);
    --black-1: rgba(255, 255, 255, 0.05);
    --black-2: rgba(255, 255, 255, 0.2);
    --black-3: rgba(255, 255, 255, 0.3);
    --black-4: rgba(255, 255, 255, 0.4);
    --black-5: rgba(255, 255, 255, 0.5);
    --black-6: rgba(255, 255, 255, 0.6);
    --black-7: rgba(255, 255, 255, 0.7);
    --black-8: rgba(255, 255, 255, 0.8);
    --black-9: rgba(255, 255, 255, 0.9);
    --background-close: var(--default-text-color) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%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") center / 1em auto no-repeat;
}


body {
    font-size: .813rem;
    font-family: var(--default-font-family);
    font-weight: var(--default-font-weight);
    background-color: var(--default-body-bg-color);
    color: var(--default-text-color);
    line-height: 1.5;
    text-align: start;
    overflow-x: clip;
    min-height: 100vh;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.page {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100vh;
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open]) .app-header {
        padding-inline-start: 9rem;
    }
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open]) .app-sidebar {
        position: absolute;
        width: 9rem;
    }
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open]) .app-sidebar .side-menu__item, [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open]) .app-sidebar .side-menu__label {
        display: block;
        text-align: center;
    }
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open]) .app-sidebar .side-menu__item {
        border-radius: 0;
    }
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open]) .app-sidebar .slide {
        padding: 0;
    }
}

@media (min-width: 992px) {
    .app-header {
        padding-inline-start: 15rem;
    }
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open]) .app-sidebar .side-menu__icon {
        margin-inline-end: 0;
        margin-block-end: .5rem;
    }
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open]) .app-sidebar .side-menu__angle, [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open]) .app-sidebar .slide__category {
        display: none;
    }
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open]) .app-sidebar .main-sidebar-header {
        width: 9rem;
    }
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close]:not([data-icon-text=open])[data-menu-position=fixed] .app-sidebar {
        position: fixed;
    }
}

.app-header {
    max-width: 100%;
    height: 3.75rem;
    z-index: 100;
    position: fixed;
    inset-block-start: 0;
    inset-inline: 0;
    background: var(--header-bg);
    border-block-end: 1px solid var(--header-border-color);
    transition: all .1s ease;
}

.main-header-container {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    height: 100%;
}

    .main-header-container .header-content-left, .main-header-container .header-content-right {
        display: flex;
        align-items: stretch;
        /*gap: 0.5rem;*/
    }

    .main-header-container .header-element {
        display: flex;
        align-items: stretch;
    }

.animated-arrow.hor-toggle {
    text-align: center;
    width: 2rem;
    font-size: 1.2rem;
    position: relative;
    margin: .3125rem 0;
    margin-inline-end: .625rem;
}

.main-header-container .header-link {
    display: flex;
    align-items: center;
    padding: 1rem .65rem;
}

.animated-arrow.hor-toggle span {
    vertical-align: middle;
}

.animated-arrow {
    position: absolute;
    inset-inline-start: 0;
    inset-block-start: 0;
    z-index: 102;
    transition: all 50ms ease-in-out;
    cursor: pointer;
    padding: .3125rem;
    margin-block-start: .375rem;
    margin-block-end: 0;
    margin-inline-start: .5rem;
    margin-inline-end: 0;
}

    .animated-arrow span {
        cursor: pointer;
        height: .125rem;
        width: .75rem;
        background: var(--header-prime-color);
        position: absolute;
        display: block;
        content: "";
        transition: all 50ms ease-in-out;
    }

[data-toggled=close-menu-close] .animated-arrow span:before, [data-toggled=detached-close] .animated-arrow span:before, [data-toggled=icon-click-closed] .animated-arrow span:before, [data-toggled=icon-hover-closed] .animated-arrow span:before, [data-toggled=icon-overlay-close] .animated-arrow span:before, [data-toggled=icon-text-close] .animated-arrow span:before, [data-toggled=menu-click-closed] .animated-arrow span:before, [data-toggled=menu-hover-closed] .animated-arrow span:before {
    inset-block-start: -1px;
}

[data-toggled=close-menu-close] .animated-arrow span:before, [data-toggled=detached-close] .animated-arrow span:before, [data-toggled=icon-click-closed] .animated-arrow span:before, [data-toggled=icon-hover-closed] .animated-arrow span:before, [data-toggled=icon-overlay-close] .animated-arrow span:before, [data-toggled=icon-text-close] .animated-arrow span:before, [data-toggled=menu-click-closed] .animated-arrow span:before, [data-toggled=menu-hover-closed] .animated-arrow span:before {
    transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    bottom: 0;
}

.animated-arrow span:after, .animated-arrow span:before {
    cursor: pointer;
    height: .125rem;
    width: 1.0625rem;
    background: var(--header-prime-color);
    position: absolute;
    display: block;
    content: "";
}

.animated-arrow span:before {
    inset-block-start: -.375rem;
    width: 1.4375rem;
}

.animated-arrow span:after, .animated-arrow span:before {
    transition: all 50ms ease-in-out;
}

[data-toggled=close-menu-close] .animated-arrow span:after, [data-toggled=detached-close] .animated-arrow span:after, [data-toggled=icon-click-closed] .animated-arrow span:after, [data-toggled=icon-hover-closed] .animated-arrow span:after, [data-toggled=icon-overlay-close] .animated-arrow span:after, [data-toggled=icon-text-close] .animated-arrow span:after, [data-toggled=menu-click-closed] .animated-arrow span:after, [data-toggled=menu-hover-closed] .animated-arrow span:after {
    width: 1.0625rem;
    inset-block-start: -1px;
}

[data-toggled=close-menu-close] .animated-arrow span:after, [data-toggled=detached-close] .animated-arrow span:after, [data-toggled=icon-click-closed] .animated-arrow span:after, [data-toggled=icon-hover-closed] .animated-arrow span:after, [data-toggled=icon-overlay-close] .animated-arrow span:after, [data-toggled=icon-text-close] .animated-arrow span:after, [data-toggled=menu-click-closed] .animated-arrow span:after, [data-toggled=menu-hover-closed] .animated-arrow span:after {
    transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}

.animated-arrow span:after, .animated-arrow span:before {
    cursor: pointer;
    height: .125rem;
    width: 1.0625rem;
    background: var(--header-prime-color);
    position: absolute;
    display: block;
    content: "";
}

.animated-arrow span:after {
    bottom: -.375rem;
    width: 15px;
}

.animated-arrow span:after, .animated-arrow span:before {
    transition: all 50ms ease-in-out;
}

.main-header-container .header-element {
    display: flex;
    align-items: stretch;
}

.main-header-container .header-link {
    display: flex;
    align-items: center;
    padding: 1rem .65rem;
}

[data-theme-mode=dark] .layout-setting .light-layout {
    display: none;
}

[data-theme-mode=dark] .layout-setting .dark-layout {
    display: block;
}

.main-header-container .header-link-icon {
    width: 1.75rem;
    height: 1.75rem;
    font-size: 1.25rem;
    color: var(--header-prime-color);
    fill: var(--header-prime-color);
    transition: all ease 50ms;
    position: relative;
    padding: .25rem;
    border-radius: 50%;
}

a {
    color: rgba(var(--default-text-color-rgb), var(--bs-link-opacity, 1));
    cursor: pointer;
}

    a:hover {
        opacity: 1;
        color: rgba(var(--default-text-color-rgb), var(--bs-link-opacity, 1));
    }



@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close] .app-content {
        margin-inline-start: 9rem;
    }
}



@media (min-width: 992px) {
    .app-content {
        min-height: calc(100vh - 7.5rem);
        margin-block-end: 0;
        margin-block-start: 4.75rem;
        margin-inline-start: 15rem;
        transition: all 50ms ease;
    }
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close][data-icon-text=open] .app-sidebar {
        width: 15rem;
    }
}

.app-sidebar {
    width: 15rem;
    height: 100%;
    background: var(--menu-bg);
    border-inline-end: 1px solid var(--menu-border-color);
    position: fixed;
    inset-block-start: 0;
    inset-inline-start: 0;
    z-index: 103;
    transition: all 50ms ease;
}

/* Mobile Menu Toggle Button */
.mobile-menu-toggle {
    display: none;
    background: transparent;
    border: none;
    color: var(--header-prime-color);
    padding: 0.5rem;
    font-size: 1.5rem;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    margin-inline-start: 0.5rem;
}

    .mobile-menu-toggle:hover {
        background: rgba(var(--default-text-color-rgb), 0.1);
        border-radius: 4px;
    }

    .mobile-menu-toggle .icon-lg {
        font-size: 1.5rem;
    }

/* Sidebar Close Button (Mobile) */
.sidebar-close-btn {
    display: none;
    background: transparent;
    border: none;
    color: var(--menu-text-color);
    padding: 0.5rem;
    font-size: 1.25rem;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    margin-inline-start: auto;
    margin-inline-end: 0.5rem;
    border-radius: 4px;
    transition: all 0.2s ease;
}

    .sidebar-close-btn:hover {
        background: rgba(var(--default-text-color-rgb), 0.1);
        color: var(--menu-text-color-hover);
    }

/* Mobile Sidebar Overlay */
.mobile-sidebar-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 102;
    opacity: 0;
    transition: opacity 0.3s ease;
}

    .mobile-sidebar-overlay.show {
        display: block;
        opacity: 1;
    }

/* Responsive Styles for Mobile and Tablet */
@media (max-width: 991.98px) {
    /* Show mobile menu toggle */
    .mobile-menu-toggle {
        display: flex;
    }

    /* Hide sidebar by default on mobile */
    .app-sidebar {
        transform: translateX(-100%);
        transition: transform 0.3s ease;
    }

        /* Show sidebar when mobile menu is open */
        .app-sidebar.mobile-menu-open {
            transform: translateX(0);
        }

    /* Remove header padding on mobile */
    .app-header {
        padding-inline-start: 0 !important;
    }

    /* Remove content margin on mobile */
    .app-content {
        margin-inline-start: 0 !important;
        margin-block-start: 3.75rem;
        min-height: calc(100vh - 3.75rem);
    }

    /* Adjust sidebar header width on mobile */
    .app-sidebar .main-sidebar-header {
        width: 15rem;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    /* Show sidebar close button on mobile */
    .sidebar-close-btn {
        display: flex;
    }

    /* Header responsive styles are now handled in the main responsive section above */
}

/* Tablet Styles (768px - 991px) */
@media (min-width: 768px) and (max-width: 991.98px) {
    .app-sidebar {
        width: 15rem;
    }

        .app-sidebar .main-sidebar-header {
            width: 15rem;
        }
}

@media (min-width: 992px) {
    [data-vertical-style=icontext][data-toggled=icon-text-close][data-icon-text=open] .app-sidebar .main-sidebar-header {
        width: 15rem;
    }
}

.app-sidebar .main-sidebar-header {
    height: 3.75rem;
    width: 15rem;
    position: fixed;
    display: flex;
    background: var(--menu-bg);
    z-index: 9;
    align-items: center;
    justify-content: center;
    padding: .813rem 1.25rem;
    border-inline-end: 1px solid var(--menu-border-color);
    border-block-end: 1px solid var(--menu-border-color);
    transition: all 50ms ease;
}

[data-menu-styles=dark][data-nav-layout=vertical] .app-sidebar .main-sidebar-header .header-logo .desktop-logo, [data-menu-styles=dark][data-nav-layout=vertical] .app-sidebar .main-sidebar-header .header-logo .desktop-white, [data-menu-styles=dark][data-nav-layout=vertical] .app-sidebar .main-sidebar-header .header-logo .toggle-dark, [data-menu-styles=dark][data-nav-layout=vertical] .app-sidebar .main-sidebar-header .header-logo .toggle-logo, [data-menu-styles=dark][data-nav-layout=vertical] .app-sidebar .main-sidebar-header .header-logo .toggle-white {
    display: none;
}

[data-theme-mode=dark] .app-sidebar .main-sidebar-header .header-logo .desktop-logo, [data-theme-mode=dark] .app-sidebar .main-sidebar-header .header-logo .desktop-white, [data-theme-mode=dark] .app-sidebar .main-sidebar-header .header-logo .toggle-dark, [data-theme-mode=dark] .app-sidebar .main-sidebar-header .header-logo .toggle-logo, [data-theme-mode=dark] .app-sidebar .main-sidebar-header .header-logo .toggle-white {
    display: none;
}

.app-sidebar .main-sidebar-header .header-logo .desktop-logo {
    display: block;
}

.app-sidebar .main-sidebar-header .header-logo img {
    height: 2rem;
    line-height: 2rem;
}

.app-sidebar .main-sidebar-header .header-logo .desktop-dark, .app-sidebar .main-sidebar-header .header-logo .desktop-white, .app-sidebar .main-sidebar-header .header-logo .toggle-dark, .app-sidebar .main-sidebar-header .header-logo .toggle-logo, .app-sidebar .main-sidebar-header .header-logo .toggle-white {
    display: none;
}

[data-menu-styles=dark][data-nav-layout=vertical] .app-sidebar .main-sidebar-header .header-logo .desktop-dark {
    display: block;
}

[data-theme-mode=dark] .app-sidebar .main-sidebar-header .header-logo .desktop-dark {
    display: block;
}

.app-sidebar .main-sidebar-header .header-logo .desktop-dark, .app-sidebar .main-sidebar-header .header-logo .desktop-white, .app-sidebar .main-sidebar-header .header-logo .toggle-dark, .app-sidebar .main-sidebar-header .header-logo .toggle-logo, .app-sidebar .main-sidebar-header .header-logo .toggle-white {
    display: none;
}

[data-simplebar] {
    position: relative;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start;
}

.main-sidebar {
    margin-block-start: 3.72rem;
    padding-block-start: .5rem;
    padding-block-end: 5rem;
    height: 100vh;
    position: relative;
    overflow-y: auto;
}

    .main-sidebar::-webkit-scrollbar {
        width: 6px;
    }

    .main-sidebar::-webkit-scrollbar-track {
        background: var(--menu-border-color);
    }

    .main-sidebar::-webkit-scrollbar-thumb {
        background: var(--menu-prime-color);
        border-radius: 3px;
    }

        .main-sidebar::-webkit-scrollbar-thumb:hover {
            background: var(--menu-prime-color);
        }

.simplebar-wrapper {
    overflow: hidden;
    width: inherit;
    height: inherit;
    max-width: inherit;
    max-height: inherit;
}

.simplebar-height-auto-observer-wrapper {
    box-sizing: inherit !important;
    height: 100%;
    width: 100%;
    max-width: 1px;
    position: relative;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    flex-grow: inherit;
    flex-shrink: 0;
    flex-basis: 0;
}

.simplebar-mask {
    direction: inherit;
    position: absolute;
    overflow: hidden;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto !important;
    height: auto !important;
    z-index: 0;
}

.simplebar-offset {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling: touch;
}

.app-sidebar .simplebar-content-wrapper {
    overflow: auto !important;
}

.simplebar-content-wrapper {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.simplebar-content:after, .simplebar-content:before {
    content: ' ';
    display: table;
}

.slide-left, .slide-right {
    display: none;
}

.nav > ul {
    padding-inline-start: 0;
}

.app-sidebar .slide__category {
    color: var(--menu-prime-color);
    font-size: .6rem;
    font-weight: 600;
    letter-spacing: .065rem;
    text-transform: uppercase;
    padding: .75rem 1.65rem;
    white-space: nowrap;
    opacity: .5;
    position: relative;
}

.slide.has-sub {
    display: grid;
}

.app-sidebar .slide {
    margin: 0;
    padding: 0 .75rem;
}

.nav ul li {
    list-style-type: none;
}

[data-nav-layout=vertical] .slide.has-sub > .side-menu__item {
    margin-block: .25rem;
}

.app-sidebar .side-menu__item {
    padding: .75rem;
    position: relative;
    display: flex;
    align-items: center;
    text-decoration: none;
    font-size: .78rem;
    color: var(--menu-prime-color);
    font-weight: 500;
    border-radius: .5rem;
}

.app-sidebar .side-menu__icon {
    margin-inline-end: .625rem;
    width: 1.15rem;
    height: 1.15rem;
    font-size: 1.15rem;
    text-align: center;
    color: var(--menu-prime-color);
    fill: var(--menu-prime-color);
    border-radius: .5rem;
}

.app-sidebar .side-menu__label {
    white-space: nowrap;
    color: var(--menu-prime-color);
    position: relative;
    font-size: 13px;
    line-height: 1;
    vertical-align: middle;
}

.bg-warning-transparent {
    background-color: rgba(var(--warning-rgb), .1) !important;
    color: rgb(var(--warning-rgb)) !important;
}

.app-sidebar .side-menu__angle {
    transform-origin: center;
    position: absolute;
    inset-inline-end: .75rem;
    font-size: 13px;
    color: var(--menu-prime-color);
    transition: all 50ms ease;
}

.slide.has-sub .slide-menu {
    transform: translate(0, 0) !important;
    visibility: visible !important;
}

.app-sidebar .slide-menu {
    padding: 0;
}

.slide-menu {
    display: none;
}

.app-sidebar .slide-menu.child1 li, .app-sidebar .slide-menu.child2 li, .app-sidebar .slide-menu.child3 li {
    padding: 0;
    padding-inline-start: 1.5rem;
    position: relative;
}

.app-sidebar .slide.side-menu__label1 {
    display: none;
}

.app-sidebar .slide {
    margin: 0;
    padding: 0 .75rem;
}

[data-menu-styles=dark] .side-menu__label1 {
    border-block-end: 1px solid rgba(255, 255, 255, .1) !important;
}

.nav ul li {
    list-style-type: none;
}

[data-menu-styles=dark] .side-menu__label1 a {
    color: #fff;
    font-weight: 600;
}

.app-sidebar .slide-menu.child1 .side-menu__item, .app-sidebar .slide-menu.child2 .side-menu__item {
    padding: .45rem 1.6rem;
}

.app-sidebar .side-menu__item {
    padding: .75rem;
    position: relative;
    display: flex;
    align-items: center;
    text-decoration: none;
    font-size: .78rem;
    color: var(--menu-prime-color);
    font-weight: 500;
    border-radius: .5rem;
}

.app-header #mainHeaderProfile {
    color: var(--header-prime-color);
}

.main-header-container .dropdown-toggle {
    text-decoration: none;
}

.main-header-container .header-link {
    display: flex;
    align-items: center;
    padding: 1rem .65rem;
}

.fs-11 {
    font-size: .6875rem;
}

.op-7 {
    opacity: .7;
}

.main-header-container .main-header-dropdown {
    box-shadow: 0 .25rem .625rem rgba(20, 20, 20, .1);
    inset-block-start: -3px !important;
}

.header-profile-dropdown {
    min-width: 11rem;
}

.main-header-container .main-header-dropdown .dropdown-item:last-child {
    border-block-end: 0;
}

.main-header-container .main-header-dropdown .dropdown-item {
    padding: .65rem;
    border-block-end: 1px solid var(--default-border);
}

.dropdown-item {
    color: var(--default-text-color);
    padding: .5rem .9375rem;
    font-size: 13px;
}

------------------------------------------------------------------------------------------

.ticket-card {
    background: var(--custom-white);
    border-radius: 10px;
    border: 1px solid var(--default-border);
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
    padding: 18px 20px 20px;
    display: flex;
    flex-direction: column;
    min-height: calc(100vh - 160px);
}

.card.cardDark.cardForm {
    background-color: var(--custom-white) !important;
    border: 1px solid var(--default-border) !important;
    border-radius: 4px !important;
    padding: 19px 15px 3px 15px !important;
    margin-bottom: 15px !important;
    position: relative;
    box-shadow: 0 1px 3px var(--default-border) !important;
    overflow: visible !important;
    margin-top: 17px !important;
}

    .card.cardDark.cardForm .cardLegend {
        display: inline-block;
        font-size: 13px;
        font-weight: 600;
        color: var(--default-text-color);
        background-color: var(--custom-white);
        padding: 0 9px;
        position: absolute;
        top: -9px;
        left: 15px;
        margin: 0;
        border: none;
        z-index: 10;
    }

.card.custom-card {
    border-radius: .5rem;
    border: 0;
    background-color: var(--custom-white);
    box-shadow: 0 .125rem 0 rgba(10, 10, 10, .04);
    position: relative;
    margin-block-end: .5rem;
    width: 100%;
}

    .card.custom-card .card-header {
        padding: 0.5rem 1.25rem;
        border-block-end: 1px solid var(--default-border);
        display: flex;
        align-items: center;
        position: relative;
        flex-wrap: wrap;
        gap: .25rem;
    }

        /*  .card.custom-card .card-header .card-title:before {
            content: "";
            position: absolute;
            height: 1rem;
            width: .2rem;
            inset-block-start: .15rem;
            inset-inline-start: -.65rem;
            background: linear-gradient(to bottom, var(--primary05) 50%, rgba(var(--secondary-rgb), .5) 50%);
            border-radius: .5rem;
        }*/

        .card.custom-card .card-header:first-child {
            border-radius: .625rem .625rem 0 0;
        }

    .card.custom-card .card-body {
        padding: 1.25rem;
        color: var(--default-text-color);
    }

/* Sidebar Base Styles */
.sidebar {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 100;
    padding: 0 0 0;
    box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
    transition: width 0.3s ease;
    background: var(--menu-bg);
}

    /* Sidebar when collapsed - show icon and text vertically */
    .sidebar.collapsed {
        width: 90px;
    }

    /* Sidebar when expanded */
    .sidebar:not(.collapsed) {
        width: 180px;
    }

    /* Sidebar Navigation */
    .sidebar .nav {
        font-weight: 500;
        color: var(--default-text-color);
    }

        .sidebar .nav .nav-link {
            font-weight: 500;
            color: var(--menu-prime-color);
            padding: 0.75rem 1rem;
            display: flex;
            align-items: center;
            transition: all 0.2s ease;
        }

            .sidebar .nav .nav-link:hover {
                color: var(--default-text-color);
                background-color: rgba(255, 255, 255, .05);
            }

            .sidebar .nav .nav-link.active {
                color: var(--default-text-color);
                background-color: var(--primary-color);
                border-right: 3px solid var(--custom-white);
            }

            .sidebar .nav .nav-link i {
                margin-right: 0.75rem;
                width: 20px;
                text-align: center;
                font-size: 1.1rem;
            }

    /* When sidebar is collapsed, show icon on top and text below */
    .sidebar.collapsed .nav .nav-link {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 0.5rem 0.25rem;
        text-align: center;
        min-height: 60px;
    }

        .sidebar.collapsed .nav .nav-link i {
            margin-right: 0;
            margin-bottom: 0.25rem;
            font-size: 25px;
            flex-shrink: 0;
        }

        .sidebar.collapsed .nav .nav-link span {
            display: block;
            font-size: 13px;
            line-height: 1.2;
            word-break: break-word;
            max-width: 100%;
            text-align: center;
            padding: 0 2px;
        }

    .sidebar .nav .nav-link span {
        color: var(--menu-prime-color);
    }

    .sidebar .nav .nav-link:hover span {
        color: var(--default-text-color);
    }
    /* Sidebar Brand/Logo */
    .sidebar .sidebar-brand {
        padding: 12px 0px 0px 15px;
        font-size: 1.25rem;
        font-weight: 600;
        color: var(--default-text-color);
        text-decoration: none;
        display: flex;
        align-items: center;
        border-bottom: 1px solid rgba(0, 0, 0, .1);
    }

        .sidebar .sidebar-brand img {
            margin-right: 0.5rem;
        }

    .sidebar.collapsed .sidebar-brand {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 12px 0px 1px 10px;
        text-align: center;
        min-height: 60px;
    }

        .sidebar.collapsed .sidebar-brand .logo-sm {
            margin-right: 0;
            margin-bottom: 0.25rem;
            flex-shrink: 0;
        }

.main-sidebar-header .logo-txt {
    display: block;
    font-size: 0.7rem;
    line-height: 1.2;
    word-break: break-word;
    padding: 0 2px;
}




/* Sidebar Toggle Button - Positioned in header */
.sidebar-toggle {
    position: fixed;
    top: 8px;
    left: 100px;
    z-index: 101;
    background: none;
    border: none;
    font-size: 1.5rem;
    color: var(--default-text-color);
    cursor: pointer;
    padding: 0;
    border-radius: 0.25rem;
    transition: all 0.3s ease;
}

    .sidebar-toggle:hover {
        background-color: var(--list-hover-focus-bg);
        color: var(--default-text-color);
    }

/* Adjust toggle button position when sidebar is collapsed */
.sidebar.collapsed ~ #page-topbar .sidebar-toggle,
.sidebar.collapsed ~ .sidebar-toggle {
    left: 98px;
}

/* Submenu Styles - Only for items that actually use collapse (not popup panels) */
.sidebar .nav .nav-link[data-bs-toggle="collapse"] {
    position: relative;
}

    .sidebar .nav .nav-link[data-bs-toggle="collapse"]::after {
        content: "\f0142";
        font-family: "bootstrap-icons";
        position: absolute;
        right: 1rem;
        transition: transform 0.2s ease;
    }

    .sidebar .nav .nav-link[data-bs-toggle="collapse"][aria-expanded="true"]::after {
        transform: rotate(90deg);
    }

.sidebar .nav .collapse .nav {
    padding-left: 1.5rem;
    font-size: 0.9rem;
}

.sidebar.collapsed .nav .collapse .nav {
    display: none;
}

/* Remove arrow indicators from popup panel items */
.sidebar .nav .nav-link[onclick*="Panel"]::after,
.sidebar .nav .nav-link[onclick*="toggleMoreProjectsPanel"]::after,
.sidebar .nav .nav-link[onclick*="toggleReportsPanel"]::after,
.sidebar .nav .nav-link[onclick*="toggleMastersPanel"]::after,
.sidebar .nav .nav-link[onclick*="toggleUsersPanel"]::after,
.sidebar .nav .nav-link[onclick*="toggleCompanyPanel"]::after,
.sidebar .nav .nav-link[onclick*="toggleSettingsPanel"]::after,
.sidebar .nav .nav-link[onclick*="_toggleAssetPanel"]::after {
    display: none !important;
}

/* Scrollable Sidebar */
.sidebar {
    overflow-y: auto;
    overflow-x: hidden;
}

    .sidebar::-webkit-scrollbar {
        width: 6px;
    }

    .sidebar::-webkit-scrollbar-track {
        background: var(--default-border);
    }

    .sidebar::-webkit-scrollbar-thumb {
        background: var(--default-text-color);
        border-radius: 3px;
    }

        .sidebar::-webkit-scrollbar-thumb:hover {
            background: var(--default-text-color);
        }

/* Responsive: Hide sidebar on mobile, show toggle */
@media (max-width: 767.98px) {
    .sidebar {
        transform: translateX(-100%);
    }

        .sidebar.show {
            transform: translateX(0);
        }

    #page-topbar {
        left: 0;
    }



    .sidebar-toggle {
        display: block;
    }
}

/* Layout Wrapper */
#layout-wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/* Remove old sidebar styles that conflict - legacy support */
.vertical-menu,
.nVerticalMenu,
.sidebar-hidden {
    /* Legacy classes - replaced by new .sidebar class */
    display: none !important;
}

/* Ensure old sidebar container is hidden */
#sidebarContainer.vertical-menu,
#sidebarContainer.nVerticalMenu {
    display: none !important;
}

.bi {
    vertical-align: -.125em;
    pointer-events: none;
    fill: currentColor;
}

.dropdown-toggle {
    outline: 0;
}

.nav-flush .nav-link {
    border-radius: 0;
}

.btn {
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: var(--default-text-color);
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: .375rem .75rem;
    font-size: 1rem;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-toggle {
    display: inline-flex;
    align-items: center;
    padding: .25rem .5rem;
    font-weight: 600;
    color: var(--default-text-color);
    background-color: transparent;
    border: 0;
}

    .btn-toggle:hover,
    .btn-toggle:focus {
        color: var(--default-text-color);
        background-color: var(--list-hover-focus-bg);
    }

    .btn-toggle::before {
        width: 1.25em;
        line-height: 0;
        content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba%280,0,0,.5%29' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 14l6-6-6-6'/%3e%3c/svg%3e");
        transition: transform .35s ease;
        transform-origin: .5em 50%;
    }

    .btn-toggle[aria-expanded="true"] {
        color: var(--default-text-color);
    }

        .btn-toggle[aria-expanded="true"]::before {
            transform: rotate(90deg);
        }

.btn-toggle-nav a {
    display: inline-flex;
    padding: .1875rem .5rem;
    margin-top: .125rem;
    margin-left: 1.25rem;
    text-decoration: none;
}

    .btn-toggle-nav a:hover,
    .btn-toggle-nav a:focus {
        background-color: var(--list-hover-focus-bg);
    }

.scrollarea {
    overflow-y: auto;
}

.fw-semibold {
    font-weight: 600;
}

.lh-tight {
    line-height: 1.25;
}


.nav .nav-link.active {
    background-color: var(--primary-color);
    color: #fff;
    border-color: var(--default-border) !important;
}

.nav-link {
    color: var(--default-text-color);
    font-weight: 600;
}

    .nav-link:focus, .nav-link:hover {
        color: var(--primary-color);
    }

.nav-tabs {
    border-bottom: 1px solid var(--default-border);
}

.table > :not(:last-child) > :last-child > * {
    border-bottom-color: var(--default-border);
}

th {
    font-weight: 600;
}



.bg-primary {
    background-color: var(--primary-color) !important;
}

.bg-secondary {
    background-color: rgb(var(--secondary-rgb)) !important;
}

.bg-success {
    background-color: rgb(var(--success-rgb)) !important;
}

.bg-danger {
    background-color: rgb(var(--danger-rgb)) !important;
}

.bg-warning {
    background-color: rgb(var(--warning-rgb)) !important;
}

.bg-info {
    background-color: rgb(var(--info-rgb)) !important;
}

.bg-light {
    background-color: rgb(var(--light-rgb)) !important;
}

.text-dark {
    color: rgb(var(--dark-rgb)) !important;
}

.bg-dark {
    background-color: rgb(var(--dark-rgb)) !important;
}

.bg-danger-icon {
    color: rgb(var(--danger-rgb)) !important;
}

.bg-primary-icon {
    color: rgb(var(--primary-rgb)) !important;
}

.bg-success-icon {
    color: rgb(var(--success-rgb)) !important;
}

.bg-warning-icon {
    color: rgb(var(--warning-rgb)) !important;
}


.bg-info-icon {
    color: rgb(var(--info-rgb)) !important;
}

.bg-light-icon {
    color: rgb(var(--light-rgb)) !important;
}

.bg-dark-icon {
    color: rgb(var(--dark-rgb)) !important;
}


.badge {
    padding: .25rem .45rem;
    font-weight: 600;
    border-radius: .25rem;
    font-size: 10px;
}

.btn-primary {
    background-color: rgb(var(--primary-rgb)) !important;
    border-color: rgb(var(--primary-rgb)) !important;
    color: #fff !important;
}

.btn-secondary {
    background-color: rgb(var(--secondary-rgb)) !important;
    border-color: rgb(var(--secondary-rgb)) !important;
    color: #fff !important;
}

.btn-success {
    background-color: rgb(var(--success-rgb)) !important;
    border-color: rgb(var(--success-rgb)) !important;
    color: #fff !important;
}

.btn-danger {
    background-color: rgb(var(--danger-rgb)) !important;
    border-color: rgb(var(--danger-rgb)) !important;
    color: #fff !important;
}

.btn-warning {
    background-color: rgb(var(--warning-rgb)) !important;
    border-color: rgb(var(--warning-rgb)) !important;
    color: #fff !important;
}

.btn-info {
    background-color: rgb(var(--info-rgb)) !important;
    border-color: rgb(var(--info-rgb)) !important;
    color: #fff !important;
}

.btn-light {
    background-color: rgb(var(--light-rgb));
    border-color: rgb(var(--light-rgb));
    color: var(--default-text-color);
}

/* Session dropdown items in Create New modal - match project theme */
#globalAddNewModal #globalCreateSession + .dropdown-menu .dropdown-item {
    background-color: var(--form-control-bg, var(--custom-white));
    color: var(--default-text-color);
    border: none;
    padding: 5px 0px 0px 13px;
    transition: background-color 0.2s ease, color 0.2s ease;
}

    #globalAddNewModal #globalCreateSession + .dropdown-menu .dropdown-item:hover,
    #globalAddNewModal #globalCreateSession + .dropdown-menu .dropdown-item:focus {
        background-color: var(--list-hover-focus-bg, var(--default-background));
        color: var(--default-text-color);
    }

    #globalAddNewModal #globalCreateSession + .dropdown-menu .dropdown-item .fw-semibold {
        color: var(--default-text-color);
    }

    #globalAddNewModal #globalCreateSession + .dropdown-menu .dropdown-item .text-muted {
        color: var(--text-muted);
    }

#globalAddNewModal #globalCreateSession + .dropdown-menu .dropdown-divider {
    border-color: var(--default-border);
    margin: 0.5rem 0;
}

.btn-dark {
    background-color: rgb(var(--dark-rgb));
    border-color: rgb(var(--dark-rgb));
    color: var(--default-text-color);
}

[data-theme-mode=dark] .btn-custom {
    background-color: inherit !important;
    border-color: var(--input-border);
    color: #fff !important;
}

.btn-custom {
    background-color: inherit !important;
    border-color: var(--input-border);
    color: #000 !important;
}


.link-primary {
    color: rgb(var(--primary-rgb)) !important;
    font-size: 15px;
}

.link-warning {
    color: rgb(var(--warning-rgb)) !important;
    font-size: 15px;
}

.link-danger {
    color: rgb(var(--danger-rgb)) !important;
    font-size: 15px;
}

.link-info {
    color: rgb(var(--info-rgb)) !important;
    font-size: 15px;
}


.btn {
    font-size: 13px;
}

    .btn.btn-sm {
        padding: .26rem .5rem;
        border-radius: .25rem;
        font-size: .75rem;
    }

.user-avatar-initials {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: rgb(var(--primary-rgb)) !important;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1;
}

.page-title-icon {
    font-size: 24px;
    color: rgb(var(--primary-rgb)) !important;
}

.bi {
    vertical-align: -.125em;
    pointer-events: none;
    fill: rgb(var(--primary-rgb)) !important;
}

.page-title-group h6 {
    margin-top: 9px !important;
}

.page-title-group {
    display: flex;
    gap: 1rem;
    margin-bottom: 2px;
}

.page-title-icon {
    font-size: 24px;
    color: var(--primary-color);
}

.card-title {
    margin-bottom: var(--bs-card-title-spacer-y);
    color: var(--bs-card-title-color);
}

.card.custom-card .card-header .card-title {
    position: relative;
    margin-block-end: 0;
    font-size: .9375rem;
    font-weight: 700;
    text-transform: capitalize;
}

.table {
    color: var(--default-text-color);
    border-color: var(--default-border);
    margin-block-end: 0;
}

    .table > :not(caption) > * > * {
        --bs-body-bg: var(--custom-white);
        --bs-table-bg: var(--custom-white);
        color: var(--default-text-color);
    }

    .table td, .table th {
        font-size: 12px;
        font-weight: 500;
    }

.btn-icon.btn-sm {
    width: 1.75rem;
    height: 1.75rem;
    font-size: .8rem;
}

.btn-icon {
    width: 2.313rem;
    height: 2.313rem;
    font-size: .95rem;
    flex-shrink: 0;
}

.btn-light {
    background-color: rgb(var(--light-rgb));
    border-color: rgb(var(--light-rgb));
    color: var(--default-text-color);
}

    .btn-light:hover {
        background-color: var(--list-hover-focus-bg);
        border-color: rgb(var(--light-rgb));
        color: var(--default-text-color);
    }

.text-primary {
    color: rgb(var(--default-text-color)) !important;
}


.multiselect-container .multiselect-all:focus, .multiselect-container .multiselect-all:hover, .multiselect-container .multiselect-group:focus, .multiselect-container .multiselect-group:hover, .multiselect-container .multiselect-option:focus, .multiselect-container .multiselect-option:hover {
    color: #1e2125;
    background-color: #e9ecef !important;
}
/* Bootstrap multiselect styles */
.multiselect {
    text-align: left;
    border: 1px solid var(--default-border);
    border-color: var(--input-border);
    background-color: var(--form-control-bg);
    line-height: 1.6;
    border-radius: .35rem;
    padding: .375rem .75rem;
    -moz-appearance: none;
    color: rgb(var(--default-text-color)) !important;
}

    /* Add dropdown icon/caret */
    .multiselect .caret {
        display: inline-block;
        width: 0;
        height: 0;
        margin-left: 8px;
        vertical-align: middle;
        border-top: 4px solid;
        border-right: 4px solid transparent;
        border-left: 4px solid transparent;
    }

    .multiselect.dropdown-toggle::after {
        display: inline-block;
        margin-left: 8px;
        vertical-align: middle;
        content: "";
        border-top: 0.3em solid;
        border-right: 0.3em solid transparent;
        border-bottom: 0;
        border-left: 0.3em solid transparent;
    }

.multiselect-container {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    bottom: auto !important;
    list-style: none;
    padding: 0;
    margin: 2px 0 0 0 !important;
    background-color: var(--custom-white);
    border: 1px solid var(--default-border);
    border-radius: 0.375rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    z-index: 1050 !important;
    display: none;
    transform: none !important;
    max-height: 300px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

    /* Custom scrollbar styling for multiselect containers */
    .multiselect-container::-webkit-scrollbar {
        width: 8px;
    }

    .multiselect-container::-webkit-scrollbar-track {
        background: var(--default-border);
        border-radius: 4px;
    }

    .multiselect-container::-webkit-scrollbar-thumb {
        background: var(--default-text-color);
        border-radius: 4px;
    }

        .multiselect-container::-webkit-scrollbar-thumb:hover {
            background: var(--default-text-color);
        }

/* Firefox scrollbar */
.multiselect-container {
    scrollbar-width: thin;
    scrollbar-color: var(--default-text-color) var(--default-border);
}

    .multiselect-container.show {
        display: block !important;
    }

.btn-group.dropup .multiselect-container {
    top: auto !important;
    bottom: 100% !important;
    margin-top: 0 !important;
    margin-bottom: 2px !important;
}

.multiselect-container > li > a,
.multiselect-container > button {
    padding: 8px 12px;
    display: block;
    text-decoration: none;
    color: var(--default-text-color);
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
}

    .multiselect-container > li > a:hover,
    .multiselect-container > button:hover {
        background-color: var(--list-hover-focus-bg);
    }

    .multiselect-container > li > a > label,
    .multiselect-container > button > label {
        margin: 0;
        padding: 0;
        font-weight: normal;
        cursor: pointer;
        width: 100%;
    }

        .multiselect-container > li > a > label > input[type="checkbox"],
        .multiselect-container > button > label > input[type="checkbox"] {
            margin-right: 8px;
        }

.filter-dropdown-item {
    position: relative;
    display: inline-block;
}

    .filter-dropdown-item .multiselect {
        width: 100% !important;
    }

    .filter-dropdown-item .btn-group {
        position: relative !important;
        display: inline-block !important;
        width: 100% !important;
    }

        .filter-dropdown-item .btn-group,
        .filter-dropdown-item .btn-group.dropup {
            position: relative !important;
        }

    .filter-dropdown-item .multiselect-container {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        bottom: auto !important;
        margin-top: 2px !important;
        margin-bottom: 0 !important;
        transform: none !important;
    }

.task-icon-badge {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .task-icon-badge:hover {
        transform: scale(1.1);
        box-shadow: 0 4px 8px rgba(102, 126, 234, 0.4);
    }

.bug-icon-badge {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .bug-icon-badge:hover {
        transform: scale(1.1);
        box-shadow: 0 4px 8px rgba(245, 87, 108, 0.4);
    }

.task-title-text {
    color: var(--default-text-color);
    font-weight: 500;
    font-size: 13px;
}

#datatableTask th[style*="display:none"],
#datatableTask th[style*="display: none"],
#datatableTask th.d-none {
    display: none !important;
    width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.btn-danger .bi-trash,
.btn-danger i.bi-trash,
button.btn-danger .bi-trash,
button.btn-danger i.bi-trash {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-size: 1rem !important;
    color: #fff !important;
    line-height: 1 !important;
}

.btn-danger, button.btn-danger, #datatableTask .btn-danger, #datatableTask button.btn-danger {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.nEditDelelet,
#datatableTask .nEditDelelet,
#datatableTask td .nEditDelelet {
    display: inline-block !important;
    visibility: visible !important;
}

    /* ✅ Actions Column - Ensure buttons are visible */
    #datatableTask td .nEditDelelet button,
    #datatableTask td .nEditDelelet .btn {
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

/* ✅ Bootstrap Icons - Ensure icons are visible */
.bi,
.bi-trash,
.bi-pencil {
    display: inline-block !important;
    visibility: visible !important;
    font-family: "bootstrap-icons" !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    line-height: 1 !important;
    vertical-align: -0.125em !important;
}

    .bi::before, [class*=" bi-"]::before, [class^=bi-]::before {
        vertical-align: 0;
    }

.btn-danger:hover .bi-trash,
button.btn-danger:hover .bi-trash {
    color: var(--custom-white) !important;
    opacity: 1 !important;
}

/* ✅ Actions Column - Ensure no hiding of buttons */
#datatableTask td:has(.nEditDelelet),
#datatableTask td:has(.btn-danger) {
    display: table-cell !important;
    visibility: visible !important;
}

#datatableTask td[style*="display:none"],
#datatableTask td[style*="display: none"],
#datatableTask td.d-none {
    display: none !important;
    width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ✅ FIX: Ensure Actions column is always visible */
#datatableTask th:contains('Actions'),
#datatableTask th[data-hideTask="hideTask_Action"] {
    display: table-cell !important;
    visibility: visible !important;
    width: auto !important;
    padding: 8px !important;
}

#datatableTask td:has(.nEditDelelet),
#datatableTask td:has(button.btn-warning),
#datatableTask td:has(button.btn-danger) {
    display: table-cell !important;
    visibility: visible !important;
    width: auto !important;
    padding: 8px !important;
}

/* Fix Bootstrap 5 compatibility */
.btn-group {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}

    .btn-group:not(.dropup) {
        /* Force dropdown to open downward */
    }

.multiselect.dropdown-toggle {
    cursor: pointer;
}

    /* Ensure dropdown opens */
    .multiselect.dropdown-toggle[aria-expanded="true"] + .multiselect-container,
    .multiselect.dropdown-toggle.active + .multiselect-container {
        display: block;
    }

/* Prevent dropup class from being added */
.filter-dropdown-item .btn-group.dropup {
    position: relative !important;
}

    .filter-dropdown-item .btn-group.dropup .multiselect-container {
        top: 100% !important;
        bottom: auto !important;
        margin-top: 2px !important;
        margin-bottom: 0 !important;
    }

.project-avatar {
    background-color: rgb(var(--primary-rgb)) !important;
    width: 32px;
    height: 32px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 14px;
    color: var(--default-text-color);
    flex-shrink: 0;
}

.project-name {
    font-size: 13px;
    font-weight: 500;
    color: var(--default-text-color);
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100% !important;
    min-width: 0 !important;
}

.list-group-item {
    color: var(--default-text-color);
    background-color: var(--custom-white);
    border: 1px solid var(--default-border);
    padding: .75rem 1.25rem;
}

.avatar.avatar-rounded {
    border-radius: 50%;
}

.avatar {
    position: relative;
    height: 2.625rem;
    width: 2.625rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .5rem;
    color: var(--default-text-color);
    font-weight: 500;
}

    .avatar img {
        width: 100%;
        height: 100%;
        border-radius: .5rem;
    }

.text-muted {
    color: var(--text-muted) !important;
}

.fs-12 {
    font-size: .75rem;
}

.btn.btn-info-light {
    background-color: rgba(var(--info-rgb), .1);
    color: rgb(var(--info-rgb));
}

/* ✅ Pagination - Set background color for active page and icon buttons */
.dt-container .pagination .page-item.active > .page-link,
.dt-container .pagination .page-link.active,
.dataTables_wrapper .pagination .page-item.active > .page-link,
.dataTables_wrapper .pagination .page-link.active,
.dt-container .pagination .page-item.active .page-link,
.dataTables_wrapper .pagination .page-item.active .page-link {
    background-color: rgb(var(--primary-rgb)) !important;
    border-color: rgb(var(--primary-rgb)) !important;
    color: #fff !important;
}

/* ✅ Pagination - Ensure active page number text is visible (white) - More specific */
.dt-container .pagination .page-item.active > .page-link,
.dt-container .pagination .page-item.active .page-link,
.dataTables_wrapper .pagination .page-item.active > .page-link,
.dataTables_wrapper .pagination .page-item.active .page-link {
    color: #fff !important;
    background-color: rgb(var(--primary-rgb)) !important;
    border-color: rgb(var(--primary-rgb)) !important;
}

    /* ✅ Pagination - Ensure child elements (text content) are visible */
    .dt-container .pagination .page-item.active > .page-link *,
    .dt-container .pagination .page-item.active .page-link *,
    .dataTables_wrapper .pagination .page-item.active > .page-link *,
    .dataTables_wrapper .pagination .page-item.active .page-link * {
        color: var(--default-text-color) !important;
        background-color: transparent !important;
    }

/* ✅ Pagination - Set background color for icon buttons (first, previous, next, last) on hover */
.dt-container .pagination .page-item:not(.disabled):not(.active) > .page-link:hover,
.dataTables_wrapper .pagination .page-item:not(.disabled):not(.active) > .page-link:hover {
    background-color: rgb(var(--primary-rgb)) !important;
    border-color: rgb(var(--primary-rgb)) !important;
    color: #fff !important;
}


/* ✅ Pagination - Force white text for active page number (override any conflicting styles) */
.dt-container .pagination .page-item.active .page-link,
.dataTables_wrapper .pagination .page-item.active .page-link,
.pagination .page-item.active .page-link {
    color: #fff !important;
    background-color: rgb(var(--primary-rgb)) !important;
    border-color: rgb(var(--primary-rgb)) !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: inline-block !important;
}

    /* ✅ Pagination - Ensure pseudo-elements don't interfere */
    .dt-container .pagination .page-item.active .page-link::before,
    .dt-container .pagination .page-item.active .page-link::after,
    .dataTables_wrapper .pagination .page-item.active .page-link::before,
    .dataTables_wrapper .pagination .page-item.active .page-link::after {
        color: var(--default-text-color) !important;
        background-color: transparent !important;
    }

/* ✅ Pagination - Ensure all text content inside active page link is visible */
.dt-container .pagination .page-item.active .page-link,
.dataTables_wrapper .pagination .page-item.active .page-link,
.pagination .page-item.active .page-link {
    -webkit-text-fill-color: #fff !important;
    text-fill-color: #fff !important;
}

    /* ✅ Pagination - Ensure text is not hidden by any means */
    .dt-container .pagination .page-item.active .page-link span,
    .dt-container .pagination .page-item.active .page-link a,
    .dataTables_wrapper .pagination .page-item.active .page-link span,
    .dataTables_wrapper .pagination .page-item.active .page-link a,
    .pagination .page-item.active .page-link span,
    .pagination .page-item.active .page-link a {
        color: var(--default-text-color) !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

/* ✅ Floating Action Button (Pen Icon) - Set background to primary color */
#rightPanelMenuBtn,
.btn.rounded-circle#rightPanelMenuBtn {
    background-color: rgb(var(--primary-rgb)) !important;
    border-color: rgb(var(--primary-rgb)) !important;
}

    #rightPanelMenuBtn:hover,
    .btn.rounded-circle#rightPanelMenuBtn:hover {
        background-color: rgb(var(--primary-rgb)) !important;
        border-color: rgb(var(--primary-rgb)) !important;
        opacity: 0.9;
    }

.dt-container .pagination .page-item.active .page-link:hover,
.dataTables_wrapper .pagination .page-item.active .page-link:hover,
.pagination .page-item.active .page-link:hover {
    color: var(--default-text-color) !important;
    background-color: rgb(var(--primary-rgb)) !important;
    border-color: rgb(var(--primary-rgb)) !important;
}

.btn.btn-danger-light {
    background-color: rgba(var(--danger-rgb), .1);
    color: rgb(var(--danger-rgb));
}

.btn.btn-secondary-light {
    background-color: rgba(var(--secondary-rgb), .1);
    color: rgb(var(--secondary-rgb));
}

.card.custom-card .card-footer {
    background-color: transparent !important;
    border-block-start: 1px solid var(--default-border);
    padding: 1rem 1.25rem;
    font-size: .813rem;
}

.card .card-footer, .card .card-header {
    background-color: var(--custom-white) !important;
    color: var(--default-text-color);
}

.btn-outline-primary {
    color: rgb(var(--primary-rgb));
    border-color: rgb(var(--primary-rgb));
}

    .btn-outline-primary:active, .btn-outline-primary:hover {
        color: var(--default-text-color);
        background-color: rgb(var(--primary-rgb));
        border-color: rgb(var(--primary-rgb));
    }

.btn-outline-dark {
    color: rgb(var(--dark-rgb));
    border-color: rgb(var(--dark-rgb));
}

    .btn-outline-dark:active, .btn-outline-dark:hover {
        color: var(--default-text-color);
        background-color: var(--custom-black);
        border-color: var(--custom-black);
    }

.accordion-item:first-of-type {
    border-top-left-radius: .35rem;
    border-top-right-radius: .35rem;
}

.accordion-item {
    color: var(--default-text-color);
    background-color: var(--custom-white);
    border: 1px solid var(--default-border);
}

.accordion.accordion-primary .accordion-button {
    background-color: var(--primary01);
    color: var(--primary-color);
}

.accordion-button:not(.collapsed) {
    color: var(--default-text-color);
    background-color: var(--default-background);
    box-shadow: none;
}

.accordion-button {
    background-color: var(--custom-white);
    color: var(--default-text-color);
    padding: .75rem 1rem;
    font-size: .85rem;
    font-weight: 500;
}

.accordion.accordion-primary .accordion-button.collapsed {
    background-color: var(--custom-white);
    color: var(--default-text-color);
}

.timeline {
    position: relative;
}

    .timeline > li {
        position: relative;
        min-height: 3.125rem;
        padding: .938rem 0;
    }

    .timeline li:before {
        content: "";
        position: absolute;
        inset-block-start: 4.625rem;
        inset-block-end: -3rem;
        width: 1px;
        border: 1px dashed var(--primary02);
        inset-inline-start: 20%;
        margin-inline-start: -1.5px;
    }

    .timeline .timeline-time {
        position: absolute;
        inset-inline-start: 0;
        width: 18%;
        inset-block-start: 3.35rem;
    }

        .timeline .timeline-time .date {
            line-height: 1rem;
            font-size: .6rem;
            margin-bottom: 0;
            color: var(--text-muted);
        }

        .timeline .timeline-time .date, .timeline .timeline-time .time {
            display: block;
            font-weight: 500;
        }

        .timeline .timeline-time .time {
            line-height: 1.5rem;
            font-size: 1.125rem;
            color: var(--text-muted);
        }

        .timeline .timeline-time .date, .timeline .timeline-time .time {
            display: block;
            font-weight: 500;
        }

    .timeline .timeline-icon {
        inset-inline-start: 15%;
        position: absolute;
        width: 10%;
        text-align: center;
        inset-block-start: 3.188rem;
    }

        .timeline .timeline-icon a {
            width: .625rem;
            height: .625rem;
            display: inline-block;
            border-radius: 50%;
            background: rgb(var(--light-rgb));
            color: var(--primary-color);
            line-height: .625rem;
            font-size: .875rem;
            border: .188rem solid var(--primary05);
        }

@media screen and (min-width: 576px) {
    .timeline .timeline-body {
        inset-block-start: 2.5rem;
    }
}

.timeline .timeline-body {
    box-shadow: 0 1px 1rem rgba(0, 0, 0, .05);
    margin-inline-start: 22%;
    margin-inline-end: 18%;
    background: var(--custom-white);
    position: relative;
    padding: .875rem 1.25rem .875rem 1.25rem;
    border-radius: .5rem;
    border: 1px solid var(--default-border);
}

.avatar.avatar-md {
    width: 2.5rem;
    height: 2.5rem;
    line-height: 2.5rem;
    font-size: .8rem;
}

    .avatar.avatar-md.offline:before, .avatar.avatar-md.online:before {
        width: .75rem;
        height: .75rem;
    }

.avatar.online:before {
    background-color: rgb(var(--success-rgb));
}

.avatar.offline:before, .avatar.online:before {
    position: absolute;
    content: "";
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    inset-inline-end: 0;
    inset-block-end: 0;
    border: 2px solid var(--custom-white);
}

.avatar.avatar-rounded img {
    border-radius: 50%;
}

.avatar img {
    width: 100%;
    height: 100%;
    border-radius: .5rem;
}

.fs-14 {
    font-size: .875rem;
}

.bg-primary-transparent {
    background-color: var(--primary01) !important;
    color: var(--primary-color) !important;
}

.text-default {
    color: var(--default-text-color) !important;
}

.bg-success-transparent {
    background-color: rgba(var(--success-rgb), .1) !important;
    color: rgb(var(--success-rgb)) !important;
}

:root {
    --dur: 2s;
}
/* change to 60s for 1-minute full rotation */

.clock-icon {
    display: inline-block;
    width: 40px;
    height: 40px;
    vertical-align: middle;
    color: rgb(var(--primary-rgb)) !important;
}

    .clock-icon svg {
        width: 100%;
        height: 100%;
        display: block;
    }

.clock-ring, .hand {
    fill: none;
    stroke: currentColor;
    stroke-width: 4;
    stroke-linecap: round;
}

.clock-center {
    fill: currentColor;
}

/* Progress ring (fills and clears at 12) */
.progress-ring {
    fill: none;
    stroke: currentColor;
    stroke-width: 6;
    opacity: 0.25;
    transform: rotate(-90deg);
    transform-origin: 50% 50%;
    stroke-dasharray: 188.5; /* r=30 => circumference ~188.5 */
    stroke-dashoffset: 188.5; /* empty */
}

/* RUNNING STATE (animations ON) */
.clock-icon.is-running .hand {
    transform-origin: 50% 50%;
    animation: hand-spin var(--dur) linear infinite;
}

.clock-icon.is-running .progress-ring {
    animation: ring-progress var(--dur) linear infinite;
}

/* STOPPED STATE (animations OFF + fixed positions) */
.clock-icon.is-stopped .hand,
.clock-icon.is-stopped .progress-ring {
    animation: none !important;
}
/* stop hand at 3 o'clock (change angle if you want) */
.clock-icon.is-stopped .hand {
    transform-origin: 50% 50%;
    transform: rotate(0deg);
}
/* stopped ring = empty (or set to 0 for full ring) */
.clock-icon.is-stopped .progress-ring {
    stroke-dashoffset: 188.5; /* empty */
}

@keyframes hand-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes ring-progress {
    0% {
        stroke-dashoffset: 188.5;
    }

    99% {
        stroke-dashoffset: 0;
    }

    100% {
        stroke-dashoffset: 188.5;
    }
    /* clear at 12 */
}

/* ============================================
   ✅ Image/File Upload Section - TaskView
   ============================================ */

/* Attachments Card Section */
.card.custom-card .card-header .card-title {
    font-weight: 600;
    color: var(--default-text-color);
}

/* File Action Buttons Container */
.file-action-buttons {
    gap: 0.5rem !important;
    align-items: center;
}

    .file-action-buttons .btn {
        margin: 0;
    }

/* File List Container */
#fileList {
    background-color: var(--custom-white);
    border-bottom: 1px solid var(--default-border);
}

/* Uploaded Files List */
#uploadedFilesList {
    margin: 0;
    padding: 0;
}

    #uploadedFilesList .list-group {
        margin: 0;
        border: 0;
    }

    #uploadedFilesList .list-group-item {
        border-left: 0;
        border-right: 0;
        border-top: 1px solid var(--default-border);
        border-bottom: 1px solid var(--default-border);
        padding: 1rem 1.25rem;
        transition: background-color 0.2s ease;
    }

        #uploadedFilesList .list-group-item:first-child {
            border-top: 0;
        }

        #uploadedFilesList .list-group-item:last-child {
            border-bottom: 0;
        }

        #uploadedFilesList .list-group-item:hover {
            background-color: var(--list-hover-focus-bg);
        }

        /* File Item Layout */
        #uploadedFilesList .list-group-item .d-flex {
            gap: 0.75rem;
            align-items: center;
        }

        /* Avatar Container for File Icons/Images */
        #uploadedFilesList .list-group-item .avatar {
            width: 48px;
            height: 48px;
            min-width: 48px;
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: var(--gray-1);
            border: 1px solid var(--default-border);
            border-radius: 0.5rem;
            overflow: hidden;
        }

            #uploadedFilesList .list-group-item .avatar.avatar-rounded {
                border-radius: 50%;
            }

            #uploadedFilesList .list-group-item .avatar img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                border-radius: inherit;
            }

            #uploadedFilesList .list-group-item .avatar i {
                font-size: 24px;
                color: var(--text-muted);
            }

        /* File Info Section */
        #uploadedFilesList .list-group-item .flex-fill {
            min-width: 0;
            flex: 1 1 auto;
        }

            #uploadedFilesList .list-group-item .flex-fill a {
                color: var(--default-text-color);
                text-decoration: none;
                transition: color 0.2s ease;
            }

                #uploadedFilesList .list-group-item .flex-fill a:hover {
                    color: rgb(var(--primary-rgb));
                }

            #uploadedFilesList .list-group-item .flex-fill .fw-semibold {
                font-weight: 600;
                font-size: 0.875rem;
                color: var(--default-text-color);
                word-break: break-word;
                line-height: 1.4;
                margin-bottom: 0.25rem;
            }

            #uploadedFilesList .list-group-item .flex-fill .text-muted {
                font-size: 0.75rem;
                color: var(--text-muted);
                line-height: 1.3;
            }

        /* Button List Container */
        #uploadedFilesList .list-group-item .btn-list {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            flex-shrink: 0;
        }

        /* Delete Button Styling */
        #uploadedFilesList .list-group-item .btn-danger-light {
            background-color: rgba(var(--danger-rgb), 0.1);
            border-color: rgba(var(--danger-rgb), 0.2);
            color: rgb(var(--danger-rgb));
            transition: all 0.2s ease;
        }

            #uploadedFilesList .list-group-item .btn-danger-light:hover {
                background-color: rgba(var(--danger-rgb), 0.2);
                border-color: rgba(var(--danger-rgb), 0.3);
                color: rgb(var(--danger-rgb));
            }

            #uploadedFilesList .list-group-item .btn-danger-light i {
                font-size: 0.875rem;
            }

/* No Files Message */
.no-files-message {
    color: var(--text-muted);
    padding: 2rem 1rem;
}

    .no-files-message i {
        color: var(--text-muted);
        opacity: 0.5;
    }

    .no-files-message p {
        color: var(--text-muted);
        font-size: 0.875rem;
        margin-bottom: 0.5rem;
    }

    .no-files-message small {
        color: var(--text-muted);
        font-size: 0.75rem;
        opacity: 0.7;
    }

/* File Icon Colors */
#uploadedFilesList .list-group-item .avatar .bi-file-pdf {
    color: rgb(var(--danger-rgb)) !important;
}

#uploadedFilesList .list-group-item .avatar .bi-file-word {
    color: rgb(var(--primary-rgb)) !important;
}

#uploadedFilesList .list-group-item .avatar .bi-file-excel {
    color: rgb(var(--success-rgb)) !important;
}

#uploadedFilesList .list-group-item .avatar .bi-file-ppt {
    color: rgb(var(--warning-rgb)) !important;
}

#uploadedFilesList .list-group-item .avatar .bi-file-text {
    color: rgb(var(--secondary-rgb)) !important;
}

#uploadedFilesList .list-group-item .avatar .bi-file-image {
    color: rgb(var(--info-rgb)) !important;
}

#uploadedFilesList .list-group-item .avatar .bi-file-zip {
    color: rgb(var(--dark-rgb)) !important;
}

/* Image Preview Styling */
#uploadedFilesList .list-group-item .avatar img {
    cursor: pointer;
    transition: transform 0.2s ease;
}

    #uploadedFilesList .list-group-item .avatar img:hover {
        transform: scale(1.05);
    }

/* Responsive Design for File List */
@media (max-width: 576px) {
    #uploadedFilesList .list-group-item .d-flex {
        flex-wrap: wrap;
    }

    #uploadedFilesList .list-group-item .btn-list {
        width: 100%;
        justify-content: flex-end;
        margin-top: 0.5rem;
    }

    #uploadedFilesList .list-group-item .flex-fill {
        width: 100%;
        min-width: 0;
    }
}

/* File Upload Button Styling */
#selectFileButton,
#fileActionButtons .btn {
    transition: all 0.2s ease;
}

    #selectFileButton:hover,
    #fileActionButtons .btn:hover {
        transform: translateY(-1px);
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    }

/* Card Body Padding for Attachments */
.card.custom-card .card-body.p-0 {
    overflow: hidden;
}

/* Ensure proper spacing in file items */
#uploadedFilesList .list-group-item .lh-1 {
    line-height: 1;
}

/* File name link hover effect */
#uploadedFilesList .list-group-item .flex-fill a:hover .fw-semibold {
    color: rgb(var(--primary-rgb));
}

/* ============================================
   ✅ Actions Column - Edit and Delete Button Spacing
   ============================================ */

/* Actions Column - Add spacing between Edit and Delete buttons */
.nEditDelelet,
#datatableTask .nEditDelelet,
#datatableTask td .nEditDelelet {
    display: inline-flex !important;
    align-items: center !important;
}


    .nEditDelelet button:last-child,
    .nEditDelelet .btn:last-child,
    #datatableTask .nEditDelelet button:last-child,
    #datatableTask .nEditDelelet .btn:last-child {
        margin-right: 0 !important;
    }

    /* Ensure buttons are properly spaced in Actions column */
    #datatableTask td .nEditDelelet .btn-warning,
    #datatableTask td .nEditDelelet .btn-danger {
        margin-left: 0 !important;
        margin-right: 0.5rem !important;
    }

        #datatableTask td .nEditDelelet .btn-danger:last-child,
        #datatableTask td .nEditDelelet .btn:last-child {
            margin-right: 0 !important;
        }

/* ============================================
   ✅ Comment Section - TaskView
   ============================================ */

/* Comment Tab Content */
#dash-Comments-tab {
    padding: 1.25rem;
}

/* Comment Textarea */
#TaskComment {
    min-height: 150px;
    border: 1px solid var(--input-border) !important;
    padding: 15px !important;
    border-radius: 0.5rem !important;
    background-color: var(--form-control-bg) !important;
    font-size: 0.875rem;
    line-height: 1.5;
    resize: vertical;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

    #TaskComment:focus {
        border-color: rgb(var(--primary-rgb)) !important;
        box-shadow: 0 0 0 0.2rem rgba(var(--primary-rgb), 0.1) !important;
        outline: 0;
    }

    #TaskComment::placeholder {
        color: var(--text-muted);
        opacity: 0.7;
    }

/* Comment Action Buttons */
#btnClearTaskComment,
#dash-Comments-tab button[onclick*="TaskViewSumbit"] {
    margin-top: 0.75rem;
    margin-right: 0.5rem;
}

#btnClearTaskComment {
    background-color: var(--gray-2);
    border-color: var(--gray-3);
    color: var(--default-text-color);
}

    #btnClearTaskComment:hover {
        background-color: var(--gray-3);
        border-color: var(--gray-4);
    }

/* Comment List Container */
#commentList,
.ul.nCommentUL {
    list-style: none;
    padding: 0;
    margin: 1.5rem 0 0 0;
}

    /* Comment Item */
    #commentList .comment-item,
    .ul.nCommentUL .comment-item {
        padding: 1rem 1rem;
        border: 1px solid var(--default-border) !important;
        margin-bottom: 0;
        position: relative;
        transition: background-color 0.2s ease;
    }

        #commentList .comment-item:last-child,
        .ul.nCommentUL .comment-item:last-child {
            border-bottom: none;
            padding-bottom: 0;
        }

        #commentList .comment-item:hover {
            background-color: transparent;
        }

        /* Comment Item Layout */
        #commentList .comment-item .d-flex {
            gap: 0;
            align-items: flex-start;
        }

        /* Comment Avatar */
        #commentList .comment-item .avatar-sm {
            width: 40px;
            height: 40px;
            min-width: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: rgb(var(--primary-rgb)) !important;
            color: var(--custom-white) !important;
            font-weight: 600;
            font-size: 0.875rem;
            border-radius: 50%;
            flex-shrink: 0;
        }

            #commentList .comment-item .avatar-sm span {
                line-height: 1;
                text-transform: uppercase;
            }

        /* Comment Content Container */
        #commentList .comment-item .flex-grow-1 {
            min-width: 0;
            flex: 1 1 auto;
            padding-left: 0.75rem;
        }

        /* Comment Header (Name, Date, Actions) */
        #commentList .comment-item .d-flex.align-items-center {
            margin-bottom: 0.5rem;
            gap: 0.5rem;
            flex-wrap: wrap;
        }

        #commentList .comment-item h6 {
            font-size: 0.9375rem;
            font-weight: 600;
            color: var(--default-text-color);
            margin: 0;
            line-height: 1.4;
        }

        #commentList .comment-item small.text-muted {
            font-size: 0.75rem;
            color: var(--text-muted);
            line-height: 1.4;
        }

        /* Comment Edit/Delete Icons */
        #commentList .comment-item .bi-pencil-square,
        #commentList .comment-item .bi-trash,
        #commentList .comment-item .delete-comment-btn {
            font-size: 1rem;
            cursor: pointer !important;
            pointer-events: auto !important;
            transition: transform 0.2s ease, opacity 0.2s ease;
            opacity: 0.7;
            margin-left: 0.5rem;
            position: relative;
            z-index: 10;
            display: inline-block;
        }

        #commentList .comment-item:hover .bi-pencil-square,
        #commentList .comment-item:hover .bi-trash {
            opacity: 1;
        }

        #commentList .comment-item .bi-pencil-square:hover {
            transform: scale(1.1);
            color: rgb(var(--primary-rgb)) !important;
        }

        #commentList .comment-item .bi-trash:hover {
            transform: scale(1.1);
            color: rgb(var(--danger-rgb)) !important;
        }

        #commentList .comment-item .bi-pencil-square.text-primary {
            color: rgb(var(--primary-rgb)) !important;
        }

        #commentList .comment-item .bi-trash.text-danger,
        #commentList .comment-item .delete-comment-btn.text-danger {
            color: rgb(var(--danger-rgb)) !important;
        }

    /* Ensure comment item doesn't block icon clicks */
    #commentList .comment-item {
        pointer-events: auto !important;
        position: relative;
    }

        #commentList .comment-item .d-flex.align-items-center {
            pointer-events: auto !important;
            position: relative;
            z-index: 1;
        }

        /* Ensure icons are always clickable */
        #commentList .comment-item .bi-pencil-square,
        #commentList .comment-item .bi-trash,
        #commentList .comment-item .delete-comment-btn {
            pointer-events: auto !important;
            z-index: 100 !important;
            position: relative;
            user-select: none;
            -webkit-user-select: none;
            -moz-user-select: none;
            -ms-user-select: none;
        }

        /* Prevent parent elements from blocking clicks */
        #commentList .comment-item > .d-flex,
        #commentList .comment-item .flex-grow-1,
        #commentList .comment-item .d-flex.align-items-center > div {
            pointer-events: auto !important;
        }

        /* Ensure clickable area for icons */
        #commentList .comment-item .bi-pencil-square::before,
        #commentList .comment-item .bi-trash::before,
        #commentList .comment-item .delete-comment-btn::before {
            pointer-events: auto !important;
        }

        /* Make sure icons have proper click target size */
        #commentList .comment-item .bi-pencil-square,
        #commentList .comment-item .bi-trash,
        #commentList .comment-item .delete-comment-btn {
            min-width: 20px;
            min-height: 20px;
            padding: 2px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }

        /* Comment Message Text */
        #commentList .comment-item p {
            font-size: 0.875rem;
            color: var(--default-text-color);
            line-height: 1.6;
            margin: 0;
            word-wrap: break-word;
            white-space: pre-wrap;
        }

    /* No Comments Message */
    #commentList li.text-center.text-muted {
        padding: 2rem 1rem;
        text-align: center;
        color: var(--text-muted);
        font-size: 0.875rem;
    }

    /* Comment Item Selected State (for editing) */
    #commentList .comment-item.comment-selected {
        background-color: rgba(var(--primary-rgb), 0.05);
        border-radius: 0.5rem;
        padding: 1rem;
        margin: 0.5rem 0;
    }

/* Responsive Design for Comments */
@media (max-width: 576px) {
    #commentList .comment-item .d-flex {
        flex-direction: column;
    }

    #commentList .comment-item .flex-grow-1 {
        padding-left: 0;
        padding-top: 0.75rem;
        width: 100%;
    }

    #commentList .comment-item .d-flex.align-items-center {
        flex-wrap: wrap;
    }

    #commentList .comment-item .bi-pencil-square,
    #commentList .comment-item .bi-trash {
        margin-left: 0.25rem;
    }
}

/* Comment Section Spacing */
#dash-Comments-tab .row {
    margin: 0;
}

#dash-Comments-tab .col-12 {
    padding: 0;
}

/* Ensure proper spacing between comment items */
#commentList .comment-item + .comment-item {
    margin-top: 0;
}

/* ============================================
   ✅ All Tab - Timeline Comment Overflow Fix
   ============================================ */

/* Timeline Container */
#allActivityList.timeline {
    list-style: none;
    padding: 0;
    margin: 0;
    position: relative;
}

/* Timeline Body - Fix overflow */
#allActivityList .timeline-body {
    overflow: visible;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Timeline Main Content - Ensure proper flex behavior */
#allActivityList .timeline-main-content {
    width: 100%;
    min-width: 0;
    overflow: hidden;
}

    /* Flex Fill Container - Prevent overflow */
    #allActivityList .timeline-main-content .flex-fill {
        min-width: 0;
        flex: 1 1 auto;
        overflow: hidden;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }

/* Comment Badge - Allow text wrapping */
#allActivityList .timeline-body .badge.bg-primary-transparent {
    display: inline-block;
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    text-align: left;
    padding: 0.375rem 0.75rem;
    line-height: 1.5;
    vertical-align: baseline;
}

/* Comment Text Container - Fix overflow */
#allActivityList .timeline-body p.text-muted {
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    max-width: 100%;
    margin-bottom: 0.5rem;
}

/* Timeline Badge (Date) - Prevent wrapping issues */
#allActivityList .timeline-badge {
    white-space: nowrap;
    flex-shrink: 0;
    margin-left: 0.5rem;
}

/* Timeline Item Layout - Fix alignment */
#allActivityList .timeline-body .d-flex.align-items-center {
    flex-wrap: wrap;
    gap: 0.5rem;
    width: 100%;
    min-width: 0;
}

    #allActivityList .timeline-body .d-flex.align-items-center > div {
        min-width: 0;
        flex: 1 1 auto;
    }

    #allActivityList .timeline-body .d-flex.align-items-center .ms-auto {
        flex-shrink: 0;
        margin-left: auto;
    }

/* Ensure comment message doesn't overflow */
#allActivityList .timeline-body .badge.bg-primary-transparent,
#allActivityList .timeline-body span.badge {
    word-break: break-word;
    white-space: normal;
    overflow: visible;
    max-width: 100%;
}

/* Timeline Item - Prevent horizontal overflow */
#allActivityList li {
    overflow: visible;
    word-wrap: break-word;
    margin-bottom: 1rem;
}

/* Responsive Fix for Timeline Comments */
@media (max-width: 768px) {
    #allActivityList .timeline-body .d-flex.align-items-center {
        flex-direction: column;
        align-items: flex-start !important;
    }

        #allActivityList .timeline-body .d-flex.align-items-center .ms-auto {
            margin-left: 0;
            margin-top: 0.5rem;
            width: 100%;
        }

    #allActivityList .timeline-badge {
        width: 100%;
        text-align: left;
    }

    #allActivityList .timeline-body .badge.bg-primary-transparent {
        display: block;
        width: 100%;
        margin: 0.25rem 0;
    }
}

/* Fix for long comment text in timeline */
#allActivityList .timeline-body p {
    max-width: 100%;
    overflow-wrap: break-word;
    word-wrap: break-word;
    white-space: normal;
}

/* Ensure timeline content doesn't overflow container */
#dash-All-tab {
    overflow-x: hidden;
    word-wrap: break-word;
}

    #dash-All-tab .row {
        margin: 0;
        overflow-x: hidden;
    }

    #dash-All-tab .col-12 {
        padding: 0;
        overflow-x: hidden;
        max-width: 100%;
    }

/* ============================================
   ✅ Timeline Avatar - Round Cap Fix
   ============================================ */

/* Timeline Avatar - Ensure Perfect Circle */
#allActivityList .timeline-body .avatar,
#allActivityList .timeline-main-content .avatar,
#allActivityList .avatar.avatar-md,
#allActivityList .avatar.avatar-rounded {
    width: 2.5rem !important;
    height: 2.5rem !important;
    min-width: 2.5rem !important;
    min-height: 2.5rem !important;
    max-width: 2.5rem !important;
    max-height: 2.5rem !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    background-color: rgb(var(--primary-rgb)) !important;
    color: var(--custom-white) !important;
    font-weight: 600 !important;
    font-size: 1.15rem !important;
    line-height: 1 !important;
    padding: 0 !important;
    margin-right: 0.75rem !important;
    margin-top: 0 !important;
}

    /* Ensure avatar content (initials) is centered */
    #allActivityList .timeline-body .avatar span,
    #allActivityList .timeline-main-content .avatar span,
    #allActivityList .avatar.avatar-md span,
    #allActivityList .avatar.avatar-rounded span {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        line-height: 1 !important;
        text-align: center !important;
    }

    /* Prevent avatar from stretching */
    #allActivityList .timeline-body .avatar *,
    #allActivityList .timeline-main-content .avatar * {
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

/* Timeline Main Content - Ensure avatar and name stay on same line */
#allActivityList .timeline-main-content {
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 0.75rem !important;
}

    #allActivityList .timeline-main-content .avatar {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        flex-shrink: 0 !important;
    }

    /* Ensure flex-fill container doesn't wrap */
    #allActivityList .timeline-main-content .flex-fill {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        flex-shrink: 1 !important;
    }

        /* Ensure name and avatar are on same line */
        #allActivityList .timeline-main-content .flex-fill .d-flex.align-items-center {
            flex-wrap: nowrap !important;
            align-items: center !important;
        }

        /* Name container - ensure it stays inline with avatar */
        #allActivityList .timeline-main-content .flex-fill .mt-sm-0.mt-2 {
            margin-top: 0 !important;
            flex: 1 1 auto !important;
            min-width: 0 !important;
        }

/* Ensure titleLine (name) stays on same line as avatar */
#allActivityList .timeline-body .fs-14.fw-semibold,
#allActivityList .timeline-body p.fs-14.fw-semibold,
#allActivityList .timeline-body p.mb-0.fs-14.fw-semibold {
    display: inline-block !important;
    white-space: nowrap !important;
    margin-bottom: 0 !important;
}

/* Prevent timeline item from wrapping avatar and name */
#allActivityList .timeline-body .timeline-main-content {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
}

    /* Avatar alignment with name */
    #allActivityList .timeline-body .timeline-main-content .avatar {
        align-self: center !important;
        margin-top: 0 !important;
    }

/* Responsive: Only wrap on very small screens */
@media (max-width: 480px) {
    #allActivityList .timeline-main-content {
        flex-wrap: wrap !important;
    }

        #allActivityList .timeline-main-content .avatar {
            margin-bottom: 0.5rem !important;
        }
}

/* Override any inline styles that might make it a box */
#allActivityList .avatar[style*="width"],
#allActivityList .avatar[style*="height"] {
    width: 2.5rem !important;
    height: 2.5rem !important;
    border-radius: 50% !important;
}

/* Ensure avatar-rounded class always makes it round */
.avatar.avatar-rounded,
#allActivityList .avatar.avatar-rounded {
    border-radius: 50% !important;
    aspect-ratio: 1 / 1 !important;
}

/* Timeline avatar specific - override any conflicting styles */
#allActivityList .timeline-body .avatar.avatar-md.avatar-rounded {
    width: 2.5rem !important;
    height: 2.5rem !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    flex-shrink: 0 !important;
    color: #fff !important;
}

/* ============================================
   ✅ History Tab - Same Format as All Tab (Timeline)
   ============================================ */

/* History Tab Container - Convert to Timeline Format */
#dash-History-tab {
    padding: 0;
    overflow-x: hidden;
    word-wrap: break-word;
}

    #dash-History-tab .row {
        margin: 0;
        overflow-x: hidden;
    }

    #dash-History-tab .col-12 {
        padding: 0;
        overflow-x: hidden;
        max-width: 100%;
    }

/* History List - Convert to Timeline Structure */
#historyList.ul.nCommentUL {
    list-style: none;
    padding: 0;
    margin: 0;
    position: relative;
}

/* History Comment Items - Timeline Style */
#historyList .comment-item {
    position: relative;
    padding: 0;
    margin-bottom: 1.5rem;
    border: none;
    background: transparent;
}

    /* History Item Layout - Match All Tab Timeline */
    #historyList .comment-item .d-flex.align-items-start {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        gap: 0.75rem !important;
        width: 100%;
        min-width: 0;
    }

    /* History Avatar - Round Circle (Same as All Tab) */
    #historyList .comment-item .avatar-sm,
    #historyList .comment-item .avatar-sm.rounded-circle {
        width: 2.5rem !important;
        height: 2.5rem !important;
        min-width: 2.5rem !important;
        min-height: 2.5rem !important;
        max-width: 2.5rem !important;
        max-height: 2.5rem !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
        background-color: rgb(var(--primary-rgb)) !important;
        color: var(--custom-white) !important;
        font-weight: 600 !important;
        font-size: 1.15rem !important;
        line-height: 1 !important;
        padding: 0 !important;
        margin-right: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

        /* History Avatar Content */
        #historyList .comment-item .avatar-sm span {
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            width: 100% !important;
            height: 100% !important;
            line-height: 1 !important;
            text-align: center !important;
            text-transform: uppercase;
        }

    /* History Content Container - Match All Tab */
    #historyList .comment-item .flex-grow-1 {
        min-width: 0;
        flex: 1 1 auto;
        overflow: hidden;
        word-wrap: break-word;
        overflow-wrap: break-word;
        padding-left: 0 !important;
    }

        /* History Name and Date - Same Line Layout */
        #historyList .comment-item .flex-grow-1 .d-flex,
        #historyList .comment-item .flex-grow-1 > h6 {
            display: inline-flex !important;
            align-items: center !important;
            flex-wrap: wrap !important;
            gap: 0.5rem;
            margin-bottom: 0.25rem;
        }

    #historyList .comment-item h6 {
        font-size: 0.875rem;
        font-weight: 600;
        color: var(--default-text-color);
        margin: 0;
        line-height: 1.4;
        display: inline-block;
        white-space: nowrap;
    }

    /* History Date Badge - Match All Tab */
    #historyList .comment-item small.text-muted {
        font-size: 0.75rem;
        color: var(--text-muted);
        line-height: 1.4;
        display: inline-block;
        white-space: nowrap;
    }

    /* History Message Text - Match All Tab */
    #historyList .comment-item p {
        font-size: 0.875rem;
        color: var(--default-text-color);
        line-height: 1.6;
        margin: 0.25rem 0 0 0;
        word-wrap: break-word;
        white-space: normal;
        max-width: 100%;
        overflow-wrap: break-word;
    }

    /* History Badges - Match All Tab Style */
    #historyList .comment-item .badge {
        word-wrap: break-word;
        overflow-wrap: break-word;
        white-space: normal;
        max-width: 100%;
        display: inline-block;
    }

        /* History Timer Badges */
        #historyList .comment-item .badge.bg-success-transparent,
        #historyList .comment-item .badge.bg-danger,
        #historyList .comment-item .badge.bg-info {
            margin-left: 0.5rem;
            font-size: 0.75rem;
        }

    /* History Item Hover - Match All Tab */
    #historyList .comment-item:hover {
        background-color: transparent;
    }

/* Responsive Design for History Tab */
@media (max-width: 768px) {
    #historyList .comment-item .d-flex.align-items-start {
        flex-wrap: wrap;
    }

    #historyList .comment-item .flex-grow-1 {
        width: 100%;
        margin-top: 0.5rem;
    }

    #historyList .comment-item .avatar-sm {
        margin-bottom: 0.5rem;
    }
}

/* Ensure History Tab matches All Tab spacing */
#historyList .comment-item + .comment-item {
    margin-top: 0;
    padding-top: 0;
}

/* History Tab - Prevent overflow */
#historyList .comment-item * {
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* ============================================
   ✅ History Tab - Exact Timeline Format (Same as All Tab)
   ============================================ */

/* Apply timeline styles to History list (same as .timeline class) */
#historyList {
    position: relative;
    list-style: none;
    padding: 0;
    margin: 0;
}

    /* History List Items - Same as .timeline > li */
    #historyList > li {
        position: relative;
        min-height: 3.125rem;
        padding: 0.938rem 0;
    }

        /* Timeline line - Same as .timeline li:before */
        #historyList > li:before {
            content: "";
            position: absolute;
            inset-block-start: 4.625rem;
            inset-block-end: -3rem;
            width: 1px;
            border: 1px dashed var(--primary02);
            inset-inline-start: 20%;
            margin-inline-start: -1.5px;
            z-index: 0;
        }

        /* Remove line from last item */
        #historyList > li:last-child:before {
            display: none;
        }

    /* Timeline Time - Same as .timeline .timeline-time */
    #historyList .timeline-time {
        position: absolute;
        inset-inline-start: 0;
        width: 18%;
        inset-block-start: 3.35rem;
    }

        #historyList .timeline-time .date {
            line-height: 1rem;
            font-size: 0.6rem;
            margin-bottom: 0;
            color: var(--text-muted);
        }

        #historyList .timeline-time .date,
        #historyList .timeline-time .time {
            display: block;
            font-weight: 500;
        }

        #historyList .timeline-time .time {
            line-height: 1.5rem;
            font-size: 1.125rem;
            color: var(--text-muted);
        }

    /* Timeline Icon - Same as .timeline .timeline-icon */
    #historyList .timeline-icon {
        inset-inline-start: 15%;
        position: absolute;
        width: 10%;
        text-align: center;
        inset-block-start: 3.188rem;
    }

        #historyList .timeline-icon a {
            width: 0.625rem;
            height: 0.625rem;
            display: inline-block;
            border-radius: 50%;
            background: rgb(var(--light-rgb));
            color: var(--primary-color);
            line-height: 0.625rem;
            font-size: 0.875rem;
            border: 0.188rem solid var(--primary05);
        }

/* Timeline Body - Same as .timeline .timeline-body */
@media screen and (min-width: 576px) {
    #historyList .timeline-body {
        inset-block-start: 2.5rem;
    }
}

/* Timeline Body Box - Match All Tab exactly */
#historyList .timeline-body {
    box-shadow: 0 1px 1rem rgba(0, 0, 0, 0.05) !important;
    margin-inline-start: 22% !important;
    margin-inline-end: 18% !important;
    background: var(--custom-white) !important;
    position: relative !important;
    padding: 0.875rem 1.25rem 0.875rem 1.25rem !important;
    border-radius: 0.5rem !important;
    overflow: visible !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 4.5rem !important; /* ✅ FIX: Ensure all boxes have same minimum height for consistent alignment */
    border: 1px solid var(--default-border) !important;
}

/* Timeline Main Content - Match All Tab (Same as #allActivityList) */
#historyList .timeline-main-content {
    width: 100%;
    min-width: 0;
    overflow: hidden;
    display: flex;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 0.75rem !important;
    min-height: 2.75rem !important; /* ✅ FIX: Ensure consistent minimum height for all content (matching All tab) */
}

    /* Avatar in timeline-main-content - Match All Tab */
    #historyList .timeline-main-content .avatar {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        flex-shrink: 0 !important;
    }

    /* Ensure flex-fill container doesn't wrap - Match All Tab */
    #historyList .timeline-main-content .flex-fill {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        flex-shrink: 1 !important;
    }

        /* Ensure name and avatar are on same line - Match All Tab */
        #historyList .timeline-main-content .flex-fill .d-flex.align-items-center {
            flex-wrap: nowrap !important;
            align-items: center !important;
            width: 100%;
            min-width: 0;
        }

        /* Name container - ensure it stays inline with avatar - Match All Tab */
        #historyList .timeline-main-content .flex-fill .mt-sm-0.mt-2 {
            margin-top: 0 !important;
            flex: 1 1 auto !important;
            min-width: 0 !important;
            align-self: flex-start !important; /* ✅ FIX: Align content to top for consistent alignment */
        }

/* Ensure titleLine (name) stays on same line as avatar - Match All Tab */
#historyList .timeline-body .fs-14.fw-semibold,
#historyList .timeline-body p.fs-14.fw-semibold,
#historyList .timeline-body p.mb-0.fs-14.fw-semibold {
    display: inline-block !important;
    white-space: nowrap !important;
    margin-bottom: 0 !important;
}

/* Prevent timeline item from wrapping avatar and name - Match All Tab */
#historyList .timeline-body .timeline-main-content {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
}

/* Flex Fill Container - Prevent overflow (Same as All Tab) */
#historyList .timeline-main-content .flex-fill {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Comment Badge - Allow text wrapping (Same as All Tab) */
#historyList .timeline-body .badge.bg-primary-transparent {
    display: inline-block;
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    text-align: left;
    padding: 0.375rem 0.75rem;
    line-height: 1.5;
    vertical-align: baseline;
}

/* Comment Text Container - Fix overflow (Same as All Tab) */
#historyList .timeline-body p.text-muted {
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    max-width: 100%;
    margin-bottom: 0.5rem;
}

/* Timeline Badge (Date) - Prevent wrapping issues (Same as All Tab) */
#historyList .timeline-badge {
    white-space: nowrap;
    flex-shrink: 0;
    margin-left: 0.5rem;
}

/* Timeline Item Layout - Fix alignment (Same as All Tab) */
#historyList .timeline-body .d-flex.align-items-center {
    flex-wrap: wrap;
    gap: 0.5rem;
    width: 100%;
    min-width: 0;
    align-items: flex-start !important; /* ✅ FIX: Align items to top for consistent alignment */
}

    #historyList .timeline-body .d-flex.align-items-center > div {
        min-width: 0;
        flex: 1 1 auto;
    }

    #historyList .timeline-body .d-flex.align-items-center .ms-auto {
        flex-shrink: 0;
        margin-left: auto;
        align-self: flex-start !important; /* ✅ FIX: Align badge to top for consistent alignment */
    }

/* Ensure comment message doesn't overflow (Same as All Tab) */
#historyList .timeline-body .badge.bg-primary-transparent,
#historyList .timeline-body span.badge {
    word-break: break-word;
    white-space: normal;
    overflow: visible;
    max-width: 100%;
}

/* Timeline Item - Prevent horizontal overflow (Same as All Tab) */
#historyList > li {
    overflow: visible;
    word-wrap: break-word;
    margin-bottom: 1rem;
}

/* Avatar - Round, 2.5rem (Same as All Tab) */
#historyList .timeline-body .avatar,
#historyList .timeline-body .avatar.avatar-md,
#historyList .timeline-body .avatar.avatar-rounded {
    width: 2.5rem !important;
    height: 2.5rem !important;
    min-width: 2.5rem !important;
    min-height: 2.5rem !important;
    max-width: 2.5rem !important;
    max-height: 2.5rem !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: rgb(var(--primary-rgb)) !important;
    color: var(--custom-white) !important;
    font-weight: 600 !important;
    font-size: 1.15rem !important;
    line-height: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

    /* Avatar initials */
    #historyList .timeline-body .avatar span {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        line-height: 1 !important;
        text-align: center !important;
        text-transform: uppercase;
    }

/* Responsive Design for History Timeline - Match All Tab */
@media (max-width: 768px) {
    #historyList .timeline-body .d-flex.align-items-center {
        flex-direction: column;
        align-items: flex-start !important;
    }

        #historyList .timeline-body .d-flex.align-items-center .ms-auto {
            margin-left: 0;
            margin-top: 0.5rem;
            width: 100%;
        }

    #historyList .timeline-badge {
        width: 100%;
        text-align: left;
    }

    #historyList .timeline-body .badge.bg-primary-transparent {
        display: block;
        width: 100%;
        margin: 0.25rem 0;
    }

    #historyList .timeline-body {
        margin-inline-start: 0;
        margin-inline-end: 0;
        width: 100%;
    }

    #historyList .timeline-main-content {
        flex-direction: column;
    }

    #historyList > li:before {
        display: none;
    }
}

/* Fix for long comment text in timeline (Same as All Tab) */
#historyList .timeline-body p {
    max-width: 100%;
    overflow-wrap: break-word;
    word-wrap: break-word;
    white-space: normal;
}

/* Ensure timeline content doesn't overflow container (Same as All Tab) */
#dash-History-tab {
    overflow-x: hidden;
    word-wrap: break-word;
}

    #dash-History-tab .row {
        margin: 0;
        overflow-x: hidden;
    }

    #dash-History-tab .col-12 {
        padding: 0;
        overflow-x: hidden;
        max-width: 100%;
    }

/* ============================================
   ✅ Work Log Tab - Exact Timeline Format (Same as All Tab and History Tab)
   ============================================ */

/* Apply timeline styles to Work Log list (same as .timeline class) */
#workLogList {
    position: relative;
    list-style: none;
    padding: 0;
    margin: 0;
    margin-bottom: 20px;
}

    /* Work Log List Items - Same as .timeline > li */
    #workLogList > li {
        position: relative;
        min-height: 3.125rem;
        padding: 0.938rem 0;
    }

        /* Timeline line - Same as .timeline li:before */
        #workLogList > li:before {
            content: "";
            position: absolute;
            inset-block-start: 4.625rem;
            inset-block-end: -3rem;
            width: 1px;
            border: 1px dashed var(--primary02);
            inset-inline-start: 20%;
            margin-inline-start: -1.5px;
            z-index: 0;
        }

        /* Remove line from last item */
        #workLogList > li:last-child:before {
            display: none;
        }

    /* Timeline Time - Same as .timeline .timeline-time */
    #workLogList .timeline-time {
        position: absolute;
        inset-inline-start: 0;
        width: 18%;
        inset-block-start: 3.35rem;
    }

        #workLogList .timeline-time .date {
            line-height: 1rem;
            font-size: 0.6rem;
            margin-bottom: 0;
            color: var(--text-muted);
        }

        #workLogList .timeline-time .date,
        #workLogList .timeline-time .time {
            display: block;
            font-weight: 500;
        }

        #workLogList .timeline-time .time {
            line-height: 1.5rem;
            font-size: 1.125rem;
            color: var(--text-muted);
        }

    /* Timeline Icon - Same as .timeline .timeline-icon */
    #workLogList .timeline-icon {
        inset-inline-start: 15%;
        position: absolute;
        width: 10%;
        text-align: center;
        inset-block-start: 3.188rem;
    }

        #workLogList .timeline-icon a {
            width: 0.625rem;
            height: 0.625rem;
            display: inline-block;
            border-radius: 50%;
            background: rgb(var(--light-rgb));
            color: var(--primary-color);
            line-height: 0.625rem;
            font-size: 0.875rem;
            border: 0.188rem solid var(--primary05);
        }

/* Timeline Body - Same as .timeline .timeline-body */
@media screen and (min-width: 576px) {
    #workLogList .timeline-body {
        inset-block-start: 2.5rem;
    }
}

/* Timeline Body Box - Match All Tab exactly */
#workLogList .timeline-body {
    box-shadow: 0 1px 1rem rgba(0, 0, 0, 0.05) !important;
    margin-inline-start: 22% !important;
    margin-inline-end: 18% !important;
    background: var(--custom-white) !important;
    position: relative !important;
    padding: 0.875rem 1.25rem 0.875rem 1.25rem !important;
    border-radius: 0.5rem !important;
    overflow: visible !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 4.5rem !important; /* ✅ FIX: Ensure all boxes have same minimum height for consistent alignment (matching History tab) */
    border: 1px solid var(--default-border) !important;
}

/* Timeline Main Content - Match All Tab (Same as #allActivityList) */
#workLogList .timeline-main-content {
    width: 100%;
    min-width: 0;
    overflow: hidden;
    display: flex;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 0.75rem !important;
    min-height: 2.75rem !important; /* ✅ FIX: Ensure consistent minimum height for all content (matching History tab and All tab) */
}

    /* Avatar in timeline-main-content - Match All Tab */
    #workLogList .timeline-main-content .avatar {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        flex-shrink: 0 !important;
    }

    /* Ensure flex-fill container doesn't wrap - Match All Tab */
    #workLogList .timeline-main-content .flex-fill {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        flex-shrink: 1 !important;
    }

        /* Ensure name and avatar are on same line - Match All Tab */
        #workLogList .timeline-main-content .flex-fill .d-flex.align-items-center {
            flex-wrap: nowrap !important;
            align-items: center !important;
            width: 100%;
            min-width: 0;
        }

        /* Name container - ensure it stays inline with avatar - Match All Tab */
        #workLogList .timeline-main-content .flex-fill .mt-sm-0.mt-2 {
            margin-top: 0 !important;
            flex: 1 1 auto !important;
            min-width: 0 !important;
        }

/* Ensure titleLine (name) stays on same line as avatar - Match All Tab */
#workLogList .timeline-body .fs-14.fw-semibold,
#workLogList .timeline-body p.fs-14.fw-semibold,
#workLogList .timeline-body p.mb-0.fs-14.fw-semibold {
    display: inline-block !important;
    white-space: nowrap !important;
    margin-bottom: 0 !important;
}

/* Prevent timeline item from wrapping avatar and name - Match All Tab */
#workLogList .timeline-body .timeline-main-content {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
}

/* Avatar - Round, 2.5rem (Same as All Tab) */
#workLogList .timeline-body .avatar,
#workLogList .timeline-body .avatar.avatar-md,
#workLogList .timeline-body .avatar.avatar-rounded {
    width: 2.5rem !important;
    height: 2.5rem !important;
    min-width: 2.5rem !important;
    min-height: 2.5rem !important;
    max-width: 2.5rem !important;
    max-height: 2.5rem !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: rgb(var(--primary-rgb)) !important;
    color: var(--custom-white) !important;
    font-weight: 600 !important;
    font-size: 1.15rem !important;
    line-height: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

    /* Avatar initials */
    #workLogList .timeline-body .avatar span {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        line-height: 1 !important;
        text-align: center !important;
        text-transform: uppercase;
    }

/* Flex Fill Container - Prevent overflow (Same as All Tab) */
#workLogList .timeline-main-content .flex-fill {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Comment Badge - Allow text wrapping (Same as All Tab) */
#workLogList .timeline-body .badge.bg-primary-transparent,
#workLogList .timeline-body .badge.bg-success-transparent,
#workLogList .timeline-body .badge.bg-danger-transparent {
    display: inline-block;
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    text-align: left;
    padding: 0.375rem 0.75rem;
    line-height: 1.5;
    vertical-align: baseline;
}

/* Comment Text Container - Fix overflow (Same as All Tab) */
#workLogList .timeline-body p.text-muted {
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    max-width: 100%;
    margin-bottom: 0.5rem;
}

/* Timeline Badge (Date) - Prevent wrapping issues (Same as All Tab) */
#workLogList .timeline-badge {
    white-space: nowrap;
    flex-shrink: 0;
    margin-left: 0.5rem;
}

/* Timeline Item Layout - Fix alignment (Same as All Tab) */
#workLogList .timeline-body .d-flex.align-items-center {
    flex-wrap: wrap;
    gap: 0.5rem;
    width: 100%;
    min-width: 0;
}

    #workLogList .timeline-body .d-flex.align-items-center > div {
        min-width: 0;
        flex: 1 1 auto;
    }

    #workLogList .timeline-body .d-flex.align-items-center .ms-auto {
        flex-shrink: 0;
        margin-left: auto;
    }

/* Ensure comment message doesn't overflow (Same as All Tab) */
#workLogList .timeline-body .badge.bg-primary-transparent,
#workLogList .timeline-body .badge.bg-success-transparent,
#workLogList .timeline-body .badge.bg-danger-transparent,
#workLogList .timeline-body span.badge {
    word-break: break-word;
    white-space: normal;
    overflow: visible;
    max-width: 100%;
}

/* Timeline Item - Prevent horizontal overflow (Same as All Tab) */
#workLogList > li {
    overflow: visible;
    word-wrap: break-word;
    margin-bottom: 1rem;
}

/* Responsive Design for Work Log Timeline - Match All Tab */
@media (max-width: 768px) {
    #workLogList .timeline-body .d-flex.align-items-center {
        flex-direction: column;
        align-items: flex-start !important;
    }

        #workLogList .timeline-body .d-flex.align-items-center .ms-auto {
            margin-left: 0;
            margin-top: 0.5rem;
            width: 100%;
        }

    #workLogList .timeline-badge {
        width: 100%;
        text-align: left;
    }

    #workLogList .timeline-body .badge.bg-primary-transparent,
    #workLogList .timeline-body .badge.bg-success-transparent,
    #workLogList .timeline-body .badge.bg-danger-transparent {
        display: block;
        width: 100%;
        margin: 0.25rem 0;
    }

    #workLogList .timeline-body {
        margin-inline-start: 0;
        margin-inline-end: 0;
        width: 100%;
    }

    #workLogList .timeline-main-content {
        flex-direction: column;
    }

    #workLogList > li:before {
        display: none;
    }
}

/* Fix for long comment text in timeline (Same as All Tab) */
#workLogList .timeline-body p {
    max-width: 100%;
    overflow-wrap: break-word;
    word-wrap: break-word;
    white-space: normal;
}

/* Ensure timeline content doesn't overflow container (Same as All Tab) */
#dash-Work-log-tab {
    overflow-x: hidden;
    word-wrap: break-word;
}

    #dash-Work-log-tab .row {
        margin: 0;
        overflow-x: hidden;
    }

    #dash-Work-log-tab .col-12 {
        padding: 0;
        overflow-x: hidden;
        max-width: 100%;
    }

/* ✅ FIX: Assign To and Created By column roundcap background color - Set to primary color */
/* Assign To column - Button display */
#datatableTask .nAssignToDrop .nPerson .nCap,
#datatableTask .nAssignToDrop .nPerson .nCap.initials-circle {
    background-color: rgb(var(--primary-rgb)) !important;
}

/* Assign To column - Dropdown items */
#datatableTask .nAssignToDrop .nAssignToList .nPerson .nCap,
#datatableTask .nAssignToDrop .nAssignToList .nPerson .nCap.initials-circle {
    background-color: rgb(var(--primary-rgb)) !important;
}

/* Created By column - Direct display */
#datatableTask td .nPerson .nCap,
#datatableTask td .nPerson .nCap.initials-circle {
    background-color: rgb(var(--primary-rgb)) !important;
}

/* General fallback for any nPerson .nCap in the grid */
#datatableTask .nPerson .nCap,
#datatableTask .nPerson .nCap.initials-circle {
    background-color: rgb(var(--primary-rgb)) !important;
}

.form-control {
    border-color: var(--input-border);
    color: var(--default-text-color);
    background-color: var(--form-control-bg);
    font-size: inherit;
    font-weight: var(--default-font-weight);
    line-height: 1.6;
    border-radius: .35rem;
}

/* ✅ FIX: Ensure HTML comments render properly with formatting */
.comment-message-html {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

    .comment-message-html p,
    .comment-message-html ul,
    .comment-message-html ol,
    .comment-message-html li {
        margin-bottom: 0.5rem;
    }

    .comment-message-html ul,
    .comment-message-html ol {
        padding-left: 1.5rem;
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
    }

        .comment-message-html p:last-child,
        .comment-message-html ul:last-child,
        .comment-message-html ol:last-child {
            margin-bottom: 0;
        }

/* ✅ FIX: Ensure HTML description updates render properly in All tab - Match Quill Editor Formatting */
.description-update-content {
    word-wrap: break-word;
    overflow-wrap: break-word;
    margin-top: 0.5rem;
    font-family: inherit;
    font-size: 0.875rem;
    line-height: 1.6;
    color: var(--default-text-color);
}

    /* ✅ FIX: Ensure HTML content inside description containers renders properly */
    .description-update-content .bg-light,
    .description-update-content .old-description .bg-light,
    .description-update-content .new-description .bg-light {
        font-family: inherit !important;
        font-size: 0.875rem !important;
        line-height: 1.6 !important;
        color: var(--default-text-color) !important;
    }

        /* Headings - Match Quill Editor */
        .description-update-content h1,
        .description-update-content h2,
        .description-update-content h3,
        .description-update-content h4,
        .description-update-content h5,
        .description-update-content h6,
        .description-update-content .bg-light h1,
        .description-update-content .bg-light h2,
        .description-update-content .bg-light h3,
        .description-update-content .bg-light h4,
        .description-update-content .bg-light h5,
        .description-update-content .bg-light h6 {
            margin-top: 0.75rem;
            margin-bottom: 0.5rem;
            font-weight: 600;
            line-height: 1.4;
            color: var(--default-text-color) !important;
        }

    .description-update-content h1 {
        font-size: 2rem;
    }

    .description-update-content h2 {
        font-size: 1.5rem;
    }

    .description-update-content h3 {
        font-size: 1.25rem;
    }

    .description-update-content h4 {
        font-size: 1.1rem;
    }

    .description-update-content h5 {
        font-size: 1rem;
    }

    .description-update-content h6 {
        font-size: 0.875rem;
    }

        .description-update-content h1:first-child,
        .description-update-content h2:first-child,
        .description-update-content h3:first-child,
        .description-update-content h4:first-child,
        .description-update-content h5:first-child,
        .description-update-content h6:first-child {
            margin-top: 0;
        }

    /* Paragraphs - Match Quill Editor */
    .description-update-content p,
    .description-update-content .bg-light p {
        margin-bottom: 0.75rem;
        line-height: 1.6;
        font-size: 0.875rem;
        color: var(--default-text-color) !important;
    }

        .description-update-content p:last-child {
            margin-bottom: 0;
        }

        .description-update-content p:empty {
            margin-bottom: 0.5rem;
        }

    /* Lists - Match Quill Editor */
    .description-update-content ul,
    .description-update-content ol,
    .description-update-content .bg-light ul,
    .description-update-content .bg-light ol {
        padding-left: 1.5rem;
        margin-top: 0.5rem;
        margin-bottom: 0.75rem;
    }

    .description-update-content li,
    .description-update-content .bg-light li {
        margin-bottom: 0.25rem;
        line-height: 1.6;
        color: var(--default-text-color) !important;
    }

    .description-update-content ul,
    .description-update-content .bg-light ul {
        list-style-type: disc;
    }

    .description-update-content ol,
    .description-update-content .bg-light ol {
        list-style-type: decimal;
    }

    /* Text Formatting - Match Quill Editor */
    .description-update-content strong,
    .description-update-content b,
    .description-update-content .bg-light strong,
    .description-update-content .bg-light b {
        font-weight: 600 !important;
        color: var(--default-text-color) !important;
    }

    .description-update-content em,
    .description-update-content i,
    .description-update-content .bg-light em,
    .description-update-content .bg-light i {
        font-style: italic !important;
    }

    .description-update-content u,
    .description-update-content .bg-light u {
        text-decoration: underline !important;
    }

    .description-update-content s,
    .description-update-content strike,
    .description-update-content .bg-light s,
    .description-update-content .bg-light strike {
        text-decoration: line-through !important;
    }

    /* Quill Alignment Classes - Match Quill Editor */
    .description-update-content .ql-align-justify,
    .description-update-content .bg-light .ql-align-justify {
        text-align: justify !important;
    }

    .description-update-content .ql-align-center,
    .description-update-content .bg-light .ql-align-center {
        text-align: center !important;
    }

    .description-update-content .ql-align-right,
    .description-update-content .bg-light .ql-align-right {
        text-align: right !important;
    }

    .description-update-content .ql-align-left,
    .description-update-content .bg-light .ql-align-left {
        text-align: left !important;
    }

    /* Quill Indent Classes */
    .description-update-content .ql-indent-1 {
        padding-left: 3em;
    }

    .description-update-content .ql-indent-2 {
        padding-left: 6em;
    }

    .description-update-content .ql-indent-3 {
        padding-left: 9em;
    }

    .description-update-content .ql-indent-4 {
        padding-left: 12em;
    }

    .description-update-content .ql-indent-5 {
        padding-left: 15em;
    }

    .description-update-content .ql-indent-6 {
        padding-left: 18em;
    }

    .description-update-content .ql-indent-7 {
        padding-left: 21em;
    }

    .description-update-content .ql-indent-8 {
        padding-left: 24em;
    }

    /* Links - Match Quill Editor */
    .description-update-content a {
        color: rgb(var(--primary-rgb));
        text-decoration: underline;
    }

        .description-update-content a:hover {
            text-decoration: none;
        }

    /* Blockquotes - Match Quill Editor */
    .description-update-content blockquote {
        border-left: 4px solid #ccc;
        margin: 0.5rem 0;
        padding-left: 1rem;
        color: var(--default-text-color);
        font-style: italic;
    }

    /* Code - Match Quill Editor */
    .description-update-content code {
        background-color: var(--list-hover-focus-bg);
        padding: 2px 4px;
        border-radius: 3px;
        font-family: monospace;
        font-size: 0.9em;
    }

    .description-update-content pre {
        background-color: var(--list-hover-focus-bg);
        padding: 1rem;
        border-radius: 4px;
        overflow-x: auto;
        margin: 0.5rem 0;
    }

        .description-update-content pre code {
            background-color: transparent;
            padding: 0;
        }

    /* Inline Styles Support - Match Quill Editor */
    /* Inline styles from Quill editor (font-weight, color, background-color, text-align, etc.) 
   are automatically respected by the browser and will display correctly in the All tab */

    /* Ensure proper spacing for nested elements */
    .description-update-content > *:first-child {
        margin-top: 0;
    }

    .description-update-content > *:last-child {
        margin-bottom: 0;
    }

.description-update-wrapper {
    width: 100%;
    min-width: 0;
}

/* ✅ DateRangePicker Styling for SummaryReport */
.daterangepicker {
    font-family: inherit !important;
    border: 1px solid var(--default-border) !important;
    border-radius: 0.375rem !important;
    box-shadow: 0 0.5rem 1rem var(--default-border) !important;
    background-color: var(--custom-white) !important;
    z-index: 9999 !important;
}

    /* Override any inline styles from daterangepicker library */
    .daterangepicker .calendar-table[style],
    .daterangepicker .calendar-table th[style],
    .daterangepicker .calendar-table td[style] {
        border: none !important;
        border-top: none !important;
        border-right: none !important;
        border-bottom: none !important;
        border-left: none !important;
    }

    .daterangepicker .calendar-table {
        background-color: var(--custom-white) !important;
        border-collapse: separate !important;
        border-spacing: 4px !important;
        border: none !important;
    }

    /* Remove any table borders */
    .daterangepicker table,
    .daterangepicker table.calendar-table {
        border: none !important;
        border-collapse: separate !important;
        border-spacing: 4px !important;
    }

    .daterangepicker .calendar-table th {
        color: var(--default-text-color) !important;
        font-weight: 600 !important;
        padding: 0.5rem !important;
        border: none !important;
    }

    .daterangepicker .calendar-table td {
        color: var(--default-text-color) !important;
        padding: 0.5rem !important;
        border: none !important;
    }

    /* Remove all borders from calendar table */
    .daterangepicker .calendar-table,
    .daterangepicker .calendar-table th,
    .daterangepicker .calendar-table td,
    .daterangepicker .calendar-table thead th,
    .daterangepicker .calendar-table tbody td,
    .daterangepicker .calendar-table tbody th {
        border: none !important;
        border-top: none !important;
        border-right: none !important;
        border-bottom: none !important;
        border-left: none !important;
        outline: none !important;
        box-shadow: none !important;
    }

        /* Remove borders from all date cell states */
        .daterangepicker .calendar-table td.available,
        .daterangepicker .calendar-table td.off,
        .daterangepicker .calendar-table td.in-range,
        .daterangepicker .calendar-table td.start-date,
        .daterangepicker .calendar-table td.end-date,
        .daterangepicker .calendar-table td.active,
        .daterangepicker .calendar-table td.available:hover,
        .daterangepicker .calendar-table td.active:hover {
            border: none !important;
            border-top: none !important;
            border-right: none !important;
            border-bottom: none !important;
            border-left: none !important;
            outline: none !important;
            box-shadow: none !important;
        }

            .daterangepicker .calendar-table td.available:hover {
                background-color: var(--list-hover-focus-bg) !important;
                color: var(--default-text-color) !important;
            }

            .daterangepicker .calendar-table td.active,
            .daterangepicker .calendar-table td.active:hover {
                background-color: var(--primary-color) !important;
                color: var(--custom-white) !important;
                border: none !important;
            }

        .daterangepicker .calendar-table td.in-range {
            background-color: var(--primary01) !important;
            color: var(--default-text-color) !important;
        }

    .daterangepicker .ranges {
        background-color: var(--list-hover-focus-bg) !important;
        border-right: 1px solid var(--default-border) !important;
    }

        .daterangepicker .ranges li {
            color: var(--default-text-color) !important;
            padding: 0.5rem 1rem !important;
            border-radius: 0.25rem !important;
            margin: 0.25rem !important;
        }

            .daterangepicker .ranges li:hover {
                background-color: var(--list-hover-focus-bg) !important;
            }

            .daterangepicker .ranges li.active {
                background-color: var(--primary-color) !important;
                color: var(--custom-white) !important;
            }

    .daterangepicker .drp-buttons {
        border-top: 1px solid var(--default-border) !important;
        padding: 0.75rem !important;
        background-color: var(--list-hover-focus-bg) !important;
    }

        .daterangepicker .drp-buttons .btn {
            padding: 0.375rem 0.75rem !important;
            font-size: 0.875rem !important;
            border-radius: 0.25rem !important;
            font-weight: 500 !important;
        }

        .daterangepicker .drp-buttons .cancelBtn {
            background-color: rgb(var(--danger-rgb)) !important;
            color: var(--custom-white) !important;
            border-color: rgb(var(--danger-rgb)) !important;
        }

            .daterangepicker .drp-buttons .cancelBtn:hover {
                background-color: var(--default-text-color) !important;
                border-color: var(--default-text-color) !important;
            }

        .daterangepicker .drp-buttons .applyBtn {
            background-color: var(--primary-color) !important;
            border-color: var(--primary-color) !important;
            color: var(--custom-white) !important;
        }

            .daterangepicker .drp-buttons .applyBtn:hover {
                background-color: var(--primary-color) !important;
                border-color: var(--primary-color) !important;
            }

    .daterangepicker .calendar-table .prev,
    .daterangepicker .calendar-table .next {
        color: var(--default-text-color) !important;
    }

        .daterangepicker .calendar-table .prev:hover,
        .daterangepicker .calendar-table .next:hover {
            background-color: var(--list-hover-focus-bg) !important;
        }

    .daterangepicker .calendar-table .month {
        color: var(--default-text-color) !important;
        font-weight: 600 !important;
    }

    /* Calendar table cells - ensure proper background */
    .daterangepicker .calendar-table td.available {
        background-color: transparent !important;
    }

    .daterangepicker .calendar-table td.off {
        color: var(--text-muted) !important;
        opacity: 0.5 !important;
    }

    .daterangepicker .calendar-table td.start-date,
    .daterangepicker .calendar-table td.end-date {
        background-color: var(--primary-color) !important;
        color: var(--custom-white) !important;
    }

/* Dark Mode Support for DateRangePicker */
[data-theme-mode=dark] .daterangepicker {
    background-color: var(--custom-white) !important;
    border-color: var(--default-border) !important;
    color: var(--default-text-color) !important;
}

    [data-theme-mode=dark] .daterangepicker .calendar-table {
        background-color: var(--custom-white) !important;
        border-collapse: separate !important;
        border-spacing: 4px !important;
        border: none !important;
    }

    /* Remove any table borders in dark mode */
    [data-theme-mode=dark] .daterangepicker table,
    [data-theme-mode=dark] .daterangepicker table.calendar-table {
        border: none !important;
        border-collapse: separate !important;
        border-spacing: 4px !important;
    }

    [data-theme-mode=dark] .daterangepicker .calendar-table th {
        background-color: var(--default-background) !important;
        color: var(--default-text-color) !important;
        border: none !important;
    }

    [data-theme-mode=dark] .daterangepicker .calendar-table td {
        background-color: transparent !important;
        color: var(--default-text-color) !important;
        border: none !important;
    }

    /* Remove all borders from calendar table in dark mode */
    [data-theme-mode=dark] .daterangepicker .calendar-table,
    [data-theme-mode=dark] .daterangepicker .calendar-table th,
    [data-theme-mode=dark] .daterangepicker .calendar-table td,
    [data-theme-mode=dark] .daterangepicker .calendar-table thead th,
    [data-theme-mode=dark] .daterangepicker .calendar-table tbody td,
    [data-theme-mode=dark] .daterangepicker .calendar-table tbody th {
        border: none !important;
        border-top: none !important;
        border-right: none !important;
        border-bottom: none !important;
        border-left: none !important;
        outline: none !important;
        box-shadow: none !important;
    }

        /* Remove borders from all date cell states in dark mode */
        [data-theme-mode=dark] .daterangepicker .calendar-table td.available,
        [data-theme-mode=dark] .daterangepicker .calendar-table td.off,
        [data-theme-mode=dark] .daterangepicker .calendar-table td.in-range,
        [data-theme-mode=dark] .daterangepicker .calendar-table td.start-date,
        [data-theme-mode=dark] .daterangepicker .calendar-table td.end-date,
        [data-theme-mode=dark] .daterangepicker .calendar-table td.active,
        [data-theme-mode=dark] .daterangepicker .calendar-table td.available:hover,
        [data-theme-mode=dark] .daterangepicker .calendar-table td.active:hover {
            border: none !important;
            border-top: none !important;
            border-right: none !important;
            border-bottom: none !important;
            border-left: none !important;
            outline: none !important;
            box-shadow: none !important;
        }

            [data-theme-mode=dark] .daterangepicker .calendar-table td.available:hover {
                background-color: var(--list-hover-focus-bg) !important;
                color: var(--default-text-color) !important;
            }

            [data-theme-mode=dark] .daterangepicker .calendar-table td.active,
            [data-theme-mode=dark] .daterangepicker .calendar-table td.active:hover {
                background-color: var(--primary-color) !important;
                color: var(--custom-white) !important;
                border: none !important;
            }

        [data-theme-mode=dark] .daterangepicker .calendar-table td.in-range {
            background-color: var(--primary01) !important;
            color: var(--default-text-color) !important;
        }

        [data-theme-mode=dark] .daterangepicker .calendar-table td.start-date,
        [data-theme-mode=dark] .daterangepicker .calendar-table td.end-date {
            background-color: var(--primary-color) !important;
            color: var(--custom-white) !important;
        }

        [data-theme-mode=dark] .daterangepicker .calendar-table td.off {
            color: var(--text-muted) !important;
            opacity: 0.5 !important;
        }

    [data-theme-mode=dark] .daterangepicker .ranges {
        background-color: var(--default-background) !important;
        border-right-color: var(--default-border) !important;
    }

        [data-theme-mode=dark] .daterangepicker .ranges li {
            color: var(--default-text-color) !important;
        }

            [data-theme-mode=dark] .daterangepicker .ranges li:hover {
                background-color: var(--list-hover-focus-bg) !important;
            }

            [data-theme-mode=dark] .daterangepicker .ranges li.active {
                background-color: var(--primary-color) !important;
                color: var(--custom-white) !important;
            }

    [data-theme-mode=dark] .daterangepicker .drp-buttons {
        background-color: var(--default-background) !important;
        border-top-color: var(--default-border) !important;
    }

        [data-theme-mode=dark] .daterangepicker .drp-buttons .btn {
            color: var(--default-text-color) !important;
        }

        [data-theme-mode=dark] .daterangepicker .drp-buttons .cancelBtn {
            background-color: rgb(var(--danger-rgb)) !important;
            color: var(--custom-white) !important;
            border-color: rgb(var(--danger-rgb)) !important;
        }

            [data-theme-mode=dark] .daterangepicker .drp-buttons .cancelBtn:hover {
                background-color: var(--secondary-color) !important;
                opacity: 0.9 !important;
            }

        [data-theme-mode=dark] .daterangepicker .drp-buttons .applyBtn {
            background-color: var(--primary-color) !important;
            border-color: var(--primary-color) !important;
            color: var(--custom-white) !important;
        }

            [data-theme-mode=dark] .daterangepicker .drp-buttons .applyBtn:hover {
                background-color: var(--primary-color) !important;
                opacity: 0.9 !important;
            }

    [data-theme-mode=dark] .daterangepicker .calendar-table .prev,
    [data-theme-mode=dark] .daterangepicker .calendar-table .next {
        color: var(--default-text-color) !important;
    }

        [data-theme-mode=dark] .daterangepicker .calendar-table .prev:hover,
        [data-theme-mode=dark] .daterangepicker .calendar-table .next:hover {
            background-color: var(--list-hover-focus-bg) !important;
            color: var(--primary-color) !important;
        }

    [data-theme-mode=dark] .daterangepicker .calendar-table .month {
        color: var(--default-text-color) !important;
    }

    [data-theme-mode=dark] .daterangepicker .drp-selected {
        color: var(--default-text-color) !important;
    }

/* ✅ DateRangeFilter Input Styling */
#dateRangeFilter {
    border: 1px solid var(--default-border) !important;
    border-radius: 0.375rem !important;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out !important;
    background-color: var(--custom-white) !important;
    color: var(--default-text-color) !important;
}

    #dateRangeFilter:hover {
        border-color: var(--default-border) !important;
    }

    #dateRangeFilter:focus,
    #dateRangeFilter:focus-within {
        border-color: var(--default-border) !important;
        outline: 0 !important;
        box-shadow: 0 0 0 0.25rem rgba(37, 99, 235, 0.25) !important;
    }

[data-theme-mode=dark] #dateRangeFilter {
    background-color: var(--custom-white) !important;
    border-color: var(--default-border) !important;
    color: var(--default-text-color) !important;
}

    [data-theme-mode=dark] #dateRangeFilter:hover {
        border-color: var(--default-border) !important;
    }

    [data-theme-mode=dark] #dateRangeFilter:focus,
    [data-theme-mode=dark] #dateRangeFilter:focus-within {
        border-color: var(--default-border) !important;
        box-shadow: 0 0 0 0.25rem rgba(37, 99, 235, 0.25) !important;
    }

.btn.btn-outline-primary .badge {
    background-color: var(--default-border);
    color: var(--default-text-color);
}

.btn.btn-outline-primary:active .badge, .btn.btn-outline-primary:focus .badge, .btn.btn-outline-primary:hover .badge {
    background-color: var(--custom-white);
    color: var(--default-text-color);
}

.btn.btn-outline-secondary:active .badge, .btn.btn-outline-secondary:focus .badge, .btn.btn-outline-secondary:hover .badge {
    background-color: var(--custom-white);
    color: var(--default-text-color);
}

.btn.btn-outline-danger:active .badge, .btn.btn-outline-danger:focus .badge, .btn.btn-outline-danger:hover .badge {
    background-color: var(--custom-white);
    color: var(--default-text-color);
}

.btn-outline-secondary {
    background-color: var(--custom-white);
    border: 1px solid rgb(var(--secondary-rgb));
    color: rgb(var(--secondary-rgb));
}

.btn-outline-secondary {
    --bs-btn-hover-color: rgb(var(--secondary-rgb));
    --bs-btn-hover-bg: var(--custom-white);
    --bs-btn-hover-border-color: rgb(var(--secondary-rgb));
    --bs-btn-active-color: rgb(var(--secondary-rgb));
}

    .btn-outline-secondary:active, .btn-outline-secondary:hover {
        color: var(--default-text-color);
        background-color: rgb(var(--secondary-rgb));
        border-color: rgb(var(--secondary-rgb));
    }

.btn.btn-outline-secondary .badge {
    background-color: rgb(var(--secondary-rgb));
    color: var(--default-text-color);
}

bg-outline-primary {
    background-color: var(--custom-white);
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
}

span#differenceTime {
    font-size: 12px;
}

button.btn.dropdown-toggle.nCompanyBtn.p-lr-0 {
    padding: 0px;
    background: none;
    border: none;
    box-shadow: none;
    display: flex;
    align-items: center;
}

.form-control:focus {
    box-shadow: none;
    border-color: var(--input-border);
    background-color: var(--custom-white);
    box-shadow: 0 .0625rem .125rem 0 rgba(0, 0, 0, .05);
    color: var(--default-text-color);
}

.form-select {
    background-color: var(--form-control-bg);
    border: 1px solid var(--input-border);
    color: var(--default-text-color);
    font-size: .813rem;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
    background-size: 1.25rem;
}

    .form-select option:checked {
        background-color: var(--primary02);
        color: var(--primary-color);
    }

    .form-select option {
        background-color: transparent;
        padding: .35rem .75rem;
        border-radius: .25rem;
    }

    .form-select:focus {
        border-color: var(--primary05);
        outline: 0;
        box-shadow: none;
    }

.page-item.active .page-link {
    color: #fff;
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

.page-link {
    color: var(--default-text-color) !important;
    background-color: var(--custom-white);
    border: 1px solid var(--default-border);
}

.page-item.disabled .page-link {
    color: var(--default-text-color) !important;
    background-color: var(--custom-white);
    border: 1px solid var(--default-border);
}

.form-control:disabled, .form-select:disabled, .form-control[readonly], .form-select[readonly] {
    background-color: rgb(var(--light-rgb));
    color: var(--default-text-color);
}
/* Common Requests Panel */
.common-panel {
    background: var(--custom-white);
    border-radius: 10px;
    border: 1px solid var(--default-border);
    padding: 10px 12px 12px;
    position: sticky;
    top: 20px;
    max-height: calc(100vh - 140px);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    align-self: start;
    margin: 0px 0px 0px 5px;
}

.common-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4px;
}

.common-title {
    font-size: 14px;
    font-weight: 600;
    color: var(--default-text-color);
}

.common-badge {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 2px 8px;
    border-radius: 4px;
    background: var(--custom-white);
    color: var(--primary-color);
    border: 1px solid var(--default-border);
}

.small-helper {
    font-size: 11px;
    color: var(--default-text-color);
    margin-bottom: 6px;
}

.common-search {
    margin-bottom: 8px;
}

    .common-search input {
        width: 100%;
        padding: 6px 8px;
        border-radius: 4px;
        border: 1px solid var(--default-border);
        font-size: 12px;
        outline: none;
    }

        .common-search input:focus {
            border-color: var(--primary-color);
            box-shadow: 0 0 0 2px rgba(22, 163, 74, 0.1);
        }

.common-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 4px;
    flex: 1;
    min-height: 0;
}

    .common-list::-webkit-scrollbar {
        width: 5px;
    }

    .common-list::-webkit-scrollbar-track {
        background: var(--default-border);
        border-radius: 3px;
    }

    .common-list::-webkit-scrollbar-thumb {
        background: var(--default-text-color);
        border-radius: 3px;
    }

        .common-list::-webkit-scrollbar-thumb:hover {
            background: var(--default-text-color);
        }



.global-search-results-container::-webkit-scrollbar {
    width: 5px;
}

.global-search-results-container::-webkit-scrollbar-track {
    background: var(--default-border);
    border-radius: 3px;
}

.global-search-results-container::-webkit-scrollbar-thumb {
    background: var(--default-text-color);
    border-radius: 3px;
}

    .global-search-results-container::-webkit-scrollbar-thumb:hover {
        background: var(--default-text-color);
    }

.ticket-layout-main {
    display: grid;
    grid-template-columns: 0.55fr 1.45fr;
    gap: 18px;
    margin-top: 8px;
    width: 100%;
    box-sizing: border-box;
    align-items: start;
}



.template-card {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border-radius: 8px;
    border: 1px solid var(--default-border);
    background: var(--custom-white);
    cursor: pointer;
    transition: box-shadow 0.18s ease, transform 0.08s ease, border-color 0.15s ease, background 0.15s ease;
}

    .template-card:hover {
        box-shadow: 0 4px 10px rgba(15, 23, 42, 0.10);
        transform: translateY(-1px);
        background: var(--custom-white);
    }

    .template-card.active {
        border-color: var(--primary-color);
        background: var(--custom-white);
        box-shadow: 0 0 0 1px rgba(22,163,74,0.2);
    }

.template-icon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    flex-shrink: 0;
    color: var(--default-text-color);
}

.template-content {
    flex: 1;
    min-width: 0;
}

.template-title-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 6px;
    margin-bottom: 2px;
}

.template-title {
    font-size: 13px;
    font-weight: 600;
    color: var(--default-text-color);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.template-sub {
    font-size: 11px;
    color: var(--default-text-color);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.template-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 10px;
    color: var(--default-text-color);
    margin-top: 1px;
}

.template-tag {
    padding: 1px 5px;
    border-radius: 999px;
    border: 1px solid var(--default-border);
    background: var(--custom-white);
    white-space: nowrap;
}

.template-system {
    font-size: 10px;
}

.common-footer-btn {
    margin-top: 8px;
    width: 100%;
    border-radius: 4px;
    padding: 6px 12px;
    border: 1px dashed var(--default-border);
    background: var(--custom-white);
    font-size: 12px;
    color: var(--default-text-color);
    cursor: pointer;
    flex-shrink: 0;
}

    .common-footer-btn:hover {
        background: var(--custom-white);
        border-color: var(--default-border);
    }

.input-group-text {
    display: flex;
    align-items: center;
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--default-text-color);
    text-align: center;
    white-space: nowrap;
    background-color: var(--custom-white);
    border: 1px solid var(--default-border);
    border-radius: .25rem;
}

.dt-paging {
    float: right;
}

.table-responsive::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 3px;
}

.table-responsive::-webkit-scrollbar-thumb {
    background: var(--input-border);
    border-radius: 3px;
}

.table-responsive::-webkit-scrollbar {
    width: 5px;
    height: 10px;
}
/*Padding*/
.p-0 {
    padding: 0px !important;
}

.p-2_5 {
    padding: 0.3rem 0.5rem !important;
}

.p-5 {
    padding: 5px !important;
}

.p-10 {
    padding: 10px !important;
}

.p-15 {
    padding: 15px !important;
}

.p-20 {
    padding: 20px !important;
}

.p-25 {
    padding: 25px !important;
}
/*padding top*/
.p-t-0 {
    padding-top: 0px !important;
}

.p-t-5 {
    padding-top: 5px !important;
}

.p-t-10 {
    padding-top: 10px !important;
}

.p-t-15 {
    padding-top: 15px !important;
}

.p-t-20 {
    padding-top: 20px !important;
}

.p-t-25 {
    padding-top: 25px !important;
}
/*padding bottom*/
.p-b-0 {
    padding-bottom: 0px !important;
}

.p-b-5 {
    padding-bottom: 5px !important;
}

.p-b-10 {
    padding-bottom: 10px !important;
}

.p-b-15 {
    padding-bottom: 15px !important;
}

.p-b-20 {
    padding-bottom: 20px !important;
}

.p-b-25 {
    padding-bottom: 25px !important;
}
/*padding left */
.p-l-0 {
    padding-left: 0px !important;
}

.p-l-5 {
    padding-left: 5px !important;
}

.p-l-10 {
    padding-left: 10px !important;
}

.p-l-15 {
    padding-left: 15px !important;
}

.p-l-20 {
    padding-left: 20px !important;
}

.p-l-25 {
    padding-left: 25px !important;
}
/*padding right*/
.p-r-0 {
    padding-right: 0px !important;
}

.p-r-5 {
    padding-right: 5px !important;
}

.p-r-10 {
    padding-right: 10px !important;
}

.p-r-15 {
    padding-right: 15px !important;
}

.p-r-20 {
    padding-right: 20px !important;
}

.p-r-25 {
    padding-right: 25px !important;
}
/*padding top bottom*/
.p-tb-0 {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
}

.p-tb-5 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

.p-tb-10 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.p-tb-15 {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

.p-tb-20 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}

.p-tb-25 {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
}
/*padding left right*/
.p-lr-0 {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.p-lr-5 {
    padding-left: 5px !important;
    padding-right: 5px !important;
}

.p-lr-10 {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

.p-lr-15 {
    padding-left: 15px !important;
    padding-right: 15px !important;
}

.p-lr-20 {
    padding-left: 20px !important;
    padding-right: 20px !important;
}

.p-lr-25 {
    padding-left: 25px !important;
    padding-right: 25px !important;
}
/**/

/*margin---------------------------------------*/
.m-0 {
    margin: 0px !important;
}

.m-5 {
    margin: 5px !important;
}

.m-10 {
    margin: 10px !important;
}

.m-15 {
    margin: 15px !important;
}

.m-20 {
    margin: 20px !important;
}
/*margin top*/
.m-t-0 {
    margin-top: 0px !important;
}

.m-t-1 {
    margin-top: 1px !important;
}

.m-t-2 {
    margin-top: 2px !important;
}

.m-t-3 {
    margin-top: 3px !important;
}

.m-t-5 {
    margin-top: 5px !important;
}

.m-t-8 {
    margin-top: 8px !important;
}

.m-t-10 {
    margin-top: 10px !important;
}

.m-t-15 {
    margin-top: 15px !important;
}

.m-t-20 {
    margin-top: 20px !important;
}

.m-t-25 {
    margin-top: 25px !important;
}
/**/

/*margin bottom*/
.m-b-0 {
    margin-bottom: 0px !important;
}


.m-b-5 {
    margin-bottom: 5px !important;
}

.m-b-8 {
    margin-bottom: 8px !important;
}

.m-b-10 {
    margin-bottom: 10px !important;
}

.m-b-15 {
    margin-bottom: 15px !important;
}

.m-b-20 {
    margin-bottom: 20px !important;
}

.m-b-25 {
    margin-bottom: 25px !important;
}
/*margin left*/
.m-l-0 {
    margin-left: 0px !important;
}

.m-l-5 {
    margin-left: 5px !important;
}

.m-l-6 {
    margin-left: 6px !important;
}

.m-l-7 {
    margin-left: 7px !important;
}

.m-l-8 {
    margin-left: 8px !important;
}

.m-l-9 {
    margin-left: 9px !important;
}

.m-l-10 {
    margin-left: 10px !important;
}

.m-l-15 {
    margin-left: 15px !important;
}

.m-l-20 {
    margin-left: 20px !important;
}

.m-l-25 {
    margin-left: 25px !important;
}
/*margin right*/
.m-r-0 {
    margin-right: 0px !important;
}

.m-r-3 {
    margin-right: 3px !important;
}

.m-r-5 {
    margin-right: 5px !important;
}

.m-r-10 {
    margin-right: 10px !important;
}

.m-r-15 {
    margin-right: 15px !important;
}

.m-r-20 {
    margin-right: 20px !important;
}

.m-r-25 {
    margin-right: 25px !important;
}
/*margin top bottom*/

.m-tb-0 {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

.m-tb-2 {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
}

.m-tb-5 {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
}

.m-tb-10 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

.m-tb-15 {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
}

.m-tb-20 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
}

.m-tb-25 {
    margin-top: 25px !important;
    margin-bottom: 25px !important;
}
/*margin left right*/
.m-lr-0 {
    margin-left: 0px !important;
    margin-right: 0px !important;
}

.m-lr-5 {
    margin-left: 5px !important;
    margin-right: 5px !important;
}

.m-lr-10 {
    margin-left: 10px !important;
    margin-right: 10px !important;
}

.m-lr-15 {
    margin-left: 15px !important;
    margin-right: 15px !important;
}

.m-lr-20 {
    margin-left: 20px !important;
    margin-right: 20px !important;
}

.m-lr-25 {
    margin-left: 25px !important;
    margin-right: 25px !important;
}
/*width*/
.width-100-per {
    width: 100% !important;
    flex: 0 0 100% !important;
}

.w-10 {
    width: 10px !important;
    flex: 0 0 10px !important;
}

.w-15 {
    width: 15px !important;
    flex: 0 0 15px !important;
}

.w-20 {
    width: 20px !important;
    flex: 0 0 20px !important;
}

.w-30 {
    width: 30px !important;
    flex: 0 0 30px !important;
}

.w-35 {
    width: 35px !important;
    flex: 0 0 35px !important;
}

.w-40 {
    width: 40px !important;
    flex: 0 0 40px !important;
}

.w-50 {
    width: 50px !important;
    flex: 0 0 50px !important;
}

.w-55 {
    width: 55px !important;
    flex: 0 0 55px !important;
}

.w-60 {
    width: 60px !important;
    flex: 0 0 60px !important;
}

.w-65 {
    width: 65px !important;
    flex: 0 0 65px !important;
}

.w-70 {
    width: 70px !important;
    flex: 0 0 70px !important;
}

.w-80 {
    width: 80px !important;
    flex: 0 0 80px !important;
}

.w-90 {
    width: 90px !important;
    flex: 0 0 90px !important;
}


.w-110 {
    width: 110px !important;
    flex: 0 0 110px !important;
}

.w-120 {
    width: 120px !important;
    flex: 0 0 120px !important;
}

.w-130 {
    width: 130px !important;
    flex: 0 0 130px !important;
}

.w-140 {
    width: 140px !important;
    flex: 0 0 140px !important;
}

.w-150 {
    width: 150px !important;
    flex: 0 0 150px !important;
}

.w-160 {
    width: 160px !important;
    flex: 0 0 160px !important;
}

.w-165 {
    width: 165px !important;
    flex: 0 0 165px !important;
}

.w-170 {
    width: 170px !important;
    flex: 0 0 170px !important;
}

.w-175 {
    width: 175px !important;
    flex: 0 0 175px !important;
}

.w-180 {
    width: 180px !important;
    flex: 0 0 180px !important;
}

.w-190 {
    width: 190px !important;
    flex: 0 0 190px !important;
}

.w-200 {
    width: 200px !important;
    flex: 0 0 200px !important;
}

.w-210 {
    width: 210px !important;
    flex: 0 0 210px !important;
}

.w-220 {
    width: 220px !important;
    flex: 0 0 220px !important;
}

.w-230 {
    width: 230px !important;
    flex: 0 0 230px !important;
}

.w-240 {
    width: 240px !important;
    flex: 0 0 240px !important;
}

.w-250 {
    width: 250px !important;
    flex: 0 0 250px !important;
}

.w-260 {
    width: 260px !important;
    flex: 0 0 260px !important;
}

.w-270 {
    width: 270px !important;
    flex: 0 0 270px !important;
}

.w-280 {
    width: 280px !important;
    flex: 0 0 280px !important;
}

.w-290 {
    width: 290px !important;
    flex: 0 0 290px !important;
}

.w-300 {
    width: 300px !important;
    flex: 0 0 300px !important;
}

.w-310 {
    width: 310px !important;
    flex: 0 0 310px !important;
}

.w-320 {
    width: 320px !important;
    flex: 0 0 320px !important;
}

.w-330 {
    width: 330px !important;
    flex: 0 0 330px !important;
}

.w-340 {
    width: 340px !important;
    flex: 0 0 340px !important;
}

.w-350 {
    width: 350px !important;
    flex: 0 0 350px !important;
}

.w-360 {
    width: 360px !important;
    flex: 0 0 360px !important;
}

.w-370 {
    width: 370px !important;
    flex: 0 0 370px !important;
}

.w-380 {
    width: 380px !important;
    flex: 0 0 380px !important;
}

.w-390 {
    width: 390px !important;
    flex: 0 0 390px !important;
}

.w-400 {
    width: 400px !important;
    flex: 0 0 400px !important;
}

.w-410 {
    width: 410px !important;
    flex: 0 0 410px !important;
}

.w-420 {
    width: 420px !important;
    flex: 0 0 420px !important;
}

.w-430 {
    width: 430px !important;
    flex: 0 0 430px !important;
}

.w-440 {
    width: 440px !important;
    flex: 0 0 440px !important;
}

.w-450 {
    width: 450px !important;
    flex: 0 0 450px !important;
}

.w-460 {
    width: 460px !important;
    flex: 0 0 460px !important;
}

.w-470 {
    width: 470px !important;
    flex: 0 0 470px !important;
}

.w-480 {
    width: 480px !important;
    flex: 0 0 480px !important;
}

.w-490 {
    width: 490px !important;
    flex: 0 0 490px !important;
}

.w-500 {
    width: 500px !important;
    flex: 0 0 500px !important;
}

.w-510 {
    width: 510px !important;
    flex: 0 0 510px !important;
}

.w-520 {
    width: 520px !important;
    flex: 0 0 520px !important;
}

.w-530 {
    width: 530px !important;
    flex: 0 0 530px !important;
}

.w-540 {
    width: 540px !important;
    flex: 0 0 540px !important;
}

.w-550 {
    width: 550px !important;
    flex: 0 0 550px !important;
}

.w-560 {
    width: 560px !important;
    flex: 0 0 560px !important;
}

.w-570 {
    width: 570px !important;
    flex: 0 0 570px !important;
}

.w-580 {
    width: 580px !important;
    flex: 0 0 580px !important;
}

.w-590 {
    width: 590px !important;
    flex: 0 0 590px !important;
}

.w-600 {
    width: 600px !important;
    flex: 0 0 600px !important;
}

.w-610 {
    width: 610px !important;
    flex: 0 0 610px !important;
}

.w-620 {
    width: 620px !important;
    flex: 0 0 620px !important;
}

.w-630 {
    width: 630px !important;
    flex: 0 0 630px !important;
}

.w-640 {
    width: 640px !important;
    flex: 0 0 640px !important;
}

.w-650 {
    width: 650px !important;
    flex: 0 0 650px !important;
}

.w-660 {
    width: 660px !important;
    flex: 0 0 660px !important;
}

.w-670 {
    width: 670px !important;
    flex: 0 0 670px !important;
}

.w-680 {
    width: 680px !important;
    flex: 0 0 680px !important;
}

.w-690 {
    width: 690px !important;
    flex: 0 0 690px !important;
}

.w-700 {
    width: 700px !important;
    flex: 0 0 700px !important;
}

.w-710 {
    width: 710px !important;
    flex: 0 0 710px !important;
}

.w-720 {
    width: 720px !important;
    flex: 0 0 720px !important;
}

.w-730 {
    width: 730px !important;
    flex: 0 0 730px !important;
}

.w-740 {
    width: 740px !important;
    flex: 0 0 740px !important;
}

.w-750 {
    width: 750px !important;
    flex: 0 0 750px !important;
}

.w-760 {
    width: 760px !important;
    flex: 0 0 760px !important;
}

.w-770 {
    width: 770px !important;
    flex: 0 0 770px !important;
}

.w-780 {
    width: 780px !important;
    flex: 0 0 780px !important;
}

.w-790 {
    width: 790px !important;
    flex: 0 0 790px !important;
}

.w-800 {
    width: 800px !important;
    flex: 0 0 800px !important;
}

.w-auto {
    width: auto !important;
    flex: 0 0 auto !important;
}

.btn:hover {
    color: var(--default-text-color);
}

.dropdown-menu {
    position: absolute;
    z-index: 1000;
    display: none;
    width: fit-content;
    padding: .5rem 0;
    margin: 0;
    font-size: 1rem;
    color: var(--default-text-color);
    text-align: left;
    list-style: none;
    background-color: var(--custom-white);
    background-clip: padding-box;
    border: 1px solid var(--default-border);
    border-radius: .25rem;
    /* Dynamic max-height for dropdown according to viewport, scroll if needed */
    max-height: 50vh;
    overflow-y: auto;
}

.modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: var(--custom-white);
    background-clip: padding-box;
    border: 1px solid var(--default-border);
    border-radius: .3rem;
    outline: 0;
}

.modal-header {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1rem;
    border-bottom: 1px solid var(--default-border);
    border-top-left-radius: calc(.3rem - 1px);
    border-top-right-radius: calc(.3rem - 1px);
}

.modal-title {
    margin: 0;
    line-height: 1.5;
    font-size: 1.25rem;
    font-weight: 500;
    color: var(--default-text-color);
}

.modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 1rem;
}

.modal-footer {
    display: flex;
    flex-wrap: wrap;
    flex-shrink: 0;
    align-items: center;
    justify-content: flex-end;
    padding: .75rem;
    border-top: 1px solid var(--default-border);
    border-bottom-right-radius: calc(.3rem - 1px);
    border-bottom-left-radius: calc(.3rem - 1px);
}

/* Role-based Dashboard KPI Cards Styling */
:root {
    --dashboard-border: rgba(16, 24, 40, 0.12);
    --dashboard-shadow: 0 10px 30px rgba(16, 24, 40, 0.08);
    --dashboard-bg: var(--default-background);
}

.role-dashboard-section {
    /*    background: var(--dashboard-bg);*/
    padding: 20px 0;
    margin-bottom: 20px;
    border-radius: 14px;
}

.role-dashboard-header {
    margin-bottom: 20px;
}

    .role-dashboard-header h4 {
        font-weight: 700;
        margin-bottom: 5px;
        color: var(--default-text-color);
    }

    .role-dashboard-header .muted {
        color: var(--default-text-color);
        font-size: 14px;
    }

.kpi-card {
    border: 1px solid var(--dashboard-border);
    box-shadow: var(--dashboard-shadow);
    border-radius: 14px;
    padding: 20px;
    background: var(--custom-white);
    cursor: pointer;
    transition: all 0.3s ease;
    height: 100%;
}

    .kpi-card:hover {
        outline: 2px solid rgba(13, 110, 253, 0.25);
        transform: translateY(-2px);
        box-shadow: 0 12px 35px rgba(16, 24, 40, 0.12);
    }

    .kpi-card .kpi-header {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 10px;
    }

    .kpi-card .kpi-label {
        color: var(--default-text-color);
        font-size: 13px;
        margin-bottom: 8px;
    }

    .kpi-card .kpi-value {
        font-size: 28px;
        font-weight: 800;
        color: var(--default-text-color);
        line-height: 1.2;
    }

    .kpi-card .kpi-icon {
        font-size: 20px;
        opacity: 0.8;
    }

        .kpi-card .kpi-icon.text-primary {
            color: var(--primary-color) !important;
        }

        .kpi-card .kpi-icon.text-danger {
            color: var(--danger-color) !important;
        }

        .kpi-card .kpi-icon.text-secondary {
            color: var(--default-text-color) !important;
        }

        .kpi-card .kpi-icon.text-info {
            color: var(--info-color) !important;
        }

        .kpi-card .kpi-icon.text-success {
            color: var(--success-color) !important;
        }

    .kpi-card .kpi-footer {
        font-size: 12px;
        color: var(--default-text-color);
        margin-top: 12px;
    }

.kpi-loading {
    text-align: center;
    padding: 20px;
    color: var(--default-text-color);
}

.kpi-error {
    text-align: center;
    padding: 20px;
    color: var(--danger-color);
}

.spin {
    animation: spin 1s linear infinite;
    display: inline-block;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.btn-close {
    box-sizing: content-box;
    width: 1em;
    height: 1em;
    padding: .25em .25em;
    color: var(--default-text-color);
    background: var(--background-close);
    border: 0;
    border-radius: .25rem;
    opacity: .5;
}

.form-check-input:checked {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

    .form-check-input:checked[type=checkbox] {
        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='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
    }

.btn-check:focus + .btn, .btn:focus {
    outline: 0;
    box-shadow: none;
}

.more-projects-side-panel {
    position: fixed;
    top: 100vh;
    left: 250px;
    width: 320px;
    max-height: calc(100vh - 70px);
    background-color: var(--custom-white);
    z-index: 1050;
    display: flex;
    flex-direction: column;
    opacity: 0;
    visibility: hidden;
    border-radius: 4px;
    overflow: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease, top 0.3s ease, left 0.3s ease;
}

/* QA Session Styles */

.qa-session-wrapper {
    width: 80%;
    margin-left: 10%;
    padding: 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    overflow-y: visible;
    visibility: visible;
    position: relative;
    z-index: 1;
}
/* For screens with a resolution of 1366px x 607px */
@media screen and (max-width: 1366px) and (max-height: 607px) {
    .qa-session-wrapper {
        width: 100%;
        margin-left: 0;
    }
}

/* For screens smaller than 768px (mobile devices) */
@media screen and (max-width: 768px) {
    .qa-session-wrapper {
        width: 90%;
        margin-left: 5%;
    }
}

/* For screens smaller than 480px (extra small devices) */
@media screen and (max-width: 480px) {
    .qa-session-wrapper {
        width: 100%;
        margin-left: 0;
    }
}

.qa-session-wrapper * {
    position: relative;
}

.qa-session-wrapper .qa-session-info-tooltip {
    position: fixed !important;
    z-index: 2147483647 !important;
}

.qa-session-container {
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: visible;
    box-sizing: border-box;
    position: relative;
    background: var(--custom-white);
}

.qa-left-panel,
.qa-right-panel {
    box-sizing: border-box;
    overflow-x: hidden !important;
    overflow-y: visible;
    padding: 15px;
    position: relative;
}

#dalgQASession .qa-left-panel,
#dalgQASession .qa-right-panel {
    overflow-y: hidden !important;
    height: 100% !important;
    max-height: 100% !important;
}

.qa-session-wrapper table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: auto;
}


.container,
.container-fluid,
.main-content,
#main-content,
.content-wrapper {
    max-width: 100vw !important;
    /*overflow-x: hidden !important;*/
    overflow-y: visible !important;
    max-height: none !important;
    height: auto !important;
}


#dalgQASession {
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    visibility: visible !important;
}

    #dalgQASession .qa-session-wrapper {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
        max-height: 100% !important;
        visibility: visible !important;
        opacity: 1 !important;
        overflow: hidden !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
        contain: layout style paint !important;
    }

    #dalgQASession .qa-session-container {
        flex: 1 !important;
        min-height: 0 !important;
        overflow: hidden !important;
        display: flex !important;
    }

    #dalgQASession .qa-left-panel,
    #dalgQASession .qa-right-panel {
        overflow-y: hidden !important;
        overflow-x: hidden !important;
    }

        #dalgQASession .qa-left-panel .qa-session-details,
        #dalgQASession .qa-right-panel-content {
            overflow-y: auto !important;
            overflow-x: hidden !important;
        }

.qa-session-container {
    visibility: visible !important;
    flex: 1;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: visible;
    width: 100%;
    max-width: 100vw;
    box-sizing: border-box;
}

.qa-left-panel,
.qa-right-panel {
    visibility: visible !important;
    box-sizing: border-box;
    overflow-x: hidden !important;
    overflow-y: visible;
}

#dalgQASession .qa-left-panel,
#dalgQASession .qa-right-panel {
    overflow-y: hidden !important;
    height: 100%;
    max-height: 100%;
}

.qa-session-wrapper * {
    box-sizing: border-box;
}

.qa-session-wrapper .note-popover,
.qa-session-wrapper .note-popover * {
    position: static !important;
}

.qa-session-wrapper table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: auto;
}

.ui-dialog.modal-xl {
    position: fixed !important;
}

    .ui-dialog.modal-xl.dalgQASession {
        left: 50% !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important;
        margin: 0 !important;
    }

        .ui-dialog.modal-xl.dalgQASession .ui-dialog-titlebar {
            display: none !important;
        }

        .ui-dialog.modal-xl.dalgQASession .ui-dialog-content {
            height: 100% !important;
            max-height: 100% !important;
            max-width: 100% !important;
            width: 100% !important;
            overflow: hidden !important;
            overflow-x: hidden !important;
            padding: 0 !important;
            box-sizing: border-box !important;
        }

.qa-brief-note-editor + .note-popover {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -40px !important;
    top: auto !important;
    margin: 0 auto;
    z-index: 9999 !important;
}

    .qa-brief-note-editor + .note-popover .popover {
        width: 100% !important;
        max-width: 100% !important;
    }

#dalgQASession.ui-dialog-content {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    overflow: hidden !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}

.ui-dialog.modal-xl {
    max-width: 100vw !important;
    width: auto !important;
    box-sizing: border-box !important;
}

    .ui-dialog.modal-xl .ui-dialog-content {
        max-width: 100% !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }

#dalgQASession .qa-session-wrapper,
#dalgQASession .qa-session-header,
#dalgQASession .qa-session-container,
#dalgQASession .qa-left-panel,
#dalgQASession .qa-right-panel {
    visibility: visible !important;
    opacity: 1 !important;
}

.qa-session-header {
    background: var(--custom-white);
    padding: 12px 20px;
    border-bottom: 2px solid var(--default-border);
    flex-shrink: 0;
    width: 100%;
    box-sizing: border-box;
    margin-block-end: 0.5rem;
    border-radius: 10px;
}

.qa-session-header-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    width: 100%;
}

.qa-session-header-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    flex: 1;
    min-width: 0;
}

    .qa-session-header-left .btn-back {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        color: var(--default-text-color);
        text-decoration: none;
        font-weight: 500;
        padding: 6px 12px;
        border-radius: 4px;
        transition: all 0.2s ease;
        flex-shrink: 0;
    }

        .qa-session-header-left .btn-back:hover {
            background-color: var(--default-background);
            color: var(--primary-color);
        }

        .qa-session-header-left .btn-back i {
            font-size: 16px;
        }

.qa-session-title-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 0;
    width: 100%;
}

    .qa-session-title-wrapper .hr-session-title-input {
        border: none;
        background: transparent;
        font-size: 18px;
        font-weight: 600;
        color: var(--default-text-color);
        padding: 4px 8px;
        flex: 1;
        min-width: 200px;
        outline: none;
    }

        .qa-session-title-wrapper .hr-session-title-input:focus {
            background: var(--default-background);
            border-radius: 4px;
        }

        .qa-session-title-wrapper .hr-session-title-input::placeholder {
            color: var(--default-text-color);
            opacity: 0.5;
        }

.qa-session-header-right {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-end;
    flex-shrink: 0;
    min-width: 180px;
}

.qa-session-info-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

.qa-session-info-label {
    font-size: 12px;
    color: var(--default-text-color);
    opacity: 0.7;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.qa-session-info-value {
    font-size: 14px;
    color: var(--default-text-color);
    font-weight: 600;
}

@media (max-width: 768px) {
    .qa-session-header-container {
        flex-direction: column;
        gap: 12px;
    }

    .qa-session-header-right {
        width: 100%;
        align-items: flex-start;
    }

    .qa-session-info-item {
        align-items: flex-start;
    }

    .qa-session-header-left {
        width: 100%;
    }
}

/* People Involved Right Tray */
.qa-people-involved-tray {
    position: fixed;
    top: 80px;
    right: 0;
    width: 0;
    height: calc(100vh - 80px);
    z-index: 1050;
    transition: width 0.3s ease;
    overflow: hidden;
}

    .qa-people-involved-tray.open {
        width: 450px;
    }

.qa-tray-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    z-index: 1049;
}

    .qa-tray-overlay.show {
        opacity: 1;
        visibility: visible;
    }

.qa-tray-content {
    position: absolute;
    top: 0;
    right: 0;
    width: 450px;
    height: 100%;
    background: var(--custom-white);
    box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform 0.3s ease;
}

.qa-people-involved-tray.open .qa-tray-content {
    transform: translateX(0);
}

.qa-tray-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    border-bottom: 2px solid var(--default-border);
    background: var(--default-background);
    flex-shrink: 0;
}

.qa-tray-title {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: var(--default-text-color);
    display: flex;
    align-items: center;
    gap: 8px;
}

    .qa-tray-title i {
        color: var(--primary-color);
        font-size: 20px;
    }

.qa-tray-count {
    font-weight: 400;
    color: var(--default-text-color);
    opacity: 0.7;
    font-size: 14px;
}

.qa-tray-close-btn {
    background: none;
    border: none;
    font-size: 20px;
    color: var(--default-text-color);
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .qa-tray-close-btn:hover {
        background-color: var(--default-border);
        color: var(--danger-color);
    }

.qa-tray-body {
    flex: 1;
    overflow-y: auto;
    padding: 5px;
}


.qa-involved-people-table-wrapper {
    width: 100%;
    overflow-x: auto;
}

@media (max-width: 768px) {
    .qa-people-involved-tray.open {
        width: 100%;
    }

    .qa-tray-content {
        width: 100%;
    }
}

.qa-session-header-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 3px;
}

.qa-session-title-section {
    flex: 1;
}

.qa-session-title-with-close {
    display: flex;
    align-items: center;
    gap: 0;
    margin-top: 4px;
    justify-content: flex-start;
    position: relative;
    min-height: 28px;
    padding-right: 40px;
    flex-wrap: wrap;
}

.qa-session-close-btn {
    background: none !important;
    border: none !important;
    font-size: 18px !important;
    color: var(--default-text-color) !important;
    cursor: pointer !important;
    padding: 4px !important;
    width: 28px !important;
    height: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s !important;
    flex-shrink: 0 !important;
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    border-radius: 4px !important;
    z-index: 10 !important;
}

    .qa-session-close-btn:hover {
        color: var(--danger-color) !important;
        background-color: var(--default-background) !important;
    }

    .qa-session-close-btn i {
        font-size: 18px;
        line-height: 1;
    }

.qa-session-meta-with-badges {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
    justify-content: space-between;
}

.qa-session-header-badges {
    display: flex;
    gap: 10px;
    align-items: center;
}

.qa-session-title-label {
    display: inline-flex;
    align-items: left;
    border-radius: 3px;
    transition: all 0.2s ease;
    width: auto;
    max-width: 450px;
    cursor: pointer;
    flex-shrink: 0;
}

    .qa-session-title-label:hover {
        background: var(--default-background);
    }

.qa-session-title-text {
    font-size: 20px;
    font-weight: 600;
    flex: 1;
}

.qa-session-title-info-icon {
    font-size: 14px;
    color: var(--default-text-color);
    opacity: 0.7;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    padding: 2px 4px;
    border-radius: 3px;
    margin-left: 0;
    margin-right: 0;
    cursor: help;
    position: relative;
    vertical-align: top;
    flex-shrink: 0;
}

    .qa-session-title-info-icon i {
        color: var(--default-text-color) !important;
        background-color: var(--default-background) !important;
        border-radius: 50% !important;
        padding: 2px !important;
        font-size: 13px !important;
    }

    .qa-session-title-info-icon:hover {
        opacity: 1;
    }

        .qa-session-title-info-icon:hover i {
            color: var(--primary-color) !important;
            background-color: var(--primary01) !important;
        }

    .qa-session-title-info-icon .qa-session-info-tooltip {
        visibility: hidden;
        opacity: 0;
        position: fixed !important;
        background-color: var(--default-text-color) !important;
        color: var(--custom-white) !important;
        text-align: left;
        padding: 12px 16px;
        border-radius: 6px;
        font-size: 12px;
        line-height: 1.5;
        white-space: normal;
        z-index: 2147483647 !important;
        box-shadow: 0 4px 12px var(--default-border);
        transition: opacity 0.3s ease, visibility 0.3s ease;
        pointer-events: none;
        word-wrap: break-word;
        box-sizing: border-box;
        display: block !important;
        overflow: visible !important;
        clip: auto !important;
        clip-path: none !important;
        text-overflow: clip !important;
        isolation: isolate !important;
        contain: none !important;
        will-change: transform, opacity, visibility !important;
    }

    .qa-session-title-info-icon .qa-session-info-tooltip,
    body .qa-session-title-info-icon .qa-session-info-tooltip,
    html .qa-session-title-info-icon .qa-session-info-tooltip,
    .qa-session-wrapper .qa-session-title-info-icon .qa-session-info-tooltip,
    .qa-right-panel .qa-session-title-info-icon .qa-session-info-tooltip,
    .qa-left-panel .qa-session-title-info-icon .qa-session-info-tooltip,
    .qa-bug-header .qa-session-title-info-icon .qa-session-info-tooltip,
    .qa-bug-form .qa-session-title-info-icon .qa-session-info-tooltip,
    #dalgQASession .qa-session-title-info-icon .qa-session-info-tooltip,
    .ui-dialog .qa-session-title-info-icon .qa-session-info-tooltip {
        position: fixed !important;
        z-index: 2147483647 !important;
        transform: translateZ(0) !important;
        -webkit-transform: translateZ(0) !important;
        backface-visibility: hidden !important;
        -webkit-backface-visibility: hidden !important;
        isolation: isolate !important;
        contain: none !important;
    }

        .qa-session-title-info-icon:hover .qa-session-info-tooltip,
        .qa-session-title-info-icon .qa-session-info-tooltip[style*="visibility: visible"],
        .qa-session-title-info-icon .qa-session-info-tooltip[style*="opacity: 1"] {
            z-index: 2147483647 !important;
            position: fixed !important;
            display: block !important;
            visibility: visible !important;
            opacity: 1 !important;
        }

        .qa-session-title-info-icon .qa-session-info-tooltip::before {
            content: "";
            position: absolute;
            border: var(--default-border);
        }

        .qa-session-title-info-icon .qa-session-info-tooltip.tooltip-right::before {
            top: 50%;
            right: 100%;
            transform: translateY(-50%);
            border-right-color: var(--default-text-color);
        }

        .qa-session-title-info-icon .qa-session-info-tooltip.tooltip-left::before {
            top: 50%;
            left: 100%;
            transform: translateY(-50%);
            border-left-color: var(--default-text-color);
        }

        .qa-session-title-info-icon .qa-session-info-tooltip.tooltip-top::before {
            bottom: -12px;
            left: 50%;
            transform: translateX(-50%);
            border-top-color: var(--default-text-color);
        }

        .qa-session-title-info-icon .qa-session-info-tooltip.tooltip-bottom::before {
            top: -12px;
            left: 50%;
            transform: translateX(-50%);
            border-bottom-color: #333;
        }

    .qa-session-title-info-icon:hover .qa-session-info-tooltip {
        visibility: visible;
        opacity: 1;
    }

@media (max-width: 1200px) {
    .qa-session-title-info-icon .qa-session-info-tooltip {
        width: 280px;
        max-width: calc(100vw - 40px);
    }
}

@media (max-width: 768px) {
    .qa-session-title-info-icon .qa-session-info-tooltip {
        width: 250px;
        max-width: calc(100vw - 20px);
        font-size: 11px;
        padding: 10px 12px;
    }
}

@media (max-width: 480px) {
    .qa-session-title-info-icon .qa-session-info-tooltip {
        width: 200px;
        max-width: calc(100vw - 20px);
        font-size: 10px;
        padding: 8px 10px;
    }
}

.qa-session-title-edit-icon {
    font-size: 12px;
    color: var(--default-text-color);
    opacity: 0.6;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    padding: 2px 4px;
    border-radius: 3px;
}

.qa-session-title-label:hover .qa-session-title-edit-icon {
    opacity: 1;
    color: var(--primary-color);
    background: var(--primary01);
}

.qa-session-title-section h4 {
    padding: 5px;
    width: 100%;
    border: 1px dashed var(--default-border);
    background: var(--custom-white);
    display: inline-flex;
    align-items: center;
    position: relative;
}

    .qa-session-title-section h4:hover {
        background: var(--default-background);
        border-color: #0e1d35;
        border-style: solid;
        box-shadow: none;
    }


@keyframes pulse-border {
    0%, 100% {
        border-color: var(--warning-color);
    }

    50% {
        border-color: var(--warning-color);
    }
}

.qa-session-title-section h2,
.qa-session-title-section h3 {
    margin: 0 0 8px 0;
    font-size: 24px;
    font-weight: 600;
    color: var(--default-text-color);
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background-color 0.2s;
}

    .qa-session-title-section h2:hover,
    .qa-session-title-section h3:hover {
        background-color: var(--default-background);
    }

    .qa-session-title-section h2.editing,
    .qa-session-title-section h3.editing {
        background-color: var(--custom-white);
        border: 2px solid var(--primary-color);
        outline: none;
    }

.qa-session-title-input {
    font-size: 13px;
    font-weight: 500;
    color: var(--default-text-color);
    border: 1px solid var(--default-border);
    border-radius: 3px;
    padding: 7px 9px;
    width: 60% !important;
    max-width: 60% !important;
    min-width: 200px;
    background: var(--custom-white);
    outline: none;
    margin-right: 0;
    transition: all 0.2s ease;
    box-shadow: none;
    flex-shrink: 0;
    display: none;
}

    .qa-session-title-input:focus {
        border-color: var(--default-border);
        box-shadow: none;
        background-color: var(--custom-white);
        width: 60% !important;
        max-width: 60% !important;
    }

    .qa-session-title-input::placeholder {
        color: var(--default-text-color);
        font-weight: 400;
        font-style: italic;
        opacity: 0.7;
    }

.qa-session-title-section .qa-session-meta {
    font-size: 12px;
    color: var(--default-text-color);
    margin: 0;
}

.qa-session-title-section h4 .title-placeholder {
    color: var(--default-text-color);
    font-weight: 400;
    font-style: italic;
    letter-spacing: 0.1px;
    font-size: 13px;
}

.qa-session-title-section h4.has-title .title-placeholder {
    display: none;
}

.qa-session-title-section h4.has-title .title-text {
    color: var(--success-color);
    font-weight: 600;
    letter-spacing: 0.1px;
}

.qa-session-title-section h4 .title-text {
    color: var(--default-text-color);
    font-weight: 600;
    letter-spacing: 0.1px;
}

.qa-session-title-section h4 .error {
    font-size: 13px !important;
    color: var(--danger-color) !important;
    margin-left: 4px !important;
    font-weight: 600 !important;
    vertical-align: middle;
}

.qa-session-title-section h4.title-empty .error {
    animation: blink-asterisk 1.5s ease-in-out infinite;
}

@keyframes blink-asterisk {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }
}

@keyframes fadeInSlide {
    0% {
        opacity: 0;
        transform: translateY(20px) scale(0.98);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes pulseGlow {
    0%, 100% {
        box-shadow: 0 2px 4px var(--primary03);
    }

    50% {
        box-shadow: 0 2px 12px var(--primary06), 0 0 20px var(--primary03);
    }
}

.ai-generated-highlight {
    animation: fadeInSlide 0.6s ease-out !important;
}

.qa-session-header-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
    position: relative;
}

.qa-close-btn {
    background: none !important;
    border: none !important;
    font-size: 28px !important;
    color: var(--default-text-color) !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin-bottom: 10px !important;
    line-height: 1 !important;
    width: 30px !important;
    height: 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: color 0.2s;
}

    .qa-close-btn:hover {
        color: var(--danger-color) !important;
    }

.qa-session-header-badges {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-top: 10px;
}

.qa-session-container {
    display: flex;
    flex-direction: column;
    padding: 0 2px 0px 2px;
    overflow: hidden;
    overflow-x: hidden !important;
    flex: 1;
    min-height: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    contain: layout style;
    margin-block-end: 0.5rem;
    border-radius: 10px;
}

.qa-main-panel {
    display: grid;
    grid-template-columns: minmax(0, 0.55fr) minmax(0, 0.75fr);
    gap: 18px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    flex: 1;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: visible;
    align-items: stretch;
    position: relative;
    cursor: default;
}

#dalgQASession .qa-main-panel {
    overflow: hidden;
}

@media (max-width: 1200px) {
    .qa-main-panel {
        grid-template-columns: 1fr;
    }

    .qa-left-panel,
    .qa-right-panel {
        max-width: 100% !important;
        width: 100% !important;
        min-width: 100% !important;
    }
}

.qa-left-panel {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    border-radius: 8px;
    box-shadow: 0 2px 4px var(--default-border);
    overflow: hidden !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    min-height: 0;
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
    visibility: visible !important;
    position: relative;
    box-sizing: border-box;
    contain: layout style;
}

    .qa-left-panel .ui-resizable-handle {
        background: var(--default-background);
    }

        .qa-left-panel .ui-resizable-handle.ui-resizable-e {
            width: 8px;
            right: -4px;
            cursor: col-resize;
            background: var(--default-background);
        }

        .qa-left-panel .ui-resizable-handle.ui-resizable-s {
            height: 8px;
            bottom: -4px;
            cursor: row-resize;
            background: var(--default-background);
            width: 100%;
        }

        .qa-left-panel .ui-resizable-handle.ui-resizable-se {
            width: 16px;
            height: 16px;
            right: -4px;
            bottom: -4px;
            cursor: se-resize;
            background: var(--default-background);
        }

        .qa-left-panel .ui-resizable-handle:hover {
            background: var(--default-background);
        }

    .qa-left-panel .qa-header {
        flex-shrink: 0;
    }

    .qa-left-panel .qa-session-details {
        flex: 1;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        min-height: 0;
        padding-right: 5px;
        max-height: 100%;
        width: 100%;
        box-sizing: border-box;
        scrollbar-width: thin;
        scrollbar-color: var(--default-border) var(--default-background);
    }

        .qa-left-panel .qa-session-details::-webkit-scrollbar {
            width: 8px;
        }

        .qa-left-panel .qa-session-details::-webkit-scrollbar-track {
            background: var(--default-background);
            border-radius: 4px;
        }

        .qa-left-panel .qa-session-details::-webkit-scrollbar-thumb {
            background: var(--default-border);
            border-radius: 4px;
        }

            .qa-left-panel .qa-session-details::-webkit-scrollbar-thumb:hover {
                background: var(--default-border);
            }

.qa-right-panel {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    background: var(--custom-white);
    border-radius: 8px;
    box-shadow: 0 2px 4px var(--default-border);
    overflow: hidden !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    min-height: 0;
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
    visibility: visible !important;
    position: relative;
    box-sizing: border-box;
    contain: layout style;
}

    .qa-right-panel .qa-bug-form {
        flex-shrink: 0;
        padding-bottom: 10px;
        /*margin-bottom: 0;*/
    }

    .qa-right-panel .qa-bugs-section {
        flex-shrink: 0;
        margin-top: 5px;
        padding-bottom: 10px;
        border-top: 2px solid var(--default-border);
    }

.qa-right-panel-expand-btn {
    background: none !important;
    border: none !important;
    font-size: 18px !important;
    color: var(--default-text-color) !important;
    cursor: pointer !important;
    padding: 6px 8px !important;
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
    border-radius: 4px !important;
    flex-shrink: 0 !important;
    position: relative !important;
}

    .qa-right-panel-expand-btn:hover {
        color: var(--success-color) !important;
        background-color: var(--default-background) !important;
    }

        .qa-right-panel-expand-btn:hover::after {
            content: '';
            position: absolute;
            bottom: 2px;
            left: 50%;
            transform: translateX(-50%);
            width: 60%;
            height: 2px;
            background-color: var(--success-color);
            border-radius: 1px;
        }

    .qa-right-panel-expand-btn i {
        transition: opacity 0.2s ease;
        position: absolute;
    }

.qa-session-container {
    position: relative;
}

.qa-right-panel {
    transition: width 0.4s ease, left 0.4s ease, z-index 0.4s ease, position 0.4s ease !important;
}

.qa-session-container.right-panel-expanded .qa-right-panel.expanded {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 100 !important;
    box-shadow: -4px 0 12px var(--default-border) !important;
    transition: width 0.4s ease, left 0.4s ease, z-index 0.4s ease, position 0.4s ease !important;
}

.qa-left-panel {
    transition: none !important;
}

.qa-session-container.right-panel-expanded .qa-left-panel {
    z-index: 1;
    position: relative;
}

.qa-right-panel-content {
    flex: 1 1 auto;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    min-height: 0;
    padding-right: 5px;
    width: 100%;
    box-sizing: border-box;
    scrollbar-width: thin;
    scrollbar-color: var(--default-border) var(--default-background);
}

    .qa-right-panel-content::-webkit-scrollbar {
        width: 8px;
    }

    .qa-right-panel-content::-webkit-scrollbar-track {
        background: var(--default-background);
        border-radius: 4px;
    }

    .qa-right-panel-content::-webkit-scrollbar-thumb {
        background: var(--default-border);
        border-radius: 4px;
    }

        .qa-right-panel-content::-webkit-scrollbar-thumb:hover {
            background: var(--default-border);
        }

.qa-session-footer {
    background: var(--custom-white);
    padding: 10px;
    gap: 20px;
    margin-block-end: 0.5rem;
    border-radius: 10px;
}

    .qa-session-footer .qa-footer-buttons {
        display: flex;
        gap: 10px;
        flex-shrink: 0;
        justify-content: flex-end;
    }

/* Marketing Session Styles - layout aligned with QA Session */
.marketing-session-wrapper {
    width: 80%;
    margin-left: 10%;
    margin-right: 10%;
    padding: 24px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    min-height: 70vh;
    position: relative;
}

@media (max-width: 768px) {
    .marketing-session-wrapper {
        width: 90%;
        margin-left: 5%;
        margin-right: 5%;
        padding: 16px;
    }
}

@media (max-width: 480px) {
    .marketing-session-wrapper {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
        padding: 12px;
    }
}

.marketing-session-header {
    background: var(--custom-white);
    padding: 12px 20px;
    border-bottom: 2px solid var(--default-border);
    flex-shrink: 0;
    border-radius: 10px;
    margin-block-end: 0.5rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.marketing-session-header-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    width: 100%;
}

.marketing-session-header-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    flex: 1;
    min-width: 0;
}

    .marketing-session-header-left .btn-back {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        color: var(--default-text-color);
        text-decoration: none;
        font-weight: 500;
        padding: 6px 12px;
        border-radius: 4px;
    }

        .marketing-session-header-left .btn-back:hover {
            background-color: var(--default-background);
            color: var(--primary-color);
        }

.marketing-session-title-wrapper {
    width: 100%;
    min-width: 0;
}

    .marketing-session-title-wrapper .mk-session-title-input {
        border: none;
        background: transparent;
        font-size: 18px;
        font-weight: 600;
        color: var(--default-text-color);
        padding: 4px 8px;
        width: 100%;
        min-width: 200px;
        max-width: none;
        box-sizing: border-box;
        outline: none;
    }

    .marketing-session-title-wrapper .mk-session-title-display {
        flex: 1;
        min-width: 0;
        border: 1px solid transparent;
        background: transparent;
        font-size: 18px;
        font-weight: 600;
        color: var(--default-text-color);
        padding: 4px 8px;
        min-width: 200px;
        outline: none;
        cursor: text;
        border-radius: 4px;
    }

        .marketing-session-title-wrapper .mk-session-title-display[contenteditable="true"] {
            border-color: var(--default-border);
            background-color: var(--custom-white);
        }

        .marketing-session-title-wrapper .mk-session-title-display:empty:before {
            content: attr(data-placeholder);
            color: var(--text-muted);
        }

    .marketing-session-title-wrapper .btn-list.nTitleActionButtons {
        flex-shrink: 0;
    }

.marketing-session-header-right {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-end;
    flex-shrink: 0;
}

.marketing-session-info-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
}

.marketing-session-info-label {
    font-size: 12px;
    color: var(--default-text-color);
    opacity: 0.7;
    font-weight: 500;
}

.marketing-session-info-value {
    font-size: 14px;
    color: var(--default-text-color);
    font-weight: 600;
}

.marketing-session-container {
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow: hidden;
    background: var(--custom-white);
    border-radius: 8px;
    padding: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    position: relative;
    margin-block-end: 0.5rem;
}

.marketing-main-panel {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    width: 100%;
    flex: 1;
    min-height: 0;
    align-items: stretch;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
}

    .marketing-main-panel.has-right-panel {
        grid-template-columns: minmax(0, 0.55fr) minmax(0, 0.75fr);
    }

/* Marketing left panel - responsive like QASession */
.marketing-left-panel {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    border-radius: 8px;
    box-shadow: 0 2px 4px var(--default-border);
    overflow: hidden !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    min-height: 0;
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
    visibility: visible !important;
    position: relative;
    background: var(--custom-white);
    border: 1px solid var(--default-border);
}

    .marketing-left-panel .marketing-header {
        flex-shrink: 0;
    }

/* Align Create Blog Session and Add Tasks headings */
.marketing-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 10px;
    margin-bottom: 15px;
    border-bottom: 1px solid var(--default-border);
    min-height: 36px;
}

    .marketing-panel-header .marketing-panel-header-title {
        flex: 1;
        min-width: 0;
    }

    .marketing-panel-header .panel-title {
        font-weight: 600;
        font-size: 1rem;
        margin: 0;
        line-height: 1.4;
        display: inline-block;
    }

.marketing-left-panel .marketing-session-details {
    flex: 1;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    min-height: 0;
    padding-right: 5px;
    max-height: 100%;
    width: 100%;
    box-sizing: border-box;
    scrollbar-width: thin;
    scrollbar-color: var(--default-border) var(--default-background);
}

    .marketing-left-panel .marketing-session-details::-webkit-scrollbar {
        width: 8px;
    }

    .marketing-left-panel .marketing-session-details::-webkit-scrollbar-track {
        background: var(--default-background);
        border-radius: 4px;
    }

    .marketing-left-panel .marketing-session-details::-webkit-scrollbar-thumb {
        background: var(--default-border);
        border-radius: 4px;
    }

        .marketing-left-panel .marketing-session-details::-webkit-scrollbar-thumb:hover {
            background: var(--default-border);
        }

/* Marketing Session form column widths - ensure Bootstrap grid works correctly */
.marketing-session-wrapper .marketing-session-details ul.row,
.marketing-session-wrapper .marketing-session-details ul.nFormHorizontal.row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -12px;
    margin-right: -12px;
}

    .marketing-session-wrapper .marketing-session-details ul.row > li,
    .marketing-session-wrapper .marketing-session-details ul.nFormHorizontal.row > li {
        padding-left: 12px;
        padding-right: 12px;
        box-sizing: border-box;
    }

/* Ensure MarketingSessionItems respect Bootstrap grid classes */
.marketing-session-wrapper .marketing-session-details li.MarketingSessionItems.col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
}

.marketing-session-wrapper .marketing-session-details li.MarketingSessionItems.col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

.marketing-session-wrapper .marketing-session-details li.MarketingSessionItems.col-md-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}

.marketing-session-wrapper .marketing-session-details li.MarketingSessionItems.col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

.marketing-session-wrapper .marketing-session-details li.MarketingSessionItems.col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

/* Ensure MarketingSessionTextareaItems are full width */
.marketing-session-wrapper .marketing-session-details li.MarketingSessionTextareaItems.col-xl-12,
.marketing-session-wrapper .marketing-session-details li.MarketingSessionTextareaItems.col-md-12,
.marketing-session-wrapper .marketing-session-details li.MarketingSessionTextareaItems.col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

/* Media queries to ensure proper responsive behavior */
@media (max-width: 575.98px) {
    .marketing-session-wrapper .marketing-session-details li.MarketingSessionItems.col-sm-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .marketing-session-wrapper .marketing-session-details li.MarketingSessionItems.col-md-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .marketing-session-wrapper .marketing-session-details li.MarketingSessionItems.col-md-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

@media (min-width: 1200px) {
    .marketing-session-wrapper .marketing-session-details li.MarketingSessionItems.col-xl-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .marketing-session-wrapper .marketing-session-details li.MarketingSessionItems.col-xl-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

/* Marketing right panel - same structure as .qa-right-panel */
.marketing-right-panel {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    background: var(--custom-white);
    border-radius: 8px;
    box-shadow: 0 2px 4px var(--default-border);
    overflow: hidden !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    min-height: 0;
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
    visibility: visible !important;
    position: relative;
    border: 1px solid var(--default-border);
    box-sizing: border-box;
}

    .marketing-right-panel .marketing-right-panel-content {
        flex: 1 1 auto;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        min-height: 0;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-y;
        padding-right: 20px;
        width: 100%;
        box-sizing: border-box;
        scrollbar-width: thin;
        scrollbar-color: var(--default-border) var(--default-background);
    }

        .marketing-right-panel .marketing-right-panel-content::-webkit-scrollbar {
            width: 8px;
        }

        .marketing-right-panel .marketing-right-panel-content::-webkit-scrollbar-track {
            background: var(--default-background);
            border-radius: 4px;
        }

        .marketing-right-panel .marketing-right-panel-content::-webkit-scrollbar-thumb {
            background: var(--default-border);
            border-radius: 4px;
        }

            .marketing-right-panel .marketing-right-panel-content::-webkit-scrollbar-thumb:hover {
                background: var(--default-border);
            }

/* Responsive adjustments for marketing panels */
@media (max-width: 1200px) {
    .marketing-main-panel.has-right-panel {
        grid-template-columns: minmax(0, 0.5fr) minmax(0, 0.5fr);
    }
}

@media (max-width: 768px) {
    .marketing-main-panel.has-right-panel {
        grid-template-columns: 1fr;
    }

    .marketing-left-panel,
    .marketing-right-panel {
        max-width: 100% !important;
        width: 100% !important;
        min-width: 100% !important;
    }
}

.marketing-left-panel,
.marketing-right-panel {
    box-sizing: border-box;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    padding: 15px;
    position: relative;
}
    /* MkMultiAssignee - same as AddTaskModal (bootstrap-multiselect) */
    .marketing-left-panel #LiMkAssignedTo,
    .marketing-left-panel #LiMkAssignedTo .nControl,
    .marketing-left-panel #LiMkAssignedTo .AssignedToMulti,
    .marketing-left-panel #LiMkAssignedTo .input-group {
        overflow: visible;
    }

    .marketing-left-panel #MkMultiAssignee + .btn-group {
        width: 100%;
        min-width: 100%;
    }

        .marketing-left-panel #MkMultiAssignee + .btn-group .multiselect {
            width: 100%;
            min-width: 100%;
            text-align: left !important;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            color: var(--default-text-color);
            background-color: var(--form-control-bg);
        }

        .marketing-left-panel #MkMultiAssignee + .btn-group .multiselect-container {
            position: absolute;
            top: 100%;
            left: 0;
            right: auto;
            bottom: auto;
            margin-top: 2px;
            margin-bottom: 0;
            transform: none;
            z-index: 10500;
            max-height: 300px;
            overflow-y: auto;
            overflow-x: hidden;
            min-width: 100%;
            width: auto;
        }

            .marketing-left-panel #MkMultiAssignee + .btn-group .multiselect-container > li > a,
            .marketing-left-panel #MkMultiAssignee + .btn-group .multiselect-container > li > button {
                color: var(--default-text-color);
                background-color: var(--custom-white);
            }

                .marketing-left-panel #MkMultiAssignee + .btn-group .multiselect-container > li > a:hover,
                .marketing-left-panel #MkMultiAssignee + .btn-group .multiselect-container > li > button:hover,
                .marketing-left-panel #MkMultiAssignee + .btn-group .multiselect-container > li.active > a,
                .marketing-left-panel #MkMultiAssignee + .btn-group .multiselect-container > li.active > button {
                    color: var(--default-text-color);
                    background-color: var(--list-hover-focus-bg);
                }
        /* MkMultiAssignee arrow - same as form-select (SVG arrow instead of CSS border) */
        .marketing-left-panel #MkMultiAssignee + .btn-group .multiselect.dropdown-toggle::after {
            display: none !important;
        }

        .marketing-left-panel #MkMultiAssignee + .btn-group .multiselect.dropdown-toggle {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
            background-size: 1.25rem;
            background-repeat: no-repeat;
            background-position: right 0.75rem center;
            padding-right: 2.5rem;
        }
/*.marketing-left-panel {
    border-radius: 8px;
    box-shadow: 0 2px 4px var(--default-border);
    background: var(--custom-white);
}
.marketing-right-panel {
    border-radius: 8px;
    box-shadow: 0 2px 4px var(--default-border);
    background: var(--custom-white);
}*/
.marketing-session-footer {
    background: var(--custom-white);
    padding: 10px;
    gap: 20px;
    margin-block-end: 0.5rem;
    border-radius: 10px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

    .marketing-session-footer .marketing-footer-buttons {
        display: flex;
        gap: 10px;
        justify-content: flex-end;
    }

.marketing-session-wrapper .panel-title {
    font-weight: 600;
    margin-bottom: 10px;
}

.marketing-session-wrapper .hint {
    font-size: 12px;
    color: var(--default-text-color);
    opacity: 0.7;
}

.marketing-session-wrapper .divider {
    border-top: 1px solid var(--default-border);
}

.marketing-session-wrapper .time-box {
    padding: 8px 12px;
    background: var(--default-background);
    border-radius: 6px;
    font-size: 13px;
}

.marketing-session-wrapper .required::after {
    content: ' *';
    color: #dc3545;
}

.marketing-session-wrapper .mk-generate-blog-link {
    text-decoration: none;
    cursor: pointer;
    color: var(--primary-color) !important;
}

    .marketing-session-wrapper .mk-generate-blog-link:hover {
        text-decoration: underline;
    }

/* Work & Time Tracking (Role Timers) - theme-matched table */
.marketing-session-wrapper .mk-work-tracking-panel {
    border: 1px solid var(--default-border);
    border-radius: 8px;
    overflow: hidden;
    background-color: var(--custom-white);
}

.marketing-session-wrapper .mk-work-tracking-panel-title {
    font-weight: 600;
    font-size: 1rem;
    color: var(--default-text-color);
    padding: 10px;
    margin-bottom: 0;
    border-bottom: 1px solid var(--default-border);
    background-color: var(--default-background);
}

.marketing-session-wrapper .mk-work-tracking-panel .table-responsive {
    border-top: none;
}

.marketing-session-wrapper .mk-work-tracking-panel .mk-work-tracking-table {
    color: var(--default-text-color);
    border-color: var(--default-border);
}

    .marketing-session-wrapper .mk-work-tracking-panel .mk-work-tracking-table thead th {
        background-color: var(--default-background) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
        font-weight: 600;
        font-size: 12px;
        padding: 10px 12px;
    }

    .marketing-session-wrapper .mk-work-tracking-panel .mk-work-tracking-table tbody td {
        background-color: var(--custom-white);
        border-color: var(--default-border);
        color: var(--default-text-color);
        font-size: 12px;
        padding: 10px 12px;
    }

    .marketing-session-wrapper .mk-work-tracking-panel .mk-work-tracking-table tbody tr:hover td {
        background-color: var(--list-hover-focus-bg);
    }

    .marketing-session-wrapper .mk-work-tracking-panel .mk-work-tracking-table .text-muted {
        color: var(--text-muted) !important;
    }

/* Marketing Session Right Panel Expand/Collapse - same as QA Session */
.marketing-right-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--default-border);
}

.marketing-right-panel-expand-btn {
    background: none !important;
    border: none !important;
    font-size: 18px !important;
    color: var(--default-text-color) !important;
    cursor: pointer !important;
    padding: 6px 8px !important;
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
    border-radius: 4px !important;
    flex-shrink: 0 !important;
    position: relative !important;
}

    .marketing-right-panel-expand-btn:hover {
        color: var(--primary-color) !important;
        background-color: var(--default-background) !important;
    }

        .marketing-right-panel-expand-btn:hover::after {
            content: '';
            position: absolute;
            bottom: 2px;
            left: 50%;
            transform: translateX(-50%);
            width: 60%;
            height: 2px;
            background-color: var(--primary-color);
            border-radius: 1px;
        }

    .marketing-right-panel-expand-btn i {
        transition: opacity 0.2s ease;
        position: absolute;
    }

.marketing-session-container {
    position: relative;
}

.marketing-right-panel {
    transition: width 0.4s ease, left 0.4s ease, z-index 0.4s ease, position 0.4s ease !important;
}

.marketing-session-container.right-panel-expanded .marketing-right-panel.expanded {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 99 !important;
    box-shadow: -4px 0 12px var(--default-border) !important;
    transition: width 0.4s ease, left 0.4s ease, z-index 0.4s ease, position 0.4s ease !important;
}

    /* Expanded right panel: ensure content area scrolls (flex + min-height: 0) */
    .marketing-session-container.right-panel-expanded .marketing-right-panel.expanded .marketing-right-panel-content {
        flex: 1 1 0;
        min-height: 0;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-y;
    }

.marketing-left-panel {
    transition: none !important;
}

.marketing-session-container.right-panel-expanded .marketing-left-panel {
    z-index: 1;
    position: relative;
}

.qa-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    border-bottom: 2px solid var(--default-border);
    margin-bottom: 10px;
    padding-bottom: 10px;
}

    .qa-header h5 {
        margin: 0;
        font-size: 18px;
        color: var(--default-text-color);
        display: inline-flex;
        align-items: center;
        font-weight: 600;
    }

.qa-status-badge {
    display: inline-block;
    padding: 6px 16px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    background: var(--primary-color);
    color: var(--custom-white);
}

    .qa-status-badge.new {
        background: var(--default-text-color);
        color: var(--custom-white);
    }

    .qa-status-badge.in-progress {
        background: var(--primary-color);
    }

    .qa-status-badge.paused {
        background: var(--warning-color);
        color: var(--default-text-color);
    }

    .qa-status-badge.completed {
        background: var(--success-color);
    }

.qa-bugs-count {
    display: inline-block;
    padding: 6px 16px;
    color: var(--default-text-color);
}

.qa-badge {
    padding: 4px 5px;
    border-radius: 999px;
    font-size: 12px;
    border: 1px solid var(--border-soft);
    background: var(--default-background);
    color: var(--default-text-color);
}

.qa-session-id {
    font-size: 15px;
    color: var(--default-text-color);
    font-weight: 500;
    width: 30%;
    text-align: right;
    margin-top: 5px;
}

.qa-timer-section {
    background: linear-gradient(135deg, var(--default-background) 0%, var(--custom-white) 100%);
    border-radius: 6px;
    width: 100%;
    box-sizing: border-box;
    padding: 12px;
    border: 1px solid var(--default-border);
    box-shadow: 0 2px 4px var(--default-border);
}

.qa-cycle-history {
    width: 100%;
    box-sizing: border-box;
    margin-top: 5px;
    padding-top: 10px;
    border-top: 2px solid var(--default-border);
}

.cycles-history-header {
    margin: 0 0 5px 0;
    font-size: 16px;
    color: var(--default-text-color);
    font-weight: 600;
    display: inline-flex;
    align-items: center;
}

.qacyclehistorybody-td {
    text-align: center;
    color: var(--default-text-color);
    padding: 20px;
}

.qacyclehistorybodymsg {
    font-size: 11px;
    color: var(--default-text-color);
    font-style: italic;
}


.qa-elapsed-time {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-color);
    margin: 0;
    text-align: left;
    flex: 1;
}

.qa-estimated-time {
    font-size: 11px;
    color: var(--default-text-color);
    margin: 0;
    padding: 6px 10px;
    background: var(--custom-white);
    border-radius: 4px;
    border: 1px solid var(--default-border);
    display: flex;
    align-items: center;
    gap: 10px;
}

.qa-bug-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    border-bottom: 2px solid var(--default-border);
    margin-bottom: 10px;
    padding-bottom: 10px;
}

    .qa-bug-header h5 {
        margin: 0;
        font-size: 18px;
        color: var(--default-text-color);
        display: inline-flex;
        align-items: center;
        font-weight: 600;
    }

.qa-bug-form {
    border-radius: 8px;
    margin-bottom: 10px;
    padding: 5px;
}

    .qa-bug-form h4 {
        margin-bottom: 10px;
        color: var(--default-text-color);
    }

.qa-bug-actions-icons {
    display: flex;
    align-items: center;
    gap: 6px;
    justify-content: center;
}

.qa-action-link {
    color: var(--primary-color);
    text-decoration: none;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    padding: 2px 4px;
}

    .qa-action-link:hover {
        text-decoration: none;
        transform: scale(1.1);
    }

    .qa-action-link.qa-action-view {
        color: var(--primary-color);
    }

        .qa-action-link.qa-action-view:hover {
            color: var(--primary-color);
        }

    .qa-action-link.qa-action-edit {
        color: var(--warning-color);
    }

        .qa-action-link.qa-action-edit:hover {
            color: var(--warning-color);
        }

    .qa-action-link.qa-action-delete {
        color: var(--danger-color);
    }

        .qa-action-link.qa-action-delete:hover {
            color: var(--danger-color);
        }

    .qa-action-link i {
        font-size: 14px;
    }

.qa-action-delete:hover {
    background: var(--danger01);
}

.qa-bug-key-link {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 500;
    cursor: pointer;
}

    .qa-bug-key-link:hover {
        color: var(--primary-color);
        text-decoration: underline;
    }

.qaBugsTableBody-td {
    text-align: center;
    color: var(--default-text-color);
    padding: 10px;
}

.qa-action-buttons {
    display: flex;
    gap: 10px;
    margin-top: 20px;
    justify-content: flex-end;
}

.qa-session-notes {
    padding-top: 10px;
    border-top: 2px solid var(--default-border);
}

    .qa-session-notes textarea {
        min-height: 100px;
        margin-bottom: 10px;
    }

#btnGetScenario .dropdown-menu {
    min-width: 250px !important;
    max-width: 350px !important;
    width: auto !important;
}

#btnGetScenario .dropdown-item {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    padding: 8px 16px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    line-height: 1.4 !important;
}

    #btnGetScenario .dropdown-item i {
        flex-shrink: 0 !important;
        width: 18px !important;
        text-align: center !important;
        font-size: 16px !important;
    }

    #btnGetScenario .dropdown-item:hover {
        background-color: var(--default-background) !important;
    }

.qa-session-notes-message {
    font-size: 12px;
    color: var(--default-text-color);
    font-style: italic;
    margin-top: 5px;
}

.error {
    color: var(--danger-color);
}

.force-show,
#qaSessionId.force-show,
#qaSessionId[style*="display"] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#qaSessionId {
    display: none !important; /* Default hidden */
}

    #qaSessionId[style*="display: block"],
    #qaSessionId.force-show {
        display: block !important;
    }

.note-placeholder {
    white-space: pre-line !important;
    line-height: 1.6 !important;
    color: var(--default-text-color) !important;
    font-family: inherit !important;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-10px) scale(0.95);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.ai-loader-spinner {
    animation: spin 0.8s linear infinite !important;
    width: 35px;
    height: 35px;
    margin: 0 auto 12px;
    border: 3px solid var(--default-border);
    border-top: 3px solid var(--primary-color);
    border-radius: 50%;
}

.LoadingAIHeader {
    color: var(--default-text-color);
    font-size: 14px;
    font-weight: 600;
    margin: 0 0 10px 0;
}

    .LoadingAIHeader i {
        color: var(--primary-color);
        margin-right: 5px;
        font-size: 14px;
    }

.divloadingAIscenarios {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-bottom: 10px;
}

    .divloadingAIscenarios i {
        font-size: 16px;
        color: var(--primary-color);
        display: block;
        margin-bottom: 3px;
    }

    .divloadingAIscenarios span {
        font-size: 9px;
        color: var(--default-text-color);
    }

.DivLoadingAIModal p {
    color: var(--default-text-color);
    font-size: 10px;
    margin: 0;
}

#qaAILoadingModal {
    backdrop-filter: blur(2px) !important;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--default-background);
    z-index: 999999;
    justify-content: center;
    align-items: center;
}

.DivLoadingAIModal {
    background: var(--custom-white);
    border-radius: 10px;
    padding: 20px 30px;
    box-shadow: 0 8px 24px var(--default-border);
    text-align: center;
    max-width: 280px;
    animation: fadeIn 0.3s ease-out;
}

/* Generated Scenarios Styles */
.qa-generated-scenarios {
    display: none;
}

.scenarios-section-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    cursor: pointer;
    padding: 8px;
    border-radius: 4px;
    margin-bottom: 10px;
    transition: background-color 0.2s;
    background-color: var(--list-hover-focus-bg);
}


.QA_Generated-Scenarios-container {
    border: 1px solid var(--default-border);
    border-radius: 4px;
    padding: 10px;
}

.generated-scenario-item {
    border-radius: 6px;
    margin-bottom: 10px;
    overflow: hidden;
    box-shadow: 0 2px 8px var(--default-border);
    animation: fadeInSlide 0.5s ease-in-out;
}

.scenario-header {
    padding: 12px;
    cursor: pointer;
}

.scenario-header-row {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: space-between;
}

.scenario-header-left {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
}

.scenario-checkbox {
    margin: 0;
    width: 16px;
    height: 16px;
    cursor: pointer;
}

.scenario-toggle-icon {
    transition: transform 0.3s;
    color: var(--default-text-color);
    font-size: 14px;
}

.scenario-number {
    color: var(--default-text-color);
    font-weight: 600;
    font-size: 13px;
}

.scenario-title {
    color: var(--default-text-color);
    flex: 1;
    font-size: 13px;
    font-weight: 600;
}

.scenario-header-right {
    display: flex;
    align-items: center;
    gap: 8px;
}

.btn-add-scenario-to-bug {
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
}

.scenario-content {
    display: none;
    padding: 15px;
    background: var(--custom-white);
}

.scenario-description {
    color: var(--default-text-color);
    font-size: 12px;
    margin-bottom: 15px;
    line-height: 1.6;
}

.scenario-metadata {
    display: flex;
    gap: 20px;
    padding-top: 12px;
    border-top: 1px solid var(--default-border);
}

.scenario-metadata-label {
    color: var(--default-text-color);
    font-size: 12px;
}

.scenario-metadata-value {
    color: var(--default-text-color);
    font-size: 12px;
}

.scenarios-title-container {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.scenarios-title-row {
    display: flex;
    align-items: center;
    gap: 8px;
}

#selectAllScenarios {
    width: 15px;
    height: 15px;
    cursor: pointer;
    margin: 0;
}

.scenarios-title-text {
    color: var(--default-text-color);
    font-size: 14px;
    font-weight: 600;
}

.scenarios-subtitle-container {
    padding-left: 26px;
}

.scenarios-subtitle-text {
    color: var(--default-text-color);
    font-size: 12px;
    font-weight: 400;
}

#addSelectedToBug {
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
    display: none;
    margin-left: auto;
    margin-right: 10px;
}

.qa-Actual-time {
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--custom-white);
    border-radius: 4px;
    padding: 6px 10px;
    border: 1px solid var(--default-border);
}

.spn-actual-time {
    font-size: 13px;
    color: var(--default-text-color);
    font-weight: 600;
    white-space: nowrap;
    width: 105px;
}

.qa-session-message {
    margin-top: 8px;
    padding: 6px 8px;
    background: var(--default-background);
    border-radius: 4px;
}

#qaSessionStatusMessage {
    font-size: 10px;
    color: var(--default-text-color);
    margin: 0;
    text-align: center;
    line-height: 1.4;
}

/* Cycle History Styles */
.qacyclehistorybody-td-empty {
    text-align: center;
    color: var(--default-text-color);
    padding: 20px;
}

.qa-cycle-status-dropdown {
    min-width: 120px;
    font-size: 12px;
    padding: 4px 8px;
}

#qaCyclesHistoryTable {
    width: 100%;
    border-collapse: collapse;
}

    #qaCyclesHistoryTable thead th {
        white-space: nowrap;
        padding: 8px;
        text-align: left;
        font-weight: 600;
    }

        #qaCyclesHistoryTable thead th:nth-child(1) {
            width: 80px;
        }

        #qaCyclesHistoryTable thead th:nth-child(2) {
            width: 35%;
            min-width: 200px;
        }

        #qaCyclesHistoryTable thead th:nth-child(3) {
            width: 120px;
        }

        #qaCyclesHistoryTable thead th:nth-child(4),
        #qaCyclesHistoryTable thead th:nth-child(5) {
            width: 100px;
            text-align: center;
        }

        #qaCyclesHistoryTable thead th:nth-child(6) {
            width: 150px;
        }

    #qaCyclesHistoryTable tbody td {
        vertical-align: top;
        padding: 8px;
        word-break: break-word;
    }

    #qaCyclesHistoryTable .qa-cycle-number-cell {
        text-align: center;
        width: 80px;
    }

    #qaCyclesHistoryTable .qa-cycle-title-cell {
        word-wrap: break-word;
        overflow-wrap: break-word;
        max-width: 0;
        line-height: 1.4;
        overflow: hidden;
        white-space: normal;
    }

        #qaCyclesHistoryTable .qa-cycle-title-cell * {
            max-width: 100%;
        }

        #qaCyclesHistoryTable .qa-cycle-title-cell p {
            margin: 0 0 4px 0;
        }

            #qaCyclesHistoryTable .qa-cycle-title-cell p:last-child {
                margin-bottom: 0;
            }

.qa-cycle-history-image {
    max-width: 150px !important;
    max-height: 100px !important;
    object-fit: contain;
    display: inline-block;
    vertical-align: middle;
    margin: 2px;
    border: 1px solid var(--default-border);
    border-radius: 4px;
    cursor: pointer;
}

    .qa-cycle-history-image:hover {
        border-color: #3b82f6;
        box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
    }

.qa-image-link {
    color: #3b82f6;
    text-decoration: underline;
    cursor: pointer;
    margin: 0 4px;
    font-size: 13px;
}

    .qa-image-link:hover {
        color: #2563eb;
        text-decoration: none;
    }

#qaCyclesHistoryTable .qa-cycle-type-cell {
    width: 120px;
}

#qaCyclesHistoryTable .qa-cycle-estimated-cell,
#qaCyclesHistoryTable .qa-cycle-actual-cell {
    width: 100px;
    text-align: center;
}

#qaCyclesHistoryTable .qa-cycle-status-cell {
    width: 150px;
}

/* QA Bug List Styles */
.qabuglistbody-td-empty {
    text-align: center;
    color: var(--default-text-color);
}

.ql-container.ql-snow {
    border: 1px solid var(--default-border);
}

.ql-toolbar.ql-snow {
    border: 1px solid var(--default-border);
}

.ql-snow .ql-picker {
    color: var(--default-text-color);
}

.ql-snow .ql-picker-label {
    color: var(--default-text-color);
}

.ql-snow .ql-picker-item {
    color: var(--default-text-color);
}

.ql-editor.ql-blank::before {
    color: var(--default-text-color);
}

.ql-snow .ql-stroke {
    fill: none;
    stroke: var(--default-text-color);
}

.ql-snow .ql-fill {
    fill: var(--default-text-color);
}

/* Quill Toolbar Tooltips */
.ql-toolbar.ql-snow .ql-picker-label,
.ql-toolbar.ql-snow button {
    position: relative;
}

    /* Base tooltip styles */
    .ql-toolbar.ql-snow button:hover::after {
        content: "";
        position: absolute;
        bottom: 100%;
        left: 50%;
        transform: translateX(-50%);
        margin-bottom: 8px;
        padding: 6px 10px;
        background-color: var(--default-text-color);
        color: var(--custom-white);
        font-size: 12px;
        white-space: nowrap;
        border-radius: 4px;
        pointer-events: none;
        z-index: 1000;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
        transform: translateX(-50%) translateY(-4px);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    }

    .ql-toolbar.ql-snow button:hover::before {
        content: "";
        position: absolute;
        bottom: 100%;
        left: 50%;
        transform: translateX(-50%);
        margin-bottom: 2px;
        border: 5px solid transparent;
        border-top-color: var(--default-text-color);
        pointer-events: none;
        z-index: 1001;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.2s ease, visibility 0.2s ease;
    }

    .ql-toolbar.ql-snow button:hover::after,
    .ql-toolbar.ql-snow button:hover::before {
        opacity: 1;
        visibility: visible;
    }

    .ql-toolbar.ql-snow button:hover::after {
        transform: translateX(-50%) translateY(0);
    }

    /* Specific tooltip text for each button */
    .ql-toolbar.ql-snow button.ql-bold:hover::after {
        content: "Bold";
    }

    .ql-toolbar.ql-snow button.ql-italic:hover::after {
        content: "Italic";
    }

    .ql-toolbar.ql-snow button.ql-underline:hover::after {
        content: "Underline";
    }

    .ql-toolbar.ql-snow button.ql-strike:hover::after {
        content: "Strikethrough";
    }

    .ql-toolbar.ql-snow button.ql-link:hover::after {
        content: "Link";
    }

    .ql-toolbar.ql-snow button.ql-clean:hover::after {
        content: "Clear Formatting";
    }

    .ql-toolbar.ql-snow button.ql-header:hover::after {
        content: "Header";
    }

    .ql-toolbar.ql-snow button.ql-list:hover::after {
        content: "List";
    }

    .ql-toolbar.ql-snow button.ql-color:hover::after {
        content: "Text Color";
    }

    .ql-toolbar.ql-snow button.ql-background:hover::after {
        content: "Background Color";
    }

    .ql-toolbar.ql-snow button.ql-align:hover::after {
        content: "Align";
    }

    .ql-toolbar.ql-snow button.ql-direction:hover::after {
        content: "Text Direction";
    }

    .ql-toolbar.ql-snow button.ql-indent:hover::after {
        content: "Indent";
    }

    .ql-toolbar.ql-snow button.ql-script:hover::after {
        content: "Script";
    }

    .ql-toolbar.ql-snow button.ql-size:hover::after {
        content: "Font Size";
    }

    .ql-toolbar.ql-snow button.ql-font:hover::after {
        content: "Font";
    }

    .ql-toolbar.ql-snow button.ql-blockquote:hover::after {
        content: "Quote";
    }

    .ql-toolbar.ql-snow button.ql-code-block:hover::after {
        content: "Code Block";
    }

    .ql-toolbar.ql-snow button.ql-image:hover::after {
        content: "Image";
    }

    .ql-toolbar.ql-snow button.ql-video:hover::after {
        content: "Embedded URL";
    }

.ql-snow .ql-picker-options {
    background-color: var(--default-background);
    color: var(--default-text-color);
    border-color: var(--default-border);
}

/* Picker labels tooltips */
.ql-toolbar.ql-snow .ql-picker-label:hover::after {
    content: attr(data-label);
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 8px;
    padding: 6px 10px;
    background-color: var(--default-text-color);
    color: var(--custom-white);
    font-size: 12px;
    white-space: nowrap;
    border-radius: 4px;
    pointer-events: none;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
    transform: translateX(-50%) translateY(-4px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

/*.ql-toolbar.ql-snow .ql-picker-label:hover::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 2px;
    border: 5px solid transparent;
    border-top-color: var(--default-text-color);
    pointer-events: none;
    z-index: 1001;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
}*/

.ql-toolbar.ql-snow .ql-picker-label:hover::after,
.ql-toolbar.ql-snow .ql-picker-label:hover::before {
    opacity: 1;
    visibility: visible;
}

.ql-toolbar.ql-snow .ql-picker-label:hover::after {
    transform: translateX(-50%) translateY(0);
}

/* Specific picker tooltips - show actual selected value dynamically */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label:hover::after {
    /* Use data-label if available (Quill automatically sets this) */
    content: attr(data-label);
}

/* Fallback: If data-label is empty or not set, use data-value to determine the text */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:hover::after {
    content: "Heading 1";
}

.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:hover::after {
    content: "Heading 2";
}

.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:hover::after {
    content: "Heading 3";
}

.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:hover::after {
    content: "Heading 4";
}

.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:hover::after {
    content: "Heading 5";
}

.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:hover::after {
    content: "Heading 6";
}

/* Fallback: If no data-label and no data-value (or empty), show "Normal" */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label:not([data-label]):not([data-value]):hover::after,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-label=""]:not([data-value]):hover::after,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=""]:hover::after {
    content: "Normal";
}

.ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-label:hover::after {
    content: "Font Size";
}

.ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-label:hover::after {
    content: "Font";
}

.ql-toolbar.ql-snow .ql-picker.ql-color .ql-picker-label:hover::after {
    content: "Text Color";
}

.ql-toolbar.ql-snow .ql-picker.ql-background .ql-picker-label:hover::after {
    content: "Background Color";
}

.ql-toolbar.ql-snow .ql-picker.ql-align .ql-picker-label:hover::after {
    content: "Align";
}

.ql-toolbar.ql-snow .ql-picker.ql-list .ql-picker-label:hover::after {
    content: "List";
}

/* Dark theme support for Quill tooltips */
[data-theme-mode=dark] .ql-toolbar.ql-snow button:hover::after,
[data-theme-mode=dark] .ql-toolbar.ql-snow .ql-picker-label:hover::after {
    background-color: var(--default-text-color);
    color: var(--custom-white);
}

[data-theme-mode=dark] .ql-toolbar.ql-snow button:hover::before,
[data-theme-mode=dark] .ql-toolbar.ql-snow .ql-picker-label:hover::before {
    border-top-color: var(--default-text-color);
}

#qaGeneratedScenariosToggleIcon {
    font-size: 18px;
    color: var(--default-text-color);
    transition: transform 0.3s;
    margin-left: 10px;
}

/* Involved People Section Styles */
.qa-involved-people {
    margin-top: 15px;
    margin-bottom: 15px;
    padding-top: 10px;
    border-top: 1px solid var(--default-border);
}

.qa-involved-people-role-counts {
    margin-bottom: 15px;
    padding: 12px;
    background: var(--default-background);
    border-radius: 6px;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
    border: 1px solid var(--default-border);
}

    .qa-involved-people-role-counts .role-badge-item {
        display: flex;
        align-items: center;
        gap: 6px;
        padding: 6px 12px;
        background: var(--custom-white);
        border: 1px solid var(--default-border);
        border-radius: 20px;
        font-size: 12px;
    }

        .qa-involved-people-role-counts .role-badge-item .badge {
            font-weight: 600;
            font-size: 11px;
            padding: 4px 8px;
        }

        .qa-involved-people-role-counts .role-badge-item .role-count {
            color: var(--default-text-color);
            font-weight: 500;
            font-size: 12px;
        }

.qa-involved-people-table-wrapper {
    overflow-x: auto;
}


#qaInvolvedPeopleTable thead th {
    background-color: var(--default-background);
    color: var(--default-text-color);
    padding: 8px;
    white-space: nowrap;
}

#qaInvolvedPeopleTable tbody td {
    padding: 8px;
    color: var(--default-text-color);
    border-bottom: 1px solid var(--default-border);
    vertical-align: middle;
}

#qaInvolvedPeopleTable tbody tr:hover {
    background-color: var(--default-background);
    transition: background-color 0.2s;
}

#qaInvolvedPeopleTable tbody tr:last-child td {
    border-bottom: none;
}

#qaInvolvedPeopleTable .text-center {
    text-align: center;
}

#qaInvolvedPeopleTable .name-cell {
    font-weight: 500;
    color: var(--default-text-color);
}

#qaInvolvedPeopleTable .role-cell {
    color: var(--default-text-color);
}

#qaInvolvedPeopleTable .bugs-cell {
    text-align: center;
    font-weight: 600;
    color: var(--primary-color);
}

#qaInvolvedPeopleTable .time-cell {
    text-align: center;
    font-weight: 500;
    color: var(--default-text-color);
    font-family: 'Courier New', monospace;
    font-size: 12px;
}

#qaInvolvedPeopleToggleIcon {
    font-size: 18px;
    color: var(--default-text-color);
    transition: transform 0.3s;
    margin-left: 10px;
    flex-shrink: 0;
}

    #qaInvolvedPeopleToggleIcon.bi-chevron-up {
        transform: rotate(180deg);
    }


#qaInvolvedPeopleTableBody .text-muted i {
    opacity: 0.5;
    margin-right: 8px;
}

/* ============================================
   Feature Execution / Project Worklog Dark Theme Styles
   ============================================ */

/* Dark theme: bg-light should use dark background */
[data-theme-mode=dark] .bg-light {
    background-color: var(--default-background) !important;
    color: var(--default-text-color) !important;
}

/* Dark theme: table-light headers should use dark background */
[data-theme-mode=dark] .table-light,
[data-theme-mode=dark] thead.table-light {
    background-color: var(--default-background) !important;
    color: var(--default-text-color) !important;
    border-color: var(--default-border) !important;
}

    [data-theme-mode=dark] .table-light th,
    [data-theme-mode=dark] thead.table-light th {
        background-color: var(--default-background) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

/* Dark theme: card with border class */
[data-theme-mode=dark] .card.border {
    border-color: var(--default-border) !important;
    background-color: var(--custom-white) !important;
}

/* Dark theme: card-header with bg-light */
[data-theme-mode=dark] .card-header.bg-light {
    background-color: var(--default-background) !important;
    color: var(--default-text-color) !important;
    border-bottom-color: var(--default-border) !important;
}

/* Dark theme: KPI cards styling */
[data-theme-mode=dark] #kpiCardsContainer .card.border {
    background-color: var(--custom-white) !important;
    border-color: var(--default-border) !important;
}

[data-theme-mode=dark] #kpiCardsContainer .card-body {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] #kpiCardsContainer .small {
    color: var(--text-muted) !important;
}

/* Dark theme: Empty state card */
[data-theme-mode=dark] #emptyState .card.border {
    background-color: var(--custom-white) !important;
    border-color: var(--default-border) !important;
}

[data-theme-mode=dark] #emptyState .card-body {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] #emptyState .text-muted {
    color: var(--text-muted) !important;
}

/* Dark theme: Form controls in Feature Execution */
[data-theme-mode=dark] #ddlProject,
[data-theme-mode=dark] #ddlModule,
[data-theme-mode=dark] #contextStatus {
    background-color: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border-color: var(--input-border) !important;
}

[data-theme-mode=dark] #contextStatus {
    background-color: var(--default-background) !important;
}

/* Dark theme: Table styling in Feature Execution */
[data-theme-mode=dark] #tableRoleBreakdown,
[data-theme-mode=dark] #tableWorkItems,
[data-theme-mode=dark] #tableQASessions,
[data-theme-mode=dark] #tableBugs,
[data-theme-mode=dark] #tableWorklogs {
    background-color: var(--custom-white) !important;
    color: var(--default-text-color) !important;
}

    [data-theme-mode=dark] #tableRoleBreakdown tbody tr,
    [data-theme-mode=dark] #tableWorkItems tbody tr,
    [data-theme-mode=dark] #tableQASessions tbody tr,
    [data-theme-mode=dark] #tableBugs tbody tr,
    [data-theme-mode=dark] #tableWorklogs tbody tr {
        border-color: var(--default-border) !important;
    }

    [data-theme-mode=dark] #tableRoleBreakdown tbody td,
    [data-theme-mode=dark] #tableWorkItems tbody td,
    [data-theme-mode=dark] #tableQASessions tbody td,
    [data-theme-mode=dark] #tableBugs tbody td,
    [data-theme-mode=dark] #tableWorklogs tbody td {
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

/* Dark theme: Modal styling in Feature Execution */
[data-theme-mode=dark] #modalAddTask .modal-content,
[data-theme-mode=dark] #modalLogTime .modal-content {
    background-color: var(--custom-white) !important;
    color: var(--default-text-color) !important;
    border-color: var(--default-border) !important;
}

[data-theme-mode=dark] #modalAddTask .modal-header,
[data-theme-mode=dark] #modalLogTime .modal-header {
    border-bottom-color: var(--default-border) !important;
}

[data-theme-mode=dark] #modalAddTask .modal-footer,
[data-theme-mode=dark] #modalLogTime .modal-footer {
    border-top-color: var(--default-border) !important;
}

[data-theme-mode=dark] #modalAddTask .form-control,
[data-theme-mode=dark] #modalAddTask .form-select,
[data-theme-mode=dark] #modalLogTime .form-control,
[data-theme-mode=dark] #modalLogTime .form-select {
    background-color: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border-color: var(--input-border) !important;
}

[data-theme-mode=dark] #modalAddTask .alert-warning,
[data-theme-mode=dark] #modalLogTime .alert-warning {
    background-color: rgba(var(--warning-rgb), 0.1) !important;
    border-color: rgba(var(--warning-rgb), 0.3) !important;
    color: var(--default-text-color) !important;
}

/* Dark theme: Info cards in right panel */
[data-theme-mode=dark] .card.border .card-body ul {
    color: var(--default-text-color) !important;
}

    [data-theme-mode=dark] .card.border .card-body ul li {
        color: var(--default-text-color) !important;
    }

        [data-theme-mode=dark] .card.border .card-body ul li strong {
            color: var(--default-text-color) !important;
        }

/* Dark theme: Summary section in One-click Client Answer */
[data-theme-mode=dark] #summaryTotal,
[data-theme-mode=dark] #summaryDev,
[data-theme-mode=dark] #summaryQA,
[data-theme-mode=dark] #summaryPM {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .text-success {
    color: rgb(var(--success-rgb)) !important;
}

[data-theme-mode=dark] .text-danger {
    color: rgb(var(--danger-rgb)) !important;
}

/* Dark theme: Tab content cards */
[data-theme-mode=dark] .tab-content .card.border {
    background-color: var(--custom-white) !important;
    border-color: var(--default-border) !important;
}

[data-theme-mode=dark] .tab-content .card-body {
    color: var(--default-text-color) !important;
}

/* Dark theme: DataTable container in Feature Execution */
[data-theme-mode=dark] .dt-container {
    background-color: var(--custom-white) !important;
}

    [data-theme-mode=dark] .dt-container .dataTable {
        background-color: var(--custom-white) !important;
        color: var(--default-text-color) !important;
    }

/* File Preview Styles */
#qaBugAttachmentPreview:not(:empty) {
    display: block !important;
}

.qa-file-preview-container {
    border: 1px solid var(--default-border);
    border-radius: 6px;
    overflow: hidden;
    margin-top: 10px;
}

.qa-file-preview-header-new {
    padding: 8px 12px;
    background: var(--default-background);
    border-bottom: 1px solid var(--default-border);
    cursor: pointer;
    user-select: none;
}

.qa-file-preview-header-existing {
    padding: 8px 12px;
    background: var(--default-background);
    border-bottom: 1px solid var(--default-border);
    cursor: pointer;
    user-select: none;
}

.qa-file-preview-header-new-with-border {
    padding: 8px 12px;
    background: var(--default-background);
    border-top: 1px solid var(--default-border);
    border-bottom: 1px solid var(--default-border);
    cursor: pointer;
    user-select: none;
}

.qa-file-preview-header-new-without-border {
    padding: 8px 12px;
    background: var(--default-background);
    border-bottom: 1px solid var(--default-border);
    cursor: pointer;
    user-select: none;
}

.qa-file-preview-arrow {
    font-size: 12px;
}

.qa-file-preview-header-text-new {
    font-size: 12px;
    color: var(--default-text-color);
    margin-left: 5px;
}

.qa-file-preview-header-text-existing {
    font-size: 12px;
    color: var(--default-text-color);
    margin-left: 5px;
}

.qa-file-preview-content {
    padding: 8px;
}

.qa-file-preview-content-block {
    padding: 8px;
    display: block;
}

.qa-file-preview-content-none {
    padding: 8px;
    display: none;
}

.qa-file-item-new {
    padding: 6px 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    background: var(--default-background);
    border-radius: 4px;
    margin-bottom: 4px;
}

    .qa-file-item-new:last-child {
        margin-bottom: 0;
    }

.qa-file-item-existing {
    padding: 6px 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    background: var(--default-background);
    border-radius: 4px;
    margin-bottom: 4px;
}

    .qa-file-item-existing:last-child {
        margin-bottom: 0;
    }

.qa-file-icon-new {
    font-size: 16px;
    color: var(--default-text-color);
}

.qa-file-icon-existing {
    font-size: 16px;
    color: var(--default-text-color);
}

.qa-file-link-new {
    flex: 1;
    font-size: 12px;
    color: var(--default-text-color);
    text-decoration: none;
    cursor: pointer;
}

    .qa-file-link-new:hover {
        text-decoration: underline;
        color: var(--default-text-color);
    }

.qa-file-link-existing {
    flex: 1;
    font-size: 12px;
    color: var(--default-text-color);
    text-decoration: none;
    cursor: pointer;
}

    .qa-file-link-existing:hover {
        text-decoration: underline;
        color: var(--default-text-color);
    }

.qa-file-view-link {
    font-size: 11px;
    color: var(--default-text-color);
    text-decoration: none;
    padding: 4px;
}

.qa-file-size {
    font-size: 10px;
    color: var(--default-text-color);
    padding: 2px 6px;
    background: var(--custom-white);
    border-radius: 3px;
}

.qa-file-remove-btn {
    padding: 2px 8px;
    font-size: 11px;
    background: var(--default-background);
    border: 1px solid var(--default-border);
    color: var(--default-text-color);
}

    .qa-file-remove-btn:hover {
        background: var(--default-background);
        color: var(--default-text-color);
    }

.qa-file-remove-btn-existing {
    padding: 2px 8px;
    font-size: 11px;
    margin-left: 4px;
    background: var(--default-background);
    border: 1px solid var(--default-border);
    color: var(--default-text-color);
}

    .qa-file-remove-btn-existing:hover {
        background: var(--default-background);
        color: var(--default-text-color);
    }

button.btn.dropdown-toggle.nPriorityBtn {
    padding: 0;
}

button.btn.dropdown-toggle.nStatusListBtn {
    padding: 0;
}


/* Dark theme: Stop DateTime Modal (Bootstrap) */
[data-theme-mode=dark] #modalStopDateTime .modal-content {
    background-color: var(--custom-white) !important;
    color: var(--default-text-color) !important;
    border-color: var(--default-border) !important;
}

[data-theme-mode=dark] #modalStopDateTime .modal-header {
    background-color: var(--default-background) !important;
    color: var(--default-text-color) !important;
    border-bottom-color: var(--default-border) !important;
}

[data-theme-mode=dark] #modalStopDateTime .modal-title {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] #modalStopDateTime .modal-body {
    background-color: var(--custom-white) !important;
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] #modalStopDateTime .modal-footer {
    background-color: var(--custom-white) !important;
    border-top-color: var(--default-border) !important;
}

[data-theme-mode=dark] #modalStopDateTime .form-label {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] #modalStopDateTime #stopDateTimePicker {
    background-color: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border-color: var(--input-border) !important;
}

    [data-theme-mode=dark] #modalStopDateTime #stopDateTimePicker:focus {
        background-color: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
        border-color: var(--primary-color) !important;
        box-shadow: 0 0 0 0.25rem rgba(var(--primary-rgb), 0.25) !important;
    }

[data-theme-mode=dark] #modalStopDateTime .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

/* ============================================
   Quick Task Panel Dark Theme Styles
   ============================================ */

.quick-task-side-panel {
    position: fixed;
    right: -450px;
    /* bottom: 100px;*/
    width: 450px;
    background: #ffffff;
    box-shadow: -2px 0 15px rgba(0, 0, 0, 0.1);
    z-index: 1050;
    transition: right 0.3s ease;
    display: flex;
    flex-direction: column;
    top: 10px;
}

    .quick-task-side-panel.active {
        right: 40px;
    }

    .quick-task-side-panel .panel-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 5px 0px 0px 21px;
        border-bottom: 1px solid #e9ecef;
        background: #f8f9fa;
    }

        .quick-task-side-panel .panel-header h5 {
            margin: 0;
            font-size: 18px;
            font-weight: 600;
            color: #2c3e50;
        }

    .quick-task-side-panel .panel-close-btn {
        background: transparent;
        border: none;
        font-size: 18px;
        color: #6c757d;
        cursor: pointer;
        padding: 5px 10px;
        border-radius: 4px;
        transition: all 0.2s ease;
    }

        .quick-task-side-panel .panel-close-btn:hover {
            background: #e9ecef;
            color: #2c3e50;
        }

    .quick-task-side-panel .panel-body {
        flex: 1;
        overflow-y: auto;
        padding: 20px;
    }

    .quick-task-side-panel .panel-footer {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 10px;
        padding: 15px 20px;
        border-top: 1px solid #cacfd8;
        background: #f8f9fa;
    }

.quick-task-panel-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1040;
    display: none;
    transition: opacity 0.3s ease;
}

    .quick-task-panel-overlay.active {
        display: block;
    }


[data-theme-mode=dark] .quick-task-side-panel {
    background-color: var(--custom-white) !important;
    box-shadow: -2px 0 15px rgba(0, 0, 0, 0.5) !important;
}

    [data-theme-mode=dark] .quick-task-side-panel .panel-header {
        background-color: var(--default-background) !important;
        border-bottom-color: var(--default-border) !important;
    }

        [data-theme-mode=dark] .quick-task-side-panel .panel-header h5 {
            color: var(--default-text-color) !important;
        }

    [data-theme-mode=dark] .quick-task-side-panel .panel-close-btn {
        color: var(--default-text-color) !important;
    }

        [data-theme-mode=dark] .quick-task-side-panel .panel-close-btn:hover {
            background-color: var(--list-hover-focus-bg) !important;
            color: var(--default-text-color) !important;
        }

    [data-theme-mode=dark] .quick-task-side-panel .panel-body {
        background-color: var(--custom-white) !important;
        color: var(--default-text-color) !important;
    }

    [data-theme-mode=dark] .quick-task-side-panel .panel-footer {
        background-color: var(--default-background) !important;
        border-top-color: var(--default-border) !important;
    }


    [data-theme-mode=dark] .quick-task-side-panel .form-control,
    [data-theme-mode=dark] .quick-task-side-panel .form-select {
        background-color: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
        border-color: var(--input-border) !important;
    }

        [data-theme-mode=dark] .quick-task-side-panel .form-control:focus,
        [data-theme-mode=dark] .quick-task-side-panel .form-select:focus {
            background-color: var(--form-control-bg) !important;
            color: var(--default-text-color) !important;
            border-color: var(--primary-color) !important;
            box-shadow: 0 0 0 0.25rem rgba(var(--primary-rgb), 0.25) !important;
        }

        [data-theme-mode=dark] .quick-task-side-panel .form-control::placeholder,
        [data-theme-mode=dark] .quick-task-side-panel .form-select::placeholder {
            color: var(--text-muted) !important;
        }

.quick-task-side-panel .nLabel .error {
    color: rgb(var(--danger-rgb)) !important;
}


[data-theme-mode=dark] .quick-task-side-panel .nLabel {
    color: var(--default-text-color) !important;
}

    [data-theme-mode=dark] .quick-task-side-panel .nLabel .error {
        color: rgb(var(--danger-rgb)) !important;
    }

[data-theme-mode=dark] .quick-task-side-panel .text-danger {
    color: rgb(var(--danger-rgb)) !important;
}

[data-theme-mode=dark] .quick-task-panel-overlay {
    background: rgba(0, 0, 0, 0.7) !important;
}


[id^="StatusCount"] .btn, [id^="Statuscount"] .btn, [id*="StatusCount"] .btn, [id*="Statuscount"] .btn,
#StatusCountUser .btn, #StatusTeamCount .btn, #StatuscountDepartment .btn, #StatusCountIndustry1 .btn,
#statuscountcategory .btn, #StatusCountsubcategory1 .btn, #Statuscountrole .btn, #StatusCoutDesignation .btn,
#TimeZoneCount .btn, #MessageTypeCount .btn, #StatusGroupCount .btn {
    transition: all 0.2s ease !important;
}

    [id^="StatusCount"] .btn .badge, [id^="Statuscount"] .btn .badge,
    [id*="StatusCount"] .btn .badge, [id*="Statuscount"] .btn .badge,
    #StatusCountUser .btn .badge, #StatusTeamCount .btn .badge,
    #StatuscountDepartment .btn .badge, #StatusCountIndustry1 .btn .badge,
    #statuscountcategory .btn .badge, #StatusCountsubcategory1 .btn .badge, #Statuscountrole .btn .badge,
    #StatusCoutDesignation .btn .badge, #TimeZoneCount .btn .badge, #MessageTypeCount .btn .badge,
    #StatusGroupCount .btn .badge {
        color: #ffffff !important;
    }

[id^="StatusCount"] .btn-outline-primary .badge, [id^="Statuscount"] .btn-outline-primary .badge,
[id*="StatusCount"] .btn-outline-primary .badge, [id*="Statuscount"] .btn-outline-primary .badge,
#StatusCountUser .btn-outline-primary .badge, #StatusTeamCount .btn-outline-primary .badge,
#StatuscountDepartment .btn-outline-primary .badge, #StatusCountIndustry1 .btn-outline-primary .badge,
#statuscountcategory .btn-outline-primary .badge, #StatusCountsubcategory1 .btn-outline-primary .badge,
#Statuscountrole .btn-outline-primary .badge, #StatusCoutDesignation .btn-outline-primary .badge,
#TimeZoneCount .btn-outline-primary .badge, #MessageTypeCount .btn-outline-primary .badge,
#StatusGroupCount .btn-outline-primary .badge {
    background-color: var(--primary-color) !important;
    color: #ffffff !important;
}

[id^="StatusCount"] .btn-outline-secondary .badge, [id^="Statuscount"] .btn-outline-secondary .badge,
[id*="StatusCount"] .btn-outline-secondary .badge, [id*="Statuscount"] .btn-outline-secondary .badge,
#StatusCountUser .btn-outline-secondary .badge, #StatusTeamCount .btn-outline-secondary .badge,
#StatuscountDepartment .btn-outline-secondary .badge, #StatusCountIndustry1 .btn-outline-secondary .badge,
#statuscountcategory .btn-outline-secondary .badge, #StatusCountsubcategory1 .btn-outline-secondary .badge,
#Statuscountrole .btn-outline-secondary .badge, #StatusCoutDesignation .btn-outline-secondary .badge,
#TimeZoneCount .btn-outline-secondary .badge, #MessageTypeCount .btn-outline-secondary .badge,
#StatusGroupCount .btn-outline-secondary .badge {
    background-color: rgb(var(--secondary-rgb)) !important;
    color: #ffffff !important;
}

[id^="StatusCount"] .btn-outline-danger, [id^="Statuscount"] .btn-outline-danger,
[id*="StatusCount"] .btn-outline-danger, [id*="Statuscount"] .btn-outline-danger,
#StatusCountUser .btn-outline-danger, #StatusTeamCount .btn-outline-danger,
#StatuscountDepartment .btn-outline-danger, #StatusCountIndustry1 .btn-outline-danger,
#statuscountcategory .btn-outline-danger, #StatusCountsubcategory1 .btn-outline-danger,
#Statuscountrole .btn-outline-danger, #StatusCoutDesignation .btn-outline-danger,
#TimeZoneCount .btn-outline-danger, #MessageTypeCount .btn-outline-danger,
#StatusGroupCount .btn-outline-danger {
    border-color: rgb(var(--danger-rgb)) !important;
    color: rgb(var(--danger-rgb)) !important;
}


    [id^="StatusCount"] .btn-outline-danger .badge, [id^="Statuscount"] .btn-outline-danger .badge,
    [id*="StatusCount"] .btn-outline-danger .badge, [id*="Statuscount"] .btn-outline-danger .badge,
    #StatusCountUser .btn-outline-danger .badge, #StatusTeamCount .btn-outline-danger .badge,
    #StatuscountDepartment .btn-outline-danger .badge, #StatusCountIndustry1 .btn-outline-danger .badge,
    #statuscountcategory .btn-outline-danger .badge, #StatusCountsubcategory1 .btn-outline-danger .badge,
    #Statuscountrole .btn-outline-danger .badge, #StatusCoutDesignation .btn-outline-danger .badge,
    #TimeZoneCount .btn-outline-danger .badge, #MessageTypeCount .btn-outline-danger .badge,
    #StatusGroupCount .btn-outline-danger .badge {
        background-color: rgb(var(--danger-rgb)) !important;
        color: #ffffff !important;
    }


[id^="StatusCount"] .btn-outline-primary:hover, [id^="Statuscount"] .btn-outline-primary:hover,
[id*="StatusCount"] .btn-outline-primary:hover, [id*="Statuscount"] .btn-outline-primary:hover,
#StatusCountUser .btn-outline-primary:hover, #StatusTeamCount .btn-outline-primary:hover,
#StatuscountDepartment .btn-outline-primary:hover, #StatusCountIndustry1 .btn-outline-primary:hover,
#statuscountcategory .btn-outline-primary:hover, #StatusCountsubcategory1 .btn-outline-primary:hover,
#Statuscountrole .btn-outline-primary:hover, #StatusCoutDesignation .btn-outline-primary:hover,
#TimeZoneCount .btn-outline-primary:hover, #MessageTypeCount .btn-outline-primary:hover,
#StatusGroupCount .btn-outline-primary:hover {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

    [id^="StatusCount"] .btn-outline-primary:hover b, [id^="Statuscount"] .btn-outline-primary:hover b,
    [id*="StatusCount"] .btn-outline-primary:hover b, [id*="Statuscount"] .btn-outline-primary:hover b,
    #StatusCountUser .btn-outline-primary:hover b, #StatusTeamCount .btn-outline-primary:hover b,
    #StatuscountDepartment .btn-outline-primary:hover b, #StatusCountIndustry1 .btn-outline-primary:hover b,
    #statuscountcategory .btn-outline-primary:hover b, #StatusCountsubcategory1 .btn-outline-primary:hover b,
    #Statuscountrole .btn-outline-primary:hover b, #StatusCoutDesignation .btn-outline-primary:hover b,
    #TimeZoneCount .btn-outline-primary:hover b, #MessageTypeCount .btn-outline-primary:hover b,
    #StatusGroupCount .btn-outline-primary:hover b {
        color: #ffffff !important;
    }

    [id^="StatusCount"] .btn-outline-primary:hover .badge, [id^="Statuscount"] .btn-outline-primary:hover .badge,
    [id*="StatusCount"] .btn-outline-primary:hover .badge, [id*="Statuscount"] .btn-outline-primary:hover .badge,
    #StatusCountUser .btn-outline-primary:hover .badge, #StatusTeamCount .btn-outline-primary:hover .badge,
    #StatuscountDepartment .btn-outline-primary:hover .badge, #StatusCountIndustry1 .btn-outline-primary:hover .badge,
    #statuscountcategory .btn-outline-primary:hover .badge, #StatusCountsubcategory1 .btn-outline-primary:hover .badge,
    #Statuscountrole .btn-outline-primary:hover .badge, #StatusCoutDesignation .btn-outline-primary:hover .badge,
    #TimeZoneCount .btn-outline-primary:hover .badge, #MessageTypeCount .btn-outline-primary:hover .badge,
    #StatusGroupCount .btn-outline-primary:hover .badge {
        background-color: #ffffff !important;
        color: var(--primary-color) !important;
        border-color: #ffffff !important;
    }

[id^="StatusCount"] .btn-outline-secondary:hover, [id^="Statuscount"] .btn-outline-secondary:hover,
[id*="StatusCount"] .btn-outline-secondary:hover, [id*="Statuscount"] .btn-outline-secondary:hover,
#StatusCountUser .btn-outline-secondary:hover, #StatusTeamCount .btn-outline-secondary:hover,
#StatuscountDepartment .btn-outline-secondary:hover, #StatusCountIndustry1 .btn-outline-secondary:hover,
#statuscountcategory .btn-outline-secondary:hover, #StatusCountsubcategory1 .btn-outline-secondary:hover,
#Statuscountrole .btn-outline-secondary:hover, #StatusCoutDesignation .btn-outline-secondary:hover,
#TimeZoneCount .btn-outline-secondary:hover, #MessageTypeCount .btn-outline-secondary:hover,
#StatusGroupCount .btn-outline-secondary:hover {
    background-color: rgb(var(--secondary-rgb)) !important;
    border-color: rgb(var(--secondary-rgb)) !important;
}

    [id^="StatusCount"] .btn-outline-secondary:hover b, [id^="Statuscount"] .btn-outline-secondary:hover b,
    [id*="StatusCount"] .btn-outline-secondary:hover b, [id*="Statuscount"] .btn-outline-secondary:hover b,
    #StatusCountUser .btn-outline-secondary:hover b, #StatusTeamCount .btn-outline-secondary:hover b,
    #StatuscountDepartment .btn-outline-secondary:hover b, #StatusCountIndustry1 .btn-outline-secondary:hover b,
    #statuscountcategory .btn-outline-secondary:hover b, #StatusCountsubcategory1 .btn-outline-secondary:hover b,
    #Statuscountrole .btn-outline-secondary:hover b, #StatusCoutDesignation .btn-outline-secondary:hover b,
    #TimeZoneCount .btn-outline-secondary:hover b, #MessageTypeCount .btn-outline-secondary:hover b,
    #StatusGroupCount .btn-outline-secondary:hover b {
        color: #ffffff !important;
    }

    [id^="StatusCount"] .btn-outline-secondary:hover .badge, [id^="Statuscount"] .btn-outline-secondary:hover .badge,
    [id*="StatusCount"] .btn-outline-secondary:hover .badge, [id*="Statuscount"] .btn-outline-secondary:hover .badge,
    #StatusCountUser .btn-outline-secondary:hover .badge, #StatusTeamCount .btn-outline-secondary:hover .badge,
    #StatuscountDepartment .btn-outline-secondary:hover .badge, #StatusCountIndustry1 .btn-outline-secondary:hover .badge,
    #statuscountcategory .btn-outline-secondary:hover .badge, #StatusCountsubcategory1 .btn-outline-secondary:hover .badge,
    #Statuscountrole .btn-outline-secondary:hover .badge, #StatusCoutDesignation .btn-outline-secondary:hover .badge,
    #TimeZoneCount .btn-outline-secondary:hover .badge, #MessageTypeCount .btn-outline-secondary:hover .badge,
    #StatusGroupCount .btn-outline-secondary:hover .badge {
        background-color: #ffffff !important;
        color: rgb(var(--secondary-rgb)) !important;
        border-color: #ffffff !important;
    }

[id^="StatusCount"] .btn-outline-danger:hover, [id^="Statuscount"] .btn-outline-danger:hover,
[id*="StatusCount"] .btn-outline-danger:hover, [id*="Statuscount"] .btn-outline-danger:hover,
#StatusCountUser .btn-outline-danger:hover, #StatusTeamCount .btn-outline-danger:hover,
#StatuscountDepartment .btn-outline-danger:hover, #StatusCountIndustry1 .btn-outline-danger:hover,
#statuscountcategory .btn-outline-danger:hover, #StatusCountsubcategory1 .btn-outline-danger:hover,
#Statuscountrole .btn-outline-danger:hover, #StatusCoutDesignation .btn-outline-danger:hover,
#TimeZoneCount .btn-outline-danger:hover, #MessageTypeCount .btn-outline-danger:hover,
#StatusGroupCount .btn-outline-danger:hover {
    background-color: rgb(var(--danger-rgb)) !important;
    border-color: rgb(var(--danger-rgb)) !important;
}

    [id^="StatusCount"] .btn-outline-danger:hover b, [id^="Statuscount"] .btn-outline-danger:hover b,
    [id*="StatusCount"] .btn-outline-danger:hover b, [id*="Statuscount"] .btn-outline-danger:hover b,
    #StatusCountUser .btn-outline-danger:hover b, #StatusTeamCount .btn-outline-danger:hover b,
    #StatuscountDepartment .btn-outline-danger:hover b, #StatusCountIndustry1 .btn-outline-danger:hover b,
    #statuscountcategory .btn-outline-danger:hover b, #StatusCountsubcategory1 .btn-outline-danger:hover b,
    #Statuscountrole .btn-outline-danger:hover b, #StatusCoutDesignation .btn-outline-danger:hover b,
    #TimeZoneCount .btn-outline-danger:hover b, #MessageTypeCount .btn-outline-danger:hover b,
    #StatusGroupCount .btn-outline-danger:hover b {
        color: #ffffff !important;
    }

    [id^="StatusCount"] .btn-outline-danger:hover .badge, [id^="Statuscount"] .btn-outline-danger:hover .badge,
    [id*="StatusCount"] .btn-outline-danger:hover .badge, [id*="Statuscount"] .btn-outline-danger:hover .badge,
    #StatusCountUser .btn-outline-danger:hover .badge, #StatusTeamCount .btn-outline-danger:hover .badge,
    #StatuscountDepartment .btn-outline-danger:hover .badge, #StatusCountIndustry1 .btn-outline-danger:hover .badge,
    #statuscountcategory .btn-outline-danger:hover .badge, #StatusCountsubcategory1 .btn-outline-danger:hover .badge,
    #Statuscountrole .btn-outline-danger:hover .badge, #StatusCoutDesignation .btn-outline-danger:hover .badge,
    #TimeZoneCount .btn-outline-danger:hover .badge, #MessageTypeCount .btn-outline-danger:hover .badge,
    #StatusGroupCount .btn-outline-danger:hover .badge {
        background-color: #ffffff !important;
        color: rgb(var(--danger-rgb)) !important;
        border-color: #ffffff !important;
    }

/* Dark Mode: Status Badge Buttons - Same as light mode (colored background) - Applied to all tables */
[data-theme-mode=dark] [id^="StatusCount"] .btn .badge, [data-theme-mode=dark] [id^="Statuscount"] .btn .badge,
[data-theme-mode=dark] [id*="StatusCount"] .btn .badge, [data-theme-mode=dark] [id*="Statuscount"] .btn .badge,
[data-theme-mode=dark] #StatusCountUser .btn .badge, [data-theme-mode=dark] #StatusTeamCount .btn .badge,
[data-theme-mode=dark] #StatuscountDepartment .btn .badge, [data-theme-mode=dark] #StatusCountIndustry1 .btn .badge,
[data-theme-mode=dark] #statuscountcategory .btn .badge, [data-theme-mode=dark] #StatusCountsubcategory1 .btn .badge,
[data-theme-mode=dark] #Statuscountrole .btn .badge, [data-theme-mode=dark] #StatusCoutDesignation .btn .badge,
[data-theme-mode=dark] #TimeZoneCount .btn .badge, [data-theme-mode=dark] #MessageTypeCount .btn .badge,
[data-theme-mode=dark] #StatusGroupCount .btn .badge {
    color: #ffffff !important;
}

[data-theme-mode=dark] [id^="StatusCount"] .btn-outline-primary .badge, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-primary .badge,
[data-theme-mode=dark] [id*="StatusCount"] .btn-outline-primary .badge, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-primary .badge,
[data-theme-mode=dark] #StatusCountUser .btn-outline-primary .badge, [data-theme-mode=dark] #StatusTeamCount .btn-outline-primary .badge,
[data-theme-mode=dark] #StatuscountDepartment .btn-outline-primary .badge, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-primary .badge,
[data-theme-mode=dark] #statuscountcategory .btn-outline-primary .badge, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-primary .badge,
[data-theme-mode=dark] #Statuscountrole .btn-outline-primary .badge, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-primary .badge,
[data-theme-mode=dark] #TimeZoneCount .btn-outline-primary .badge, [data-theme-mode=dark] #MessageTypeCount .btn-outline-primary .badge,
[data-theme-mode=dark] #StatusGroupCount .btn-outline-primary .badge {
    background-color: var(--primary-color) !important;
    color: #ffffff !important;
}

[data-theme-mode=dark] [id^="StatusCount"] .btn-outline-secondary .badge, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-secondary .badge,
[data-theme-mode=dark] [id*="StatusCount"] .btn-outline-secondary .badge, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-secondary .badge,
[data-theme-mode=dark] #StatusCountUser .btn-outline-secondary .badge, [data-theme-mode=dark] #StatusTeamCount .btn-outline-secondary .badge,
[data-theme-mode=dark] #StatuscountDepartment .btn-outline-secondary .badge, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-secondary .badge,
[data-theme-mode=dark] #statuscountcategory .btn-outline-secondary .badge, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-secondary .badge,
[data-theme-mode=dark] #Statuscountrole .btn-outline-secondary .badge, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-secondary .badge,
[data-theme-mode=dark] #TimeZoneCount .btn-outline-secondary .badge, [data-theme-mode=dark] #MessageTypeCount .btn-outline-secondary .badge,
[data-theme-mode=dark] #StatusGroupCount .btn-outline-secondary .badge {
    background-color: rgb(var(--secondary-rgb)) !important;
    color: #ffffff !important;
}

/* Dark Mode: Deactive button - danger color border (default state) */
[data-theme-mode=dark] [id^="StatusCount"] .btn-outline-danger, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-danger,
[data-theme-mode=dark] [id*="StatusCount"] .btn-outline-danger, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-danger,
[data-theme-mode=dark] #StatusCountUser .btn-outline-danger, [data-theme-mode=dark] #StatusTeamCount .btn-outline-danger,
[data-theme-mode=dark] #StatuscountDepartment .btn-outline-danger, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-danger,
[data-theme-mode=dark] #statuscountcategory .btn-outline-danger, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-danger,
[data-theme-mode=dark] #Statuscountrole .btn-outline-danger, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-danger,
[data-theme-mode=dark] #TimeZoneCount .btn-outline-danger, [data-theme-mode=dark] #MessageTypeCount .btn-outline-danger,
[data-theme-mode=dark] #StatusGroupCount .btn-outline-danger {
    border-color: rgb(var(--danger-rgb)) !important;
    color: rgb(var(--danger-rgb)) !important;
}

    [data-theme-mode=dark] [id^="StatusCount"] .btn-outline-danger .badge, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-danger .badge,
    [data-theme-mode=dark] [id*="StatusCount"] .btn-outline-danger .badge, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-danger .badge,
    [data-theme-mode=dark] #StatusCountUser .btn-outline-danger .badge, [data-theme-mode=dark] #StatusTeamCount .btn-outline-danger .badge,
    [data-theme-mode=dark] #StatuscountDepartment .btn-outline-danger .badge, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-danger .badge,
    [data-theme-mode=dark] #statuscountcategory .btn-outline-danger .badge, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-danger .badge,
    [data-theme-mode=dark] #Statuscountrole .btn-outline-danger .badge, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-danger .badge,
    [data-theme-mode=dark] #TimeZoneCount .btn-outline-danger .badge, [data-theme-mode=dark] #MessageTypeCount .btn-outline-danger .badge,
    [data-theme-mode=dark] #StatusGroupCount .btn-outline-danger .badge {
        background-color: rgb(var(--danger-rgb)) !important;
        color: #ffffff !important;
    }

/* Dark Mode: Hover states - Applied to all tables */
[data-theme-mode=dark] [id^="StatusCount"] .btn-outline-primary:hover, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-primary:hover,
[data-theme-mode=dark] [id*="StatusCount"] .btn-outline-primary:hover, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-primary:hover,
[data-theme-mode=dark] #StatusCountUser .btn-outline-primary:hover, [data-theme-mode=dark] #StatusTeamCount .btn-outline-primary:hover,
[data-theme-mode=dark] #StatuscountDepartment .btn-outline-primary:hover, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-primary:hover,
[data-theme-mode=dark] #statuscountcategory .btn-outline-primary:hover, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-primary:hover,
[data-theme-mode=dark] #Statuscountrole .btn-outline-primary:hover, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-primary:hover,
[data-theme-mode=dark] #TimeZoneCount .btn-outline-primary:hover, [data-theme-mode=dark] #MessageTypeCount .btn-outline-primary:hover,
[data-theme-mode=dark] #StatusGroupCount .btn-outline-primary:hover {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

    [data-theme-mode=dark] [id^="StatusCount"] .btn-outline-primary:hover b, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-primary:hover b,
    [data-theme-mode=dark] [id*="StatusCount"] .btn-outline-primary:hover b, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-primary:hover b,
    [data-theme-mode=dark] #StatusCountUser .btn-outline-primary:hover b, [data-theme-mode=dark] #StatusTeamCount .btn-outline-primary:hover b,
    [data-theme-mode=dark] #StatuscountDepartment .btn-outline-primary:hover b, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-primary:hover b,
    [data-theme-mode=dark] #statuscountcategory .btn-outline-primary:hover b, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-primary:hover b,
    [data-theme-mode=dark] #Statuscountrole .btn-outline-primary:hover b, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-primary:hover b,
    [data-theme-mode=dark] #TimeZoneCount .btn-outline-primary:hover b, [data-theme-mode=dark] #MessageTypeCount .btn-outline-primary:hover b,
    [data-theme-mode=dark] #StatusGroupCount .btn-outline-primary:hover b {
        color: #ffffff !important;
    }

    [data-theme-mode=dark] [id^="StatusCount"] .btn-outline-primary:hover .badge, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-primary:hover .badge,
    [data-theme-mode=dark] [id*="StatusCount"] .btn-outline-primary:hover .badge, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-primary:hover .badge,
    [data-theme-mode=dark] #StatusCountUser .btn-outline-primary:hover .badge, [data-theme-mode=dark] #StatusTeamCount .btn-outline-primary:hover .badge,
    [data-theme-mode=dark] #StatuscountDepartment .btn-outline-primary:hover .badge, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-primary:hover .badge,
    [data-theme-mode=dark] #statuscountcategory .btn-outline-primary:hover .badge, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-primary:hover .badge,
    [data-theme-mode=dark] #Statuscountrole .btn-outline-primary:hover .badge, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-primary:hover .badge,
    [data-theme-mode=dark] #TimeZoneCount .btn-outline-primary:hover .badge, [data-theme-mode=dark] #MessageTypeCount .btn-outline-primary:hover .badge,
    [data-theme-mode=dark] #StatusGroupCount .btn-outline-primary:hover .badge {
        background-color: #ffffff !important;
        color: var(--primary-color) !important;
        border-color: #ffffff !important;
    }

[data-theme-mode=dark] [id^="StatusCount"] .btn-outline-secondary:hover, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-secondary:hover,
[data-theme-mode=dark] [id*="StatusCount"] .btn-outline-secondary:hover, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-secondary:hover,
[data-theme-mode=dark] #StatusCountUser .btn-outline-secondary:hover, [data-theme-mode=dark] #StatusTeamCount .btn-outline-secondary:hover,
[data-theme-mode=dark] #StatuscountDepartment .btn-outline-secondary:hover, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-secondary:hover,
[data-theme-mode=dark] #statuscountcategory .btn-outline-secondary:hover, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-secondary:hover,
[data-theme-mode=dark] #Statuscountrole .btn-outline-secondary:hover, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-secondary:hover,
[data-theme-mode=dark] #TimeZoneCount .btn-outline-secondary:hover, [data-theme-mode=dark] #MessageTypeCount .btn-outline-secondary:hover,
[data-theme-mode=dark] #StatusGroupCount .btn-outline-secondary:hover {
    background-color: rgb(var(--secondary-rgb)) !important;
    border-color: rgb(var(--secondary-rgb)) !important;
}

    [data-theme-mode=dark] [id^="StatusCount"] .btn-outline-secondary:hover b, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-secondary:hover b,
    [data-theme-mode=dark] [id*="StatusCount"] .btn-outline-secondary:hover b, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-secondary:hover b,
    [data-theme-mode=dark] #StatusCountUser .btn-outline-secondary:hover b, [data-theme-mode=dark] #StatusTeamCount .btn-outline-secondary:hover b,
    [data-theme-mode=dark] #StatuscountDepartment .btn-outline-secondary:hover b, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-secondary:hover b,
    [data-theme-mode=dark] #statuscountcategory .btn-outline-secondary:hover b, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-secondary:hover b,
    [data-theme-mode=dark] #Statuscountrole .btn-outline-secondary:hover b, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-secondary:hover b,
    [data-theme-mode=dark] #TimeZoneCount .btn-outline-secondary:hover b, [data-theme-mode=dark] #MessageTypeCount .btn-outline-secondary:hover b,
    [data-theme-mode=dark] #StatusGroupCount .btn-outline-secondary:hover b {
        color: #ffffff !important;
    }

    [data-theme-mode=dark] [id^="StatusCount"] .btn-outline-secondary:hover .badge, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-secondary:hover .badge,
    [data-theme-mode=dark] [id*="StatusCount"] .btn-outline-secondary:hover .badge, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-secondary:hover .badge,
    [data-theme-mode=dark] #StatusCountUser .btn-outline-secondary:hover .badge, [data-theme-mode=dark] #StatusTeamCount .btn-outline-secondary:hover .badge,
    [data-theme-mode=dark] #StatuscountDepartment .btn-outline-secondary:hover .badge, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-secondary:hover .badge,
    [data-theme-mode=dark] #statuscountcategory .btn-outline-secondary:hover .badge, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-secondary:hover .badge,
    [data-theme-mode=dark] #Statuscountrole .btn-outline-secondary:hover .badge, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-secondary:hover .badge,
    [data-theme-mode=dark] #TimeZoneCount .btn-outline-secondary:hover .badge, [data-theme-mode=dark] #MessageTypeCount .btn-outline-secondary:hover .badge,
    [data-theme-mode=dark] #StatusGroupCount .btn-outline-secondary:hover .badge {
        background-color: #ffffff !important;
        color: rgb(var(--secondary-rgb)) !important;
        border-color: #ffffff !important;
    }

[data-theme-mode=dark] [id^="StatusCount"] .btn-outline-danger:hover, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-danger:hover,
[data-theme-mode=dark] [id*="StatusCount"] .btn-outline-danger:hover, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-danger:hover,
[data-theme-mode=dark] #StatusCountUser .btn-outline-danger:hover, [data-theme-mode=dark] #StatusTeamCount .btn-outline-danger:hover,
[data-theme-mode=dark] #StatuscountDepartment .btn-outline-danger:hover, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-danger:hover,
[data-theme-mode=dark] #statuscountcategory .btn-outline-danger:hover, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-danger:hover,
[data-theme-mode=dark] #Statuscountrole .btn-outline-danger:hover, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-danger:hover,
[data-theme-mode=dark] #TimeZoneCount .btn-outline-danger:hover, [data-theme-mode=dark] #MessageTypeCount .btn-outline-danger:hover,
[data-theme-mode=dark] #StatusGroupCount .btn-outline-danger:hover {
    background-color: rgb(var(--danger-rgb)) !important;
    border-color: rgb(var(--danger-rgb)) !important;
}

    [data-theme-mode=dark] [id^="StatusCount"] .btn-outline-danger:hover b, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-danger:hover b,
    [data-theme-mode=dark] [id*="StatusCount"] .btn-outline-danger:hover b, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-danger:hover b,
    [data-theme-mode=dark] #StatusCountUser .btn-outline-danger:hover b, [data-theme-mode=dark] #StatusTeamCount .btn-outline-danger:hover b,
    [data-theme-mode=dark] #StatuscountDepartment .btn-outline-danger:hover b, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-danger:hover b,
    [data-theme-mode=dark] #statuscountcategory .btn-outline-danger:hover b, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-danger:hover b,
    [data-theme-mode=dark] #Statuscountrole .btn-outline-danger:hover b, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-danger:hover b,
    [data-theme-mode=dark] #TimeZoneCount .btn-outline-danger:hover b, [data-theme-mode=dark] #MessageTypeCount .btn-outline-danger:hover b,
    [data-theme-mode=dark] #StatusGroupCount .btn-outline-danger:hover b {
        color: #ffffff !important;
    }

    [data-theme-mode=dark] [id^="StatusCount"] .btn-outline-danger:hover .badge, [data-theme-mode=dark] [id^="Statuscount"] .btn-outline-danger:hover .badge,
    [data-theme-mode=dark] [id*="StatusCount"] .btn-outline-danger:hover .badge, [data-theme-mode=dark] [id*="Statuscount"] .btn-outline-danger:hover .badge,
    [data-theme-mode=dark] #StatusCountUser .btn-outline-danger:hover .badge, [data-theme-mode=dark] #StatusTeamCount .btn-outline-danger:hover .badge,
    [data-theme-mode=dark] #StatuscountDepartment .btn-outline-danger:hover .badge, [data-theme-mode=dark] #StatusCountIndustry1 .btn-outline-danger:hover .badge,
    [data-theme-mode=dark] #statuscountcategory .btn-outline-danger:hover .badge, [data-theme-mode=dark] #StatusCountsubcategory1 .btn-outline-danger:hover .badge,
    [data-theme-mode=dark] #Statuscountrole .btn-outline-danger:hover .badge, [data-theme-mode=dark] #StatusCoutDesignation .btn-outline-danger:hover .badge,
    [data-theme-mode=dark] #TimeZoneCount .btn-outline-danger:hover .badge, [data-theme-mode=dark] #MessageTypeCount .btn-outline-danger:hover .badge,
    [data-theme-mode=dark] #StatusGroupCount .btn-outline-danger:hover .badge {
        background-color: #ffffff !important;
        color: rgb(var(--danger-rgb)) !important;
        border-color: #ffffff !important;
    }

/* Teams Modal - Dropdown overflow fixes */
#ModalAddTeams.ui-dialog-content,
.ui-dialog.modal-md .ui-dialog-content {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    max-height: calc(100vh - 150px) !important;
}

.ui-dialog.modal-md {
    overflow: visible !important;
}

#ModalAddTeams .nFormHorizontal {
    overflow: visible !important;
}

    #ModalAddTeams .nFormHorizontal > li {
        overflow: visible !important;
        position: relative !important;
    }

#ModalAddTeams .list-unstyled.nFormHorizontal,
#ModalAddTeams .list-unstyled.nFormHorizontal > li {
    overflow: visible !important;
}


#ModalAddTeams .input-group {
    position: static !important;
    overflow: visible !important;
}

#ModalAddTeams .bootstrap-select {
    position: relative !important;
    z-index: 1050 !important;
    overflow: visible !important;
}

    #ModalAddTeams .bootstrap-select .dropdown-menu {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: auto !important;
        z-index: 10500 !important;
        margin-top: 2px !important;
        transform: none !important;
        max-height: none !important;
        overflow: visible !important;
        overflow-y: visible !important;
        overflow-x: visible !important;
    }

    #ModalAddTeams .bootstrap-select.dropup .dropdown-menu {
        top: auto !important;
        bottom: 100% !important;
        margin-top: 0 !important;
        margin-bottom: 2px !important;
    }

    #ModalAddTeams .bootstrap-select .dropdown-menu ul.inner,
    #ModalAddTeams .bootstrap-select .dropdown-menu > ul,
    #ModalAddTeams .bootstrap-select .dropdown-menu ul,
    #ModalAddTeams .bootstrap-select > .dropdown-menu > ul.inner,
    #ModalAddTeams .dropdown-menu ul.inner,
    div#ModalAddTeams ul.inner,
    #ModalAddTeams .bootstrap-select[data-id="Adduser"] .dropdown-menu ul.inner {
        max-height: 205px !important;
        min-height: auto !important;
        overflow-y: scroll !important;
        overflow-x: hidden !important;
        display: block !important;
    }

    #ModalAddTeams .bootstrap-select .inner,
    #ModalAddTeams .dropdown-menu .inner {
        max-height: 205px !important;
        overflow-x: hidden !important;
    }

    #ModalAddTeams .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar,
    #ModalAddTeams .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar,
    #ModalAddTeams .dropdown-menu ul.inner::-webkit-scrollbar {
        width: 10px !important;
        height: 10px !important;
    }

    #ModalAddTeams .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-track,
    #ModalAddTeams .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-track,
    #ModalAddTeams .dropdown-menu ul.inner::-webkit-scrollbar-track {
        background: #e8e8e8 !important;
        border-radius: 5px !important;
    }

    #ModalAddTeams .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-thumb,
    #ModalAddTeams .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb,
    #ModalAddTeams .dropdown-menu ul.inner::-webkit-scrollbar-thumb {
        background: #888 !important;
        border-radius: 5px !important;
        border: 2px solid #e8e8e8 !important;
    }

        #ModalAddTeams .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-thumb:hover,
        #ModalAddTeams .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb:hover,
        #ModalAddTeams .dropdown-menu ul.inner::-webkit-scrollbar-thumb:hover {
            background: #444 !important;
        }

    #ModalAddTeams .bootstrap-select.open .dropdown-menu,
    #ModalAddTeams .bootstrap-select.show .dropdown-menu {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

#ModalAddTeams .row {
    overflow: visible !important;
}

#ModalAddTeams .col-12,
#ModalAddTeams .col-sm-6 {
    overflow: visible !important;
}

#ModalAddTeams .bootstrap-select .dropdown-menu .inner > li,
#ModalAddTeams .bootstrap-select .dropdown-menu ul.inner > li {
    display: list-item !important;
    list-style: none !important;
}

#ModalAddTeams .bootstrap-select .dropdown-menu .dropdown-item,
#ModalAddTeams .bootstrap-select .dropdown-menu li a {
    display: block !important;
    padding: 6px 12px !important;
    white-space: nowrap !important;
}

/* Status Badge List - Remove inline styles */
.list-status.nMenuItems {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
}

    .list-status.nMenuItems .n-li-items {
        flex-shrink: 0 !important;
    }

/* Groups Modal - Dropdown overflow fixes */
#ModalAddGroup .modal-body {
    max-height: calc(100vh - 200px);
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

#ModalAddGroup {
    overflow: visible !important;
}

    #ModalAddGroup .nFormHorizontal {
        overflow: visible !important;
    }

        #ModalAddGroup .nFormHorizontal > li {
            overflow: visible !important;
            position: relative !important;
        }



    #ModalAddGroup .bootstrap-select {
        width: 100% !important;
        flex: 1 !important;
    }

    #ModalAddGroup .nFormFields.nCustomeField .nControl > input[type="text"],
    #ModalAddGroup .nFormFields.nCustomeField .nControl > input[placeholder*="Select"] {
        display: none !important;
        visibility: hidden !important;
        position: absolute !important;
        left: -9999px !important;
    }

    #ModalAddGroup .dropdown-menu input {
        display: block !important;
        visibility: visible !important;
        position: relative !important;
        left: auto !important;
    }

    #ModalAddGroup .bootstrap-select .dropdown-menu {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: auto !important;
        z-index: 10500 !important;
        margin-top: 2px !important;
        transform: none !important;
        max-height: none !important;
        overflow: visible !important;
        max-height: 250px !important;
        overflow-y: auto !important;
    }

        #ModalAddGroup .bootstrap-select .dropdown-menu .bs-searchbox,
        #ModalAddGroup .bootstrap-select .dropdown-menu .bs-searchbox input,
        #ModalAddGroup .dropdown-menu .bs-searchbox,
        #ModalAddGroup .dropdown-menu .bs-searchbox input {
            display: block !important;
            visibility: visible !important;
            position: relative !important;
            left: auto !important;
            height: auto !important;
            width: auto !important;
        }

    #ModalAddGroup .bootstrap-select.dropup .dropdown-menu {
        top: auto !important;
        bottom: 100% !important;
        margin-top: 0 !important;
        margin-bottom: 2px !important;
    }

    #ModalAddGroup .bootstrap-select .dropdown-menu ul.inner,
    #ModalAddGroup .bootstrap-select .dropdown-menu > ul,
    #ModalAddGroup .bootstrap-select .dropdown-menu ul,
    #ModalAddGroup .bootstrap-select > .dropdown-menu > ul.inner,
    #ModalAddGroup .dropdown-menu ul.inner {
        max-height: 250px !important;
        min-height: auto !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        display: block !important;
    }

    #ModalAddGroup .bootstrap-select .inner,
    #ModalAddGroup .dropdown-menu .inner {
        max-height: 250px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    #ModalAddGroup .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar,
    #ModalAddGroup .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar,
    #ModalAddGroup .dropdown-menu ul.inner::-webkit-scrollbar {
        width: 10px !important;
        height: 10px !important;
    }

    #ModalAddGroup .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-track,
    #ModalAddGroup .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-track,
    #ModalAddGroup .dropdown-menu ul.inner::-webkit-scrollbar-track {
        background: #e8e8e8 !important;
        border-radius: 5px !important;
    }

    #ModalAddGroup .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-thumb,
    #ModalAddGroup .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb,
    #ModalAddGroup .dropdown-menu ul.inner::-webkit-scrollbar-thumb {
        background: #888 !important;
        border-radius: 5px !important;
        border: 2px solid #e8e8e8 !important;
    }

        #ModalAddGroup .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-thumb:hover,
        #ModalAddGroup .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb:hover,
        #ModalAddGroup .dropdown-menu ul.inner::-webkit-scrollbar-thumb:hover {
            background: #444 !important;
        }

    #ModalAddGroup .bootstrap-select.open .dropdown-menu {
        display: block !important;
    }

    #ModalAddGroup .nBtn.btn-add,
    #ModalAddGroup .input-group-btn.nBtn.btn-add {
        background-color: #28a745 !important;
        color: white !important;
        border: 1px solid #28a745 !important;
        padding: 8px 12px !important;
        border-radius: 0 4px 4px 0 !important;
        cursor: pointer !important;
        transition: background-color 0.3s !important;
        height: 38px !important;
        margin-left: -1px !important;
    }

        #ModalAddGroup .nBtn.btn-add:hover,
        #ModalAddGroup .input-group-btn.nBtn.btn-add:hover {
            background-color: #218838 !important;
            border-color: #218838 !important;
        }

#selectedGroupUsersList {
    margin-top: 10px;
}

    #selectedGroupUsersList li {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 8px 12px;
        background: #f8f9fa;
        border-radius: 4px;
        margin-bottom: 5px;
    }

        #selectedGroupUsersList li .user-name {
            flex: 1;
            font-size: 14px;
            color: #333;
        }

        #selectedGroupUsersList li .btn-remove {
            background: #dc3545;
            color: white;
            border: none;
            padding: 4px 8px;
            border-radius: 4px;
            cursor: pointer;
            font-size: 12px;
        }

            #selectedGroupUsersList li .btn-remove:hover {
                background: #c82333;
            }

#ModalAddGroup .nFormHorizontal {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}

    #ModalAddGroup .nFormHorizontal > li {
        list-style: none;
        padding: 0 10px;
        margin-bottom: 15px;
    }

        #ModalAddGroup .nFormHorizontal > li.col-sm-12 {
            width: 100%;
        }

        #ModalAddGroup .nFormHorizontal > li.col-sm-6 {
            width: 50%;
        }

/* AddEditGroup Page Styles - Dark Theme Compatible */
.role-form-container {
    display: flex;
    gap: 20px;
    min-height: calc(100vh - 200px);
}

.role-details-panel {
    width: 400px;
    background: var(--form-control-bg);
    border-radius: 8px;
    padding: 20px;
    border: 1px solid var(--default-border);
}

.permission-tree-panel {
    flex: 1;
    background: var(--form-control-bg);
    border-radius: 8px;
    padding: 20px;
    border: 1px solid var(--default-border);
    max-height: calc(100vh - 200px);
    overflow-y: auto;
}

.permission-accordion .accordion-item {
    margin-bottom: 8px;
    border: 1px solid var(--default-border);
    border-radius: 6px;
}

.permission-accordion .accordion-button {
    padding: 12px 16px;
    font-size: 14px;
    background: var(--list-hover-focus-bg);
    display: flex;
    align-items: center;
    color: var(--default-text-color);
}

    .permission-accordion .accordion-button:not(.collapsed) {
        background: var(--gray-3);
        color: var(--default-text-color);
    }

    .permission-accordion .accordion-button:focus {
        box-shadow: none;
        border-color: var(--default-border);
    }

.permission-checkbox {
    cursor: pointer;
    width: 18px;
    transition: all 0.3s ease;
    height: 18px;
    margin-right: 8px;
}

.permission-item {
    padding: 10px 12px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--default-border);
    transition: background 0.2s;
}

    .permission-item:last-child {
        border-bottom: none;
    }

    .permission-item:hover {
        background: var(--list-hover-focus-bg);
    }

.button-permissions-table tbody tr {
    cursor: pointer;
    transition: background-color 0.2s;
}

    .button-permissions-table tbody tr:hover {
        background-color: var(--list-hover-focus-bg);
    }

.permission-code {
    font-family: monospace;
    font-size: 11px;
}

.permission-name {
    flex: 1;
    font-size: 14px;
}

.module-header-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.module-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
}

.module-header-right {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-left: auto;
}

.permission-toggle {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.85rem;
    white-space: nowrap;
}

    .permission-toggle input[type="checkbox"] {
        cursor: pointer;
        width: 16px;
        height: 16px;
        margin: 0;
    }

    .permission-toggle span {
        font-size: 0.85rem;
        color: var(--default-text-color);
    }

.module-badge {
    font-size: 0.75rem;
    padding: 2px 8px;
    border-radius: 12px;
    background: var(--gray-3);
    color: var(--text-muted);
}

.button-permissions-table {
    margin-top: 12px;
}

    .button-permissions-table table {
        font-size: 0.85rem;
    }

    .button-permissions-table th {
        font-size: 0.8rem;
        text-transform: uppercase;
        letter-spacing: 0.03em;
        background: var(--list-hover-focus-bg);
        border-bottom: 2px solid var(--default-border);
        color: var(--default-text-color);
    }

    .button-permissions-table td {
        vertical-align: middle;
        padding: 8px 12px;
        color: var(--default-text-color);
    }

    .button-permissions-table code {
        font-size: 0.8rem;
        background: var(--gray-2);
        padding: 2px 6px;
        border-radius: 4px;
        color: var(--default-text-color);
    }

#ddlUsers {
    border: 1px solid var(--default-border);
    border-radius: 6px;
    padding: 8px;
    font-size: 14px;
    background: var(--form-control-bg);
    color: var(--default-text-color);
    min-height: 120px;
}

    #ddlUsers:focus {
        border-color: var(--primary-color);
        box-shadow: 0 0 0 0.2rem var(--primary02);
        outline: none;
    }

    #ddlUsers option {
        padding: 8px 12px;
        background: var(--form-control-bg);
        color: var(--default-text-color);
    }

        #ddlUsers option:checked {
            background-color: var(--primary-color);
            color: var(--custom-white);
        }

        #ddlUsers option:hover {
            background-color: var(--list-hover-focus-bg);
        }

/* Bootstrap Selectpicker styling for #ddlUsers */
.bootstrap-select #ddlUsers {
    border: 1px solid var(--default-border);
    border-radius: 6px;
    background: var(--form-control-bg);
    color: var(--default-text-color);
}

    .bootstrap-select #ddlUsers .dropdown-toggle {
        background: var(--form-control-bg);
        color: var(--default-text-color);
        border: 1px solid var(--default-border);
    }

    .bootstrap-select #ddlUsers .dropdown-menu {
        background: var(--form-control-bg);
        border: 1px solid var(--default-border);
        color: var(--default-text-color);
    }

        .bootstrap-select #ddlUsers .dropdown-menu .dropdown-item {
            color: var(--default-text-color);
            background: var(--form-control-bg);
        }

            .bootstrap-select #ddlUsers .dropdown-menu .dropdown-item:hover,
            .bootstrap-select #ddlUsers .dropdown-menu .dropdown-item:focus {
                background: var(--list-hover-focus-bg);
                color: var(--default-text-color);
            }

            .bootstrap-select #ddlUsers .dropdown-menu .dropdown-item.active,
            .bootstrap-select #ddlUsers .dropdown-menu .dropdown-item.selected {
                background-color: var(--primary-color);
                color: var(--custom-white);
            }

                .bootstrap-select #ddlUsers .dropdown-menu .dropdown-item.active:hover,
                .bootstrap-select #ddlUsers .dropdown-menu .dropdown-item.selected:hover {
                    background-color: var(--primary-color);
                    color: var(--custom-white);
                }

    .bootstrap-select #ddlUsers .bs-searchbox input {
        background: var(--form-control-bg);
        color: var(--default-text-color);
        border: 1px solid var(--default-border);
    }

    .bootstrap-select #ddlUsers .bs-actionsbox .btn {
        background: var(--form-control-bg);
        color: var(--default-text-color);
        border: 1px solid var(--default-border);
    }

        .bootstrap-select #ddlUsers .bs-actionsbox .btn:hover {
            background: var(--list-hover-focus-bg);
            color: var(--default-text-color);
        }

.main-menu-permission {
    font-weight: 700 !important;
    background: var(--primary005) !important;
    border-left: 4px solid var(--primary-color) !important;
    padding-left: 12px !important;
    margin-left: -12px !important;
}

    .main-menu-permission .accordion-button {
        background: var(--primary005) !important;
        font-weight: 700 !important;
        color: var(--default-text-color) !important;
    }

        .main-menu-permission .accordion-button:not(.collapsed) {
            background: var(--primary01) !important;
            color: var(--default-text-color) !important;
        }

.view-permission-highlight,
.view-permission-highlight span {
    color: var(--primary-color) !important;
    font-weight: 700 !important;
}

.view-checkbox-main-menu {
    accent-color: var(--primary-color) !important;
}

    .view-checkbox-main-menu:checked {
        border-color: var(--primary-color) !important;
    }

#permissionSearch {
    border: 1px solid var(--default-border);
    border-radius: 6px;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    background: var(--form-control-bg);
    color: var(--default-text-color);
}

    #permissionSearch:focus {
        border-color: var(--primary-color);
        outline: 0;
        box-shadow: 0 0 0 0.25rem var(--primary02);
    }

.bootstrap-select .dropdown-toggle {
    border: 1px solid var(--default-border);
    border-radius: 6px;
    padding: 0.375rem 0.75rem;
    background: var(--form-control-bg);
    color: var(--default-text-color);
}

    .bootstrap-select .dropdown-toggle:focus {
        border-color: var(--primary-color);
        outline: 0;
        box-shadow: 0 0 0 0.25rem var(--primary02);
    }

.input-group-text {
    background: var(--form-control-bg);
    border-color: var(--default-border);
    color: var(--text-muted);
}

.bi-hourglass-split {
    font-size: 2rem;
}

/* AddEditGroup Buttons - Ensure text visibility in both themes */
.role-details-panel .btn-primary {
    color: var(--custom-white) !important;
}

    .role-details-panel .btn-primary i {
        color: var(--custom-white) !important;
    }

.role-details-panel .btn-danger {
    color: var(--custom-white) !important;
}

    .role-details-panel .btn-danger i {
        color: var(--custom-white) !important;
    }

    .role-details-panel .btn-danger:hover {
        color: var(--custom-white) !important;
    }

[data-theme-mode=dark] .role-details-panel .btn-primary {
    color: var(--custom-white) !important;
}

    [data-theme-mode=dark] .role-details-panel .btn-primary i {
        color: var(--custom-white) !important;
    }

[data-theme-mode=dark] .role-details-panel .btn-danger {
    color: var(--custom-white) !important;
}

    [data-theme-mode=dark] .role-details-panel .btn-danger i {
        color: var(--custom-white) !important;
    }

    [data-theme-mode=dark] .role-details-panel .btn-danger:hover {
        color: var(--custom-white) !important;
    }

.permission-tree-panel .btn-success {
    color: var(--custom-white) !important;
}

    .permission-tree-panel .btn-success i {
        color: var(--custom-white) !important;
    }

.permission-tree-panel .btn-warning {
    color: var(--custom-white) !important;
}

    .permission-tree-panel .btn-warning i {
        color: var(--custom-white) !important;
    }

.permission-tree-panel .btn-outline-primary {
    color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

    .permission-tree-panel .btn-outline-primary i {
        color: var(--primary-color) !important;
    }

[data-theme-mode=dark] .permission-tree-panel .btn-success {
    color: var(--custom-white) !important;
}

    [data-theme-mode=dark] .permission-tree-panel .btn-success i {
        color: var(--custom-white) !important;
    }

[data-theme-mode=dark] .permission-tree-panel .btn-warning {
    color: var(--custom-white) !important;
}

    [data-theme-mode=dark] .permission-tree-panel .btn-warning i {
        color: var(--custom-white) !important;
    }

[data-theme-mode=dark] .permission-tree-panel .btn-outline-primary {
    color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

    [data-theme-mode=dark] .permission-tree-panel .btn-outline-primary i {
        color: var(--primary-color) !important;
    }

/* AddEditGroup - White Text Visibility in Dark Theme */
.role-details-panel .form-label,
.role-details-panel label,
.role-details-panel h5,
.permission-tree-panel .form-label,
.permission-tree-panel label,
.permission-tree-panel h5 {
    color: var(--default-text-color) !important;
}

.role-details-panel .text-danger,
.permission-tree-panel .text-danger {
    color: var(--danger-rgb) !important;
}

.role-details-panel .text-muted,
.role-details-panel small.text-muted,
.permission-tree-panel .text-muted,
.permission-tree-panel small.text-muted {
    color: var(--text-muted) !important;
}

.role-details-panel .form-control,
.role-details-panel .form-select,
.permission-tree-panel .form-control,
.permission-tree-panel .form-select {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border: 1px solid var(--default-border) !important;
}

    .role-details-panel .form-control:focus,
    .role-details-panel .form-select:focus,
    .permission-tree-panel .form-control:focus,
    .permission-tree-panel .form-select:focus {
        background: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
        border-color: var(--primary-color) !important;
        box-shadow: 0 0 0 0.25rem var(--primary02) !important;
    }

    .role-details-panel .form-control::placeholder,
    .role-details-panel .form-select::placeholder,
    .permission-tree-panel .form-control::placeholder,
    .permission-tree-panel .form-select::placeholder {
        color: var(--text-muted) !important;
        opacity: 0.7;
    }

/* Bootstrap Selectpicker Complete Styling for #ddlUsers */
.bootstrap-select.btn-group {
    width: 100% !important;
}

.bootstrap-select #ddlUsers + .dropdown-toggle,
.bootstrap-select[data-id="ddlUsers"] .dropdown-toggle {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border: 1px solid var(--default-border) !important;
    padding: 0.375rem 0.75rem !important;
    min-height: 38px;
}

    .bootstrap-select #ddlUsers + .dropdown-toggle:focus,
    .bootstrap-select[data-id="ddlUsers"] .dropdown-toggle:focus {
        border-color: var(--primary-color) !important;
        box-shadow: 0 0 0 0.25rem var(--primary02) !important;
    }

    .bootstrap-select #ddlUsers + .dropdown-toggle .filter-option,
    .bootstrap-select[data-id="ddlUsers"] .dropdown-toggle .filter-option {
        color: var(--default-text-color) !important;
    }

    .bootstrap-select #ddlUsers + .dropdown-toggle .bs-caret,
    .bootstrap-select[data-id="ddlUsers"] .dropdown-toggle .bs-caret {
        color: var(--default-text-color) !important;
    }

.bootstrap-select #ddlUsers ~ .dropdown-menu,
.bootstrap-select[data-id="ddlUsers"] ~ .dropdown-menu {
    background: var(--form-control-bg) !important;
    border: 1px solid var(--default-border) !important;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    max-height: 300px !important;
    overflow-y: auto !important;
}

    .bootstrap-select #ddlUsers ~ .dropdown-menu .bs-searchbox {
        padding: 8px;
        border-bottom: 1px solid var(--default-border);
    }

        .bootstrap-select #ddlUsers ~ .dropdown-menu .bs-searchbox input {
            background: var(--form-control-bg) !important;
            color: var(--default-text-color) !important;
            border: 1px solid var(--default-border) !important;
            padding: 6px 12px !important;
        }

            .bootstrap-select #ddlUsers ~ .dropdown-menu .bs-searchbox input:focus {
                border-color: var(--primary-color) !important;
                box-shadow: 0 0 0 0.25rem var(--primary02) !important;
            }

            .bootstrap-select #ddlUsers ~ .dropdown-menu .bs-searchbox input::placeholder {
                color: var(--text-muted) !important;
            }

    .bootstrap-select #ddlUsers ~ .dropdown-menu .bs-actionsbox {
        padding: 8px;
        border-bottom: 1px solid var(--default-border);
        display: flex;
        gap: 8px;
    }

        .bootstrap-select #ddlUsers ~ .dropdown-menu .bs-actionsbox .btn {
            background: var(--primary-color) !important;
            color: var(--custom-white) !important;
            border: 1px solid var(--primary-color) !important;
            padding: 4px 12px !important;
            font-size: 0.875rem !important;
            border-radius: 4px !important;
            flex: 1;
        }

            .bootstrap-select #ddlUsers ~ .dropdown-menu .bs-actionsbox .btn:hover,
            .bootstrap-select #ddlUsers ~ .dropdown-menu .bs-actionsbox .btn:focus {
                background: var(--primary-color) !important;
                color: var(--custom-white) !important;
                opacity: 0.9;
            }

    .bootstrap-select #ddlUsers ~ .dropdown-menu .inner {
        max-height: 200px;
        overflow-y: auto;
    }

        .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item {
            color: var(--default-text-color) !important;
            background: var(--form-control-bg) !important;
            padding: 8px 12px !important;
            border: none !important;
        }

            .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item:hover,
            .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item:focus {
                background: var(--list-hover-focus-bg) !important;
                color: var(--default-text-color) !important;
            }

            .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item.active,
            .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item.selected {
                background-color: var(--primary-color) !important;
                color: var(--custom-white) !important;
            }

                .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item.active:hover,
                .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item.selected:hover {
                    background-color: var(--primary-color) !important;
                    color: var(--custom-white) !important;
                }

            .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item .nPerson {
                color: var(--default-text-color) !important;
            }

            .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item.active .nPerson,
            .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item.selected .nPerson {
                color: var(--custom-white) !important;
            }

            .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item .nPerson b {
                color: inherit !important;
            }

            .bootstrap-select #ddlUsers ~ .dropdown-menu .inner .dropdown-item .nPerson .nCap {
                color: var(--custom-white) !important;
            }

/* Task Modal (#dalgAddNewTask) - Dark Theme Styling */
/*#dalgAddNewTask .nLabel,
#dalgAddNewTask label,
#dalgAddNewTask .form-label {
    color: var(--default-text-color) !important;
}*/

#dalgAddNewTask .text-danger,
#dalgAddNewTask .error {
    color: var(--danger-rgb) !important;
}

/* Validation Error Messages - Red Color for both light and dark themes */
#dalgAddNewTask #TaskTitle,
#dalgAddNewTask #TaskProject,
#dalgAddNewTask #TaskDepartment,
#dalgAddNewTask #ModuleError,
#dalgAddNewTask #TaskAssignto,
#dalgAddNewTask #TaskStartDate,
#dalgAddNewTask #WorkType,
#dalgAddNewTask #TaskType,
#dalgAddNewTask #TaskDescriptionError,
#dalgAddNewTask #TaskComplaintError,
#dalgAddNewTask #TaskCauseError,
#dalgAddNewTask #TaskCorrectionError,
#dalgAddNewTask span.text-danger {
    color: rgb(var(--danger-rgb)) !important;
}

/* Ensure validation error messages are visible in dark theme */
[data-theme-mode=dark] #dalgAddNewTask #TaskTitle,
[data-theme-mode=dark] #dalgAddNewTask #TaskProject,
[data-theme-mode=dark] #dalgAddNewTask #TaskDepartment,
[data-theme-mode=dark] #dalgAddNewTask #ModuleError,
[data-theme-mode=dark] #dalgAddNewTask #TaskAssignto,
[data-theme-mode=dark] #dalgAddNewTask #TaskStartDate,
[data-theme-mode=dark] #dalgAddNewTask #WorkType,
[data-theme-mode=dark] #dalgAddNewTask #TaskType,
[data-theme-mode=dark] #dalgAddNewTask #TaskDescriptionError,
[data-theme-mode=dark] #dalgAddNewTask #TaskComplaintError,
[data-theme-mode=dark] #dalgAddNewTask #TaskCauseError,
[data-theme-mode=dark] #dalgAddNewTask #TaskCorrectionError,
[data-theme-mode=dark] #dalgAddNewTask span.text-danger {
    color: rgb(var(--danger-rgb)) !important;
}

/* Required Field Asterisk - Red Color */
#dalgAddNewTask .nLabel .error,
#dalgAddNewTask label .error,
#dalgAddNewTask .form-label .error,
#dalgAddNewTask .nLabel span.error,
#dalgAddNewTask label span.error,
#dalgAddNewTask .form-label span.error {
    color: #dc3545 !important;
    font-weight: bold !important;
    margin-left: 2px;
}

#dalgAddNewTask .text-muted {
    color: var(--text-muted) !important;
}

/*#dalgAddNewTask .form-control,
#dalgAddNewTask .form-select {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border: 1px solid var(--default-border) !important;
}
*/
#dalgAddNewTask .form-control:focus,
#dalgAddNewTask .form-select:focus {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 0.25rem var(--primary02) !important;
}

#dalgAddNewTask .form-control::placeholder {
    color: var(--text-muted) !important;
    opacity: 0.7;
}

/* Task Modal Bootstrap Selectpicker Styling */
#dalgAddNewTask .bootstrap-select .dropdown-toggle {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border: 1px solid var(--default-border) !important;
}

    #dalgAddNewTask .bootstrap-select .dropdown-toggle:focus {
        border-color: var(--primary-color) !important;
        box-shadow: 0 0 0 0.25rem var(--primary02) !important;
    }

#dalgAddNewTask .bootstrap-select .dropdown-menu {
    background: var(--form-control-bg) !important;
    border: 1px solid var(--default-border) !important;
    color: var(--default-text-color) !important;
}

    #dalgAddNewTask .bootstrap-select .dropdown-menu .bs-searchbox input {
        background: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
        border: 1px solid var(--default-border) !important;
    }

        #dalgAddNewTask .bootstrap-select .dropdown-menu .bs-searchbox input:focus {
            border-color: var(--primary-color) !important;
            box-shadow: 0 0 0 0.25rem var(--primary02) !important;
        }

    #dalgAddNewTask .bootstrap-select .dropdown-menu .bs-actionsbox .btn {
        background: var(--primary-color) !important;
        color: var(--custom-white) !important;
        border: 1px solid var(--primary-color) !important;
    }

        #dalgAddNewTask .bootstrap-select .dropdown-menu .bs-actionsbox .btn:hover {
            background: var(--primary-color) !important;
            color: var(--custom-white) !important;
            opacity: 0.9;
        }

    #dalgAddNewTask .bootstrap-select .dropdown-menu .dropdown-item {
        color: var(--default-text-color) !important;
        background: var(--form-control-bg) !important;
    }

        #dalgAddNewTask .bootstrap-select .dropdown-menu .dropdown-item:hover,
        #dalgAddNewTask .bootstrap-select .dropdown-menu .dropdown-item:focus {
            background: var(--list-hover-focus-bg) !important;
            color: var(--default-text-color) !important;
        }

        #dalgAddNewTask .bootstrap-select .dropdown-menu .dropdown-item.active,
        #dalgAddNewTask .bootstrap-select .dropdown-menu .dropdown-item.selected {
            background-color: var(--primary-color) !important;
            color: var(--custom-white) !important;
        }

/* Task Modal Buttons - Ensure proper colors */
#dalgAddNewTask .btn-primary,
#dalgAddNewTask #btnTaskSave,
.ui-dialog[aria-describedby="dalgAddNewTask"] .btn-primary,
.ui-dialog[aria-describedby="dalgAddNewTask"] .ui-dialog-buttonpane .btn-primary {
    background-color: var(--primary-color) !important;
    /*    color: var(--custom-white) !important;*/
    border-color: var(--primary-color) !important;
}

#dalgAddNewTask .btn-danger,
#dalgAddNewTask #btnTaskCancel,
.ui-dialog[aria-describedby="dalgAddNewTask"] .btn-danger,
.ui-dialog[aria-describedby="dalgAddNewTask"] .ui-dialog-buttonpane .btn-danger {
    background-color: rgb(var(--danger-rgb)) !important;
    /*    color: var(--custom-white) !important;*/
    border-color: rgb(var(--danger-rgb)) !important;
}

    #dalgAddNewTask .btn-danger:hover,
    #dalgAddNewTask #btnTaskCancel:hover {
        background-color: rgba(var(--danger-rgb), 0.9) !important;
        border-color: rgba(var(--danger-rgb), 0.9) !important;
        /* color: var(--custom-white) !important;*/
    }

/* Task Modal Footer - Ensure visibility and proper styling */
#dalgAddNewTask .modal-footer {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 1rem !important;
    border-top: 1px solid var(--default-border) !important;
    background-color: var(--custom-white) !important;
}

    #dalgAddNewTask .modal-footer .btn {
        min-width: 60px !important;
        font-size: 14px !important;
        /*   padding: 0.5rem 1rem !important;*/
    }

    /* Task Modal Save Button - Specific styling */
    #dalgAddNewTask #btnTaskSave,
    #dalgAddNewTask .modal-footer #btnTaskSave {
        background-color: var(--primary-color) !important;
        /* color: var(--custom-white) !important;*/
        border-color: var(--primary-color) !important;
        font-weight: 500 !important;
        transition: all 0.2s ease !important;
    }

        #dalgAddNewTask #btnTaskSave:active,
        #dalgAddNewTask .modal-footer #btnTaskSave:active {
            background-color: rgba(var(--primary-rgb), 0.8) !important;
            transform: translateY(0) !important;
        }

        #dalgAddNewTask #btnTaskSave:disabled,
        #dalgAddNewTask .modal-footer #btnTaskSave:disabled {
            opacity: 0.6 !important;
            cursor: not-allowed !important;
            transform: none !important;
        }

/* Dark theme support for modal footer */
[data-theme-mode=dark] #dalgAddNewTask .modal-footer {
    background-color: var(--custom-white) !important;
    border-top-color: var(--default-border) !important;
}

    [data-theme-mode=dark] #dalgAddNewTask .modal-footer .btn-danger,
    [data-theme-mode=dark] #dalgAddNewTask .modal-footer #btnTaskCancel {
        background-color: rgb(var(--danger-rgb)) !important;
        color: var(--default-text-color) !important;
        border-color: rgb(var(--danger-rgb)) !important;
    }

    [data-theme-mode=dark] #dalgAddNewTask .modal-footer .btn-primary,
    [data-theme-mode=dark] #dalgAddNewTask .modal-footer #btnTaskSave {
        background-color: var(--primary-color) !important;
        color: var(--default-text-color) !important;
        border-color: var(--primary-color) !important;
    }

#dalgAddNewTask .btn-secondary,
.ui-dialog[aria-describedby="dalgAddNewTask"] .btn-secondary,
.ui-dialog[aria-describedby="dalgAddNewTask"] .ui-dialog-buttonpane .btn-secondary {
    background-color: var(--gray-3) !important;
    color: var(--default-text-color) !important;
    border-color: var(--default-border) !important;
}

/* Task Modal Input Group Text */
#dalgAddNewTask .input-group-text {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border: 1px solid var(--default-border) !important;
}

#dalgAddNewTask .root-cause-analysis-section .form-label.fw-bold {
    color: var(--default-text-color) !important;
}

#dalgAddNewTask .root-cause-analysis-section .bi-exclamation-circle {
    color: var(--danger-rgb) !important;
}

#dalgAddNewTask .root-cause-analysis-section .bi-question-circle {
    color: var(--warning-rgb) !important;
}

#dalgAddNewTask .root-cause-analysis-section .bi-check-circle {
    color: var(--success-rgb) !important;
}

#dalgAddNewTask .nLabel[style*="font-weight: 600"] {
    color: var(--default-text-color) !important;
}

/* ✅ Dark Theme - Task Modal Text Colors - All Text Should Be White */
[data-theme-mode=dark] #dalgAddNewTask .modal-content,
[data-theme-mode=dark] #dalgAddNewTask .modal-body {
    background-color: var(--custom-white) !important;
    color: #ffffff !important;
}

[data-theme-mode=dark] #dalgAddNewTask .modal-header {
    background-color: var(--custom-white) !important;
    border-bottom-color: var(--default-border) !important;
}

[data-theme-mode=dark] #dalgAddNewTask .modal-title,
[data-theme-mode=dark] #dalgAddNewTask .modal-title h5,
[data-theme-mode=dark] #dalgAddNewTask #dalgAddNewTaskLabel {
    color: #ffffff !important;
}

[data-theme-mode=dark] #dalgAddNewTask .btn-close,
[data-theme-mode=dark] #dalgAddNewTask .modal-header .btn-close {
    filter: brightness(0) invert(1) !important;
    opacity: 1 !important;
}

    [data-theme-mode=dark] #dalgAddNewTask .btn-close:hover,
    [data-theme-mode=dark] #dalgAddNewTask .modal-header .btn-close:hover {
        opacity: 0.8 !important;
    }

/*[data-theme-mode=dark] #dalgAddNewTask .nLabel,
[data-theme-mode=dark] #dalgAddNewTask label,
[data-theme-mode=dark] #dalgAddNewTask .form-label,
[data-theme-mode=dark] #dalgAddNewTask .nLabel span:not(.error) {
    color: #ffffff !important;
}*/

/*[data-theme-mode=dark] #dalgAddNewTask .form-control,
[data-theme-mode=dark] #dalgAddNewTask .form-select,
[data-theme-mode=dark] #dalgAddNewTask input[type="text"],
[data-theme-mode=dark] #dalgAddNewTask input[type="date"],
[data-theme-mode=dark] #dalgAddNewTask input[type="number"],
[data-theme-mode=dark] #dalgAddNewTask input[type="url"],
[data-theme-mode=dark] #dalgAddNewTask textarea {
    background: var(--form-control-bg) !important;
    color: #ffffff !important;
    border: 1px solid var(--default-border) !important;
}*/

[data-theme-mode=dark] #dalgAddNewTask .form-control:focus,
[data-theme-mode=dark] #dalgAddNewTask .form-select:focus,
[data-theme-mode=dark] #dalgAddNewTask input[type="text"]:focus,
[data-theme-mode=dark] #dalgAddNewTask input[type="date"]:focus,
[data-theme-mode=dark] #dalgAddNewTask input[type="number"]:focus,
[data-theme-mode=dark] #dalgAddNewTask input[type="url"]:focus,
[data-theme-mode=dark] #dalgAddNewTask textarea:focus {
    background: var(--form-control-bg) !important;
    color: #ffffff !important;
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 0.25rem var(--primary02) !important;
}

[data-theme-mode=dark] #dalgAddNewTask .form-control::placeholder,
[data-theme-mode=dark] #dalgAddNewTask textarea::placeholder {
    color: rgba(255, 255, 255, 0.6) !important;
    opacity: 1 !important;
}

/* ✅ Dark Theme - Calendar Icon (Flatpickr) - White Color */
[data-theme-mode=dark] #dalgAddNewTask .flatpickr-input[readonly],
[data-theme-mode=dark] #dalgAddNewTask input[type="date"] {
    color: #ffffff !important;
}

    /* ✅ Dark Theme - Native Date Input Calendar Icon - White */
    [data-theme-mode=dark] #dalgAddNewTask input[type="date"]::-webkit-calendar-picker-indicator {
        filter: brightness(0) invert(1) !important;
        opacity: 1 !important;
        cursor: pointer;
        width: 20px !important;
        height: 20px !important;
    }

    [data-theme-mode=dark] #dalgAddNewTask input[type="date"]::-webkit-inner-spin-button,
    [data-theme-mode=dark] #dalgAddNewTask input[type="date"]::-webkit-clear-button {
        filter: brightness(0) invert(1) !important;
    }

/* ✅ Dark Theme - Flatpickr Calendar Styling */
[data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar {
    background-color: var(--custom-white) !important;
    border-color: var(--default-border) !important;
    color: #ffffff !important;
}

    [data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar .flatpickr-month,
    [data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar .flatpickr-weekdays,
    [data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar .flatpickr-day {
        color: #ffffff !important;
    }

    [data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar .flatpickr-prev-month,
    [data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar .flatpickr-next-month {
        color: #ffffff !important;
        fill: #ffffff !important;
    }

        [data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar .flatpickr-prev-month:hover,
        [data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar .flatpickr-next-month:hover {
            color: #ffffff !important;
            fill: #ffffff !important;
        }

    /* ✅ Dark Theme - Calendar Icon SVG/Icon - White */
    [data-theme-mode=dark] #dalgAddNewTask .flatpickr-input ~ .flatpickr-calendar .flatpickr-calendar-arrow,
    [data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar .flatpickr-calendar-arrow::before {
        border-top-color: #ffffff !important;
        border-bottom-color: #ffffff !important;
    }

    [data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar .flatpickr-months .flatpickr-month {
        color: #ffffff !important;
    }

    [data-theme-mode=dark] #dalgAddNewTask .flatpickr-calendar .flatpickr-weekdays .flatpickr-weekday {
        color: #ffffff !important;
        background: transparent !important;
    }

/* ✅ Dark Theme - Bootstrap Select Text Color */
[data-theme-mode=dark] #dalgAddNewTask .bootstrap-select .dropdown-toggle,
[data-theme-mode=dark] #dalgAddNewTask .bootstrap-select .filter-option {
    color: #ffffff !important;
}

[data-theme-mode=dark] #dalgAddNewTask .bootstrap-select .dropdown-menu {
    background: var(--form-control-bg) !important;
    border: 1px solid var(--default-border) !important;
    color: #ffffff !important;
}

    [data-theme-mode=dark] #dalgAddNewTask .bootstrap-select .dropdown-menu .dropdown-item {
        color: #ffffff !important;
        background: var(--form-control-bg) !important;
    }

        [data-theme-mode=dark] #dalgAddNewTask .bootstrap-select .dropdown-menu .dropdown-item:hover,
        [data-theme-mode=dark] #dalgAddNewTask .bootstrap-select .dropdown-menu .dropdown-item:focus {
            background: var(--list-hover-focus-bg) !important;
            color: #ffffff !important;
        }

        [data-theme-mode=dark] #dalgAddNewTask .bootstrap-select .dropdown-menu .dropdown-item.active,
        [data-theme-mode=dark] #dalgAddNewTask .bootstrap-select .dropdown-menu .dropdown-item.selected {
            background-color: var(--primary-color) !important;
            color: #ffffff !important;
        }

/* ✅ Dark Theme - Textarea and Rich Text Editors */
[data-theme-mode=dark] #dalgAddNewTask textarea,
[data-theme-mode=dark] #dalgAddNewTask .note-editor.note-frame,
[data-theme-mode=dark] #dalgAddNewTask .note-editor.note-frame .note-editing-area .note-editable {
    background: var(--form-control-bg) !important;
    color: #ffffff !important;
    border-color: var(--default-border) !important;
}

    [data-theme-mode=dark] #dalgAddNewTask .note-editor.note-frame .note-toolbar {
        background: var(--form-control-bg) !important;
        border-color: var(--default-border) !important;
    }

        [data-theme-mode=dark] #dalgAddNewTask .note-editor.note-frame .note-toolbar .note-btn {
            color: #ffffff !important;
            background: transparent !important;
            border-color: var(--default-border) !important;
        }

/* ✅ Dark Theme - Links and Buttons Text */
[data-theme-mode=dark] #dalgAddNewTask a,
[data-theme-mode=dark] #dalgAddNewTask .nTaskModal-assign-to-me-btn {
    color: var(--primary-color) !important;
}

[data-theme-mode=dark] #dalgAddNewTask .text-muted {
    color: rgba(255, 255, 255, 0.7) !important;
}

/* Teams Grid - nPerson Styling (without badges, same as User page) */
.nPerson {
    display: flex;
    align-items: center;
    gap: 8px;
}

i.fa-user-o:not(button i), i.fa-calendar:not(button i), .bi-clock-history:not(button .bi-clock-history) {
    color: #3684ff !important; /* Default (light theme) */
    font-size: 14px;
    margin-right: 4px;
}

[data-theme-mode=dark] i.fa-user-o:not(button i), [data-theme-mode=dark] i.fa-calendar:not(button i), [data-theme-mode=dark] .bi-clock-history:not(button .bi-clock-history) {
    color: #b3d0ff !important; /* Darker blue for dark theme */
}

button.nAssignToBtn i.fa-user-o,
button.nAssignToBtn i.fa-calendar,
button.nAssignToBtn .bi-clock-history {
    color: #3684ff !important; /* Default (light theme) */
}

[data-theme-mode=dark] button.nAssignToBtn i.fa-user-o,
[data-theme-mode=dark] button.nAssignToBtn i.fa-calendar,
[data-theme-mode=dark] button.nAssignToBtn .bi-clock-history {
    color: #b3d0ff !important; /* Darker blue for dark theme */
}

.nPerson b {
    color: var(--default-text-color) !important;
    font-weight: 600;
}

/* Teams Table Header - Proper Styling */
#DataTableTeams thead th {
    background: var(--list-hover-focus-bg) !important;
    color: var(--default-text-color) !important;
    border-color: var(--default-border) !important;
    font-weight: 600;
    padding: 12px 8px;
    text-align: left;
    vertical-align: middle;
    white-space: nowrap;
    position: relative;
}

    #DataTableTeams thead th:not(.ncheckbox) {
        padding-right: 30px;
    }

    #DataTableTeams thead th.sorting,
    #DataTableTeams thead th.sorting_asc,
    #DataTableTeams thead th.sorting_desc {
        cursor: pointer;
        position: relative;
        padding-right: 30px;
    }

        #DataTableTeams thead th.sorting:after,
        #DataTableTeams thead th.sorting_asc:after,
        #DataTableTeams thead th.sorting_desc:after {
            content: '';
            position: absolute;
            right: 8px;
            top: 50%;
            transform: translateY(-50%);
            width: 0;
            height: 0;
            border-left: 4px solid transparent;
            border-right: 4px solid transparent;
        }

        #DataTableTeams thead th.sorting:after {
            border-top: 4px solid var(--text-muted);
            border-bottom: 4px solid var(--text-muted);
            margin-top: -2px;
        }

        #DataTableTeams thead th.sorting_asc:after {
            border-bottom: 4px solid var(--primary-color);
            border-top: none;
        }

        #DataTableTeams thead th.sorting_desc:after {
            border-top: 4px solid var(--primary-color);
            border-bottom: none;
        }

    #DataTableTeams thead th.ncheckbox {
        text-align: center;
        width: 50px;
    }

#DataTableTeams tbody td {
    color: var(--default-text-color) !important;
    border-color: var(--default-border) !important;
    padding: 10px 8px;
    vertical-align: middle;
}

#DataTableTeams tbody tr:hover {
    background-color: var(--list-hover-focus-bg) !important;
}

#DataTableTeams tbody tr:nth-child(even) {
    background-color: transparent;
}

#DataTableTeams tbody tr:nth-child(odd) {
    background-color: transparent;
}

/* Teams Modal (#ModalAddTeams) - Dark Theme Styling */
#ModalAddTeams .nLabel,
#ModalAddTeams label,
#ModalAddTeams .form-label {
    color: var(--default-text-color) !important;
}

#ModalAddTeams .text-danger,
#ModalAddTeams .error {
    color: var(--danger-rgb) !important;
}

#ModalAddTeams .form-control,
#ModalAddTeams .form-select {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border: 1px solid var(--default-border) !important;
}

    #ModalAddTeams .form-control:focus,
    #ModalAddTeams .form-select:focus {
        background: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
        border-color: var(--primary-color) !important;
        box-shadow: 0 0 0 0.25rem var(--primary02) !important;
    }

    #ModalAddTeams .form-control::placeholder {
        color: var(--text-muted) !important;
        opacity: 0.7;
    }

/* Teams Modal Buttons */
#ModalAddTeams .btn-primary,
#ModalAddTeams .modal-footer .btn-primary {
    background-color: var(--primary-color) !important;
    color: #ffffff !important;
    border-color: var(--primary-color) !important;
    padding: 0.375rem 0.75rem !important; /* ✅ Remove any padding overrides */
}

#ModalAddTeams .btn-danger,
#ModalAddTeams .modal-footer .btn-danger {
    background-color: var(--danger-rgb) !important;
    color: #ffffff !important;
    border-color: var(--danger-rgb) !important;
    padding: 0.375rem 0.75rem !important; /* ✅ Remove any padding overrides */
}

    #ModalAddTeams .btn-primary i,
    #ModalAddTeams .btn-danger i {
        color: #ffffff !important;
    }

#ModalAddTeams .btn-primary:hover,
#ModalAddTeams .btn-primary:focus,
#ModalAddTeams .modal-footer .btn-primary:hover,
#ModalAddTeams .modal-footer .btn-primary:focus {
    background-color: var(--primary-color) !important;
    color: #ffffff !important;
    border-color: var(--primary-color) !important;
    opacity: 0.9;
}

#ModalAddTeams .btn-danger:hover,
#ModalAddTeams .btn-danger:focus,
#ModalAddTeams .modal-footer .btn-danger:hover,
#ModalAddTeams .modal-footer .btn-danger:focus {
    background-color: var(--danger-rgb) !important;
    color: #ffffff !important;
    border-color: var(--danger-rgb) !important;
    opacity: 0.9;
}

/* ✅ FIX: Dark mode - All buttons white text */
[data-theme-mode="dark"] #ModalAddTeams .btn-primary,
[data-theme-mode="dark"] #ModalAddTeams .modal-footer .btn-primary,
[data-theme-mode="dark"] #ModalAddTeams .btn-danger,
[data-theme-mode="dark"] #ModalAddTeams .modal-footer .btn-danger,
[data-theme="dark"] #ModalAddTeams .btn-primary,
[data-theme="dark"] #ModalAddTeams .modal-footer .btn-primary,
[data-theme="dark"] #ModalAddTeams .btn-danger,
[data-theme="dark"] #ModalAddTeams .modal-footer .btn-danger,
.dark-theme #ModalAddTeams .btn-primary,
.dark-theme #ModalAddTeams .modal-footer .btn-primary,
.dark-theme #ModalAddTeams .btn-danger,
.dark-theme #ModalAddTeams .modal-footer .btn-danger,
body.dark #ModalAddTeams .btn-primary,
body.dark #ModalAddTeams .modal-footer .btn-primary,
body.dark #ModalAddTeams .btn-danger,
body.dark #ModalAddTeams .modal-footer .btn-danger {
    color: #ffffff !important;
}

/* Teams Modal + Buttons (Add User, Add Teams) */
#ModalAddTeams .btn-add,
#ModalAddTeams .input-group-btn,
#ModalAddTeams .nBtn.btn-add {
    background-color: var(--primary-color) !important;
    color: var(--custom-white) !important;
    border-color: var(--primary-color) !important;
}

    #ModalAddTeams .btn-add:hover,
    #ModalAddTeams .input-group-btn:hover,
    #ModalAddTeams .nBtn.btn-add:hover {
        background-color: var(--primary-color) !important;
        color: var(--custom-white) !important;
        opacity: 0.9;
    }

    #ModalAddTeams .btn-add i,
    #ModalAddTeams .input-group-btn i,
    #ModalAddTeams .nBtn.btn-add i {
        color: var(--custom-white) !important;
    }

/* Teams Modal Selectize Styling */
#ModalAddTeams .selectize-control,
#ModalAddTeams .selectize-input {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border: 1px solid var(--default-border) !important;
}

    #ModalAddTeams .selectize-input input {
        color: var(--default-text-color) !important;
    }

        #ModalAddTeams .selectize-input input::placeholder {
            color: var(--text-muted) !important;
            opacity: 0.7;
        }

#ModalAddTeams .selectize-dropdown {
    background: var(--form-control-bg) !important;
    border: 1px solid var(--default-border) !important;
    color: var(--default-text-color) !important;
}

    #ModalAddTeams .selectize-dropdown .option {
        color: var(--default-text-color) !important;
        background: var(--form-control-bg) !important;
    }

        #ModalAddTeams .selectize-dropdown .option:hover,
        #ModalAddTeams .selectize-dropdown .option.active {
            background: var(--list-hover-focus-bg) !important;
            color: var(--default-text-color) !important;
        }

        #ModalAddTeams .selectize-dropdown .option.selected {
            background-color: var(--primary-color) !important;
            color: var(--custom-white) !important;
        }

/* Teams Modal Bootstrap Selectpicker Styling */
#ModalAddTeams .bootstrap-select {
    width: 100% !important;
}

    #ModalAddTeams .bootstrap-select .dropdown-toggle {
        background: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
        border: 1px solid var(--default-border) !important;
        padding: 8px 12px;
        height: auto;
        min-height: 38px;
        display: flex;
        align-items: center;
        border-radius: 3px;
    }

        #ModalAddTeams .bootstrap-select .dropdown-toggle:focus {
            border-color: var(--primary-color) !important;
            box-shadow: 0 0 0 0.25rem var(--primary02) !important;
            outline: none;
        }

        #ModalAddTeams .bootstrap-select .dropdown-toggle .filter-option {
            color: var(--default-text-color) !important;
            text-align: left;
        }

        #ModalAddTeams .bootstrap-select .dropdown-toggle .filter-option-inner-inner {
            color: var(--default-text-color) !important;
        }

    #ModalAddTeams .bootstrap-select .dropdown-menu {
        background: var(--form-control-bg) !important;
        border: 1px solid var(--default-border) !important;
        color: var(--default-text-color) !important;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        margin-top: 4px;
        border-radius: 3px;
        max-height: 300px;
        overflow-y: auto;
    }

        #ModalAddTeams .bootstrap-select .dropdown-menu .bs-searchbox {
            padding: 8px;
            border-bottom: 1px solid var(--default-border);
        }

            #ModalAddTeams .bootstrap-select .dropdown-menu .bs-searchbox input {
                background: var(--form-control-bg) !important;
                color: var(--default-text-color) !important;
                border: 1px solid var(--default-border) !important;
                padding: 6px 10px;
                width: 100%;
                border-radius: 3px;
            }

                #ModalAddTeams .bootstrap-select .dropdown-menu .bs-searchbox input:focus {
                    border-color: var(--primary-color) !important;
                    box-shadow: 0 0 0 0.25rem var(--primary02) !important;
                    outline: none;
                }

                #ModalAddTeams .bootstrap-select .dropdown-menu .bs-searchbox input::placeholder {
                    color: var(--text-muted) !important;
                }


    /* ✅ FIX: Make Adduser dropdown look like normal form-select */
    #ModalAddTeams .bootstrap-select.btn-group {
        width: 100% !important;
    }

    #ModalAddTeams #Adduser + .dropdown-toggle,
    #ModalAddTeams .bootstrap-select[data-id="Adduser"] .dropdown-toggle,
    #ModalAddTeams .bootstrap-select:has(#Adduser) .dropdown-toggle {
        background: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
        border: 1px solid var(--default-border) !important;
        border-radius: 0.375rem 0 0 0.375rem !important;
        padding: 0.375rem 2.25rem 0.375rem 0.75rem !important;
        font-size: 0.875rem !important;
        font-weight: 400 !important;
        min-height: 38px !important;
        box-shadow: none !important;
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
    }

        #ModalAddTeams #Adduser + .dropdown-toggle:hover,
        #ModalAddTeams .bootstrap-select[data-id="Adduser"] .dropdown-toggle:hover,
        #ModalAddTeams .bootstrap-select:has(#Adduser) .dropdown-toggle:hover {
            background: var(--form-control-bg) !important;
            border-color: var(--default-border) !important;
        }

        #ModalAddTeams #Adduser + .dropdown-toggle:focus,
        #ModalAddTeams .bootstrap-select[data-id="Adduser"] .dropdown-toggle:focus,
        #ModalAddTeams .bootstrap-select:has(#Adduser) .dropdown-toggle:focus {
            background: var(--form-control-bg) !important;
            border-color: var(--primary-color) !important;
            box-shadow: 0 0 0 0.25rem var(--primary02) !important;
            outline: none !important;
        }

        #ModalAddTeams #Adduser + .dropdown-toggle .filter-option,
        #ModalAddTeams .bootstrap-select[data-id="Adduser"] .dropdown-toggle .filter-option,
        #ModalAddTeams .bootstrap-select:has(#Adduser) .dropdown-toggle .filter-option {
            color: var(--default-text-color) !important;
            text-align: left !important;
        }

        #ModalAddTeams #Adduser + .dropdown-toggle .bs-caret,
        #ModalAddTeams .bootstrap-select[data-id="Adduser"] .dropdown-toggle .bs-caret,
        #ModalAddTeams .bootstrap-select:has(#Adduser) .dropdown-toggle .bs-caret {
            position: absolute !important;
            right: 0.75rem !important;
            top: 50% !important;
            transform: translateY(-50%) !important;
            color: var(--default-text-color) !important;
            pointer-events: none !important;
        }

/* ✅ FIX: + icon button styling - white icon */
#ModalAddTeams .btnAddUser,
#ModalAddTeams .btn-add.btnAddUser {
    background: var(--primary-color) !important;
    color: #ffffff !important;
    border: 1px solid var(--primary-color) !important;
    border-radius: 0 0.375rem 0.375rem 0 !important;
    padding: 0.375rem 0.75rem !important;
    min-height: 38px !important;
}

    #ModalAddTeams .btnAddUser:hover,
    #ModalAddTeams .btn-add.btnAddUser:hover,
    #ModalAddTeams .btnAddUser:focus,
    #ModalAddTeams .btn-add.btnAddUser:focus {
        background: var(--primary-color) !important;
        color: #ffffff !important;
        border-color: var(--primary-color) !important;
        opacity: 0.9;
    }

    #ModalAddTeams .btnAddUser i,
    #ModalAddTeams .btn-add.btnAddUser i {
        color: #ffffff !important;
    }

/* ✅ FIX: Create Team button - white text */
#ModalAddTeams #btnTeamSave,
#ModalAddTeams .btn-primary#btnTeamSave {
    background: var(--primary-color) !important;
    color: #ffffff !important;
    border: 1px solid var(--primary-color) !important;
}

    #ModalAddTeams #btnTeamSave:hover,
    #ModalAddTeams .btn-primary#btnTeamSave:hover,
    #ModalAddTeams #btnTeamSave:focus,
    #ModalAddTeams .btn-primary#btnTeamSave:focus {
        background: var(--primary-color) !important;
        color: #ffffff !important;
        border-color: var(--primary-color) !important;
        opacity: 0.9;
    }

#ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox {
    padding: 8px;
    border-bottom: 1px solid var(--default-border);
    display: flex;
    gap: 8px;
}

    #ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox .btn {
        background: var(--primary-color) !important;
        color: #ffffff !important; /* ✅ FIX: White text color */
        border: 1px solid var(--primary-color) !important;
        padding: 6px 12px;
        border-radius: 3px;
        font-size: 13px;
        flex: 1;
        width: auto !important; /* ✅ FIX: Remove width: 50% override */
        min-width: 0;
    }

        #ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox .btn:hover,
        #ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox .btn:focus,
        #ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox .btn:active {
            background: var(--primary-color) !important;
            color: #ffffff !important; /* ✅ FIX: White text on hover/focus/active */
            border-color: var(--primary-color) !important;
            opacity: 0.9;
        }

    #ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox .btn-group {
        display: flex;
        gap: 8px;
        width: 100%;
    }

        #ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox .btn-group button {
            background: var(--primary-color) !important;
            color: #ffffff !important; /* ✅ FIX: White text color */
            border: 1px solid var(--primary-color) !important;
            padding: 6px 12px;
            border-radius: 3px;
            font-size: 13px;
            width: auto !important; /* ✅ FIX: Remove width: 50% */
            flex: 1;
            min-width: 0;
        }

            #ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox .btn-group button:hover,
            #ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox .btn-group button:focus,
            #ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox .btn-group button:active {
                background: var(--primary-color) !important;
                color: #ffffff !important; /* ✅ FIX: White text on hover/focus/active */
                border-color: var(--primary-color) !important;
                opacity: 0.9;
            }

    #ModalAddTeams .bootstrap-select .dropdown-menu .bs-actionsbox .btn:hover {
        background: var(--primary-color) !important;
        color: var(--custom-white) !important;
        opacity: 0.9;
    }

#ModalAddTeams .bootstrap-select .dropdown-menu .dropdown-item {
    color: var(--default-text-color) !important;
    background: var(--form-control-bg) !important;
    padding: 8px 12px;
    border: none;
    cursor: pointer;
}

    #ModalAddTeams .bootstrap-select .dropdown-menu .dropdown-item:hover,
    #ModalAddTeams .bootstrap-select .dropdown-menu .dropdown-item:focus {
        background: var(--list-hover-focus-bg) !important;
        color: var(--default-text-color) !important;
    }

    #ModalAddTeams .bootstrap-select .dropdown-menu .dropdown-item.active,
    #ModalAddTeams .bootstrap-select .dropdown-menu .dropdown-item.selected {
        background-color: var(--primary-color) !important;
        color: var(--custom-white) !important;
    }

#ModalAddTeams .bootstrap-select .dropdown-menu .inner {
    max-height: 200px;
    overflow-y: auto;
}

    #ModalAddTeams .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar {
        width: 6px;
    }

    #ModalAddTeams .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-track {
        background: var(--form-control-bg);
    }

    #ModalAddTeams .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb {
        background: var(--text-muted);
        border-radius: 3px;
    }

        #ModalAddTeams .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb:hover {
            background: var(--default-text-color);
        }

/* Teams Modal Input Group */
#ModalAddTeams .input-group {
    display: flex;
    align-items: stretch;
}

    #ModalAddTeams .input-group .form-select,
    #ModalAddTeams .input-group .form-control {
        flex: 1;
    }

    #ModalAddTeams .input-group-btn,
    #ModalAddTeams .input-group .btn-add {
        margin-left: 0;
        border-left: none;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }

        /* Teams Modal + Button - Primary Color (Same as User page) */
        #ModalAddTeams .input-group-btn .nBtn.btn-add,
        #ModalAddTeams .input-group .nBtn.btn-add {
            background: var(--primary-color) !important;
            color: var(--custom-white) !important;
            border: 1px solid var(--primary-color) !important;
            padding: 8px 12px;
            min-width: 38px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-top-right-radius: 3px;
            border-bottom-right-radius: 3px;
            border-top-left-radius: 0;
            border-bottom-left-radius: 0;
        }

            #ModalAddTeams .input-group-btn .nBtn.btn-add:hover,
            #ModalAddTeams .input-group .nBtn.btn-add:hover {
                background: var(--primary-color) !important;
                color: var(--custom-white) !important;
                opacity: 0.9;
            }

            #ModalAddTeams .input-group-btn .nBtn.btn-add i,
            #ModalAddTeams .input-group .nBtn.btn-add i {
                color: var(--custom-white) !important;
                font-size: 14px;
            }

        /* Teams Modal + Button - Primary Color (Same as User page) */
        #ModalAddTeams .input-group-btn .nBtn.btn-add,
        #ModalAddTeams .input-group .nBtn.btn-add {
            background: var(--primary-color) !important;
            color: var(--custom-white) !important;
            border: 1px solid var(--primary-color) !important;
            padding: 8px 12px;
            min-width: 38px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-top-right-radius: 3px;
            border-bottom-right-radius: 3px;
            border-top-left-radius: 0;
            border-bottom-left-radius: 0;
        }

            #ModalAddTeams .input-group-btn .nBtn.btn-add:hover,
            #ModalAddTeams .input-group .nBtn.btn-add:hover {
                background: var(--primary-color) !important;
                color: var(--custom-white) !important;
                opacity: 0.9;
            }

            #ModalAddTeams .input-group-btn .nBtn.btn-add i,
            #ModalAddTeams .input-group .nBtn.btn-add i {
                color: var(--custom-white) !important;
                font-size: 14px;
            }

/* Teams Modal Selected Users List */
#ModalAddTeams #selectedUsersList {
    list-style: none;
    padding: 0;
    margin: 0;
}

    #ModalAddTeams #selectedUsersList li {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 8px 12px;
        background: var(--list-hover-focus-bg);
        border-radius: 4px;
        margin-bottom: 5px;
    }

        #ModalAddTeams #selectedUsersList li .nPerson {
            flex: 1;
        }

            #ModalAddTeams #selectedUsersList li .nPerson b {
                color: var(--default-text-color) !important;
            }

        #ModalAddTeams #selectedUsersList li .btn-remove {
            background: var(--danger-rgb) !important;
            color: var(--custom-white) !important;
            border: none;
            padding: 4px 8px;
            border-radius: 4px;
            cursor: pointer;
            font-size: 12px;
        }

            #ModalAddTeams #selectedUsersList li .btn-remove:hover {
                background: var(--danger-rgb) !important;
                opacity: 0.9;
            }

@media(max-width: 768px) {
    .role-form-container {
        flex-direction: column;
    }

    .role-details-panel {
        width: 100%;
    }
}

/* View Group Permissions Modal - Dark/Light Theme Text Visibility */
#viewGroupPermissionsModal .modal-content {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
}

#viewGroupPermissionsModal .modal-header {
    background: var(--form-control-bg) !important;
    border-bottom: 1px solid var(--default-border) !important;
}

    #viewGroupPermissionsModal .modal-header .modal-title {
        color: var(--default-text-color) !important;
        font-weight: 600;
    }

#viewGroupPermissionsModal .modal-body {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
}

#viewGroupPermissionsModal .modal-footer {
    background: var(--form-control-bg) !important;
    border-top: 1px solid var(--default-border) !important;
}

    #viewGroupPermissionsModal .modal-footer .btn {
        color: var(--custom-white) !important;
    }

#viewGroupPermissionsModal .text-muted {
    color: var(--text-muted) !important;
}

#viewGroupPermissionsModal label.text-muted {
    color: var(--text-muted) !important;
}

#viewGroupPermissionsModal .fw-bold {
    color: var(--default-text-color) !important;
}

#viewGroupPermissionsModal .border-end {
    border-color: var(--default-border) !important;
}

#viewGroupPermissionsModal .accordion-item {
    background: var(--form-control-bg) !important;
    border-color: var(--default-border) !important;
}

#viewGroupPermissionsModal .accordion-button {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border-color: var(--default-border) !important;
}

    #viewGroupPermissionsModal .accordion-button:not(.collapsed) {
        background: var(--list-hover-focus-bg) !important;
        color: var(--default-text-color) !important;
    }

    #viewGroupPermissionsModal .accordion-button:focus {
        box-shadow: 0 0 0 0.25rem var(--primary02) !important;
        border-color: var(--primary-color) !important;
    }

#viewGroupPermissionsModal .accordion-body {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
}

    #viewGroupPermissionsModal .accordion-body ul li {
        color: var(--default-text-color) !important;
    }

#viewGroupPermissionsModal .badge {
    color: var(--custom-white) !important;
}

    #viewGroupPermissionsModal .badge.bg-primary {
        background-color: var(--primary-color) !important;
    }

    #viewGroupPermissionsModal .badge.bg-success {
        background-color: var(--success-rgb) !important;
    }

    #viewGroupPermissionsModal .badge.bg-secondary {
        background-color: var(--text-muted) !important;
    }

#viewGroupPermissionsModal .table {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
}

    #viewGroupPermissionsModal .table thead th {
        background: var(--list-hover-focus-bg) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

    #viewGroupPermissionsModal .table tbody td {
        background: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

    #viewGroupPermissionsModal .table tbody tr:hover {
        background: var(--list-hover-focus-bg) !important;
    }

    #viewGroupPermissionsModal .table code {
        background: var(--list-hover-focus-bg) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

#viewGroupPermissionsModal .text-success {
    color: var(--success-rgb) !important;
}

#viewGroupPermissionsModal .module-header-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

#viewGroupPermissionsModal .module-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
}

#viewGroupPermissionsModal .module-header-right {
    display: flex;
    align-items: center;
    gap: 8px;
}

#viewGroupPermissionsModal .module-badge {
    background: var(--primary-color) !important;
    color: var(--custom-white) !important;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}

#viewGroupPermissionsModal .permission-toggle {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    background: var(--list-hover-focus-bg) !important;
    border-radius: 4px;
    color: var(--default-text-color) !important;
}

/* Add/Edit Group Form - Dark/Light Theme Text Visibility */
.role-form-container {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
}

.role-details-panel {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border: 1px solid var(--default-border) !important;
}

    .role-details-panel h5 {
        color: var(--default-text-color) !important;
        font-weight: 600;
    }

    .role-details-panel .form-label {
        color: var(--default-text-color) !important;
    }

    .role-details-panel .form-control,
    .role-details-panel .form-select {
        background: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

        .role-details-panel .form-control:focus,
        .role-details-panel .form-select:focus {
            background: var(--form-control-bg) !important;
            color: var(--default-text-color) !important;
            border-color: var(--primary-color) !important;
            box-shadow: 0 0 0 0.25rem var(--primary02) !important;
        }

        .role-details-panel .form-control::placeholder,
        .role-details-panel .form-select::placeholder {
            color: var(--text-muted) !important;
        }

    /* Add/Edit Group Form - Users Dropdown (#ddlUsers) - Bootstrap Selectpicker Styling */
    .role-details-panel .bootstrap-select,
    .role-details-panel #ddlUsers + .bootstrap-select,
    .role-details-panel #ddlUsers.bootstrap-select {
        width: 100% !important;
        display: block !important;
    }

        .role-details-panel .bootstrap-select .dropdown-toggle,
        .role-details-panel #ddlUsers + .bootstrap-select .dropdown-toggle {
            background: var(--form-control-bg) !important;
            color: var(--default-text-color) !important;
            border: 1px solid var(--default-border) !important;
            padding: 8px 12px;
            height: auto;
            min-height: 38px;
            display: flex;
            align-items: center;
            border-radius: 3px;
            width: 100% !important;
        }

            .role-details-panel .bootstrap-select .dropdown-toggle:focus,
            .role-details-panel #ddlUsers + .bootstrap-select .dropdown-toggle:focus {
                border-color: var(--primary-color) !important;
                box-shadow: 0 0 0 0.25rem var(--primary02) !important;
                outline: none;
            }

            .role-details-panel .bootstrap-select .dropdown-toggle .filter-option,
            .role-details-panel #ddlUsers + .bootstrap-select .dropdown-toggle .filter-option {
                color: var(--default-text-color) !important;
                text-align: left;
                width: 100%;
                overflow: hidden;
                text-overflow: ellipsis;
            }

            .role-details-panel .bootstrap-select .dropdown-toggle .filter-option-inner-inner,
            .role-details-panel #ddlUsers + .bootstrap-select .dropdown-toggle .filter-option-inner-inner {
                color: var(--default-text-color) !important;
            }

            .role-details-panel .bootstrap-select .dropdown-toggle .bs-caret {
                color: var(--default-text-color) !important;
            }

        .role-details-panel .bootstrap-select .dropdown-menu,
        .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu {
            background: var(--form-control-bg) !important;
            border: 1px solid var(--default-border) !important;
            color: var(--default-text-color) !important;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
            margin-top: 4px;
            border-radius: 3px;
            max-height: 300px;
            overflow-y: auto;
            width: 100% !important;
            min-width: 100% !important;
        }

            .role-details-panel .bootstrap-select .dropdown-menu .bs-searchbox,
            .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .bs-searchbox {
                padding: 8px;
                border-bottom: 1px solid var(--default-border);
            }

                .role-details-panel .bootstrap-select .dropdown-menu .bs-searchbox input,
                .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .bs-searchbox input {
                    background: var(--form-control-bg) !important;
                    color: var(--default-text-color) !important;
                    border: 1px solid var(--default-border) !important;
                    padding: 6px 10px;
                    width: 100%;
                    border-radius: 3px;
                }

                    .role-details-panel .bootstrap-select .dropdown-menu .bs-searchbox input:focus,
                    .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .bs-searchbox input:focus {
                        border-color: var(--primary-color) !important;
                        box-shadow: 0 0 0 0.25rem var(--primary02) !important;
                        outline: none;
                    }

                    .role-details-panel .bootstrap-select .dropdown-menu .bs-searchbox input::placeholder,
                    .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .bs-searchbox input::placeholder {
                        color: var(--text-muted) !important;
                    }

            .role-details-panel .bootstrap-select .dropdown-menu .bs-actionsbox,
            .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .bs-actionsbox {
                padding: 8px;
                border-bottom: 1px solid var(--default-border);
                display: flex;
                gap: 8px;
            }

                .role-details-panel .bootstrap-select .dropdown-menu .bs-actionsbox .btn,
                .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .bs-actionsbox .btn {
                    background: var(--primary-color) !important;
                    color: var(--custom-white) !important;
                    border: 1px solid var(--primary-color) !important;
                    padding: 6px 12px;
                    border-radius: 3px;
                    font-size: 13px;
                    flex: 1;
                }

                    .role-details-panel .bootstrap-select .dropdown-menu .bs-actionsbox .btn:hover,
                    .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .bs-actionsbox .btn:hover {
                        background: var(--primary-color) !important;
                        color: var(--custom-white) !important;
                        opacity: 0.9;
                    }

            .role-details-panel .bootstrap-select .dropdown-menu .dropdown-item,
            .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .dropdown-item {
                color: var(--default-text-color) !important;
                background: var(--form-control-bg) !important;
                padding: 8px 12px;
                border: none;
                cursor: pointer;
            }

                .role-details-panel .bootstrap-select .dropdown-menu .dropdown-item:hover,
                .role-details-panel .bootstrap-select .dropdown-menu .dropdown-item:focus,
                .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .dropdown-item:hover,
                .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .dropdown-item:focus {
                    background: var(--list-hover-focus-bg) !important;
                    color: var(--default-text-color) !important;
                }

                .role-details-panel .bootstrap-select .dropdown-menu .dropdown-item.active,
                .role-details-panel .bootstrap-select .dropdown-menu .dropdown-item.selected,
                .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .dropdown-item.active,
                .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .dropdown-item.selected {
                    background-color: var(--primary-color) !important;
                    color: var(--custom-white) !important;
                }

            .role-details-panel .bootstrap-select .dropdown-menu .inner,
            .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .inner {
                max-height: 200px;
                overflow-y: auto;
            }

                .role-details-panel .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar,
                .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar {
                    width: 6px;
                }

                .role-details-panel .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-track,
                .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-track {
                    background: var(--form-control-bg);
                }

                .role-details-panel .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb,
                .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb {
                    background: var(--text-muted);
                    border-radius: 3px;
                }

                    .role-details-panel .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb:hover,
                    .role-details-panel #ddlUsers + .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb:hover {
                        background: var(--default-text-color);
                    }

    .role-details-panel small.text-muted {
        color: var(--text-muted) !important;
    }

    .role-details-panel .text-danger {
        color: var(--danger-rgb) !important;
    }

    .role-details-panel .btn-primary,
    .role-details-panel #btnSaveGroup,
    .role-details-panel button.btn-primary {
        background: var(--primary-color) !important;
        color: var(--custom-white) !important;
        border-color: var(--primary-color) !important;
    }

        .role-details-panel .btn-primary:hover,
        .role-details-panel #btnSaveGroup:hover,
        .role-details-panel button.btn-primary:hover {
            background: var(--primary-color) !important;
            color: var(--custom-white) !important;
            opacity: 0.9;
        }

        .role-details-panel .btn-primary *,
        .role-details-panel #btnSaveGroup *,
        .role-details-panel button.btn-primary * {
            color: var(--custom-white) !important;
        }

    .role-details-panel .btn-danger {
        background: var(--danger-rgb) !important;
        color: var(--custom-white) !important;
        border-color: var(--danger-rgb) !important;
    }

        .role-details-panel .btn-danger:hover {
            background: var(--danger-rgb) !important;
            color: var(--custom-white) !important;
            opacity: 0.9;
        }

.permission-tree-panel {
    background: var(--form-control-bg) !important;
    color: var(--default-text-color) !important;
    border: 1px solid var(--default-border) !important;
}

    .permission-tree-panel h5 {
        color: var(--default-text-color) !important;
        font-weight: 600;
    }

    .permission-tree-panel .form-label {
        color: var(--default-text-color) !important;
    }

    .permission-tree-panel .form-control,
    .permission-tree-panel .form-select {
        background: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

        .permission-tree-panel .form-control:focus,
        .permission-tree-panel .form-select:focus {
            background: var(--form-control-bg) !important;
            color: var(--default-text-color) !important;
            border-color: var(--primary-color) !important;
            box-shadow: 0 0 0 0.25rem var(--primary02) !important;
        }

        .permission-tree-panel .form-control::placeholder {
            color: var(--text-muted) !important;
        }

    .permission-tree-panel small.text-muted {
        color: var(--text-muted) !important;
    }

    .permission-tree-panel .btn {
        color: var(--custom-white) !important;
    }

    .permission-tree-panel .btn-outline-primary {
        color: var(--primary-color) !important;
        border-color: var(--primary-color) !important;
        background: transparent !important;
    }

        .permission-tree-panel .btn-outline-primary:hover {
            background: var(--primary-color) !important;
            color: var(--custom-white) !important;
        }

    .permission-tree-panel .btn-success {
        background: var(--success-rgb) !important;
        color: var(--custom-white) !important;
        border-color: var(--success-rgb) !important;
    }

        .permission-tree-panel .btn-success:hover {
            background: var(--success-rgb) !important;
            color: var(--custom-white) !important;
            opacity: 0.9;
        }

    .permission-tree-panel .btn-warning {
        background: var(--warning-rgb) !important;
        color: var(--custom-white) !important;
        border-color: var(--warning-rgb) !important;
    }

        .permission-tree-panel .btn-warning:hover {
            background: var(--warning-rgb) !important;
            color: var(--custom-white) !important;
            opacity: 0.9;
        }

    .permission-tree-panel #permissionTree {
        color: var(--default-text-color) !important;
    }

        .permission-tree-panel #permissionTree .text-muted {
            color: var(--text-muted) !important;
        }

/* User Modal + Button - Primary Color (Same as Teams modal) */
#ModalAddUser .input-group-btn .nBtn.btn-add,
#ModalAddUser .input-group .nBtn.btn-add {
    background: var(--primary-color) !important;
    color: var(--custom-white) !important;
    border: 1px solid var(--primary-color) !important;
    padding: 8px 12px;
    min-width: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

    #ModalAddUser .input-group-btn .nBtn.btn-add:hover,
    #ModalAddUser .input-group .nBtn.btn-add:hover {
        background: var(--primary-color) !important;
        color: var(--custom-white) !important;
        opacity: 0.9;
    }

    #ModalAddUser .input-group-btn .nBtn.btn-add i,
    #ModalAddUser .input-group .nBtn.btn-add i {
        color: var(--custom-white) !important;
        font-size: 14px;
    }

/* User Modal Input Group */
#ModalAddUser .input-group {
    display: flex;
    align-items: stretch;
}

    #ModalAddUser .input-group .form-select,
    #ModalAddUser .input-group .form-control {
        flex: 1;
    }

    #ModalAddUser .input-group-btn,
    #ModalAddUser .input-group .btn-add {
        margin-left: 0;
        border-left: none;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }



/* Date Range Filter - Extended Size */
#dateRangeFilter {
    min-width: 220px;
    height: 38px;
    padding: 6px 12px;
    font-size: 13px;
    border: 1px solid var(--default-border);
    border-radius: 6px;
    background-color: var(--custom-white);
    color: var(--default-text-color);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: all 0.2s ease;
}

    #dateRangeFilter:hover {
        border-color: var(--default-border);
        box-shadow: 0 0 0 3px rgba(37, 235, 219, 0);
    }

    #dateRangeFilter:focus {
        border-color: var(--default-border);
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
        outline: none;
    }

    #dateRangeFilter i.bi-calendar3 {
        color: var(--primary-color);
        margin-right: 8px;
    }

    #dateRangeFilter #dateRangeText {
        flex: 1;
        text-align: left;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    #dateRangeFilter i.bi-caret-down-fill {
        color: var(--text-muted);
        margin-left: 8px;
        font-size: 12px;
    }

/* Summary Container - Enhanced Layout */
.summary-container {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 24px;
    margin-top: 20px;
}

@media (max-width: 1200px) {
    .summary-container {
        grid-template-columns: 1fr;
    }
}

/* Summary Table Container */
.summary-table-container {
    background: var(--custom-white);
    border-radius: 8px;
    padding: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

    .summary-table-container .table {
        margin-bottom: 0;
    }

        .summary-table-container .table thead th {
            background-color: var(--default-background);
            color: var(--default-text-color);
            font-weight: 600;
            font-size: 13px;
            padding: 12px;
            border-bottom: 2px solid var(--default-border);
            cursor: pointer;
            user-select: none;
            transition: background-color 0.2s ease;
        }

            /* ✅ REMOVED: Hover effect on parent grid header */
            /* .summary-table-container .table thead th:hover {
                background-color: var(--list-hover-focus-bg);
            } */

            .summary-table-container .table thead th .sort-indicator {
                margin-left: 8px;
                color: var(--text-muted);
                font-size: 12px;
            }

        .summary-table-container .table tbody td {
            padding: 12px;
            font-size: 13px;
            color: var(--default-text-color);
            border-bottom: 1px solid var(--default-border);
            vertical-align: middle;
        }

        .summary-table-container .table tbody tr:hover {
            background-color: var(--list-hover-focus-bg);
        }

/* Summary Chart Container */
.summary-chart-container {
    background: var(--custom-white);
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 400px;
}

.chart-wrapper {
    width: 100%;
    height: 100%;
}

/* Task Details Section */
#taskDetailsSection {
    background: var(--custom-white);
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    margin-top: 24px;
}

    #taskDetailsSection h5 {
        color: var(--default-text-color);
        font-weight: 600;
        margin-bottom: 16px;
    }

    #taskDetailsSection .text-primary {
        color: var(--primary-color) !important;
    }

/* Buttons - Enhanced Styling */
.filter-dropdowns-inline .btn {
    height: 36px;
    padding: 6px 16px;
    font-size: 13px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.2s ease;
}

.filter-dropdowns-inline .btn-primary {
    background-color: var(--primary-color);
    border-color: var(--default-border);
    color: var(--default-text-color);
}

    .filter-dropdowns-inline .btn-primary:hover {
        background-color: var(--primary-color);
        border-color: var(--default-border);
        opacity: 0.9;
        transform: translateY(-1px);
        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    }

/* Export Dropdown */
.filter-dropdowns-inline .dropdown-menu {
    border: 1px solid var(--default-border);
    border-radius: 6px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    padding: 4px 0;
    margin-top: 4px;
}

.filter-dropdowns-inline .dropdown-item {
    padding: 5px 16px;
    font-size: 13px;
    color: var(--default-text-color);
    transition: all 0.15s ease;
}

    .filter-dropdowns-inline .dropdown-item:hover {
        background-color: var(--list-hover-focus-bg);
        color: var(--primary-color);
    }

    .filter-dropdowns-inline .dropdown-item i {
        margin-right: 8px;
        width: 16px;
    }

/* Responsive Design */
@media (max-width: 768px) {
    .filter-dropdowns-inline {
        flex-direction: column;
        align-items: stretch;
    }

    .filter-dropdown-item {
        width: 100%;
        min-width: 100%;
    }

    #dateRangeFilter {
        width: 100%;
        min-width: 100%;
    }

    #bs-select-6 .dropdown-menu {
        overflow-y: visible !important;
    }

    .summary-container {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .filter-dropdowns-inline .col-md-4 {
        width: 100%;
    }

    .filter-dropdowns-inline .d-flex.gap-2 {
        flex-direction: column;
        width: 100%;
    }

    .filter-dropdowns-inline .btn {
        width: 100%;
        justify-content: center;
    }
}

/* Dark Mode Support */
[data-theme-mode=dark] .summary-table-container,
[data-theme-mode=dark] .summary-chart-container,
[data-theme-mode=dark] #taskDetailsSection {
    background: var(--custom-white);
    border-color: var(--default-border);
}

[data-theme-mode=dark] .filter-dropdown-item .bootstrap-select .dropdown-toggle,
[data-theme-mode=dark] #dateRangeFilter {
    background-color: var(--custom-white);
    border-color: var(--default-border);
    color: var(--default-text-color);
}

[data-theme-mode=dark] .summary-table-container .table thead th {
    background-color: var(--default-background) !important;
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .summary-table-container .table tbody td {
    color: var(--default-text-color);
    border-color: var(--default-border);
}

/* ============================================
   Work Sessions Table - Enhanced Design Styles
   ============================================ */

/* Work Session Section Container */
.work-session-empty-cell {
    width: 40px;
    padding: 0;
    border: none;
    background-color: var(--default-background) !important;
    vertical-align: top;
}

/* Prevent hover effects from changing the empty cell background */
.work-session-section-row:hover .work-session-empty-cell,
.work-session-section-row .work-session-empty-cell:hover,
table tbody tr.work-session-section-row:hover .work-session-empty-cell,
.child-header-row table tbody tr.work-session-section-row:hover .work-session-empty-cell {
    background-color: var(--default-background) !important;
}

.work-session-section-cell {
    padding: 0 !important;
}

.work-session-container {
    padding: 16px;
    background-color: var(--default-background);
    border-radius: 6px;
}

/* Work Session Header */
.work-session-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.work-session-title {
    font-weight: 400;
    color: var(--default-text-color);
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    font-size: 14px;
}

.work-session-icon {
    color: var(--primary-color);
    font-size: 16px;
}

.work-session-badge {
    font-size: 0.75rem;
}

/* Work Session Table */
.work-session-table {
    margin-bottom: 0;
    background-color: var(--custom-white);
}

    .work-session-table thead th {
        background-color: var(--default-background);
        color: var(--default-text-color);
        font-weight: 600;
        font-size: 13px;
        padding: 10px 12px;
        border-bottom: 2px solid var(--default-border);
        border-top: 1px solid var(--default-border);
        border-left: 1px solid var(--default-border);
        border-right: 1px solid var(--default-border);
    }

    .work-session-table tbody td {
        padding: 10px 12px;
        font-size: 13px;
        color: var(--default-text-color);
        border-bottom: 1px solid var(--default-border);
        border-left: 1px solid var(--default-border);
        border-right: 1px solid var(--default-border);
        background-color: var(--custom-white);
    }

    .work-session-table tbody tr:hover {
        background-color: var(--list-hover-focus-bg);
    }

.work-session-row-last td {
    border-bottom: 2px solid var(--default-border);
}

/* Parent Row Expanded State */
.parent-row-expanded {
    background-color: var(--list-hover-focus-bg) !important;
}

.parent-row {
    cursor: pointer;
    transition: background-color 0.2s ease;
}

    .parent-row:hover {
        background-color: var(--list-hover-focus-bg);
    }

/* Task Row Expanded State */
.task-row-expanded {
    background-color: var(--list-hover-focus-bg) !important;
}

.task-row {
    transition: background-color 0.2s ease;
}

    .task-row:hover {
        background-color: var(--list-hover-focus-bg);
    }

/* Expand Icon Cell */
.expand-icon-cell {
    text-align: center;
    width: 40px;
}

.expand-icon {
    transition: transform 0.3s ease;
    color: var(--text-muted);
}

.task-expand-icon {
    transition: transform 0.3s ease;
    color: var(--text-muted);
}

/* Child Row States */
.child-row-loading {
    padding: 16px !important;
    background-color: var(--default-background) !important;
}

.child-row-no-data {
    padding: 16px !important;
    background-color: var(--default-background) !important;
    color: var(--text-muted) !important;
}

.child-row-error {
    padding: 16px !important;
    background-color: var(--default-background) !important;
    color: var(--danger-color) !important;
}

/* Child Table Header */
.child-table-header {
    background-color: var(--primary-color) !important;
    color: var(--custom-white) !important;
}

    .child-table-header th {
        background-color: var(--primary-color) !important;
        color: var(--custom-white) !important;
        border-color: var(--primary-color) !important;
    }

/* Dark Mode Support for Work Sessions */
[data-theme-mode=dark] .work-session-empty-cell {
    background-color: var(--default-background) !important;
}

[data-theme-mode=dark] .work-session-section-row:hover .work-session-empty-cell,
[data-theme-mode=dark] .work-session-section-row .work-session-empty-cell:hover,
[data-theme-mode=dark] table tbody tr.work-session-section-row:hover .work-session-empty-cell,
[data-theme-mode=dark] .child-header-row table tbody tr.work-session-section-row:hover .work-session-empty-cell {
    background-color: var(--default-background) !important;
}

[data-theme-mode=dark] .work-session-container {
    background-color: var(--default-background);
}

[data-theme-mode=dark] .work-session-title {
    color: var(--default-text-color);
}

[data-theme-mode=dark] .work-session-table {
    background-color: var(--custom-white);
}

    [data-theme-mode=dark] .work-session-table thead th {
        background-color: var(--default-background);
        color: var(--default-text-color);
        border-color: var(--default-border);
    }

    [data-theme-mode=dark] .work-session-table tbody td {
        background-color: var(--custom-white);
        color: var(--default-text-color);
        border-color: var(--default-border);
    }

    [data-theme-mode=dark] .work-session-table tbody tr:hover {
        background-color: var(--list-hover-focus-bg);
    }

[data-theme-mode=dark] .parent-row-expanded,
[data-theme-mode=dark] .task-row-expanded {
    background-color: var(--list-hover-focus-bg) !important;
}

[data-theme-mode=dark] .child-row-loading,
[data-theme-mode=dark] .child-row-no-data {
    background-color: var(--default-background) !important;
}

[data-theme-mode=dark] .child-row-error {
    background-color: var(--default-background) !important;
    color: var(--danger-color) !important;
}


/* Department Modal Styles */

#ModalAddDepartment.ui-dialog-content,
.ui-dialog.modal-md .ui-dialog-content {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    max-height: calc(100vh - 150px) !important;
}

.ui-dialog.modal-md {
    overflow: visible !important;
}

#ModalAddDepartment .nFormHorizontal {
    overflow: visible !important;
}

    #ModalAddDepartment .nFormHorizontal > li {
        overflow: visible !important;
        position: relative !important;
    }

#ModalAddDepartment .list-unstyled.nFormHorizontal,
#ModalAddDepartment .list-unstyled.nFormHorizontal > li {
    overflow: visible !important;
}

#ModalAddDepartment .nFormFields,
#ModalAddDepartment .nFormFields.nCustomeField,
#ModalAddDepartment .nFormFields .nControl,
#ModalAddDepartment .nFormFields.nCustomeField .nControl {
    overflow: visible !important;
}

#ModalAddDepartment .input-group {
    position: static !important;
    overflow: visible !important;
}

#ModalAddDepartment .bootstrap-select {
    position: relative !important;
    z-index: 1050 !important;
    overflow: visible !important;
}

    #ModalAddDepartment .bootstrap-select .dropdown-menu {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: auto !important;
        z-index: 10500 !important;
        margin-top: 2px !important;
        transform: none !important;
        max-height: none !important;
        overflow: visible !important;
        overflow-y: visible !important;
        overflow-x: visible !important;
    }

    #ModalAddDepartment .bootstrap-select.dropup .dropdown-menu {
        top: auto !important;
        bottom: 100% !important;
        margin-top: 0 !important;
        margin-bottom: 2px !important;
    }

    #ModalAddDepartment .bootstrap-select > .dropdown-menu,
    #ModalAddDepartment .bootstrap-select .dropdown-menu,
    #ModalAddDepartment .dropdown-menu {
        max-height: none !important;
        overflow: visible !important;
    }

        #ModalAddDepartment .bootstrap-select .dropdown-menu ul.inner,
        #ModalAddDepartment .bootstrap-select .dropdown-menu > ul,
        #ModalAddDepartment .bootstrap-select .dropdown-menu ul,
        #ModalAddDepartment .bootstrap-select > .dropdown-menu > ul.inner,
        #ModalAddDepartment .dropdown-menu ul.inner,
        div#ModalAddDepartment ul.inner,
        #ModalAddDepartment .bootstrap-select[data-id="sltDepartmentManager1"] .dropdown-menu ul.inner,
        #ModalAddDepartment .bootstrap-select[data-id="sltDepartmentReportTo"] .dropdown-menu ul.inner {
            max-height: 205px !important;
            min-height: auto !important;
            overflow-y: scroll !important;
            overflow-x: hidden !important;
            display: block !important;
        }

        #ModalAddDepartment .bootstrap-select .inner,
        #ModalAddDepartment .dropdown-menu .inner {
            max-height: 205px !important;
            overflow-x: hidden !important;
        }

        #ModalAddDepartment .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar,
        #ModalAddDepartment .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar,
        #ModalAddDepartment .dropdown-menu ul.inner::-webkit-scrollbar {
            width: 10px !important;
            height: 10px !important;
        }

        #ModalAddDepartment .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-track,
        #ModalAddDepartment .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-track,
        #ModalAddDepartment .dropdown-menu ul.inner::-webkit-scrollbar-track {
            background: var(--default-background) !important;
            border-radius: 5px !important;
        }

        #ModalAddDepartment .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-thumb,
        #ModalAddDepartment .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb,
        #ModalAddDepartment .dropdown-menu ul.inner::-webkit-scrollbar-thumb {
            background: var(--default-background) !important;
            border-radius: 5px !important;
            border: 2px solid var(--default-background) !important;
        }

            #ModalAddDepartment .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-thumb:hover,
            #ModalAddDepartment .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb:hover,
            #ModalAddDepartment .dropdown-menu ul.inner::-webkit-scrollbar-thumb:hover {
                background: var(--default-background) !important;
            }

        #ModalAddDepartment .bootstrap-select .dropdown-menu .inner > li,
        #ModalAddDepartment .bootstrap-select .dropdown-menu ul.inner > li {
            display: list-item !important;
            list-style: none !important;
        }

        #ModalAddDepartment .bootstrap-select .dropdown-menu .dropdown-item,
        #ModalAddDepartment .bootstrap-select .dropdown-menu li a {
            display: block !important;
            padding: 6px 12px !important;
            white-space: nowrap !important;
        }

    #ModalAddDepartment .bootstrap-select.open .dropdown-menu,
    #ModalAddDepartment .bootstrap-select.show .dropdown-menu {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

#ModalAddDepartment .row {
    overflow: visible !important;
}

#ModalAddDepartment .col-12,
#ModalAddDepartment .col-sm-6 {
    overflow: visible !important;
}


.btn-outline-danger {
    color: rgb(var(--danger-rgb)) !important;
    border-color: rgb(var(--danger-rgb));
}

    .btn-outline-danger:hover {
        color: #fff !important;
        border-color: rgb(var(--danger-rgb));
    }

.btn-outline-primary:hover {
    color: #fff !important;
    border-color: rgb(var(--primary-rgb));
}

.btn-warning:hover {
    color: #fff !important;
    border-color: rgb(var(--danger-rgb));
}


/* Modal */
@media (min-width: 768px) {
    .modal-lg {
        max-width: 900px;
    }
}

@media (min-width: 992px) {
    .modal-lg {
        max-width: 1000px;
    }
}

@media (min-width: 1200px) {
    .modal-lg {
        max-width: 1100px;
    }
}
/* End Modal */
button.btn.dropdown-toggle.nAssignToBtn.p-lr-0, button.btn.dropdown-toggle.nStatusListBtn, button.btn.dropdown-toggle.nPriorityListBtn {
    padding: 0px;
    background: none;
    border: none;
    box-shadow: none;
    display: flex;
    align-items: center;
}

.dropdown-item.active, .dropdown-item:active {
    color: inherit;
    text-decoration: none;
    background-color: inherit;
}

table.table-bordered.dataTable thead tr th, table.table-bordered.dataTable tr th {
    background-color: var(--primary-color);
    color: #fff;
}

.btn.disabled, .btn:disabled, fieldset:disabled .btn {
    color: var(--bs-btn-disabled-color);
    pointer-events: none;
    background-color: var(--bs-btn-disabled-bg);
    border-color: var(--bs-btn-disabled-border-color);
    opacity: var(--bs-btn-disabled-opacity);
}

.ql-editor {
    opacity: inherit !important;
    background-color: inherit !important;
}

[data-theme-mode=dark] .accordion-button::after {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    margin-left: auto;
    content: "";
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgba(255,255,255,0.7)'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-size: 1.25rem;
    transition: transform .2s ease-in-out;
}

[data-theme-mode=dark] .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgba(255,255,255,0.7)'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    transform: rotate(-180deg);
}

.accordion-button::after {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    margin-left: auto;
    content: "";
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23333335'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-size: 1.25rem;
    transition: transform .2s ease-in-out;
}

.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23333335'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    transform: rotate(-180deg);
}

[data-theme-mode=dark] .accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgba(255,255,255,0.7)'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

[data-theme-mode=dark] .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgba(255,255,255,0.7)'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    transform: rotate(-180deg);
}


.nFormFields,
.nFormFields.nCustomeField,
.nFormFields .nControl,
.nFormFields.nCustomeField .nControl {
    overflow: visible !important;
    margin-bottom: 8px;
}

/* ✅ Create New Modal - Theme-aware styling */
#globalAddNewModal .modal-content {
    background-color: var(--custom-white, #ffffff) !important;
    color: var(--default-text-color, #212529) !important;
    border-color: var(--default-border, #dee2e6) !important;
}

#globalAddNewModal .modal-header {
    background-color: var(--custom-white, #ffffff) !important;
    border-bottom-color: var(--default-border, #dee2e6) !important;
}

#globalAddNewModal .modal-title {
    color: var(--default-text-color, #212529) !important;
}

#globalAddNewModal .modal-body {
    background-color: var(--custom-white, #ffffff) !important;
    color: var(--default-text-color, #212529) !important;
}

#globalAddNewModal .text-muted {
    color: var(--text-muted, #8c9097) !important;
}

#globalAddNewModal .btn-outline-primary,
#globalAddNewModal .btn-outline-success,
#globalAddNewModal .btn-outline-info,
#globalAddNewModal .btn-outline-secondary {
    border-color: var(--default-border, #dee2e6) !important;
    color: var(--default-text-color, #212529) !important;
    background-color: var(--custom-white, #ffffff) !important;
}

#globalAddNewModal .btn-primary {
    background-color: rgb(var(--primary-rgb, 132, 90, 223)) !important;
    border-color: rgb(var(--primary-rgb, 132, 90, 223)) !important;
    color: #ffffff !important;
}

#globalAddNewModal .btn-outline-primary:hover,
#globalAddNewModal .btn-outline-primary:focus {
    background-color: var(--primary01, rgba(132, 90, 223, 0.1)) !important;
    border-color: var(--primary-color, rgb(132, 90, 223)) !important;
    color: var(--primary-color, rgb(132, 90, 223)) !important;
}

#globalAddNewModal .btn-outline-success:hover,
#globalAddNewModal .btn-outline-success:focus {
    background-color: rgba(var(--success-rgb, 38, 191, 148), 0.1) !important;
    border-color: rgb(var(--success-rgb, 38, 191, 148)) !important;
    color: rgb(var(--success-rgb, 38, 191, 148)) !important;
}

#globalAddNewModal .btn-outline-info:hover,
#globalAddNewModal .btn-outline-info:focus {
    background-color: rgba(var(--info-rgb, 73, 182, 245), 0.1) !important;
    border-color: rgb(var(--info-rgb, 73, 182, 245)) !important;
    color: rgb(var(--info-rgb, 73, 182, 245)) !important;
}

#globalAddNewModal .btn-primary:hover,
#globalAddNewModal .btn-primary:focus {
    background-color: rgba(var(--primary-rgb, 132, 90, 223), 0.9) !important;
    border-color: rgba(var(--primary-rgb, 132, 90, 223), 0.9) !important;
    color: #ffffff !important;
}

#globalAddNewModal .btn-outline-secondary:hover,
#globalAddNewModal .btn-outline-secondary:focus {
    background-color: transparent !important;
    border-color: var(--default-border, #dee2e6) !important;
    color: var(--primary-color, #2563eb) !important;
}

#globalAddNewModal .fw-semibold {
    color: var(--default-text-color, #212529) !important;
}

#globalAddNewModal .small {
    color: var(--text-muted, #8c9097) !important;
}

#globalAddNewModal hr {
    border-color: var(--default-border, #dee2e6) !important;
}

#globalAddNewModal .modal-footer {
    background-color: var(--custom-white, #ffffff) !important;
    border-top-color: var(--default-border, #dee2e6) !important;
}

#globalAddNewModal .btn-close {
    filter: var(--background-close, invert(0)) !important;
}

/* ✅ Dark Theme - Create New Modal */
[data-theme="dark"] #globalAddNewModal .modal-content,
[data-theme-mode="dark"] #globalAddNewModal .modal-content,
.dark-theme #globalAddNewModal .modal-content,
body.dark #globalAddNewModal .modal-content {
    background-color: var(--custom-white, #2d3748) !important;
    color: var(--default-text-color, #ffffff) !important;
    border-color: var(--default-border, #4a5568) !important;
}

[data-theme="dark"] #globalAddNewModal .modal-header,
[data-theme-mode="dark"] #globalAddNewModal .modal-header,
.dark-theme #globalAddNewModal .modal-header,
body.dark #globalAddNewModal .modal-header {
    background-color: var(--custom-white, #2d3748) !important;
    border-bottom-color: var(--default-border, #4a5568) !important;
}

[data-theme="dark"] #globalAddNewModal .modal-title,
[data-theme-mode="dark"] #globalAddNewModal .modal-title,
.dark-theme #globalAddNewModal .modal-title,
body.dark #globalAddNewModal .modal-title {
    color: var(--default-text-color, #ffffff) !important;
}

[data-theme="dark"] #globalAddNewModal .modal-body,
[data-theme-mode="dark"] #globalAddNewModal .modal-body,
.dark-theme #globalAddNewModal .modal-body,
body.dark #globalAddNewModal .modal-body {
    background-color: var(--custom-white, #2d3748) !important;
    color: var(--default-text-color, #ffffff) !important;
}

[data-theme="dark"] #globalAddNewModal .text-muted,
[data-theme-mode="dark"] #globalAddNewModal .text-muted,
.dark-theme #globalAddNewModal .text-muted,
body.dark #globalAddNewModal .text-muted {
    color: var(--text-muted, rgba(255, 255, 255, 0.5)) !important;
}

[data-theme="dark"] #globalAddNewModal .btn-outline-primary,
[data-theme="dark"] #globalAddNewModal .btn-outline-success,
[data-theme="dark"] #globalAddNewModal .btn-outline-info,
[data-theme="dark"] #globalAddNewModal .btn-outline-secondary,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-primary,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-success,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-info,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-secondary,
.dark-theme #globalAddNewModal .btn-outline-primary,
.dark-theme #globalAddNewModal .btn-outline-success,
.dark-theme #globalAddNewModal .btn-outline-info,
.dark-theme #globalAddNewModal .btn-outline-secondary,
body.dark #globalAddNewModal .btn-outline-primary,
body.dark #globalAddNewModal .btn-outline-success,
body.dark #globalAddNewModal .btn-outline-info,
body.dark #globalAddNewModal .btn-outline-secondary {
    border-color: var(--default-border, rgba(255, 255, 255, 0.1)) !important;
    color: var(--default-text-color, rgba(255, 255, 255, 0.7)) !important;
    background-color: var(--custom-white, #2d3748) !important;
}

[data-theme="dark"] #globalAddNewModal .btn-primary,
[data-theme-mode="dark"] #globalAddNewModal .btn-primary,
.dark-theme #globalAddNewModal .btn-primary,
body.dark #globalAddNewModal .btn-primary {
    background-color: rgb(var(--primary-rgb, 132, 90, 223)) !important;
    border-color: rgb(var(--primary-rgb, 132, 90, 223)) !important;
    color: #ffffff !important;
}

[data-theme="dark"] #globalAddNewModal .btn-outline-primary:hover,
[data-theme="dark"] #globalAddNewModal .btn-outline-primary:focus,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-primary:hover,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-primary:focus,
.dark-theme #globalAddNewModal .btn-outline-primary:hover,
.dark-theme #globalAddNewModal .btn-outline-primary:focus,
body.dark #globalAddNewModal .btn-outline-primary:hover,
body.dark #globalAddNewModal .btn-outline-primary:focus {
    background-color: var(--primary01, rgba(132, 90, 223, 0.2)) !important;
    border-color: var(--primary-color, rgb(132, 90, 223)) !important;
    color: var(--primary-color, rgb(132, 90, 223)) !important;
}

[data-theme="dark"] #globalAddNewModal .btn-outline-success:hover,
[data-theme="dark"] #globalAddNewModal .btn-outline-success:focus,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-success:hover,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-success:focus,
.dark-theme #globalAddNewModal .btn-outline-success:hover,
.dark-theme #globalAddNewModal .btn-outline-success:focus,
body.dark #globalAddNewModal .btn-outline-success:hover,
body.dark #globalAddNewModal .btn-outline-success:focus {
    background-color: rgba(var(--success-rgb, 38, 191, 148), 0.2) !important;
    border-color: rgb(var(--success-rgb, 38, 191, 148)) !important;
    color: rgb(var(--success-rgb, 38, 191, 148)) !important;
}

[data-theme="dark"] #globalAddNewModal .btn-outline-info:hover,
[data-theme="dark"] #globalAddNewModal .btn-outline-info:focus,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-info:hover,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-info:focus,
.dark-theme #globalAddNewModal .btn-outline-info:hover,
.dark-theme #globalAddNewModal .btn-outline-info:focus,
body.dark #globalAddNewModal .btn-outline-info:hover,
body.dark #globalAddNewModal .btn-outline-info:focus {
    background-color: rgba(var(--info-rgb, 73, 182, 245), 0.2) !important;
    border-color: rgb(var(--info-rgb, 73, 182, 245)) !important;
    color: rgb(var(--info-rgb, 73, 182, 245)) !important;
}

[data-theme="dark"] #globalAddNewModal .btn-outline-secondary:hover,
[data-theme="dark"] #globalAddNewModal .btn-outline-secondary:focus,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-secondary:hover,
[data-theme-mode="dark"] #globalAddNewModal .btn-outline-secondary:focus,
.dark-theme #globalAddNewModal .btn-outline-secondary:hover,
.dark-theme #globalAddNewModal .btn-outline-secondary:focus,
body.dark #globalAddNewModal .btn-outline-secondary:hover,
body.dark #globalAddNewModal .btn-outline-secondary:focus {
    background-color: transparent !important;
    border-color: var(--default-border, rgba(255, 255, 255, 0.1)) !important;
    color: var(--primary-color, rgb(132, 90, 223)) !important;
}

[data-theme="dark"] #globalAddNewModal .fw-semibold,
[data-theme-mode="dark"] #globalAddNewModal .fw-semibold,
.dark-theme #globalAddNewModal .fw-semibold,
body.dark #globalAddNewModal .fw-semibold {
    color: var(--default-text-color, #ffffff) !important;
}

[data-theme="dark"] #globalAddNewModal .small,
[data-theme-mode="dark"] #globalAddNewModal .small,
.dark-theme #globalAddNewModal .small,
body.dark #globalAddNewModal .small {
    color: var(--text-muted, rgba(255, 255, 255, 0.5)) !important;
}

[data-theme="dark"] #globalAddNewModal hr,
[data-theme-mode="dark"] #globalAddNewModal hr,
.dark-theme #globalAddNewModal hr,
body.dark #globalAddNewModal hr {
    border-color: var(--default-border, rgba(255, 255, 255, 0.1)) !important;
}

[data-theme="dark"] #globalAddNewModal .modal-footer,
[data-theme-mode="dark"] #globalAddNewModal .modal-footer,
.dark-theme #globalAddNewModal .modal-footer,
body.dark #globalAddNewModal .modal-footer {
    background-color: var(--custom-white, #2d3748) !important;
    border-top-color: var(--default-border, rgba(255, 255, 255, 0.1)) !important;
}

[data-theme="dark"] #globalAddNewModal .btn-close,
[data-theme-mode="dark"] #globalAddNewModal .btn-close,
.dark-theme #globalAddNewModal .btn-close,
body.dark #globalAddNewModal .btn-close {
    filter: invert(1) !important;
}

/* ✅ Light Theme - Create New Modal */
[data-theme="light"] #globalAddNewModal .modal-content,
.light-theme #globalAddNewModal .modal-content,
body.light #globalAddNewModal .modal-content {
    background-color: var(--custom-white, #ffffff) !important;
    color: var(--default-text-color, #212529) !important;
    border-color: var(--default-border, #dee2e6) !important;
}

[data-theme="light"] #globalAddNewModal .modal-header,
.light-theme #globalAddNewModal .modal-header,
body.light #globalAddNewModal .modal-header {
    background-color: var(--custom-white, #ffffff) !important;
    border-bottom-color: var(--default-border, #dee2e6) !important;
}

[data-theme="light"] #globalAddNewModal .modal-title,
.light-theme #globalAddNewModal .modal-title,
body.light #globalAddNewModal .modal-title {
    color: var(--default-text-color, #212529) !important;
}

[data-theme="light"] #globalAddNewModal .modal-body,
.light-theme #globalAddNewModal .modal-body,
body.light #globalAddNewModal .modal-body {
    background-color: var(--custom-white, #ffffff) !important;
    color: var(--default-text-color, #212529) !important;
}

[data-theme="light"] #globalAddNewModal .text-muted,
.light-theme #globalAddNewModal .text-muted,
body.light #globalAddNewModal .text-muted {
    color: var(--text-muted, #8c9097) !important;
}

[data-theme="light"] #globalAddNewModal .btn-outline-primary,
[data-theme="light"] #globalAddNewModal .btn-outline-success,
[data-theme="light"] #globalAddNewModal .btn-outline-info,
[data-theme="light"] #globalAddNewModal .btn-outline-secondary,
.light-theme #globalAddNewModal .btn-outline-primary,
.light-theme #globalAddNewModal .btn-outline-success,
.light-theme #globalAddNewModal .btn-outline-info,
.light-theme #globalAddNewModal .btn-outline-secondary,
body.light #globalAddNewModal .btn-outline-primary,
body.light #globalAddNewModal .btn-outline-success,
body.light #globalAddNewModal .btn-outline-info,
body.light #globalAddNewModal .btn-outline-secondary {
    border-color: var(--default-border, #dee2e6) !important;
    color: var(--default-text-color, #212529) !important;
    background-color: var(--custom-white, #ffffff) !important;
}

    [data-theme="light"] #globalAddNewModal .btn-outline-primary:hover,
    [data-theme="light"] #globalAddNewModal .btn-outline-primary:focus,
    .light-theme #globalAddNewModal .btn-outline-primary:hover,
    .light-theme #globalAddNewModal .btn-outline-primary:focus,
    body.light #globalAddNewModal .btn-outline-primary:hover,
    body.light #globalAddNewModal .btn-outline-primary:focus {
        background-color: var(--primary01, rgba(132, 90, 223, 0.1)) !important;
        border-color: var(--primary-color, rgb(132, 90, 223)) !important;
        color: var(--primary-color, rgb(132, 90, 223)) !important;
    }

    [data-theme="light"] #globalAddNewModal .btn-outline-success:hover,
    [data-theme="light"] #globalAddNewModal .btn-outline-success:focus,
    .light-theme #globalAddNewModal .btn-outline-success:hover,
    .light-theme #globalAddNewModal .btn-outline-success:focus,
    body.light #globalAddNewModal .btn-outline-success:hover,
    body.light #globalAddNewModal .btn-outline-success:focus {
        background-color: rgba(var(--success-rgb, 38, 191, 148), 0.1) !important;
        border-color: rgb(var(--success-rgb, 38, 191, 148)) !important;
        color: rgb(var(--success-rgb, 38, 191, 148)) !important;
    }

    [data-theme="light"] #globalAddNewModal .btn-outline-info:hover,
    [data-theme="light"] #globalAddNewModal .btn-outline-info:focus,
    .light-theme #globalAddNewModal .btn-outline-info:hover,
    .light-theme #globalAddNewModal .btn-outline-info:focus,
    body.light #globalAddNewModal .btn-outline-info:hover,
    body.light #globalAddNewModal .btn-outline-info:focus {
        background-color: rgba(var(--info-rgb, 73, 182, 245), 0.1) !important;
        border-color: rgb(var(--info-rgb, 73, 182, 245)) !important;
        color: rgb(var(--info-rgb, 73, 182, 245)) !important;
    }

    [data-theme="light"] #globalAddNewModal .btn-outline-secondary:hover,
    [data-theme="light"] #globalAddNewModal .btn-outline-secondary:focus,
    .light-theme #globalAddNewModal .btn-outline-secondary:hover,
    .light-theme #globalAddNewModal .btn-outline-secondary:focus,
    body.light #globalAddNewModal .btn-outline-secondary:hover,
    body.light #globalAddNewModal .btn-outline-secondary:focus {
        background-color: transparent !important;
        border-color: var(--default-border, #dee2e6) !important;
        color: var(--primary-color, #2563eb) !important;
    }

[data-theme="light"] #globalAddNewModal .fw-semibold,
.light-theme #globalAddNewModal .fw-semibold,
body.light #globalAddNewModal .fw-semibold {
    color: var(--default-text-color, #212529) !important;
}

[data-theme="light"] #globalAddNewModal .small,
.light-theme #globalAddNewModal .small,
body.light #globalAddNewModal .small {
    color: var(--text-muted, #8c9097) !important;
}

[data-theme="light"] #globalAddNewModal hr,
.light-theme #globalAddNewModal hr,
body.light #globalAddNewModal hr {
    border-color: var(--default-border, #dee2e6) !important;
}

[data-theme="light"] #globalAddNewModal .modal-footer,
.light-theme #globalAddNewModal .modal-footer,
body.light #globalAddNewModal .modal-footer {
    background-color: var(--custom-white, #ffffff) !important;
    border-top-color: var(--default-border, #dee2e6) !important;
}

/* Global Search Bar - Centered in Header */
.main-header-container .header-content-center {
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex: 1;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.global-search-header-center {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0.7rem .65rem;
    position: relative;
}

.global-search-input-group {
    margin: 0;
    min-width: 400px;
    max-width: 600px;
    width: 100%;
}

    .global-search-input-group .form-control {
        height: 35px;
        font-size: 14px;
        padding: 0.5rem 1rem;
    }

    .global-search-input-group .input-group-text {
        height: 35px;
        padding: 0.5rem 1rem;
    }

.global-search-add-btn {
    margin-left: 0;
    white-space: nowrap;
    height: 35px;
    padding: 0.5rem 1rem;
}

    /* Hide "Add New" text on smaller screens - show icon only */
    .global-search-add-btn span {
        display: inline;
    }

/* Mobile Search Icon Button */
.mobile-search-icon-btn {
    display: none;
    background: transparent;
    border: 1px solid var(--default-border, #dee2e6);
    color: var(--header-prime-color);
    padding: 0.5rem 0.75rem;
    font-size: 1.1rem;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    height: 35px;
    min-width: 35px;
    transition: all 0.2s ease;
}

    .mobile-search-icon-btn:hover {
        background: rgba(var(--default-text-color-rgb), 0.05);
        border-color: var(--primary-color);
    }

    .mobile-search-icon-btn i {
        font-size: 1.1rem;
    }

/* Mobile Search Cancel Button */
.mobile-search-cancel-btn {
    display: none;
    background: transparent;
    border: none;
    border-left: 1px solid var(--default-border, #dee2e6);
    color: var(--default-text-color);
    padding: 0.5rem 0.75rem;
    font-size: 1rem;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    height: 35px;
    min-width: 35px;
    transition: all 0.2s ease;
}

    .mobile-search-cancel-btn:hover {
        background: rgba(var(--default-text-color-rgb), 0.05);
        color: var(--primary-color);
    }

    .mobile-search-cancel-btn i {
        font-size: 1rem;
    }

/* Desktop - Ensure search input is always visible */
@media (min-width: 992px) {
    .global-search-input-group {
        display: flex !important;
    }

    .mobile-search-icon-btn {
        display: none !important;
    }

    .mobile-search-cancel-btn {
        display: none !important;
    }
}

/* Responsive Header Styles */
@media (max-width: 1400px) {
    .global-search-input-group {
        min-width: 300px;
        max-width: 500px;
    }
}

@media (max-width: 1200px) {
    .global-search-input-group {
        min-width: 250px;
        max-width: 400px;
    }

    .global-search-header-center {
        gap: 8px;
    }
}

@media (max-width: 991.98px) {
    /* Show mobile search icon button */
    .mobile-search-icon-btn {
        display: flex;
    }

    /* Hide search input group by default on mobile */
    .global-search-input-group {
        display: none;
        position: fixed;
        top: 3.75rem;
        /*left: 0;
        right: 0;*/
        width: 100%;
        z-index: 1001;
        background: var(--header-bg);
        padding: 0.75rem 1rem;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
        margin: 0;
        min-width: max-content !important; /* Override base min-width: 400px */
        max-width: 100% !important; /* Override base max-width: 600px */
        border-bottom: 1px solid var(--header-border-color);
        box-sizing: border-box;
    }

        /* Show search input group when expanded - FULL WIDTH AND CENTERED */
        .global-search-input-group.mobile-search-expanded {
            display: flex;
            width: 100%;
            justify-content: center;
            align-items: center;
            padding: 0.75rem 1rem;
            box-sizing: border-box;
        }

            /* Make input-group take full available width */
            .global-search-input-group.mobile-search-expanded.input-group {
                width: 100% !important;
                max-width: 100% !important;
                min-width: max-content !important;
                margin: 0;
                display: flex;
                flex-wrap: nowrap;
                box-sizing: border-box;
            }

            /* Show cancel button when search is expanded */
            .global-search-input-group.mobile-search-expanded .mobile-search-cancel-btn {
                display: flex;
                flex-shrink: 0;
            }

    /* Adjust header center positioning on mobile - center it properly */
    .main-header-container {
        display: flex;
        justify-content: space-between;
        align-items: center;
        position: relative;
    }

        .main-header-container .header-content-left {
            flex-shrink: 0;
            width: auto;
        }

        .main-header-container .header-content-center {
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            flex: 0 0 auto;
            width: auto;
            margin: 0;
            z-index: 1;
            /* Ensure center doesn't overlap with right side - reserve space for icons */
            max-width: calc(50% - 80px);
        }

        .main-header-container .header-content-right {
            flex-shrink: 0;
            width: auto;
            margin-left: auto;
            display: flex;
            align-items: center;
            gap: 0.25rem;
            /* Reserve minimum space for right side icons */
            min-width: 120px;
            justify-content: flex-end;
        }

        .main-header-container .header-content-left {
            flex-shrink: 0;
            width: auto;
            min-width: 40px;
        }

    .global-search-header-center {
        gap: 8px;
        padding: 0.5rem 0;
        position: relative;
        justify-content: center;
        align-items: center;
        flex-wrap: nowrap;
    }

    /* Ensure mobile search and add buttons are properly sized */
    .mobile-search-icon-btn {
        flex-shrink: 0;
        width: 35px;
        min-width: 35px;
    }

    .global-search-add-btn {
        flex-shrink: 0;
        width: auto;
        min-width: 35px;
    }

    .global-search-input-group .form-control {
        font-size: 13px;
        padding: 0.4rem 0.75rem;
    }

    .global-search-input-group .input-group-text {
        padding: 0.4rem 0.75rem;
        font-size: 14px;
    }

    .global-search-add-btn {
        padding: 0.4rem 0.75rem;
        height: 35px;
    }

        /* Hide "Add New" text on tablet and mobile - show icon only */
        .global-search-add-btn span {
            display: none;
        }

    /* Adjust header right elements spacing */
    .header-content-right {
        gap: 0.25rem;
    }

        .header-content-right .header-element {
            margin: 0 0.25rem;
        }

    .header-link {
        padding: 0.75rem 0.5rem !important;
    }

    .header-item {
        padding: 0.5rem 0.75rem !important;
    }
}

@media (max-width: 768px) {
    .main-header-container {
        padding: 0 0.5rem;
    }

        .main-header-container .header-content-center {
            max-width: calc(50% - 70px);
        }

        .main-header-container .header-content-right {
            min-width: 100px;
            gap: 0.15rem;
        }

    .global-search-header-center {
        gap: 6px;
    }

    .global-search-input-group {
        min-width: 120px;
    }

        .global-search-input-group .form-control {
            font-size: 13px;
            padding: 0.35rem 0.6rem;
        }

        .global-search-input-group .input-group-text {
            padding: 0.35rem 0.6rem;
            font-size: 13px;
        }

    .global-search-add-btn {
        padding: 0.35rem 0.6rem;
        min-width: 35px;
    }

    /* Reduce spacing in header right */
    .header-content-right .header-element {
        margin: 0 0.15rem;
    }

    .header-link {
        padding: 0.75rem 0.4rem !important;
    }

    .header-item {
        padding: 0.5rem 0.6rem !important;
        font-size: 14px !important;
    }

        /* Make notification and profile icons smaller on mobile */
        .header-item .icon-lg {
            font-size: 1.1rem;
        }

    .header-link-icon {
        width: 1.5rem !important;
        height: 1.5rem !important;
        font-size: 1.1rem !important;
    }

    .global-search-results-container {
        position: fixed !important;
        top: 119px !important;
        right: 0 !important;
        left: -131px !important;
        background: var(--custom-white) !important;
        border: 1px solid var(--default-border) !important;
        border-radius: 4px !important;
        max-height: 400px !important;
        overflow-y: auto !important;
        overflow-x: visible !important;
        box-shadow: 0 4px 12px var(--default-border) !important;
        z-index: 10000 !important;
        min-width: 300px !important;
    }
}

@media (max-width: 576px) {
    .main-header-container {
        flex-wrap: nowrap;
        padding: 0.5rem 0.5rem;
    }

    .header-content-left {
        flex-shrink: 0;
        min-width: 35px;
    }

    .main-header-container .header-content-center {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        flex: 0 0 auto;
        width: auto;
        margin: 0;
        /* Ensure center doesn't overlap - reserve more space for right side on small screens */
        max-width: calc(50% - 65px);
    }

    .header-content-right {
        flex-shrink: 0;
        gap: 0.1rem;
        min-width: 85px;
        justify-content: flex-end;
    }

    /* Reduce button sizes on very small screens to prevent overlap */
    .mobile-search-icon-btn,
    .global-search-add-btn {
        padding: 0.3rem 0.5rem;
        height: 32px;
        min-width: 32px;
        font-size: 0.9rem;
    }

    .global-search-header-center {
        gap: 4px;
    }

    .global-search-header-center {
        width: 100%;
        gap: 4px;
        padding: 0.4rem 0;
        position: relative;
    }

    /* Ensure search input takes full width when expanded on small screens */
    .global-search-input-group.mobile-search-expanded .form-control {
        flex: 1 1 0%;
        width: auto;
        min-width: 0;
        max-width: none;
        border-radius: 4px 0 0 4px;
        font-size: 16px; /* Prevents iOS zoom */
        box-sizing: border-box;
    }

    .global-search-input-group.mobile-search-expanded .input-group-text {
        flex-shrink: 0;
        box-sizing: border-box;
    }

    .global-search-input-group.mobile-search-expanded .mobile-search-cancel-btn {
        flex-shrink: 0;
        border-radius: 0 4px 4px 0;
        min-width: 44px;
        box-sizing: border-box;
    }

    /* Additional override to ensure full width expansion */
    @media (max-width: 991.98px) {
        .global-search-input-group.mobile-search-expanded.input-group {
            width: 100% !important;
            max-width: 100% !important;
        }

        .global-search-input-group.mobile-search-expanded .form-control {
            flex-grow: 1 !important;
            flex-shrink: 1 !important;
            flex-basis: 0 !important;
            min-width: 0 !important;
        }
    }

    .global-search-input-group .form-control {
        font-size: 12px;
        padding: 0.3rem 0.5rem;
        height: 32px;
    }

    .global-search-input-group .input-group-text {
        padding: 0.3rem 0.5rem;
        font-size: 12px;
        height: 32px;
    }

    .global-search-add-btn {
        padding: 0.3rem 0.5rem;
        height: 32px;
        min-width: 32px;
    }

        .global-search-add-btn i {
            font-size: 14px;
        }

    /* Further reduce header right spacing */
    .header-content-right .header-element {
        margin: 0 0.1rem;
    }

    .header-link {
        padding: 0.6rem 0.3rem !important;
    }

    .header-item {
        padding: 0.4rem 0.5rem !important;
        font-size: 13px !important;
    }

        .header-item .icon-lg {
            font-size: 1rem;
        }

    .header-link-icon {
        width: 1.4rem !important;
        height: 1.4rem !important;
        font-size: 1rem !important;
    }

    /* Adjust user avatar size */
    .user-avatar-initials,
    .header-profile-user {
        width: 28px !important;
        height: 28px !important;
        font-size: 11px !important;
    }

    .global-search-results-container {
        position: fixed !important;
        top: 119px !important;
        right: 0 !important;
        left: -131px !important;
        background: var(--custom-white) !important;
        border: 1px solid var(--default-border) !important;
        border-radius: 4px !important;
        max-height: 400px !important;
        overflow-y: auto !important;
        overflow-x: visible !important;
        box-shadow: 0 4px 12px var(--default-border) !important;
        z-index: 10000 !important;
        min-width: 300px !important;
    }
}

@media (max-width: 400px) {
    .global-search-input-group .form-control {
        font-size: 11px;
        padding: 0.25rem 0.4rem;
    }

    .global-search-input-group .input-group-text {
        padding: 0.25rem 0.4rem;
        font-size: 11px;
    }

    .global-search-add-btn {
        padding: 0.25rem 0.4rem;
        min-width: 28px;
        height: 28px;
    }

    .header-content-right .header-element {
        margin: 0 0.05rem;
    }

    .header-link {
        padding: 0.5rem 0.25rem !important;
    }

    .header-item {
        padding: 0.35rem 0.4rem !important;
    }

    .global-search-results-container {
        position: fixed !important;
        top: 119px !important;
        right: 0 !important;
        left: -131px !important;
        background: var(--custom-white) !important;
        border: 1px solid var(--default-border) !important;
        border-radius: 4px !important;
        max-height: 400px !important;
        overflow-y: auto !important;
        overflow-x: visible !important;
        box-shadow: 0 4px 12px var(--default-border) !important;
        z-index: 10000 !important;
        min-width: 300px !important;
    }
}

.global-search-bar {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 10000;
}

.btn-outline-success {
    color: rgb(var(--success-rgb));
    border-color: rgb(var(--success-rgb));
}

    .btn-outline-success:active, .btn-outline-success:hover {
        color: var(--default-text-color);
        background-color: rgb(var(--success-rgb));
        border-color: rgb(var(--success-rgb));
    }

#TimeZoneCount .btn-outline-success .badge {
    background-color: var(--success-color) !important;
    color: #ffffff !important;
}

[data-theme-mode=dark] #TimeZoneCount .btn-outline-success .badge {
    background-color: var(--success-color) !important;
    color: #ffffff !important;
}

#TimeZoneCount .btn-outline-success:hover .badge {
    background-color: #ffffff !important;
    color: var(--success-color) !important;
    border-color: #ffffff !important;
}

[data-theme-mode=dark] #TimeZoneCount .btn-outline-success:hover .badge {
    background-color: #ffffff !important;
    color: var(--success-color) !important;
    border-color: #ffffff !important;
}

.btn-outline-warning {
    color: rgb(var(--warning-rgb));
    border-color: rgb(var(--warning-rgb));
}

    .btn-outline-warning:active, .btn-outline-warning:hover {
        color: var(--default-text-color);
        background-color: rgb(var(--warning-rgb));
        border-color: rgb(var(--warning-rgb));
    }

#StatusCountSoftware .btn-outline-warning .badge {
    background-color: var(--warning-color) !important;
    color: #ffffff !important;
}

[data-theme-mode=dark] #StatusCountSoftware .btn-outline-warning .badge {
    background-color: var(--warning-color) !important;
    color: #ffffff !important;
}

#StatusCountSoftware .btn-outline-warning:hover .badge {
    background-color: #ffffff !important;
    color: var(--warning-color) !important;
    border-color: #ffffff !important;
}

[data-theme-mode=dark] #StatusCountSoftware .btn-outline-warning:hover .badge {
    background-color: #ffffff !important;
    color: var(--warning-color) !important;
    border-color: #ffffff !important;
}

.nNotification {
    max-height: fit-content;
    overflow-y: visible;
    width: 500px;
}

.notification-message {
    font-size: 11px !important;
}

.border-end {
    border-right: 1px solid var(--default-border) !important;
}

.time-tracking-box {
    border: 1px solid var(--default-border);
    border-radius: 8px;
    padding: 12px 16px;
    background-color: var(--default-background);
    height: 55px;
    min-height: 65px;
    max-height: 65px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    transition: all 0.2s ease;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}

.time-box-label {
    font-size: 11px;
    font-weight: 400;
    color: var(--default-text-color);
    margin: 0;
    margin-bottom: 6px;
    padding: 0;
    display: block;
    width: 100%;
    line-height: 1.2;
}

.time-box-value {
    color: var(--default-text-color);
    font-weight: 700;
    font-size: 20px;
    line-height: 1.2;
    margin: 0;
    padding: 0;
    display: block;
    width: 100%;
}

.templatefieldHeader {
    border-bottom: 2px solid var(--default-border);
    padding-bottom: 10px;
}

.templateSubtasksSection {
    margin-top: 20px;
    padding-top: 10px;
    border-top: 2px solid var(--default-border);
}

.HeaderDiv {
    border-bottom: 2px solid var(--default-border);
    padding-bottom: 12px;
    margin-bottom: 15px;
}

.notification-item[data-is-accepted="true"] {
    border-left: 3px solid #198754 !important;
}


/* Admin Dashboard Styles */
.role-dashboard-section {
    padding: 0;
}

.role-dashboard-header {
    margin-bottom: 1.5rem;
}

    .role-dashboard-header h4 {
        font-weight: 700;
        margin-bottom: 0.25rem;
        color: var(--default-text-color, #333335);
    }

    .role-dashboard-header .muted {
        color: var(--text-muted, #8c9097);
        font-size: 0.875rem;
    }

.kpi-card {
    background: var(--custom-white, #ffffff);
    border: 1px solid var(--default-border, #e3e3e3);
    border-radius: 14px;
    padding: 1rem;
    box-shadow: 0 10px 30px rgba(16, 24, 40, 0.08);
    cursor: pointer;
    transition: all 0.2s ease;
}

    .kpi-card:hover {
        outline: 2px solid rgba(13, 110, 253, 0.25);
        box-shadow: 0 10px 30px rgba(16, 24, 40, 0.12);
    }

.kpi-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0.5rem;
}

.kpi-label {
    font-size: 0.875rem;
    color: var(--text-muted, #8c9097);
    margin-bottom: 0.25rem;
}

.kpi-value {
    font-size: 26px;
    font-weight: 800;
    color: var(--default-text-color, #333335);
    line-height: 1.2;
}

.kpi-icon {
    font-size: 2rem;
    opacity: 0.8;
}

.kpi-footer {
    font-size: 0.75rem;
    color: var(--text-muted, #8c9097);
    margin-top: 0.5rem;
}

.kpi-loading,
.kpi-error {
    text-align: center;
    padding: 2rem;
    color: var(--text-muted, #8c9097);
}

    .kpi-loading .spin,
    .kpi-error .bi {
        margin-right: 0.5rem;
    }

.admin-widget-card {
    background: var(--custom-white, #ffffff);
    border: 1px solid var(--default-border, #e3e3e3);
    border-radius: 14px;
    padding: 1.25rem;
    box-shadow: 0 10px 30px rgba(16, 24, 40, 0.08);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.admin-widget-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.admin-widget-title {
    font-weight: 700;
    font-size: 1rem;
    color: var(--default-text-color, #333335);
    margin-bottom: 0.25rem;
}

.admin-widget-subtitle {
    font-size: 0.875rem;
    color: var(--text-muted, #8c9097);
}

.admin-widget-view-all {
    font-size: 0.875rem;
}

    .admin-widget-view-all a {
        color: var(--primary-color, rgb(132, 90, 223));
        text-decoration: none;
        cursor: pointer;
        transition: text-decoration 0.2s ease;
    }

        .admin-widget-view-all a:hover {
            text-decoration: underline;
        }

.admin-widget-card .table-responsive {
    flex: 1;
    overflow-x: auto;
}

.admin-widget-card .dataTable {
    width: 100% !important;
}

    .admin-widget-card .dataTable thead th {
        background-color: var(--gray-1, #f9fafb);
        border-bottom: 2px solid var(--default-border, #e3e3e3);
        font-weight: 600;
        color: var(--default-text-color, #333335);
        padding: 0.75rem;
        font-size: 0.875rem;
    }

    .admin-widget-card .dataTable tbody td {
        padding: 0.75rem;
        border-bottom: 1px solid var(--default-border, #e3e3e3);
        font-size: 0.875rem;
        color: var(--default-text-color, #333335);
    }

    .admin-widget-card .dataTable tbody tr:hover {
        background-color: var(--list-hover-focus-bg, #f5f6f7);
    }

    .admin-widget-card .dataTable tbody tr:last-child td {
        border-bottom: none;
    }

.spin {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.input-group > .multiselect-native-select:not(:first-child) .multiselect {
    border-top-left-radius: .35rem;
    border-bottom-left-radius: .35rem;
}

.ql-snow .ql-tooltip {
    background-color: var(--default-background);
    border: 1px solid var(--default-border);
    box-shadow: 0px 0px 5px var(--default-border);
    color: var(--default-text-color);
}

/* Override Quill's default left and top positioning for all tooltips */
.ql-snow .ql-tooltip,
.ql-tooltip,
body .ql-snow .ql-tooltip,
body .ql-tooltip,
html body .ql-snow .ql-tooltip,
html body .ql-tooltip {
    left: 0px !important;
    top: auto !important;
}

    /* Override inline styles for all tooltips */
    .ql-snow .ql-tooltip[style*="left"],
    .ql-tooltip[style*="left"],
    .ql-snow .ql-tooltip[style*="top"],
    .ql-tooltip[style*="top"] {
        left: 0px !important;
        top: auto !important;
    }

    /* Override Quill's inline styles for tooltip positioning when editing */
    .ql-snow .ql-tooltip.ql-editing,
    .ql-tooltip.ql-editing,
    .ql-snow .ql-tooltip.ql-editing[style],
    .ql-tooltip.ql-editing[style],
    body .ql-snow .ql-tooltip.ql-editing,
    body .ql-tooltip.ql-editing,
    html body .ql-snow .ql-tooltip.ql-editing,
    html body .ql-tooltip.ql-editing {
        left: 0px !important;
        top: auto !important;
        transform: none !important;
        margin-left: 0 !important;
        margin-top: 0 !important;
        position: absolute !important;
    }

        /* Additional override for any inline style attributes */
        .ql-snow .ql-tooltip.ql-editing[style*="left"],
        .ql-tooltip.ql-editing[style*="left"],
        .ql-snow .ql-tooltip.ql-editing[style*="top"],
        .ql-tooltip.ql-editing[style*="top"] {
            left: 0px !important;
            top: auto !important;
        }

    /* Override Quill's default styles for ql-action and ql-remove */
    .ql-snow .ql-tooltip a.ql-action,
    .ql-tooltip a.ql-action,
    .ql-action,
    body .ql-snow .ql-tooltip a.ql-action,
    body .ql-tooltip a.ql-action,
    html body .ql-snow .ql-tooltip a.ql-action,
    html body .ql-tooltip a.ql-action {
        color: var(--default-text-color) !important;
    }

        .ql-snow .ql-tooltip a.ql-remove,
        .ql-tooltip a.ql-remove,
        .ql-remove,
        .ql-action .ql-remove,
        body .ql-snow .ql-tooltip a.ql-remove,
        body .ql-tooltip a.ql-remove,
        html body .ql-snow .ql-tooltip a.ql-remove,
        html body .ql-tooltip a.ql-remove {
            color: var(--default-text-color) !important;
        }

        /* Override pseudo-elements for ql-action and ql-remove */
        .ql-snow .ql-tooltip a.ql-action::after,
        .ql-tooltip a.ql-action::after,
        body .ql-snow .ql-tooltip a.ql-action::after,
        body .ql-tooltip a.ql-action::after {
            color: var(--default-text-color) !important;
        }

    .ql-snow .ql-tooltip a.ql-remove::before,
    .ql-tooltip a.ql-remove::before,
    body .ql-snow .ql-tooltip a.ql-remove::before,
    body .ql-tooltip a.ql-remove::before {
        color: var(--default-text-color) !important;
    }

/* ✅ ADD: IT Ticket Template Page Styles - Moved from AddITTicketTemplate.cshtml */
/* QA Session-like Layout Structure */
.ticket-page-wrapper {
    background: #f5f5f5;
    padding: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    overflow-y: visible;
    min-height: calc(100vh - 120px);
    position: relative;
    margin: 0;
}

.ticket-header-section {
    background: #fff;
    padding: 15px 20px;
    border-bottom: 1px solid #e5e7eb;
    flex-shrink: 0;
}

.ticket-header-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    .ticket-header-row h2 {
        margin: 0;
        font-size: 20px;
        font-weight: 600;
        color: #000000;
    }

.ticket-sub-label {
    font-size: 12px;
    color: #6b7280;
}

/* Container for two panels */
.ticket-container {
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: visible;
    box-sizing: border-box;
    padding: 15px;
}

/* Main Panel: Contains Left and Right Panels */
.ticket-main-panel {
    display: grid;
    grid-template-columns: minmax(0, 0.65fr) minmax(0, 0.55fr);
    gap: 18px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    flex: 1;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: visible;
    align-items: stretch;
    position: relative;
}

@media (max-width: 1200px) {
    .ticket-main-panel {
        grid-template-columns: 1fr;
    }
}

/* Left Panel: Form */
.ticket-left-panel {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    overflow-x: hidden !important;
    overflow-y: visible;
    min-height: 0;
    display: flex;
    flex-direction: column;
    position: relative;
    box-sizing: border-box;
}

/* When in modal, panels should have fixed height */
#dalgAddITTicketTemplate .ticket-left-panel {
    overflow-y: hidden !important;
    height: 100% !important;
    max-height: 100% !important;
}

.ticket-left-panel-header {
    padding: 15px 20px;
    border-bottom: 1px solid #e5e7eb;
    flex-shrink: 0;
    background: #f9fafb;
}

    .ticket-left-panel-header h5 {
        margin: 0;
        font-size: 16px;
        font-weight: 600;
        color: #000000;
    }

.ticket-left-panel-content {
    flex: 1 1 auto;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    min-height: 0;
    padding: 20px;
    box-sizing: border-box;
    scrollbar-width: thin;
    scrollbar-color: #cbd5e0 #f1f5f9;
}

    .ticket-left-panel-content::-webkit-scrollbar {
        width: 8px;
    }

    .ticket-left-panel-content::-webkit-scrollbar-track {
        background: #f1f5f9;
        border-radius: 4px;
    }

    .ticket-left-panel-content::-webkit-scrollbar-thumb {
        background: #cbd5e0;
        border-radius: 4px;
    }

        .ticket-left-panel-content::-webkit-scrollbar-thumb:hover {
            background: #94a3b8;
        }

/* Right Panel: Preview */
.ticket-right-panel {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    overflow-x: hidden !important;
    overflow-y: visible;
    min-height: 0;
    display: flex;
    flex-direction: column;
    position: relative;
    box-sizing: border-box;
}

/* When in modal, panels should have fixed height */
#dalgAddITTicketTemplate .ticket-right-panel {
    overflow-y: hidden !important;
    height: 100% !important;
    max-height: 100% !important;
}

.ticket-right-panel-header {
    padding: 15px 20px;
    border-bottom: 1px solid #e5e7eb;
    flex-shrink: 0;
    background: #f9fafb;
}

    .ticket-right-panel-header h5 {
        margin: 0;
        font-size: 16px;
        font-weight: 600;
        color: #000000;
    }

.ticket-right-panel-content {
    flex: 1 1 auto;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    min-height: 0;
    padding: 20px;
    box-sizing: border-box;
    scrollbar-width: thin;
    scrollbar-color: #cbd5e0 #f1f5f9;
}

    .ticket-right-panel-content::-webkit-scrollbar {
        width: 8px;
    }

    .ticket-right-panel-content::-webkit-scrollbar-track {
        background: #f1f5f9;
        border-radius: 4px;
    }

    .ticket-right-panel-content::-webkit-scrollbar-thumb {
        background: #cbd5e0;
        border-radius: 4px;
    }

        .ticket-right-panel-content::-webkit-scrollbar-thumb:hover {
            background: #94a3b8;
        }

/* Preview Card Styling */
.preview-card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 16px;
    margin-bottom: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    display: flex;
    align-items: flex-start;
    gap: 12px;
    position: relative;
}

.preview-card-icon {
    font-size: 32px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    flex-shrink: 0;
}

.preview-card-content {
    flex: 1;
    min-width: 0;
}

.preview-card-title {
    font-size: 16px;
    font-weight: 600;
    color: #000000;
    margin-bottom: 4px;
}

.preview-card-subtitle {
    font-size: 13px;
    color: #6b7280;
    margin-bottom: 8px;
}

.preview-card-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
}

.preview-chip {
    background: #f3f4f6;
    color: #374151;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 500;
}

.preview-priority-chip {
    position: absolute;
    top: 12px;
    right: 12px;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 600;
}

.preview-description-box {
    border: 2px dashed #d1d5db;
    border-radius: 8px;
    padding: 16px;
    background: #f9fafb;
    font-size: 13px;
    color: #374151;
    line-height: 1.6;
    white-space: pre-wrap;
    max-height: 300px;
    overflow-y: auto;
}

/* Prevent parent containers from causing overflow */
.ticket-page-wrapper .container,
.ticket-page-wrapper .container-fluid,
.ticket-page-wrapper .main-content,
.ticket-page-wrapper #main-content,
.ticket-page-wrapper .content-wrapper {
    max-width: 100vw !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    max-height: none !important;
    height: auto !important;
}

/* Override any parent container constraints for Ticket Template */
body .main-content .ticket-page-wrapper,
body .container-fluid .ticket-page-wrapper,
body .container .ticket-page-wrapper,
body #main-content .ticket-page-wrapper,
body .content-wrapper .ticket-page-wrapper {
    max-height: none !important;
    height: auto !important;
    overflow-y: visible !important;
    overflow-x: hidden !important;
}

/* Ensure body and html don't restrict height */
body:has(.ticket-page-wrapper),
html:has(.ticket-page-wrapper) {
    overflow-y: auto !important;
    height: auto !important;
    max-height: none !important;
}

/* Bottom List Section */
.ticket-list-section {
    margin-top: 20px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    padding: 20px;
    flex-shrink: 0;
}

.ticket-list-section-title {
    font-size: 18px;
    font-weight: 600;
    color: #000000;
    margin-bottom: 20px;
}

/* Section divider */
.singleLine {
    border-top: 1px solid #e5e7eb;
    margin: 15px 0;
}

/* Modal Styling - Match Department/Project Theme */
.ticket-master-modal {
    display: none;
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.5);
}

.ticket-master-modal-content {
    background-color: #ffffff;
    margin: 5% auto;
    padding: 0;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    width: 90%;
    max-width: 500px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

.ticket-master-modal-header {
    padding: 16px 20px;
    background-color: #f9fafb;
    border-bottom: 1px solid #e5e7eb;
    border-radius: 8px 8px 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    .ticket-master-modal-header h4 {
        margin: 0;
        font-size: 18px;
        font-weight: 600;
        color: #111827;
    }

.ticket-master-modal-close {
    color: #6b7280;
    font-size: 24px;
    font-weight: bold;
    cursor: pointer;
    line-height: 1;
    transition: color 0.2s ease;
}

    .ticket-master-modal-close:hover {
        color: #111827;
    }

.ticket-master-modal-body {
    padding: 20px;
}

.ticket-master-modal-footer {
    padding: 16px 20px;
    background-color: #f9fafb;
    border-top: 1px solid #e5e7eb;
    border-radius: 0 0 8px 8px;
}

.ticket-master-modal-body .nFormFields {
    margin-bottom: 15px;
}

    .ticket-master-modal-body .nFormFields .nLabel {
        font-weight: 500;
        color: #495057;
        margin-bottom: 5px;
    }

    .ticket-master-modal-body .nFormFields .nControl {
        width: 100%;
    }

        .ticket-master-modal-body .nFormFields .nControl input {
            width: 100%;
            box-sizing: border-box;
        }

/* IT Ticket Template - Additional utility classes for inline style replacements */
.ticket-template-preview-helper {
    font-size: 12px;
    color: #6b7280;
    margin-bottom: 16px;
}

.ticket-template-preview-badge {
    text-align: right;
    margin-bottom: 16px;
}

    .ticket-template-preview-badge .btn {
        pointer-events: none;
        background: #10b981;
        border: none;
    }

.ticket-template-empty-state {
    padding: 60px 20px;
    display: block;
}

.ticket-template-empty-state-icon {
    font-size: 48px;
    color: #9ca3af;
    margin-bottom: 16px;
    opacity: 0.5;
}

.ticket-template-empty-state-text {
    font-size: 14px;
    color: #6b7280;
    margin: 0;
    font-weight: 500;
}

.ticket-template-description-section {
    margin-top: 20px;
}

.ticket-template-description-label {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 8px;
}

.ticket-template-action-buttons {
    margin-top: 20px;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    padding-top: 15px;
    border-top: 1px solid #e5e7eb;
}

.ticket-template-label-with-button {
    display: flex;
    justify-content: space-between;
    align-items: center;
    pointer-events: none;
}

    .ticket-template-label-with-button span {
        pointer-events: auto;
    }

    .ticket-template-label-with-button .btn {
        pointer-events: auto;
    }

.ticket-template-table-loading {
    padding: 20px;
    color: #6c757d;
}

.ticket-template-modal-hidden {
    display: none;
}

/* ✅ ADD: Dark Theme Support for IT Ticket Template Page */
[data-theme-mode=dark] .ticket-page-wrapper {
    background: var(--default-body-bg-color) !important;
}

[data-theme-mode=dark] .ticket-header-section {
    background: var(--custom-white) !important;
    border-bottom-color: var(--default-border) !important;
}

[data-theme-mode=dark] .ticket-header-row h2 {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .ticket-sub-label {
    color: var(--text-muted) !important;
}

[data-theme-mode=dark] .ticket-left-panel,
[data-theme-mode=dark] .ticket-right-panel {
    background: var(--custom-white) !important;
    border-color: var(--default-border) !important;
}

[data-theme-mode=dark] .ticket-left-panel-header,
[data-theme-mode=dark] .ticket-right-panel-header {
    background: var(--default-background) !important;
    border-bottom-color: var(--default-border) !important;
}

    [data-theme-mode=dark] .ticket-left-panel-header h5,
    [data-theme-mode=dark] .ticket-right-panel-header h5 {
        color: var(--default-text-color) !important;
    }

[data-theme-mode=dark] .ticket-left-panel-content,
[data-theme-mode=dark] .ticket-right-panel-content {
    background: var(--custom-white) !important;
    color: var(--default-text-color) !important;
    scrollbar-color: var(--default-border) var(--default-background) !important;
}

    [data-theme-mode=dark] .ticket-left-panel-content::-webkit-scrollbar-track,
    [data-theme-mode=dark] .ticket-right-panel-content::-webkit-scrollbar-track {
        background: var(--default-background) !important;
    }

    [data-theme-mode=dark] .ticket-left-panel-content::-webkit-scrollbar-thumb,
    [data-theme-mode=dark] .ticket-right-panel-content::-webkit-scrollbar-thumb {
        background: var(--default-border) !important;
    }

        [data-theme-mode=dark] .ticket-left-panel-content::-webkit-scrollbar-thumb:hover,
        [data-theme-mode=dark] .ticket-right-panel-content::-webkit-scrollbar-thumb:hover {
            background: var(--text-muted) !important;
        }

[data-theme-mode=dark] .ticket-list-section {
    background: var(--custom-white) !important;
    border-color: var(--default-border) !important;
}

[data-theme-mode=dark] .ticket-list-section-title {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .preview-card {
    background: var(--default-background) !important;
    border-color: var(--default-border) !important;
}

[data-theme-mode=dark] .preview-card-title {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .preview-card-subtitle {
    color: var(--text-muted) !important;
}

[data-theme-mode=dark] .preview-chip {
    background: var(--default-background) !important;
    color: var(--default-text-color) !important;
    border: 1px solid var(--default-border) !important;
}

[data-theme-mode=dark] .preview-description-box {
    background: var(--custom-white) !important;
    border-color: var(--default-border) !important;
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .ticket-template-preview-helper {
    color: var(--text-muted) !important;
}

[data-theme-mode=dark] .ticket-template-empty-state-text {
    color: var(--text-muted) !important;
}

[data-theme-mode=dark] .ticket-template-description-label {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .ticket-template-action-buttons {
    border-top-color: var(--default-border) !important;
}

[data-theme-mode=dark] .ticket-master-modal {
    background-color: rgba(0, 0, 0, 0.7) !important;
}

[data-theme-mode=dark] .ticket-master-modal-content {
    background-color: var(--custom-white) !important;
    border-color: var(--default-border) !important;
}

[data-theme-mode=dark] .ticket-master-modal-header {
    background-color: var(--default-background) !important;
    border-bottom-color: var(--default-border) !important;
}

    [data-theme-mode=dark] .ticket-master-modal-header h4 {
        color: var(--default-text-color) !important;
    }

[data-theme-mode=dark] .ticket-master-modal-close {
    color: var(--text-muted) !important;
}

    [data-theme-mode=dark] .ticket-master-modal-close:hover {
        color: var(--default-text-color) !important;
    }

[data-theme-mode=dark] .ticket-master-modal-body {
    background-color: var(--custom-white) !important;
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .ticket-master-modal-footer {
    background-color: var(--default-background) !important;
    border-top-color: var(--default-border) !important;
}

[data-theme-mode=dark] .ticket-master-modal-body .nFormFields .nLabel {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .ticket-template-table-loading {
    color: var(--text-muted) !important;
}

/* Dark theme: Form elements in ticket template */
[data-theme-mode=dark] .ticket-left-panel-content .nLabel,
[data-theme-mode=dark] .ticket-right-panel-content .nLabel {
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .ticket-left-panel-content .form-control,
[data-theme-mode=dark] .ticket-left-panel-content .form-select {
    background-color: var(--form-control-bg) !important;
    border-color: var(--input-border) !important;
    color: var(--default-text-color) !important;
}

    [data-theme-mode=dark] .ticket-left-panel-content .form-control:focus,
    [data-theme-mode=dark] .ticket-left-panel-content .form-select:focus {
        background-color: var(--form-control-bg) !important;
        border-color: var(--primary-color) !important;
        color: var(--default-text-color) !important;
    }

    [data-theme-mode=dark] .ticket-left-panel-content .form-control::placeholder,
    [data-theme-mode=dark] .ticket-left-panel-content .form-select::placeholder {
        color: var(--text-muted) !important;
    }

[data-theme-mode=dark] .ticket-left-panel-content .text-muted {
    color: var(--text-muted) !important;
}

[data-theme-mode=dark] .ticket-left-panel-content .text-danger {
    color: rgb(var(--danger-rgb)) !important;
}

/* Dark theme: Card custom styling */
[data-theme-mode=dark] .ticket-left-panel .card.custom-card,
[data-theme-mode=dark] .ticket-right-panel .card.custom-card,
[data-theme-mode=dark] .ticket-list-section.card.custom-card {
    background-color: var(--custom-white) !important;
    border-color: var(--default-border) !important;
}

[data-theme-mode=dark] .ticket-left-panel .card-header,
[data-theme-mode=dark] .ticket-right-panel .card-header,
[data-theme-mode=dark] .ticket-list-section .card-header {
    background-color: var(--default-background) !important;
    border-bottom-color: var(--default-border) !important;
}

[data-theme-mode=dark] .ticket-left-panel .card-body,
[data-theme-mode=dark] .ticket-right-panel .card-body,
[data-theme-mode=dark] .ticket-list-section .card-body {
    background-color: var(--custom-white) !important;
    color: var(--default-text-color) !important;
}

/* Dark theme: Table styling in ticket list section */
[data-theme-mode=dark] .ticket-list-section .table {
    color: var(--default-text-color) !important;
}

    [data-theme-mode=dark] .ticket-list-section .table thead th {
        background-color: var(--default-background) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

    [data-theme-mode=dark] .ticket-list-section .table tbody td {
        background-color: var(--custom-white) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

    [data-theme-mode=dark] .ticket-list-section .table tbody tr:hover {
        background-color: var(--list-hover-focus-bg) !important;
    }

/* ✅ ADD: IT Ticket Template List Page Styles - Matching Industry Page Design */
.ITicket-list-loading {
    display: none;
    text-align: center;
    padding: 40px 20px;
    color: #6c757d;
}

    .ITicket-list-loading i {
        font-size: 24px;
        margin-bottom: 10px;
        display: block;
        animation: spin 1s linear infinite;
    }

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.ITicket-list-loading p {
    margin: 0;
    font-size: 14px;
}

/* Status filter buttons - Matching Industry page */
.list-status.nMenuItems {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: nowrap;
}

    .list-status.nMenuItems .n-li-items {
        flex-shrink: 0;
    }

/* Ensure table doesn't break on smaller screens */
#ITTicketTable {
    min-width: 1200px;
    width: 100%;
    table-layout: auto;
}

/* Responsive column adjustments - reduce padding on smaller screens */
@media (max-width: 1400px) {
    #ITTicketTable th,
    #ITTicketTable td {
        padding: 8px 10px;
        font-size: 12px;
    }

    #ITTicketTable {
        min-width: 1100px;
    }
}

@media (max-width: 1200px) {
    #ITTicketTable th,
    #ITTicketTable td {
        padding: 6px 8px;
        font-size: 11px;
    }

    #ITTicketTable {
        min-width: 1000px;
    }
}

@media (max-width: 992px) {
    #ITTicketTable th,
    #ITTicketTable td {
        padding: 6px 6px;
        font-size: 11px;
    }

    #ITTicketTable {
        min-width: 900px;
    }
}

@media (max-width: 768px) {
    #ITTicketTable th,
    #ITTicketTable td {
        padding: 5px 5px;
        font-size: 10px;
    }

    #ITTicketTable {
        min-width: 800px;
    }
}

/* Row styling - no hover effect, no cursor pointer */
#ITTicketTable tbody tr.ITicket-row {
    transition: none;
    cursor: default;
}

/* ✅ ADD: Dark Theme Support for IT Ticket Template List Page */
[data-theme-mode=dark] .ITicket-list-loading {
    color: var(--text-muted) !important;
}

[data-theme-mode=dark] #ITTicketTable {
    color: var(--default-text-color) !important;
}

    [data-theme-mode=dark] #ITTicketTable thead th {
        background-color: var(--default-background) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

    [data-theme-mode=dark] #ITTicketTable tbody td {
        background-color: var(--custom-white) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

    [data-theme-mode=dark] #ITTicketTable tbody tr:hover {
        background-color: var(--list-hover-focus-bg) !important;
    }

    [data-theme-mode=dark] #ITTicketTable tbody tr.ITicket-row {
        background-color: var(--custom-white) !important;
    }

    [data-theme-mode=dark] #ITTicketTable .dt-empty {
        color: var(--text-muted) !important;
    }

[data-theme-mode=dark] .list-status.nMenuItems .btn {
    border-color: var(--default-border) !important;
    color: var(--default-text-color) !important;
}

    [data-theme-mode=dark] .list-status.nMenuItems .btn:hover {
        background-color: var(--list-hover-focus-bg) !important;
        border-color: var(--primary-color) !important;
    }

[data-theme-mode=dark] .list-status.nMenuItems .badge {
    background-color: var(--default-background) !important;
    color: var(--default-text-color) !important;
}

[data-theme-mode=dark] .ITicket-list-loading {
    color: var(--text-muted) !important;
}

[data-theme-mode=dark] #ITTicketTable {
    color: var(--default-text-color) !important;
}

    [data-theme-mode=dark] #ITTicketTable thead th {
        background-color: var(--default-background) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

    [data-theme-mode=dark] #ITTicketTable tbody td {
        background-color: var(--custom-white) !important;
        color: var(--default-text-color) !important;
        border-color: var(--default-border) !important;
    }

    [data-theme-mode=dark] #ITTicketTable tbody tr:hover {
        background-color: var(--list-hover-focus-bg) !important;
    }

    [data-theme-mode=dark] #ITTicketTable tbody tr.ITicket-row {
        background-color: var(--custom-white) !important;
    }

    [data-theme-mode=dark] #ITTicketTable .dt-empty {
        color: var(--text-muted) !important;
    }


/* ============================================
   STICKER CARDS - Project Worklog
   ============================================ */
.sticker-card {
    background: #fff !important;
    border: 1px solid var(--default-border);
    border-radius: 12px;
    padding: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    position: relative;
    overflow: hidden;
}

    .sticker-card::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 4px;
        height: 100%;
        background: var(--primary-color);
        transition: width 0.3s ease;
    }

.sticker-card {
    cursor: pointer;
    position: relative;
    z-index: 1;
}

/* Total card should not have cursor pointer */
#stickerTotal {
    cursor: default !important;
}

    #stickerTotal:hover {
        cursor: default !important;
        transform: none;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
        border-color: var(--default-border);
        background: #fff !important;
        z-index: 1;
    }

        #stickerTotal:hover::before {
            width: 4px;
            background: var(--primary-color);
            box-shadow: none;
        }

[data-theme-mode=dark] #stickerTotal:hover {
    cursor: default !important;
    transform: none;
    background: rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    border-color: rgba(255, 255, 255, 0.15);
}

    [data-theme-mode=dark] #stickerTotal:hover::before {
        background: var(--primary-color);
        box-shadow: none;
    }

.sticker-card:hover {
    transform: translateY(-4px) scale(1.03);
    box-shadow: 0 8px 24px rgba(124, 92, 255, 0.25), 0 0 0 2px rgba(124, 92, 255, 0.15);
    border-color: var(--primary-color);
    background: #fff !important;
    z-index: 10;
}

    .sticker-card:hover::before {
        width: 6px;
        background: var(--primary-color);
        box-shadow: 0 0 8px rgba(124, 92, 255, 0.5);
    }

.sticker-card:active {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 4px 16px rgba(124, 92, 255, 0.3);
}

.sticker-card-primary {
    border-left-color: var(--primary-color);
}

    .sticker-card-primary .sticker-icon {
        background: rgba(132, 90, 222, 0.25) !important;
        color: #845ade !important;
    }

.sticker-card-info {
    border-left-color: #49b6f5;
}

    .sticker-card-info .sticker-icon {
        background: rgba(73, 182, 245, 0.25) !important;
        color: #49b6f5 !important;
    }

.sticker-card-success {
    border-left-color: #38bf94;
}

    .sticker-card-success .sticker-icon {
        background: rgba(56, 191, 148, 0.25) !important;
        color: #38bf94 !important;
    }

.sticker-card-warning {
    border-left-color: #f5b849;
}

    .sticker-card-warning .sticker-icon {
        background: rgba(245, 184, 73, 0.25) !important;
        color: #f5b849 !important;
    }

.sticker-icon {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.sticker-card:hover .sticker-icon {
    transform: scale(1.2) rotate(5deg);
    box-shadow: 0 6px 16px rgba(124, 92, 255, 0.3);
    background: rgba(124, 92, 255, 0.2) !important;
}

[data-theme-mode=dark] .sticker-card:hover .sticker-icon {
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.5), 0 0 12px rgba(167, 139, 250, 0.4);
    background: rgba(167, 139, 250, 0.25) !important;
}

[data-theme-mode=dark] .sticker-card:hover .sticker-right-icon {
    background: rgba(167, 139, 250, 0.25);
    box-shadow: 0 2px 8px rgba(167, 139, 250, 0.3);
    color: #c4b5fd;
}

.sticker-content {
    flex: 1;
    min-width: 0;
}

.sticker-right-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: var(--text-muted);
    flex-shrink: 0;
    transition: all 0.3s ease;
    opacity: 0.6;
}

.sticker-card:hover .sticker-right-icon {
    opacity: 1;
    transform: translateX(6px) scale(1.15);
    color: var(--primary-color);
    background: rgba(124, 92, 255, 0.15);
    box-shadow: 0 2px 8px rgba(124, 92, 255, 0.2);
}

[data-theme-mode=dark] .sticker-card:hover .sticker-right-icon {
    color: #a78bfa;
    background: rgba(167, 139, 250, 0.2);
}

[data-theme-mode=dark] .sticker-right-icon {
    color: rgba(255, 255, 255, 0.5);
}

[data-theme-mode=dark] .sticker-card:hover .sticker-right-icon {
    color: rgba(255, 255, 255, 0.9);
}

.sticker-label {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

.sticker-value {
    font-size: 20px;
    font-weight: 700;
    color: var(--default-text-color);
    line-height: 1.2;
    word-break: break-word;
}

[data-theme-mode=dark] .sticker-value {
    color: rgba(255, 255, 255, 0.95) !important;
}

/* Dark Mode Support */
[data-theme-mode=dark] .sticker-card {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.15) !important;
}

    [data-theme-mode=dark] .sticker-card:hover {
        background: rgba(255, 255, 255, 0.18) !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6), 0 0 0 2px rgba(167, 139, 250, 0.4), 0 0 20px rgba(167, 139, 250, 0.2);
        border-color: rgba(167, 139, 250, 0.7);
        transform: translateY(-4px) scale(1.03);
    }

        [data-theme-mode=dark] .sticker-card:hover::before {
            background: #a78bfa;
            box-shadow: 0 0 12px rgba(167, 139, 250, 0.6);
        }

[data-theme-mode=dark] .sticker-label {
    color: rgba(255, 255, 255, 0.7) !important;
}

[data-theme-mode=dark] .sticker-value {
    color: rgba(255, 255, 255, 0.95) !important;
}

[data-theme-mode=dark] .sticker-card-primary .sticker-icon {
    background: rgba(132, 90, 222, 0.3) !important;
    color: #a78bfa !important;
}

[data-theme-mode=dark] .sticker-card-info .sticker-icon {
    background: rgba(73, 182, 245, 0.3) !important;
    color: #60a5fa !important;
}

[data-theme-mode=dark] .sticker-card-success .sticker-icon {
    background: rgba(56, 191, 148, 0.3) !important;
    color: #4ade80 !important;
}

[data-theme-mode=dark] .sticker-card-warning .sticker-icon {
    background: rgba(245, 184, 73, 0.3) !important;
    color: #fbbf24 !important;
}

[data-theme-mode=dark] .sticker-card:hover .sticker-card-primary .sticker-icon {
    background: rgba(132, 90, 222, 0.4) !important;
    box-shadow: 0 4px 12px rgba(167, 139, 250, 0.3);
}

[data-theme-mode=dark] .sticker-card:hover .sticker-card-info .sticker-icon {
    background: rgba(73, 182, 245, 0.4) !important;
    box-shadow: 0 4px 12px rgba(96, 165, 250, 0.3);
}

[data-theme-mode=dark] .sticker-card:hover .sticker-card-success .sticker-icon {
    background: rgba(56, 191, 148, 0.4) !important;
    box-shadow: 0 4px 12px rgba(74, 222, 128, 0.3);
}

[data-theme-mode=dark] .sticker-card:hover .sticker-card-warning .sticker-icon {
    background: rgba(245, 184, 73, 0.4) !important;
    box-shadow: 0 4px 12px rgba(251, 191, 36, 0.3);
}

/* Responsive */
@media (max-width: 768px) {
    .sticker-card {
        padding: 12px;
    }

    .sticker-icon {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }

    .sticker-value {
        font-size: 16px;
    }
}

/* Modal Role Tree Styling */
/*#modalRoleTree {
    max-width: 800px;
    width: 90%;
}*/

#modalRoleTree .modal-dialog {
    max-width: 800px;
    width: 90%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 1.75rem;
    position: relative;
}

#modalRoleTree .modal-dialog-centered {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 100vh !important;
    padding: 1.75rem !important;
}

#modalRoleTree .modal-content {
    margin: 0;
    position: relative;
    width: 100%;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    border-radius: 0.5rem;
}

#modalRoleTree .modal-body {
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(90vh - 120px);
}

#modalRoleTreeTable {
    border-collapse: separate;
    border-spacing: 0;
    font-size: 14px;
    width: 100%;
    table-layout: auto;
}

#modalRoleTree .table-responsive {
    overflow-x: hidden !important;
    overflow-y: auto;
    max-width: 100%;
}

#modalRoleTreeTable thead th {
    background-color: rgba(124, 92, 255, 0.1);
    border-bottom: 2px solid rgba(124, 92, 255, 0.2);
    font-weight: 600;
    padding: 12px 8px;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

[data-theme-mode=dark] #modalRoleTreeTable thead th {
    background-color: rgba(124, 92, 255, 0.15);
    border-bottom-color: rgba(124, 92, 255, 0.3);
    color: rgba(255, 255, 255, 0.9);
}

#modalRoleTreeTable .user-row {
    background-color: rgba(0, 0, 0, 0.02) !important;
    border-left: 3px solid rgba(0, 0, 0, 0.12) !important;
    transition: all 0.2s ease;
}

[data-theme-mode=dark] #modalRoleTreeTable .user-row {
    background-color: rgba(255, 255, 255, 0.05) !important;
    border-left-color: rgba(255, 255, 255, 0.2) !important;
}

#modalRoleTreeTable .user-row:hover {
    background-color: rgba(0, 0, 0, 0.04) !important;
}

[data-theme-mode=dark] #modalRoleTreeTable .user-row:hover {
    background-color: rgba(255, 255, 255, 0.08) !important;
}

#modalRoleTreeTable .activity-row {
    background-color: rgba(0, 0, 0, 0.01) !important;
    border-left: 2px solid rgba(0, 0, 0, 0.1) !important;
    transition: all 0.2s ease;
}

[data-theme-mode=dark] #modalRoleTreeTable .activity-row {
    background-color: rgba(255, 255, 255, 0.03) !important;
    border-left-color: rgba(255, 255, 255, 0.15) !important;
}

#modalRoleTreeTable .activity-row:hover {
    background-color: rgba(0, 0, 0, 0.02) !important;
}

[data-theme-mode=dark] #modalRoleTreeTable .activity-row:hover {
    background-color: rgba(255, 255, 255, 0.05) !important;
}

#modalRoleTreeTable td {
    padding: 10px 12px !important;
    vertical-align: middle !important;
    word-wrap: break-word;
    overflow: hidden;
}

    #modalRoleTreeTable td:first-child {
        max-width: 50px;
        width: 50px;
        white-space: nowrap;
    }

    #modalRoleTreeTable td:nth-child(2) {
        max-width: none;
        word-wrap: break-word;
        white-space: normal;
    }

    #modalRoleTreeTable td:last-child {
        max-width: 120px;
        width: 120px;
        white-space: nowrap;
        text-align: right;
    }

/* Activity Cell Styling */
#modalRoleTreeTable .activity-cell {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

#modalRoleTreeTable .activity-name {
    font-weight: 500;
    color: var(--default-text-color);
}

[data-theme-mode=dark] #modalRoleTreeTable .activity-name {
    color: rgba(255, 255, 255, 0.85);
}

#modalRoleTreeTable .task-link-wrapper {
    display: inline-flex;
    align-items: center;
}

    #modalRoleTreeTable .task-link-wrapper a {
        color: #845ade !important;
        text-decoration: none;
        font-weight: 600;
        font-size: 13px;
        padding: 2px 8px;
        border-radius: 4px;
        background-color: rgba(132, 90, 222, 0.1);
        border: 1px solid rgba(132, 90, 222, 0.2);
        transition: all 0.2s ease;
        display: inline-block;
    }

        #modalRoleTreeTable .task-link-wrapper a:hover {
            background-color: rgba(132, 90, 222, 0.2);
            border-color: rgba(132, 90, 222, 0.4);
            color: #6d3dd4 !important;
            transform: translateY(-1px);
            box-shadow: 0 2px 4px rgba(132, 90, 222, 0.2);
        }

[data-theme-mode=dark] #modalRoleTreeTable .task-link-wrapper a {
    color: #a78bfa !important;
    background-color: rgba(167, 139, 250, 0.15);
    border-color: rgba(167, 139, 250, 0.3);
}

    [data-theme-mode=dark] #modalRoleTreeTable .task-link-wrapper a:hover {
        background-color: rgba(167, 139, 250, 0.25);
        border-color: rgba(167, 139, 250, 0.5);
        color: #c4b5fd !important;
        box-shadow: 0 2px 4px rgba(167, 139, 250, 0.3);
    }

#modalRoleTreeTable .activity-time {
    font-weight: 600;
    color: var(--default-text-color);
    font-family: 'Courier New', monospace;
    font-size: 13px;
}

[data-theme-mode=dark] #modalRoleTreeTable .activity-time {
    color: rgba(255, 255, 255, 0.9);
}

#modalRoleTreeTable .user-expand-icon {
    font-size: 16px;
    color: rgba(124, 92, 255, 0.7);
    transition: all 0.2s ease;
}

    #modalRoleTreeTable .user-expand-icon:hover {
        color: rgba(124, 92, 255, 1);
        transform: scale(1.15);
    }

/* Spin animation for loading */
.spin {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* Responsive Modal */
@media (max-width: 992px) {
    #modalRoleTree {
        max-width: 95%;
        width: 95%;
    }

        #modalRoleTree .modal-dialog {
            max-width: 95%;
            width: 95%;
            margin: 0 auto;
            min-height: 100vh;
            padding: 1rem;
        }

        #modalRoleTree .modal-content {
            max-height: 95vh;
        }

        #modalRoleTree .modal-body {
            max-height: calc(95vh - 120px);
        }

    #modalRoleTreeTable {
        font-size: 13px;
    }

        #modalRoleTreeTable td {
            padding: 8px 10px !important;
            word-wrap: break-word;
            white-space: normal;
        }

        #modalRoleTreeTable .activity-cell {
            flex-direction: column;
            align-items: flex-start;
            gap: 4px;
        }
}

@media (max-width: 576px) {
    #modalRoleTree {
        max-width: 100%;
        width: 100%;
    }

        #modalRoleTree .modal-dialog {
            max-width: 100%;
            width: 100%;
            margin: 0;
            min-height: 100vh;
            padding: 0.5rem;
        }

        #modalRoleTree .modal-content {
            max-height: 100vh;
            border-radius: 0;
        }

        #modalRoleTree .modal-body {
            max-height: calc(100vh - 120px);
        }

    #modalRoleTreeTable {
        font-size: 12px;
    }

        #modalRoleTreeTable thead th {
            padding: 8px 6px;
            font-size: 11px;
        }

        #modalRoleTreeTable td {
            padding: 6px 8px !important;
            white-space: normal;
            word-break: break-word;
        }

        #modalRoleTreeTable td {
            padding: 6px 8px !important;
        }

        #modalRoleTreeTable .task-link-wrapper a {
            font-size: 11px;
            padding: 2px 6px;
        }
}

/* Chart Card Header Styling */
.card-header.d-flex.justify-content-between {
    align-items: center;
    padding: 16px 20px;
}

.card-header .fw-semibold {
    display: flex;
    align-items: center;
    gap: 8px;
}

    .card-header .fw-semibold .badge {
        margin-left: 8px;
    }

/* Chart Tabs Styling */
#chartTabs {
    border-bottom: none;
    margin-bottom: 0;
    display: flex;
    justify-content: flex-end;
    gap: 0;
    align-items: center;
}

    #chartTabs .nav-link {
        border: none;
        border-bottom: 2px solid transparent;
        color: var(--text-muted);
        padding: 8px 16px;
        transition: all 0.2s ease;
        background: transparent;
    }

        #chartTabs .nav-link:hover {
            color: var(--primary-color);
            border-bottom-color: rgba(124, 92, 255, 0.3);
            background: transparent;
        }

        #chartTabs .nav-link.active {
            color: var(--primary-color);
            border-bottom-color: var(--primary-color);
            background-color: transparent;
            font-weight: 600;
        }

[data-theme-mode=dark] #chartTabs {
    border-bottom-color: rgba(255, 255, 255, 0.1);
}

    [data-theme-mode=dark] #chartTabs .nav-link {
        color: rgba(255, 255, 255, 0.6);
    }

        [data-theme-mode=dark] #chartTabs .nav-link:hover {
            color: rgba(255, 255, 255, 0.9);
            border-bottom-color: rgba(167, 139, 250, 0.5);
        }

        [data-theme-mode=dark] #chartTabs .nav-link.active {
            color: #a78bfa;
            border-bottom-color: #a78bfa;
        }

/* ApexCharts Toolbar Hover Styling */
.apexcharts-toolbar {
    opacity: 0.7;
    transition: opacity 0.3s ease;
}

    .apexcharts-toolbar:hover {
        opacity: 1;
    }

/* ApexCharts Download Menu Styling */
.apexcharts-menu {
    background: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    padding: 4px 0 !important;
}

.apexcharts-menu-item {
    color: #333333 !important;
    /*    padding: 8px 16px !important;*/
    font-size: 13px !important;
    transition: all 0.2s ease !important;
}

    .apexcharts-menu-item:hover {
        background: rgba(124, 92, 255, 0.1) !important;
        color: var(--primary-color) !important;
    }

[data-theme-mode=dark] .apexcharts-menu {
    background: #1e1e2e !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
}

[data-theme-mode=dark] .apexcharts-menu-item {
    color: #ffffff !important;
}

    [data-theme-mode=dark] .apexcharts-menu-item:hover {
        background: rgba(167, 139, 250, 0.2) !important;
        color: #c4b5fd !important;
    }

.apexcharts-menu-icon,
.apexcharts-zoom-icon,
.apexcharts-zoomin-icon,
.apexcharts-zoomout-icon,
.apexcharts-pan-icon,
.apexcharts-reset-icon,
.apexcharts-download-icon {
    transition: all 0.2s ease;
    cursor: pointer;
}

    .apexcharts-menu-icon:hover,
    .apexcharts-zoom-icon:hover,
    .apexcharts-zoomin-icon:hover,
    .apexcharts-zoomout-icon:hover,
    .apexcharts-pan-icon:hover,
    .apexcharts-reset-icon:hover,
    .apexcharts-download-icon:hover {
        transform: scale(1.2);
        opacity: 1;
        color: var(--primary-color);
        background: rgba(124, 92, 255, 0.1);
        border-radius: 4px;
    }

[data-theme-mode=dark] .apexcharts-toolbar {
    color: rgba(255, 255, 255, 0.7);
}

    [data-theme-mode=dark] .apexcharts-toolbar:hover {
        color: rgba(255, 255, 255, 1);
    }

[data-theme-mode=dark] .apexcharts-menu-icon:hover,
[data-theme-mode=dark] .apexcharts-zoom-icon:hover,
[data-theme-mode=dark] .apexcharts-zoomin-icon:hover,
[data-theme-mode=dark] .apexcharts-zoomout-icon:hover,
[data-theme-mode=dark] .apexcharts-pan-icon:hover,
[data-theme-mode=dark] .apexcharts-reset-icon:hover,
[data-theme-mode=dark] .apexcharts-download-icon:hover {
    color: #a78bfa;
    background: rgba(167, 139, 250, 0.15);
}

/* Chart Bar Hover Effects - No Color Change */
.apexcharts-bar-area {
    transition: transform 0.2s ease;
    cursor: pointer;
    opacity: 1 !important;
}

    .apexcharts-bar-area:hover {
        opacity: 1 !important;
        transform: translateY(-2px);
    }

[data-theme-mode=dark] .apexcharts-bar-area {
    opacity: 1 !important;
}

    [data-theme-mode=dark] .apexcharts-bar-area:hover {
        opacity: 1 !important;
        transform: translateY(-2px);
    }

/* Chart Text Colors - Dark Mode */
[data-theme-mode=dark] .apexcharts-text,
[data-theme-mode=dark] .apexcharts-xaxis-text,
[data-theme-mode=dark] .apexcharts-yaxis-text,
[data-theme-mode=dark] .apexcharts-datalabel,
[data-theme-mode=dark] .apexcharts-datalabel-label,
[data-theme-mode=dark] .apexcharts-data-labels text {
    fill: #ffffff !important;
    color: #ffffff !important;
}

[data-theme-mode=dark] .apexcharts-title-text,
[data-theme-mode=dark] .apexcharts-subtitle-text {
    fill: #ffffff !important;
    color: #ffffff !important;
}

[data-theme-mode=dark] .apexcharts-legend-text {
    color: #ffffff !important;
    fill: #ffffff !important;
}

/* Chart Text Colors - Light Mode */
.apexcharts-text,
.apexcharts-xaxis-text,
.apexcharts-yaxis-text,
.apexcharts-datalabel,
.apexcharts-datalabel-label,
.apexcharts-data-labels text {
    fill: #373d3f !important;
    color: #373d3f !important;
}

/* Chart Tooltip Styling */
.apexcharts-tooltip {
    border-radius: 10px !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25) !important;
    border: 2px solid rgba(124, 92, 255, 0.3) !important;
    transition: all 0.2s ease !important;
    backdrop-filter: none !important;
}

    .apexcharts-tooltip.apexcharts-theme-light {
        background: #ffffff !important;
        color: #1a1a1a !important;
        border-color: rgba(124, 92, 255, 0.3) !important;
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(124, 92, 255, 0.1) !important;
    }

[data-theme-mode=dark] .apexcharts-tooltip.apexcharts-theme-dark {
    background: #1e1e2e !important;
    color: #ffffff !important;
    border-color: rgba(167, 139, 250, 0.5) !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.7), 0 0 0 1px rgba(167, 139, 250, 0.3), 0 0 15px rgba(167, 139, 250, 0.15) !important;
    backdrop-filter: none !important;
}

.apexcharts-tooltip-title {
    font-weight: 700 !important;
    padding: 10px 14px !important;
    border-bottom: 2px solid rgba(124, 92, 255, 0.2) !important;
    background: rgba(124, 92, 255, 0.05) !important;
    font-size: 13px !important;
}

[data-theme-mode=dark] .apexcharts-tooltip-title {
    border-bottom-color: rgba(167, 139, 250, 0.3) !important;
    background: rgba(167, 139, 250, 0.1) !important;
    color: #ffffff !important;
}

.apexcharts-tooltip-series-group {
    padding: 8px 14px !important;
    font-weight: 500 !important;
}

[data-theme-mode=dark] .apexcharts-tooltip-series-group {
    color: #ffffff !important;
}

.apexcharts-tooltip-marker {
    width: 12px !important;
    height: 12px !important;
    border-radius: 4px !important;
    margin-right: 10px !important;
    border: 2px solid rgba(255, 255, 255, 0.3) !important;
}

[data-theme-mode=dark] .apexcharts-tooltip-marker {
    border-color: rgba(255, 255, 255, 0.4) !important;
}

/* User-wise Chart Filter Dropdown Container */
#chart-user-wise .mb-1 {
    padding: 8px 0;
    margin-bottom: 12px !important;
}

[data-theme-mode=dark] #chart-user-wise .mb-1 {
    background: transparent;
}

#chart-user-wise .form-label {
    font-weight: 600;
    color: var(--default-text-color);
    margin-bottom: 0;
}

[data-theme-mode=dark] #chart-user-wise .form-label {
    color: rgba(255, 255, 255, 0.9);
}

#chart-user-wise .form-label i {
    color: var(--primary-color);
    margin-right: 6px;
}

[data-theme-mode=dark] #chart-user-wise .form-label i {
    color: #a78bfa;
}

/* User-wise Chart Filter Dropdown */
#ddlUserWiseRoleFilter {
    border: 1.5px solid var(--default-border);
    border-radius: 8px;
    padding: 6px 32px 6px 12px;
    font-size: 13px;
    font-weight: 500;
    background-color: var(--custom-white);
    color: var(--default-text-color);
    transition: all 0.3s ease;
    min-width: 200px;
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 16px 12px;
}

    #ddlUserWiseRoleFilter:hover {
        border-color: var(--primary-color);
        background-color: var(--custom-white);
        box-shadow: 0 2px 8px rgba(124, 92, 255, 0.15);
        transform: translateY(-1px);
    }

    #ddlUserWiseRoleFilter:focus {
        border-color: var(--primary-color);
        box-shadow: 0 0 0 0.25rem rgba(124, 92, 255, 0.25);
        outline: none;
        background-color: var(--custom-white);
    }

    #ddlUserWiseRoleFilter option {
        padding: 8px;
        background-color: var(--custom-white);
        color: var(--default-text-color);
    }

[data-theme-mode=dark] #ddlUserWiseRoleFilter {
    background-color: var(--form-control-bg) !important;
    border-color: var(--input-border) !important;
    color: var(--default-text-color) !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
}

    [data-theme-mode=dark] #ddlUserWiseRoleFilter:hover {
        border-color: rgba(167, 139, 250, 0.6) !important;
        background-color: var(--form-control-bg) !important;
        box-shadow: 0 2px 8px rgba(167, 139, 250, 0.25);
    }

    [data-theme-mode=dark] #ddlUserWiseRoleFilter:focus {
        border-color: #a78bfa !important;
        box-shadow: 0 0 0 0.25rem rgba(167, 139, 250, 0.3);
        background-color: var(--form-control-bg) !important;
    }

    [data-theme-mode=dark] #ddlUserWiseRoleFilter option {
        background-color: var(--form-control-bg) !important;
        color: var(--default-text-color) !important;
    }

/* HR Hiring Dashboard Styles */
.chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--default-border);
    background: var(--custom-white);
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 12px;
}

.kpi {
    background: var(--custom-white);
    border: 1px solid var(--default-border);
    border-radius: 14px;
    padding: 14px;
    height: 100%;
}

    .kpi .kpi-label {
        color: var(--text-muted);
        font-size: 12px;
    }

    .kpi .kpi-value {
        font-size: 14px;
        font-weight: 700;
        margin-top: 2px;
    }

    .kpi .kpi-sub {
        color: var(--text-muted);
        font-size: 12px;
    }

.timer-box {
    border: 1px solid var(--default-border);
    border-radius: 14px;
    background: linear-gradient(180deg, var(--custom-white), #fafafa);
    padding: 14px;
}

.timer-display {
    font-size: 19px;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.state-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 999px;
    padding: 6px 10px;
    border: 1px solid var(--default-border);
    background: var(--custom-white);
    font-weight: 800;
    font-size: 12px;
}

.state-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

    .state-dot.dot-idle {
        background: #9ca3af;
    }

    .state-dot.dot-running {
        background: var(--success-color);
    }

    .state-dot.dot-paused {
        background: var(--warning-color);
    }

    .state-dot.dot-stopped {
        background: var(--danger-color);
    }

.note-box {
    background: #f9fafb;
    border: 1px solid var(--default-border);
    border-radius: 12px;
    padding: 10px;
}

.sticky-side {
    position: sticky;
    top: 86px;
}

.time,
.money {
    font-variant-numeric: tabular-nums;
}

.btn-soft {
    background: rgba(79, 70, 229, 0.08);
    border: 1px solid rgba(79, 70, 229, 0.18);
    color: var(--default-text-color);
}

    .btn-soft:hover {
        background: rgba(79, 70, 229, 0.12);
        color: var(--default-text-color);
    }

[data-theme-mode=dark] .note-box {
    background: var(--default-background);
    border-color: var(--default-border);
}

[data-theme-mode=dark] .timer-box {
    background: linear-gradient(180deg, var(--default-background), rgba(255, 255, 255, 0.02));
    border-color: var(--default-border);
}

[data-theme-mode=dark] .chip {
    background: var(--default-background);
    border-color: var(--default-border);
    color: var(--default-text-color);
}

[data-theme-mode=dark] .kpi {
    background: var(--default-background);
    border-color: var(--default-border);
}

    [data-theme-mode=dark] .kpi .kpi-label,
    [data-theme-mode=dark] .kpi .kpi-sub {
        color: var(--text-muted);
    }

    [data-theme-mode=dark] .kpi .kpi-value {
        color: var(--default-text-color);
    }

[data-theme-mode=dark] .state-pill {
    background: var(--default-background);
    border-color: var(--default-border);
    color: var(--default-text-color);
}

.hr-hiring-action-col {
    width: 72px;
}

/* Offcanvas backdrop */
.offcanvas-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1040;
}

    .offcanvas-backdrop.fade {
        opacity: 0;
        transition: opacity 0.15s linear;
    }

        .offcanvas-backdrop.fade.show {
            opacity: 1;
        }

.offcanvas {
    position: fixed;
    bottom: 0;
    z-index: 1045;
    display: flex;
    flex-direction: column;
    max-width: 100%;
    visibility: hidden;
    background-color: var(--custom-white);
    background-clip: padding-box;
    outline: 0;
    transition: transform 0.3s ease-in-out;
}

    .offcanvas.offcanvas-end {
        top: 0;
        right: 0;
        width: 490px;
        border-left: 1px solid var(--default-border);
        transform: translateX(100%);
    }

    .offcanvas.show {
        visibility: visible;
        transform: none;
    }

.offcanvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1rem;
    border-bottom: 1px solid var(--default-border);
}

.offcanvas-body {
    flex-grow: 1;
    padding: 1rem;
    overflow-y: auto;
}

body.offcanvas-open {
    overflow: hidden;
}

[data-theme-mode=dark] .offcanvas-header {
    border-bottom-color: var(--default-border);
}

/* HR Hiring Dashboard - Fixed Header (Non-scrollable) */
#HrHiringDashboard {
    width: 80%;
    margin-left: 10%;
}

.hr-hiring-main-header {
    position: relative;
    z-index: 1;
    background-color: var(--custom-white);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid var(--default-border);
    margin-top: 0;
    margin-bottom: 0;
    width: 100%;
    border-radius: .5rem;
}

/* Ensure HR Hiring header doesn't overlap with main layout header */
/* Position it as a regular block element in the document flow */
body[data-header-position="fixed"] .hr-hiring-main-header {
    position: relative;
    top: auto;
    z-index: 1;
}

[data-theme-mode=dark] .hr-hiring-main-header {
    background-color: var(--default-background);
}


/* Editable Dashboard Title */
.editable-dashboard-title {
    display: inline-block;
    min-width: 200px;
    padding: 2px 6px;
    border: 2px solid transparent;
    border-radius: 4px;
    cursor: text;
    outline: none;
    transition: all 0.2s ease;
}

    .editable-dashboard-title:hover {
        background-color: var(--list-hover-focus-bg);
        border-color: var(--default-border);
    }

    .editable-dashboard-title.editing {
        border-color: var(--primary-color);
        background-color: var(--custom-white);
        box-shadow: 0 0 0 0.2rem var(--primary01);
    }

    .editable-dashboard-title:empty:before {
        content: attr(data-placeholder);
        color: var(--text-muted);
        opacity: 0.6;
    }

[data-theme-mode=dark] .editable-dashboard-title.editing {
    background-color: var(--default-background);
}

#HRSessionNotes {
    height: 50px !important;
}

/* HR Session Title Builder Styles */
.hr-session-title-input {
    width: 100%;
    font-size: 14px;
    font-weight: 500;
    border: none;
    border-radius: 0;
    outline: none;
    padding: 8px 12px;
    color: var(--default-text-color);
    background: transparent;
    font-family: var(--default-font-family);
    transition: all 0.2s ease;
}

    .hr-session-title-input:focus {
        border: none;
        box-shadow: none;
        background: transparent;
    }

    .hr-session-title-input::placeholder {
        color: var(--text-muted);
        opacity: 0.6;
    }

.hr-title-builder-overlay {
    position: fixed;
    inset: 0;
    background: var(--black-5);
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    z-index: 9999;
}

    .hr-title-builder-overlay.show {
        display: flex;
    }

.hr-title-builder-modal {
    width: min(720px, 100%);
    background: var(--custom-white);
    border-radius: 14px;
    box-shadow: 0 24px 60px var(--black-2);
    overflow: hidden;
    border: 1px solid var(--default-border);
}

.hr-title-builder-modal-header {
    padding: 16px 18px;
    border-bottom: 1px solid var(--default-border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: var(--custom-white);
}

.hr-title-builder-modal-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--default-text-color);
    margin: 0;
}

.hr-title-builder-modal-subtitle {
    font-size: 12px;
    color: var(--text-muted);
    margin: 4px 0 0;
}

.hr-title-builder-modal-body {
    padding: 18px;
    background: var(--custom-white);
}

.hr-title-builder-question {
    font-size: 14px;
    font-weight: 600;
    color: var(--default-text-color);
    margin: 0 0 10px;
}

.hr-title-builder-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

@media (max-width: 680px) {
    .hr-title-builder-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hr-session-title-input {
        font-size: 1.25rem;
    }
}

.hr-title-builder-opt {
    border: 1px solid var(--default-border);
    border-radius: 12px;
    padding: 10px 12px;
    background: var(--custom-white);
    cursor: pointer;
    text-align: left;
    transition: all 0.15s ease;
    min-height: 44px;
    display: flex;
    align-items: center;
    font-size: 13px;
    color: var(--default-text-color);
}

    .hr-title-builder-opt:hover {
        border-color: var(--primary-color);
        box-shadow: 0 0 0 3px var(--primary01);
        background: var(--list-hover-focus-bg);
    }

    .hr-title-builder-opt.selected {
        border-color: var(--primary-color);
        box-shadow: 0 0 0 3px var(--primary02);
        background: var(--primary005);
    }

.hr-title-builder-modal-footer {
    padding: 14px 18px;
    border-top: 1px solid var(--default-border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.hr-title-builder-step-pill {
    font-size: 12px;
    color: var(--text-muted);
}

.hr-title-builder-btns {
    display: flex;
    gap: 10px;
}

.hr-title-builder-btn {
    border-radius: 10px;
    padding: 10px 12px;
    cursor: pointer;
    font-weight: 600;
    border: 1px solid var(--default-border);
    background: var(--custom-white);
    color: var(--default-text-color);
    transition: all 0.2s ease;
}

    .hr-title-builder-btn:hover {
        background: var(--list-hover-focus-bg);
        border-color: var(--default-border);
    }



    .hr-title-builder-btn:disabled {
        opacity: 0.5;
        cursor: not-allowed;
    }

        .hr-title-builder-btn:disabled:hover {
            background: var(--custom-white);
            border-color: var(--default-border);
        }

.hr-title-builder-preview {
    margin-top: 12px;
    font-size: 12px;
    color: var(--text-muted);
    line-height: 1.5;
}

    .hr-title-builder-preview strong {
        color: var(--default-text-color);
    }

/* Hide dropdown arrow for Session button in Create New modal */
#globalCreateSession.dropdown-toggle::after {
    display: none !important;
}

/* =========================================================
   QUICK GUIDE OVERLAY - Dynamic Quick Guide Component
   ========================================================= */
.quickguide-backdrop {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: none;
    background: rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(7px);
    -webkit-backdrop-filter: blur(7px);
    padding: 18px;
    overflow-y: auto;
}

    .quickguide-backdrop.show {
        display: block;
    }

.qg-shell {
    max-width: 1120px;
    width: 100%;
    height: 90vh;
    max-height: 800px;
    margin: 0 auto;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(255, 255, 255, 0.38));
    box-shadow: 0 18px 44px rgba(16, 24, 40, 0.18);
    overflow: hidden;
    margin-top: 20px;
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
}

[data-theme-mode=dark] .qg-shell {
    background: linear-gradient(180deg, rgba(var(--body-bg-rgb), 0.85), rgba(var(--body-bg-rgb), 0.65));
    border-color: rgba(255, 255, 255, 0.1);
}

.qg-header {
    background: rgba(255, 255, 255, 0.86);
    border-bottom: 1px solid var(--default-border);
    padding: 14px 16px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

[data-theme-mode=dark] .qg-header {
    background: rgba(var(--body-bg-rgb), 0.9);
    border-bottom-color: var(--default-border);
}

.qg-title {
    font-weight: 900;
    font-size: 18px;
    line-height: 1.1;
    color: var(--default-text-color);
}

.qg-sub {
    color: var(--text-muted);
    font-size: 12px;
    margin-top: 2px;
}

.qg-header-actions {
    display: flex;
    gap: 8px;
    align-items: center;
}

.btn-brand-sm {
    background: var(--primary-color);
    border: 1px solid var(--primary-color);
    color: #fff;
    border-radius: 10px;
    padding: 8px 12px;
    font-weight: 850;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.2s ease;
}

    .btn-brand-sm:hover {
        background: var(--primary08);
        border-color: var(--primary08);
        color: #fff;
    }

.btn-soft-sm {
    background: var(--primary01);
    border: 1px solid var(--primary02);
    color: var(--default-text-color);
    border-radius: 10px;
    padding: 8px 12px;
    font-weight: 800;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.2s ease;
}

    .btn-soft-sm:hover {
        background: var(--primary02);
        border-color: var(--primary03);
    }

.btn-reset {
    background: var(--custom-white);
    border: 1px solid var(--default-border);
    color: var(--default-text-color);
    border-radius: 10px;
    padding: 8px 12px;
    font-weight: 700;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 6px;
}

    .btn-reset:hover {
        background: var(--list-hover-focus-bg);
        border-color: var(--primary02);
        color: var(--primary-color);
    }

    .btn-reset i {
        font-size: 16px;
    }

.qg-body {
    display: grid;
    grid-template-columns: 330px 1fr;
    flex: 1;
    min-height: 0;
    background: rgba(255, 255, 255, 0.74);
    overflow: hidden;
}

[data-theme-mode=dark] .qg-body {
    background: rgba(var(--body-bg-rgb), 0.7);
}

.qg-sidebar {
    border-right: 1px solid var(--default-border);
    padding: 0;
    overflow-y: auto;
    overflow-x: hidden;
    height: 100%;
    background: var(--custom-white);
    display: flex;
    flex-direction: column;
}

[data-theme-mode=dark] .qg-sidebar {
    background: rgba(var(--body-bg-rgb), 0.7);
}

.qg-sidebar::-webkit-scrollbar {
    width: 8px;
}

.qg-sidebar::-webkit-scrollbar-thumb {
    background: var(--default-border);
    border-radius: 12px;
}

.qg-sidebar::-webkit-scrollbar-track {
    background: transparent;
}

/* Progress Section */
.qg-progress-section {
    padding: 16px;
    border-bottom: 1px solid var(--default-border);
    background: var(--custom-white);
}

[data-theme-mode=dark] .qg-progress-section {
    background: rgba(var(--body-bg-rgb), 0.7);
}

.qg-progress-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.qg-progress-label {
    font-size: 13px;
    font-weight: 700;
    color: var(--default-text-color);
}

.qg-progress-count {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-muted);
}

.qg-progress-bar {
    width: 100%;
    height: 8px;
    background: var(--default-background);
    border-radius: 4px;
    overflow: hidden;
}

.qg-progress-fill {
    height: 100%;
    background: var(--primary-color);
    border-radius: 4px;
    transition: width 0.3s ease;
    width: 0%;
}

/* Topics List */
.qg-topics-list {
    padding: 8px;
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
}

.qg-topic-card {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px;
    margin-bottom: 8px;
    border-radius: 12px;
    border: 1px solid var(--default-border);
    background: var(--custom-white);
    cursor: pointer;
    transition: all 0.2s ease;
}

[data-theme-mode=dark] .qg-topic-card {
    background: rgba(var(--body-bg-rgb), 0.5);
}

.qg-topic-card:hover {
    border-color: var(--primary02);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.qg-topic-card.active {
    background: var(--primary01);
    border-color: var(--primary-color);
    box-shadow: 0 4px 12px rgba(var(--primary-rgb), 0.15);
}

.qg-topic-number {
    width: 15px;
    height: 15px;
    border-radius: 8px;
    background: var(--default-background);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    font-size: 12px;
    color: var(--text-muted);
    flex-shrink: 0;
}

.qg-topic-card.active .qg-topic-number {
    background: var(--primary-color);
    color: #fff;
}

.qg-topic-icon {
    width: 20px;
    height: 20px;
    border-radius: 10px;
    background: var(--default-background);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: var(--text-muted);
    flex-shrink: 0;
}

.qg-topic-card.active .qg-topic-icon {
    background: var(--primary02);
    color: var(--primary-color);
}

.qg-topic-info {
    flex: 1;
    min-width: 0;
}

.qg-topic-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--default-text-color);
    margin-bottom: 4px;
    line-height: 1.4;
}

.qg-topic-card.active .qg-topic-title {
    color: var(--primary-color);
}

.qg-topic-desc {
    font-size: 12px;
    color: var(--text-muted);
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.qg-content {
    padding: 24px;
    overflow-y: auto;
    overflow-x: hidden;
    height: 100%;
    background: var(--custom-white);
}

[data-theme-mode=dark] .qg-content {
    background: rgba(var(--body-bg-rgb), 0.7);
}

.qg-content::-webkit-scrollbar {
    width: 8px;
}

.qg-content::-webkit-scrollbar-thumb {
    background: var(--default-border);
    border-radius: 12px;
}

.qg-content::-webkit-scrollbar-track {
    background: transparent;
}

/* Content Header */
.qg-content-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

.qg-content-title-section {
    flex: 1;
}

.qg-section-title {
    font-size: 20px;
    font-weight: 900;
    color: var(--default-text-color);
    margin-bottom: 6px;
    line-height: 1.3;
}

.qg-section-subtitle {
    color: var(--text-muted);
    font-size: 13px;
    line-height: 1.5;
}

.qg-content-type-toggles {
    display: flex;
    gap: 8px;
}

.qg-toggle-btn {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    border: 1px solid var(--default-border);
    background: var(--custom-white);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    color: var(--text-muted);
}

[data-theme-mode=dark] .qg-toggle-btn {
    background: rgba(var(--body-bg-rgb), 0.5);
}

.qg-toggle-btn:hover {
    border-color: var(--primary02);
    color: var(--primary-color);
}

.qg-toggle-btn.active {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: #fff;
}

.qg-toggle-btn i {
    font-size: 18px;
}

/* Content Cards Layout */
.qg-content-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 20px;
}

.qg-content-card {
    background: var(--custom-white);
    border: 1px solid var(--default-border);
    border-radius: 12px;
    padding: 20px;
}

[data-theme-mode=dark] .qg-content-card {
    background: rgba(var(--body-bg-rgb), 0.5);
}

.qg-card-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--default-border);
}

.qg-card-title {
    font-size: 16px;
    font-weight: 800;
    color: var(--default-text-color);
    display: flex;
    align-items: center;
    gap: 8px;
}

    .qg-card-title i {
        font-size: 18px;
        color: var(--primary-color);
    }

.qg-card-actions {
    display: flex;
    gap: 8px;
    margin-bottom: 16px;
}

.qg-card-btn {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border-radius: 8px;
    border: 1px solid var(--default-border);
    background: var(--custom-white);
    color: var(--default-text-color);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

[data-theme-mode=dark] .qg-card-btn {
    background: rgba(var(--body-bg-rgb), 0.5);
}

.qg-card-btn:hover {
    background: var(--primary01);
    border-color: var(--primary02);
    color: var(--primary-color);
}

.qg-card-btn.active {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: #fff;
}

.qg-card-btn i {
    font-size: 14px;
}

/* Steps List */
.qg-steps-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .qg-steps-list li {
        padding: 12px 0;
        border-bottom: 1px solid var(--default-border);
        color: var(--default-text-color);
        font-size: 14px;
        line-height: 1.6;
    }

        .qg-steps-list li:last-child {
            border-bottom: none;
        }

        .qg-steps-list li strong {
            color: var(--default-text-color);
            font-weight: 700;
        }

.qg-card-instruction {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--default-border);
    font-size: 12px;
    color: var(--text-muted);
    line-height: 1.5;
}

/* Tutorial Section */
.qg-tutorial-video-wrapper {
    position: relative;
    margin-bottom: 20px;
}

.qg-tutorial-video {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* Expand Video Button */
.qg-expand-video-btn {
    position: absolute;
    bottom: 12px;
    right: 12px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 18px;
    cursor: pointer;
    transition: all 0.2s ease;
    z-index: 10;
}

    .qg-expand-video-btn:hover {
        background: rgba(0, 0, 0, 0.85);
        transform: scale(1.1);
    }

    .qg-expand-video-btn i {
        font-size: 18px;
    }

/* Hide native fullscreen button in video controls */
.qg-tutorial-video video::-webkit-media-controls-fullscreen-button {
    display: none !important;
}

.qg-tutorial-video video::-webkit-media-controls {
    -webkit-appearance: none;
}

/* For Firefox */
.qg-tutorial-video video::-moz-media-controls-fullscreen-button {
    display: none !important;
}

.qg-tutorial-video video {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.qg-tutorial-placeholder {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    margin-bottom: 20px;
}

.qg-tutorial-recommendation {
    font-size: 12px;
    color: var(--text-muted);
    margin-bottom: 20px;
    line-height: 1.5;
}

/* Audio Section */
.qg-audio-section {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid var(--default-border);
}

.qg-audio-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.qg-audio-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--default-text-color);
    display: flex;
    align-items: center;
    gap: 8px;
}

    .qg-audio-title i {
        font-size: 16px;
        color: var(--primary-color);
    }

.qg-optional-badge {
    font-size: 11px;
    padding: 2px 8px;
    border-radius: 4px;
    background: var(--default-background);
    color: var(--text-muted);
    font-weight: 600;
}

.qg-audio-player-wrapper {
    width: 100%;
    margin-bottom: 12px;
}

    .qg-audio-player-wrapper audio {
        width: 100%;
        height: 40px;
    }

.qg-audio-upload-note {
    font-size: 12px;
    color: var(--text-muted);
    line-height: 1.5;
}



.btn-close-x {
    background: var(--custom-white);
    border: 1px solid var(--default-border);
    color: var(--default-text-color);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    padding: 8px 12px;
    display: flex;
    align-items: center;
    gap: 6px;
    border-radius: 10px;
    transition: all 0.2s ease;
}

[data-theme-mode=dark] .btn-close-x {
    background: rgba(var(--body-bg-rgb), 0.5);
}

.btn-close-x:hover {
    background: var(--list-hover-focus-bg);
    border-color: var(--primary02);
    color: var(--primary-color);
}

.btn-close-x i {
    font-size: 16px;
}

/* Mobile Responsive */
@media (max-width: 991px) {
    .qg-body {
        grid-template-columns: 1fr;
        min-height: auto;
    }

    .qg-sidebar {
        border-right: none;
        border-bottom: 1px solid var(--default-border);
        max-height: 200px;
        overflow-x: auto;
    }

    .qg-content-cards {
        grid-template-columns: 1fr;
    }

    .qg-content {
        max-height: 500px;
    }

    .qg-shell {
        margin: 10px;
    }
}

/* Quick Guide Trigger Button */
.quickguide-trigger {
    position: fixed;
    right: 22px;
    bottom: 22px;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: var(--primary-color);
    border: 1px solid var(--primary-color);
    box-shadow: 0 18px 28px rgba(var(--primary-rgb), 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    z-index: 1050;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.2s ease;
}

    .quickguide-trigger:hover {
        background: var(--primary08);
        border-color: var(--primary08);
        transform: translateY(-2px);
        box-shadow: 0 20px 32px rgba(var(--primary-rgb), 0.35);
    }

    .quickguide-trigger i {
        font-size: 24px;
    }

@media (max-width: 768px) {
    .quickguide-trigger {
        width: 48px;
        height: 48px;
        right: 16px;
        bottom: 16px;
    }

        .quickguide-trigger i {
            font-size: 20px;
        }
}

/* Quick Guide Description Textarea - Override height */
#txtQuickGuideDescription {
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    resize: vertical;
}

/* Quick Guide Footer */
.qg-footer {
    padding: 16px 24px;
    border-top: 1px solid var(--default-border);
    background: var(--custom-white);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    position: relative;
    flex-shrink: 0;
}

[data-theme-mode=dark] .qg-footer {
    background: rgba(var(--body-bg-rgb), 0.7);
}

.qg-footer-left {
    display: flex;
    align-items: center;
    flex: 1;
}

.qg-footer-right {
    display: flex;
    gap: 10px;
    align-items: center;
}

.btn-nav {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 16px;
    border-radius: 10px;
    border: 1px solid var(--default-border);
    background: var(--custom-white);
    color: var(--default-text-color);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

[data-theme-mode=dark] .btn-nav {
    background: rgba(var(--body-bg-rgb), 0.5);
}

.btn-nav:hover:not(:disabled) {
    background: var(--primary01);
    border-color: var(--primary02);
    color: var(--primary-color);
}

.btn-nav:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-nav-primary {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: #fff;
}

    .btn-nav-primary:hover:not(:disabled) {
        background: var(--primary08);
        border-color: var(--primary08);
        color: #fff;
    }

.btn-nav i {
    font-size: 14px;
}

.qg-footer-shortcut {
    font-size: 12px;
    color: var(--text-muted);
    font-weight: 600;
}

@media (max-width: 768px) {
    .qg-footer {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .qg-footer-left {
        width: 100%;
    }

    .qg-footer-right {
        justify-content: space-between;
        width: 100%;
    }

    .qg-footer-shortcut {
        text-align: center;
        width: 100%;
    }
}

/* Expanded Video Modal */
.qg-expanded-video-modal {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

    .qg-expanded-video-modal.show {
        display: flex;
    }

.qg-expanded-video-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.75);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.qg-expanded-video-container {
    position: relative;
    width: 85%;
    max-width: 1400px;
    background: var(--custom-white);
    border-radius: 16px;
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.3);
    overflow: hidden;
    z-index: 1;
    display: flex;
    flex-direction: column;
    max-height: 90vh;
}

[data-theme-mode=dark] .qg-expanded-video-container {
    background: rgba(var(--body-bg-rgb), 0.95);
}

.qg-expanded-video-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid var(--default-border);
    background: var(--custom-white);
    flex-shrink: 0;
}

[data-theme-mode=dark] .qg-expanded-video-header {
    background: rgba(var(--body-bg-rgb), 0.95);
}

.qg-expanded-video-title {
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    color: var(--default-text-color);
}

.qg-expanded-video-close {
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    color: var(--text-muted);
    font-size: 20px;
    cursor: pointer;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

    .qg-expanded-video-close:hover {
        background: var(--list-hover-focus-bg);
        color: var(--default-text-color);
    }

.qg-expanded-video-content {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

    .qg-expanded-video-content video {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

@media (max-width: 768px) {
    .qg-expanded-video-container {
        width: 95%;
        max-height: 85vh;
    }

    .qg-expanded-video-content {
        aspect-ratio: 16 / 9;
    }
}

/* Quick Guide Admin Modal Styling */
#modalQuickGuide .modal-dialog {
    max-width: 1100px;
    width: 90%;
    margin: 1.75rem auto;
}

#modalQuickGuide .modal-dialog-centered {
    display: flex;
    align-items: center;
    min-height: calc(100% - 3.5rem);
}

#modalQuickGuide .qg-modal-content {
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
}

#modalQuickGuide .qg-modal-header {
    border-bottom: 1px solid var(--default-border);
    padding: 16px 20px;
    background: var(--custom-white);
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}

[data-theme-mode=dark] #modalQuickGuide .qg-modal-header {
    background: rgba(var(--body-bg-rgb), 0.95);
}

#modalQuickGuide .qg-modal-header .modal-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--default-text-color);
    display: flex;
    align-items: center;
    gap: 8px;
}

    #modalQuickGuide .qg-modal-header .modal-title i {
        color: var(--primary-color);
        font-size: 20px;
    }

#modalQuickGuide .qg-modal-body {
    padding: 20px;
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(90vh - 140px);
    flex: 1;
}

    #modalQuickGuide .qg-modal-body::-webkit-scrollbar {
        width: 8px;
    }

    #modalQuickGuide .qg-modal-body::-webkit-scrollbar-thumb {
        background: var(--default-border);
        border-radius: 4px;
    }

    #modalQuickGuide .qg-modal-body::-webkit-scrollbar-track {
        background: transparent;
    }

#modalQuickGuide .qg-modal-footer {
    border-top: 1px solid var(--default-border);
    padding: 16px 20px;
    background: var(--custom-white);
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

[data-theme-mode=dark] #modalQuickGuide .qg-modal-footer {
    background: rgba(var(--body-bg-rgb), 0.95);
}

#modalQuickGuide .form-label {
    font-size: 14px;
    margin-bottom: 8px;
    color: var(--default-text-color);
}

#modalQuickGuide .form-control {
    border-radius: 8px;
    border: 1px solid var(--default-border);
    padding: 10px 12px;
    font-size: 14px;
    transition: all 0.2s ease;
}

    #modalQuickGuide .form-control:focus {
        border-color: var(--primary-color);
        box-shadow: 0 0 0 3px rgba(var(--primary-rgb), 0.1);
    }

#modalQuickGuide textarea.form-control {
    min-height: 80px;
    max-height: 200px;
}

#modalQuickGuide #txtSteps {
    font-family: inherit;
    line-height: 1.6;
}

#modalQuickGuide .text-muted {
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 4px;
}

    #modalQuickGuide .text-muted i {
        font-size: 13px;
    }

#modalQuickGuide .btn {
    padding: 10px 20px;
    font-weight: 600;
    font-size: 14px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.2s ease;
}

    #modalQuickGuide .btn i {
        font-size: 16px;
    }


@media (max-width: 768px) {
    #modalQuickGuide .modal-dialog {
        margin: 10px;
        max-width: calc(100% - 20px);
    }

    #modalQuickGuide .qg-modal-content {
        max-height: 95vh;
    }

    #modalQuickGuide .qg-modal-body {
        max-height: calc(95vh - 140px);
        padding: 16px;
    }

    #modalQuickGuide .row.mb-3 > div[class*="col-"] {
        margin-bottom: 16px;
    }
}

/* ========================================
   FLATPICKR CALENDAR - Enhanced Theme Styling
   ======================================== */

/* Calendar Container */
.flatpickr-calendar {
    margin-top: 10px !important;
    background: var(--custom-white) !important;
    border: 1px solid var(--default-border) !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    font-family: inherit !important;
    z-index: 10000 !important;
}

[data-theme-mode=dark] .flatpickr-calendar {
    background: rgba(var(--body-bg-rgb), 0.95) !important;
    border-color: var(--default-border) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4) !important;
}

.flatpickr-calendar.open {
    margin-top: 10px !important;
}

.flatpickr-input + .flatpickr-calendar,
.datetimepicker + .flatpickr-calendar {
    margin-top: 10px !important;
}

/* Month Header */
.flatpickr-months {
    background-color: var(--primary-color) !important;
    border-radius: 8px 8px 0 0 !important;
    padding: 12px 0 !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

[data-theme-mode=dark] .flatpickr-months {
    background-color: var(--primary-color) !important;
}

.flatpickr-month {
    color: var(--default-text-color) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 !important;
    position: relative !important;
}

.flatpickr-current-month {
    color: var(--default-text-color) !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    position: relative !important;
    top: 0 !important;
    padding: 0 8px !important;
    left: 0% !important;
}

    /* Month and Year Dropdowns */
    .flatpickr-current-month .flatpickr-monthDropdown-months,
    .flatpickr-current-month .flatpickr-monthDropdown-month {
        background: transparent !important;
        border: none !important;
        color: var(--default-text-color) !important;
        font-weight: 600 !important;
        font-size: 15px !important;
        padding: 4px 8px !important;
        border-radius: 4px !important;
        cursor: pointer !important;
        appearance: none !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='white' d='M6 9L1 4h10z'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: right 4px center !important;
        background-size: 12px !important;
        padding-right: 24px !important;
        transition: all 0.2s ease !important;
    }

        .flatpickr-current-month .flatpickr-monthDropdown-months:hover,
        .flatpickr-current-month .flatpickr-monthDropdown-month:hover {
            background-color: rgba(255, 255, 255, 0.15) !important;
        }

        .flatpickr-current-month .flatpickr-monthDropdown-months option,
        .flatpickr-current-month .flatpickr-monthDropdown-month option {
            background: var(--custom-white) !important;
            color: var(--default-text-color) !important;
            padding: 8px !important;
        }

[data-theme-mode=dark] .flatpickr-current-month .flatpickr-monthDropdown-months option,
[data-theme-mode=dark] .flatpickr-current-month .flatpickr-monthDropdown-month option {
    background: rgba(var(--body-bg-rgb), 0.95) !important;
    color: var(--default-text-color) !important;
}

.flatpickr-current-month .flatpickr-monthDropdown-months option:checked,
.flatpickr-current-month .flatpickr-monthDropdown-month option:checked {
    background: var(--primary-color) !important;
    color: var(--custom-white) !important;
}

/* Year Input Wrapper - Ensure visibility */
.flatpickr-current-month .numInputWrapper {
    background: transparent !important;
    border: none !important;
    display: inline-block !important;
    margin: 0 4px !important;
    position: relative !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    height: auto !important;
    min-width: 85px !important;
    max-width: none !important;
}

/* All number inputs in month header */
.flatpickr-current-month .numInput {
    background: transparent !important;
    color: var(--default-text-color) !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    padding: 5px 12px !important;
    border-radius: 4px !important;
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    line-height: 1.4 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    text-overflow: clip !important;
}



    .flatpickr-current-month .numInput:hover,
    .flatpickr-current-month .numInput.cur-year:hover,
    .flatpickr-current-month input.numInput.cur-year:hover,
    .flatpickr-current-month .numInputWrapper .numInput.cur-year:hover,
    .flatpickr-month .numInput.cur-year:hover {
        background-color: rgba(255, 255, 255, 0.2) !important;
        border-color: rgba(255, 255, 255, 0.5) !important;
        color: var(--custom-white) !important;
    }

    .flatpickr-current-month .numInput:focus,
    .flatpickr-current-month .numInput.cur-year:focus,
    .flatpickr-current-month input.numInput.cur-year:focus,
    .flatpickr-current-month .numInputWrapper .numInput.cur-year:focus,
    .flatpickr-month .numInput.cur-year:focus {
        background-color: rgba(255, 255, 255, 0.25) !important;
        border-color: rgba(255, 255, 255, 0.6) !important;
        outline: none !important;
        color: var(--custom-white) !important;
        box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1) !important;
    }

/* Navigation Arrows */
.flatpickr-prev-month,
.flatpickr-next-month {
    color: rgba(255, 255, 255, 0.9) !important;
    fill: rgba(255, 255, 255, 0.9) !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    transition: all 0.2s ease !important;
    border-radius: 4px !important;
    padding: 6px !important;
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    z-index: 10 !important;
}

.flatpickr-prev-month {
    left: 8px !important;
}

.flatpickr-next-month {
    right: 8px !important;
}

    .flatpickr-prev-month:hover,
    .flatpickr-next-month:hover {
        color: rgba(255, 255, 255, 1) !important;
        fill: rgba(255, 255, 255, 1) !important;
        background: rgba(255, 255, 255, 0.15) !important;
    }

    .flatpickr-prev-month svg,
    .flatpickr-next-month svg {
        width: 14px !important;
        height: 14px !important;
    }

/* Weekdays */
.flatpickr-weekdays {
    background: var(--default-background) !important;
    border-bottom: 1px solid var(--default-border) !important;
    padding: 8px 0 !important;
}

[data-theme-mode=dark] .flatpickr-weekdays {
    background: rgba(var(--body-bg-rgb), 0.5) !important;
}

.flatpickr-weekday {
    color: var(--default-text-color) !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
}

/* Days */
.flatpickr-day {
    color: var(--default-text-color) !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
    font-weight: 500 !important;
}

    .flatpickr-day:hover {
        background: var(--list-hover-focus-bg) !important;
        border-color: var(--primary-color) !important;
        color: var(--default-text-color) !important;
    }

    .flatpickr-day.flatpickr-disabled,
    .flatpickr-day.prevMonthDay,
    .flatpickr-day.nextMonthDay {
        color: var(--text-muted) !important;
        opacity: 0.4 !important;
    }

        .flatpickr-day.flatpickr-disabled:hover {
            background: transparent !important;
            border-color: transparent !important;
        }

    /* Today */
    .flatpickr-day.today {
        border-color: var(--primary-color) !important;
        font-weight: 700 !important;
    }

        .flatpickr-day.today:hover {
            border-color: var(--primary-color) !important;
            background-color: rgba(var(--primary-rgb), 0.1) !important;
            color: var(--primary-color) !important;
        }

    /* Selected Day */
    .flatpickr-day.selected,
    .flatpickr-day.selected:hover,
    .flatpickr-day.selected.inRange,
    .flatpickr-day.selected.nextMonthDay,
    .flatpickr-day.selected.prevMonthDay {
        background-color: var(--primary-color) !important;
        border-color: var(--primary-color) !important;
        color: var(--custom-white) !important;
        font-weight: 600 !important;
    }

        .flatpickr-day.selected.startRange,
        .flatpickr-day.selected.endRange {
            background-color: var(--primary-color) !important;
            border-color: var(--primary-color) !important;
            color: var(--custom-white) !important;
        }

    .flatpickr-day.inRange {
        background: rgba(var(--primary-rgb), 0.1) !important;
        border-color: transparent !important;
        color: var(--default-text-color) !important;
    }

/* Time Picker */
.flatpickr-time {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px !important;
    border-top: 1px solid var(--default-border) !important;
    background: var(--default-background) !important;
    border-radius: 0 0 8px 8px !important;
}

[data-theme-mode=dark] .flatpickr-time {
    background: rgba(var(--body-bg-rgb), 0.5) !important;
}

.flatpickr-time .flatpickr-time-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
}

.flatpickr-time input.flatpickr-hour,
.flatpickr-time input.flatpickr-minute {
    width: 60px !important;
    min-width: 60px !important;
    padding: 6px 8px !important;
    text-align: center !important;
    border: 1px solid var(--default-border) !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    box-sizing: border-box !important;
    height: 36px !important;
    background: var(--custom-white) !important;
    color: var(--default-text-color) !important;
    transition: all 0.2s ease !important;
}

[data-theme-mode=dark] .flatpickr-time input.flatpickr-hour,
[data-theme-mode=dark] .flatpickr-time input.flatpickr-minute {
    background: rgba(var(--body-bg-rgb), 0.8) !important;
    border-color: var(--default-border) !important;
    color: var(--default-text-color) !important;
}

.flatpickr-time input.flatpickr-hour:focus,
.flatpickr-time input.flatpickr-minute:focus {
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 3px rgba(var(--primary-rgb), 0.1) !important;
    outline: none !important;
}

.flatpickr-time .flatpickr-time-separator {
    padding: 0 8px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--default-text-color) !important;
}

.flatpickr-time .flatpickr-am-pm {
    padding: 6px 12px !important;
    border: 1px solid var(--default-border) !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    text-align: center !important;
    box-sizing: border-box !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 60px !important;
    margin-left: 8px !important;
    background: var(--custom-white) !important;
    color: var(--default-text-color) !important;
    transition: all 0.2s ease !important;
}

[data-theme-mode=dark] .flatpickr-time .flatpickr-am-pm {
    background: rgba(var(--body-bg-rgb), 0.8) !important;
    border-color: var(--default-border) !important;
    color: var(--default-text-color) !important;
}

.flatpickr-time .flatpickr-am-pm:hover {
    background: var(--list-hover-focus-bg) !important;
    border-color: var(--primary-color) !important;
    color: var(--primary-color) !important;
}

.flatpickr-time .flatpickr-am-pm.selected {
    background: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: var(--custom-white) !important;
}

/* Number Input Wrapper (Time picker arrows) */
.numInputWrapper {
    position: relative !important;
    height: auto !important;
}

    .numInputWrapper span {
        position: absolute !important;
        right: 4px !important;
        width: 16px !important;
        padding: 0 2px !important;
        height: 50% !important;
        line-height: 50% !important;
        opacity: 0 !important;
        cursor: pointer !important;
        border: 1px solid var(--default-border) !important;
        box-sizing: border-box !important;
        transition: all 0.2s ease !important;
        background: var(--default-background) !important;
        border-radius: 3px !important;
    }

        .numInputWrapper span:hover {
            background: var(--list-hover-focus-bg) !important;
            border-color: var(--primary-color) !important;
        }

        .numInputWrapper span:active {
            background: rgba(var(--primary-rgb), 0.2) !important;
        }

        .numInputWrapper span.arrowUp {
            top: 2px !important;
            border-bottom: 0 !important;
            border-radius: 3px 3px 0 0 !important;
        }

            .numInputWrapper span.arrowUp:after {
                display: block !important;
                content: "" !important;
                position: absolute !important;
                border-left: 4px solid transparent !important;
                border-right: 4px solid transparent !important;
                border-bottom: 4px solid var(--default-text-color) !important;
                top: 30% !important;
                left: 50% !important;
                transform: translateX(-50%) !important;
            }

        .numInputWrapper span.arrowDown {
            top: 50% !important;
            border-radius: 0 0 3px 3px !important;
        }

            .numInputWrapper span.arrowDown:after {
                display: block !important;
                content: "" !important;
                position: absolute !important;
                border-left: 4px solid transparent !important;
                border-right: 4px solid transparent !important;
                border-top: 4px solid var(--default-text-color) !important;
                top: 40% !important;
                left: 50% !important;
                transform: translateX(-50%) !important;
            }

/* Year input arrows - white color for visibility on purple background */
.flatpickr-current-month .numInputWrapper span.arrowUp:after,
.flatpickr-month .numInputWrapper span.arrowUp:after {
    border-bottom-color: var(--custom-white) !important;
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after,
.flatpickr-month .numInputWrapper span.arrowDown:after {
    border-top-color: var(--custom-white) !important;
}

.numInputWrapper:hover {
    background: transparent !important;
}

    .numInputWrapper:hover span {
        opacity: 1 !important;
    }

/* Hide native spinner buttons */
.flatpickr-time input.flatpickr-hour::-webkit-outer-spin-button,
.flatpickr-time input.flatpickr-hour::-webkit-inner-spin-button,
.flatpickr-time input.flatpickr-minute::-webkit-outer-spin-button,
.flatpickr-time input.flatpickr-minute::-webkit-inner-spin-button {
    opacity: 1 !important;
    margin-right: 2px !important;
    -webkit-appearance: none !important;
    margin: 0 !important;
}

.flatpickr-time input.flatpickr-hour[type=number],
.flatpickr-time input.flatpickr-minute[type=number] {
    -moz-appearance: textfield !important;
}

/* Month/Year Dropdown Styling - Enhanced */
.flatpickr-monthDropdown-months,
.flatpickr-monthDropdown-month {
    background-color: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 4px !important;
    color: var(--custom-white) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    padding: 4px 24px 4px 8px !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='white' d='M6 9L1 4h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 6px center !important;
    background-size: 12px !important;
    transition: all 0.2s ease !important;
    min-width: 100px !important;
}

    .flatpickr-monthDropdown-months:hover,
    .flatpickr-monthDropdown-month:hover {
        background-color: rgba(255, 255, 255, 0.15) !important;
        border-color: rgba(255, 255, 255, 0.3) !important;
    }

    .flatpickr-monthDropdown-months:focus,
    .flatpickr-monthDropdown-month:focus {
        background-color: rgba(255, 255, 255, 0.2) !important;
        border-color: rgba(255, 255, 255, 0.4) !important;
        outline: none !important;
    }

    /* Dropdown Options - Fix dark theme visibility */
    .flatpickr-monthDropdown-months option,
    .flatpickr-monthDropdown-month option {
        background: var(--custom-white) !important;
        color: var(--default-text-color) !important;
        padding: 10px 12px !important;
        font-size: 14px !important;
    }

[data-theme-mode=dark] .flatpickr-monthDropdown-months option,
[data-theme-mode=dark] .flatpickr-monthDropdown-month option {
    background: rgba(var(--body-bg-rgb), 0.98) !important;
    color: var(--default-text-color) !important;
}

.flatpickr-monthDropdown-months option:checked,
.flatpickr-monthDropdown-month option:checked,
.flatpickr-monthDropdown-months option:hover,
.flatpickr-monthDropdown-month option:hover {
    background: var(--primary-color) !important;
    color: var(--custom-white) !important;
}

/* Hide number input arrows in month header (but show for year input) */
.flatpickr-current-month .numInputWrapper span,
.flatpickr-month .numInputWrapper span {
    display: block !important;
    visibility: visible !important;
    opacity: 0 !important;
    height: 50% !important;
    width: 16px !important;
    position: absolute !important;
    right: 4px !important;
    cursor: pointer !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border-radius: 3px !important;
}

/* Show arrows on hover for year input */
.flatpickr-current-month .numInputWrapper:hover span,
.flatpickr-month .numInputWrapper:hover span {
    opacity: 1 !important;
    background: rgba(255, 255, 255, 0.2) !important;
    border-color: rgba(255, 255, 255, 0.5) !important;
}

.flatpickr-current-month .numInputWrapper span:hover,
.flatpickr-month .numInputWrapper span:hover {
    background: rgba(255, 255, 255, 0.3) !important;
    border-color: rgba(255, 255, 255, 0.6) !important;
}

.flatpickr-current-month .numInputWrapper span:active,
.flatpickr-month .numInputWrapper span:active {
    background: rgba(255, 255, 255, 0.4) !important;
}


.flatpickr-current-month .numInputWrapper .numInput.cur-year:focus,
.flatpickr-current-month input.numInput.cur-year:focus,
.flatpickr-month .numInputWrapper .numInput.cur-year:focus,
.flatpickr-month input.numInput.cur-year:focus {
    background-color: rgba(255, 255, 255, 0.25) !important;
    border-color: var(--default-border) !important;
    outline: none !important;
    color: var(--default-text-color) !important;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1) !important;
}

/* Responsive */
@media (max-width: 768px) {
    .flatpickr-calendar {
        width: 100% !important;
        max-width: 100% !important;
    }

    .flatpickr-time input.flatpickr-hour,
    .flatpickr-time input.flatpickr-minute {
        width: 50px !important;
        min-width: 50px !important;
        font-size: 13px !important;
    }

    .flatpickr-time .flatpickr-am-pm {
        min-width: 50px !important;
        font-size: 12px !important;
        padding: 6px 8px !important;
    }

    .flatpickr-prev-month,
    .flatpickr-next-month {
        width: 28px !important;
        height: 28px !important;
        padding: 4px !important;
    }

    .flatpickr-monthDropdown-months,
    .flatpickr-monthDropdown-month {
        min-width: 80px !important;
        font-size: 13px !important;
        padding: 3px 20px 3px 6px !important;
    }
}

/* Summary Report - Filter Section Styles */
/* Filter Section - Enhanced Layout */
/*.filter-dropdowns-inline {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
}*/

/* Filter Dropdown Item - Enhanced Styling */
/*.filter-dropdown-item {
    position: relative;
    display: inline-block;
    min-width: 180px;
}*/

/* Hide original select element - Bootstrap Select replaces it */
/*.filter-dropdown-item select.selectpicker,
    .filter-dropdown-item select.filter-inline-select {
        display: none !important;
        visibility: hidden !important;
        position: absolute !important;
        opacity: 0 !important;
        pointer-events: none !important;
        height: 0 !important;
        width: 0 !important;
        overflow: hidden !important;
    }*/

/* Bootstrap Select Styling - Match Project Structure */
/*.filter-dropdown-item .bootstrap-select {
        width: 100% !important;
        min-width: 180px;
        display: block !important;
    }

        .filter-dropdown-item .bootstrap-select .dropdown-toggle {
            height: 38px;
            padding: 6px 12px;
            font-size: 13px;
            border: 1px solid var(--default-border);
            border-radius: 6px;
            background-color: var(--custom-white);
            color: var(--default-text-color);
            display: flex;
            align-items: center;
            justify-content: space-between;
            transition: all 0.2s ease;
            width: 100%;
            box-shadow: none;
        }

            .filter-dropdown-item .bootstrap-select .dropdown-toggle:hover {
                border-color: var(--default-border);
                box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
            }

            .filter-dropdown-item .bootstrap-select .dropdown-toggle:focus {
                border-color: var(--default-border);
                box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
                outline: none;
            }

            .filter-dropdown-item .bootstrap-select .dropdown-toggle .filter-option {
                text-align: left;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                flex: 1;
            }

            .filter-dropdown-item .bootstrap-select .dropdown-toggle .bs-caret {
                margin-left: 8px;
                flex-shrink: 0;
            }*/

/* Bootstrap Select Dropdown Menu - Enhanced */
/*.filter-dropdown-item .bootstrap-select .dropdown-menu {
            border: 1px solid var(--default-border);
            border-radius: 6px;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
            margin-top: 4px;
            padding: 4px 0;
            overflow: visible !important;
            max-height: none !important;
            height: auto !important;
            z-index: 10500;
        }*/

/* Override Bootstrap Select inline styles - Remove max-height and overflow from dropdown menu */
/*.filter-dropdown-item .bootstrap-select .dropdown-menu[style*="max-height"],
            .filter-dropdown-item .bootstrap-select .dropdown-menu[style*="overflow-y"] {
                max-height: none !important;
                overflow: visible !important;
                overflow-y: visible !important;
                height: auto !important;
            }*/

/* Only scroll the inner list, not the dropdown menu */
/*.filter-dropdown-item .bootstrap-select .dropdown-menu ul.inner,
            .filter-dropdown-item .bootstrap-select .dropdown-menu > ul.inner {
                max-height: 275px !important;
                overflow-y: auto !important;
                overflow-x: hidden !important;
                display: block !important;
                margin: 0 !important;
                padding: 0 !important;
            }*/

/* Custom scrollbar for inner list */
/*.filter-dropdown-item .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar {
                    width: 6px;
                }

                .filter-dropdown-item .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-track {
                    background: var(--default-background);
                    border-radius: 3px;
                }

                .filter-dropdown-item .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-thumb {
                    background: var(--text-muted);
                    border-radius: 3px;
                }

                    .filter-dropdown-item .bootstrap-select .dropdown-menu ul.inner::-webkit-scrollbar-thumb:hover {
                        background: var(--default-text-color);
                    }*/

/* Firefox scrollbar */
/*.filter-dropdown-item .bootstrap-select .dropdown-menu {
            scrollbar-width: none;
        }

            .filter-dropdown-item .bootstrap-select .dropdown-menu ul.inner {
                scrollbar-width: thin;
                scrollbar-color: var(--text-muted) var(--default-background);
            }

            .filter-dropdown-item .bootstrap-select .dropdown-menu .dropdown-item {
                padding: 8px 16px;
                font-size: 13px;
                color: var(--default-text-color);
                transition: all 0.15s ease;
            }

                .filter-dropdown-item .bootstrap-select .dropdown-menu .dropdown-item:hover {
                    background-color: var(--list-hover-focus-bg);
                    color: var(--primary-color);
                }

                .filter-dropdown-item .bootstrap-select .dropdown-menu .dropdown-item.selected {
                    background-color: rgba(37, 99, 235, 0.1);
                    color: var(--primary-color);
                }*/
/* =============================================
   AI Blog Generator Styles
   ============================================= */
.blog-section-card {
    background: var(--custom-white);
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 20px;
    border: 1px solid var(--default-border);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.blog-section-title {
    color: var(--primary-color);
    font-weight: 700;
    font-size: 12px;
    margin-bottom: 10px;
    padding: 8px 12px;
}

    .blog-section-title::before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--primary-color);
        box-shadow: 0 0 0 4px var(--primary01);
        display: inline-block;
        flex-shrink: 0;
    }

.blog-form-label {
    font-weight: 500;
    color: var(--default-text-color);
    margin-bottom: 8px;
    display: block;
}

    .blog-form-label.required::after {
        content: " *";
        color: rgb(var(--danger-rgb));
        font-weight: 700;
    }

.blog-form-control,
.blog-form-select {
    border-radius: 6px;
    border: 1px solid var(--default-border);
    padding: 10px 12px;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    background-color: var(--form-control-bg);
    color: var(--default-text-color);
    width: 100%;
}

.blog-form-select {
    padding-right: 2.5rem;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
    background-position: right 0.75rem center;
    background-repeat: no-repeat;
    background-size: 1.25rem;
}

    .blog-form-control:focus,
    .blog-form-select:focus {
        border-color: var(--primary-color);
        box-shadow: 0 0 0 3px var(--primary01);
        outline: none;
    }

.blog-form-control::placeholder {
    color: var(--text-muted);
}

.blog-tag-hint {
    color: var(--text-muted);
}

.blog-generator-form .row {
    margin-bottom: 15px;
}

    .blog-generator-form .row:last-child {
        margin-bottom: 0;
    }

/* Dark mode support */
[data-theme-mode=dark] .blog-section-card {
    background: rgb(var(--body-bg-rgb));
    border-color: rgba(255, 255, 255, 0.1);
}

[data-theme-mode=dark] .blog-form-control,
[data-theme-mode=dark] .blog-form-select {
    background-color: rgb(var(--body-bg-rgb2));
    border-color: rgba(255, 255, 255, 0.1);
    color: var(--custom-black);
}

[data-theme-mode=dark] .blog-form-select {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%238c9097' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
}

[data-theme-mode=dark] .blog-form-control::placeholder {
    color: rgba(255, 255, 255, 0.5);
}

[data-theme-mode=dark] .blog-section-title {
    background: rgba(var(--primary-rgb), 0.15);
    border-color: rgba(var(--primary-rgb), 0.3);
}

/* Tab-based Layout Styles */
.blog-generator-topbar {
    background: var(--custom-white);
    border: 1px solid var(--default-border);
    border-radius: 8px;
    padding: 14px 16px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

    .blog-generator-topbar h1 {
        font-size: 18px;
        margin: 0;
        font-weight: 700;
        color: var(--default-text-color);
    }

.blog-generator-subtitle {
    color: var(--text-muted);
    font-size: 13px;
    margin-top: 2px;
}

.blog-app-shell {
    height: calc(100vh - 120px);
    min-height: 640px;
}

.blog-pane {
    background: var(--custom-white);
    border: 1px solid var(--default-border);
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.blog-pane-header {
    padding: 12px 14px;
    border-bottom: 1px solid var(--default-border);
    background: linear-gradient(180deg, rgba(var(--primary-rgb), 0.08), rgba(var(--primary-rgb), 0.02));
}

.blog-pane-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.blog-pane-label {
    font-weight: 700;
    font-size: 14px;
    color: var(--default-text-color);
}

.blog-hint-text {
    color: var(--text-muted);
    font-size: 12px;
}

.blog-pane-body {
    padding: 12px;
    overflow: auto;
    flex: 1;
    height: calc(100% - 52px);
}

/* Section Cards in Tabs */
.blog-section-card {
    background: rgba(var(--primary-rgb), 0.02);
    border: 1px solid var(--default-border);
    border-radius: 8px;
    padding: 12px;
    margin-bottom: 12px;
}

.blog-badge-soft {
    background: rgba(var(--primary-rgb), 0.15);
    border: 1px solid rgba(var(--primary-rgb), 0.3);
    color: var(--primary-color);
    font-weight: 700;
    font-size: 11px;
    padding: 4px 8px;
    border-radius: 999px;
}

/* Sticky Actions */
.blog-sticky-actions {
    position: sticky;
    bottom: 0;
    padding-top: 10px;
    background: linear-gradient(180deg, rgba(255,255,255,0), var(--custom-white) 30%, var(--custom-white));
    border-top: 1px solid var(--default-border);
    margin-top: 10px;
}

/* Output Accordion */
.blog-output-accordion .accordion-item {
    background: var(--custom-white);
    border: 1px solid var(--default-border);
    border-radius: 8px !important;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    margin-bottom: 12px;
}

.blog-output-accordion .accordion-button {
    background: rgba(var(--primary-rgb), 0.03);
    color: var(--default-text-color);
    font-weight: 700;
    padding: 12px 14px;
    border: none;
}

    .blog-output-accordion .accordion-button:not(.collapsed) {
        background: rgba(var(--primary-rgb), 0.12);
        color: var(--primary-color);
        box-shadow: none;
    }

    .blog-output-accordion .accordion-button:focus {
        box-shadow: 0 0 0 0.25rem rgba(var(--primary-rgb), 0.25);
    }

.blog-output-accordion .accordion-body {
    padding: 12px;
}

.blog-output-textarea {
    min-height: 420px;
    font-family: 'Courier New', monospace;
    font-size: 12.5px;
    line-height: 1.45;
    resize: vertical;
    background: var(--form-control-bg);
    color: var(--default-text-color);
    border: 1px solid var(--default-border);
    border-radius: 6px;
    padding: 12px;
}

/* Responsive */
@media (max-width: 991.98px) {
    .blog-app-shell {
        height: auto;
    }

    .blog-pane {
        height: auto;
    }

    .blog-pane-body {
        height: auto;
    }

    .blog-output-textarea {
        min-height: 320px;
    }
}

@media (max-width: 768px) {
    .blog-generator-container {
        padding: 15px;
    }

    .blog-section-card {
        padding: 15px;
    }

    .blog-action-buttons {
        flex-direction: column;
    }

    .blog-btn {
        width: 100%;
    }
}

/* Blog multiselect chips */
.blog-multiselect-chips {
    display: none;
    flex-wrap: wrap;
    gap: 6px;
    min-height: 24px;
}

    .blog-multiselect-chips.has-chips {
        display: flex;
    }

.blog-multiselect-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    background: #b3e39f;
    border-radius: 4px;
    font-size: 9px;
}

    .blog-multiselect-chip .blog-multiselect-chip-remove {
        cursor: pointer;
        opacity: 0.7;
        padding: 0 2px;
    }

        .blog-multiselect-chip .blog-multiselect-chip-remove:hover {
            opacity: 1;
        }

/* Blog tooltip (Short Description) */
.blog-tooltip-wrap {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
    cursor: help;
}

.blog-tooltip-trigger {
    font-size: 1rem;
}

.blog-tooltip-text {
    position: absolute;
    left: 50%;
    bottom: calc(100% + 8px);
    transform: translateX(-50%);
    width: 240px;
    padding: 8px 10px;
    background: #333;
    color: #fff;
    font-size: 0.8125rem;
    line-height: 1.35;
    border-radius: 6px;
    white-space: normal;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
    z-index: 1060;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    pointer-events: none;
}

    .blog-tooltip-text::after {
        content: '';
        position: absolute;
        top: 100%;
        left: 50%;
        margin-left: -6px;
        border: 6px solid transparent;
        border-top-color: #333;
    }

.blog-tooltip-wrap:hover .blog-tooltip-text {
    opacity: 1;
    visibility: visible;
}

/* Blog outline confirmation modal content */
#blogOutlineContent {
    max-height: 60vh;
    overflow-y: auto;
    white-space: pre-wrap;
    font-size: 0.9rem;
}

/* Creativity Level Slider */
.form-range {
    width: 100%;
    height: 8px;
    border-radius: 5px;
    background: var(--gray-3);
    outline: none;
    -webkit-appearance: none;
}

    .form-range::-webkit-slider-thumb {
        -webkit-appearance: none;
        appearance: none;
        width: 20px;
        height: 20px;
        border-radius: 50%;
        background: var(--primary-color);
        cursor: pointer;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    }

    .form-range::-moz-range-thumb {
        width: 20px;
        height: 20px;
        border-radius: 50%;
        background: var(--primary-color);
        cursor: pointer;
        border: none;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    }

.gap-3 {
    gap: 1rem !important;
}

/* Quill Editor Formatting Styles */
#currentDraft .ql-editor,
.currentDraftQuill .ql-editor {
    line-height: 1.6;
    font-size: 14px;
}

    #currentDraft .ql-editor h1,
    .currentDraftQuill .ql-editor h1 {
        font-size: 24px;
        font-weight: 700;
        margin: 16px 0 10px;
    }

    #currentDraft .ql-editor h2,
    .currentDraftQuill .ql-editor h2 {
        font-size: 18px;
        font-weight: 700;
        margin: 14px 0 8px;
    }

    #currentDraft .ql-editor h3,
    .currentDraftQuill .ql-editor h3 {
        font-size: 16px;
        font-weight: 700;
        margin: 12px 0 6px;
    }

    #currentDraft .ql-editor p,
    .currentDraftQuill .ql-editor p {
        margin: 8px 0;
    }

    #currentDraft .ql-editor ul,
    #currentDraft .ql-editor ol,
    .currentDraftQuill .ql-editor ul,
    .currentDraftQuill .ql-editor ol {
        padding-left: 24px;
    }

/* Apply same styles to Gemini and Claude editors */
#geminiDraftOutput .ql-editor,
#claudeDraftOutput .ql-editor {
    line-height: 1.6;
    font-size: 14px;
}

    #geminiDraftOutput .ql-editor h1,
    #claudeDraftOutput .ql-editor h1 {
        font-size: 24px;
        font-weight: 700;
        margin: 16px 0 10px;
    }

    #geminiDraftOutput .ql-editor h2,
    #claudeDraftOutput .ql-editor h2 {
        font-size: 18px;
        font-weight: 700;
        margin: 14px 0 8px;
    }

    #geminiDraftOutput .ql-editor h3,
    #claudeDraftOutput .ql-editor h3 {
        font-size: 16px;
        font-weight: 700;
        margin: 12px 0 6px;
    }

    #geminiDraftOutput .ql-editor p,
    #claudeDraftOutput .ql-editor p {
        margin: 8px 0;
    }

    #geminiDraftOutput .ql-editor ul,
    #geminiDraftOutput .ql-editor ol,
    #claudeDraftOutput .ql-editor ul,
    #claudeDraftOutput .ql-editor ol {
        padding-left: 24px;
    }

.global-search-highlight {
    background-color: #ffe58f;
    color: #000;
    padding: 1px 3px;
    border-radius: 3px;
}

div.dt-processing > div:last-child > div {
    position: absolute;
    top: 0;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: var(--primary-color);
    background: var(--primary-color);
    animation-timing-function: cubic-bezier(0, 1, 1, 0);
}


/* Work Item - Marketing - Title Suggestion UI*/
.title-suggestions-container {
    margin-top: 10px;
    margin-bottom: 15px;
    border: 1px solid var(--default-border);
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.title-suggestions-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 15px;
    background: var(--default-background);
    border-bottom: 1px solid var(--default-border);
    border-radius: 4px 4px 0 0;
}

.title-suggestions-title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 600;
    color: var(--default-text-color);
}

    .title-suggestions-title i {
        color: var(--default-text-color);
        font-size: 14px;
    }

.title-suggestions-close {
    background: transparent;
    border: none;
    color: #6c757d;
    width: 24px;
    height: 24px;
    border-radius: 3px;
    cursor: pointer;
    padding: 0;
    font-size: 16px;
    line-height: 1;
    transition: all 0.15s ease;
}

    .title-suggestions-close:hover {
        background: #e9ecef;
        color: #212529;
    }

.title-suggestions-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.title-suggestion-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 15px;
    cursor: pointer;
    border-bottom: 1px solid #f1f3f5;
    transition: background-color 0.15s ease;
}

    .title-suggestion-item:last-child {
        border-bottom: none;
        border-radius: 0 0 4px 4px;
    }

    .title-suggestion-item:hover {
        background: #f8f9fa;
    }

    .title-suggestion-item.selected {
        background: #e7f1ff;
    }

.title-suggestion-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    background: var(--default-background);
    color: var(--default-text-color);
    font-weight: 600;
    border-radius: 3px;
    font-size: 12px;
    flex-shrink: 0;
}

.title-suggestion-text {
    flex: 1;
    font-size: 13px;
    color: var(--default-text-color);
    line-height: 1.5;
    padding-top: 2px;
}

.title-suggestion-item:hover .title-suggestion-number {
    background: var(--default-background);
    color: var(--default-text-color);
}

.title-suggestion-item:hover .title-suggestion-text {
    color: var(--default-background);
}

/* QA Involved People - Collapsible Rows */
.qa-person-row.parent-row {
    transition: background-color 0.2s ease;
}

    .qa-person-row.parent-row:hover {
        background-color: var(--list-hover-focus-bg);
    }

    .qa-person-row.parent-row .expand-icon {
        transition: transform 0.2s ease;
    }

.qa-task-row.child-row {
    border-left: 2px solid var(--primary-color);
}

    .qa-task-row.child-row:hover {
        background-color: var(--default-background) !important;
    }

.expand-icon-cell {
    text-align: center;
    vertical-align: middle;
}

/* ==========================================
   NEW TIMELINE ROLE BASED - MINIMAL STYLES
   ========================================== */

/* Role Switch */
.ntm-role-switch {
    margin-bottom: 12px;
    background: var(--custom-white);
    border-radius: 999px;
    padding: 4px;
    display: inline-flex;
    border: 1px solid var(--default-border);
}

.ntm-role-btn {
    border-radius: 999px;
    padding: 6px 14px;
    border: none;
    font-size: 13px;
    cursor: pointer;
    background: transparent;
    color: var(--text-muted);
    font-weight: 500;
    transition: all 0.2s;
}

    .ntm-role-btn:hover {
        background: var(--list-hover-focus-bg);
    }

    .ntm-role-btn.active {
        background: var(--primary-color) !important;
        color: var(--custom-white) !important;
    }

        .ntm-role-btn.active,
        .ntm-role-btn.active * {
            color: #fff !important;
        }

/* Role View */
.ntm-role-view {
    display: none;
}

    .ntm-role-view.active {
        display: block;
    }

/* Table Wrapper - Match other lists */
.ntm-subgroup-table-wrapper {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    background-color: var(--custom-white) !important;
    border: 1px solid var(--default-border) !important;
    border-radius: 6px;
}

    .ntm-subgroup-table-wrapper .ntm-table {
        margin: 0;
        min-width: 100%;
        width: max-content;
        border-collapse: collapse;
        font-size: 13px;
        background-color: var(--custom-white) !important;
        color: var(--default-text-color) !important;
        border: none;
    }

        .ntm-subgroup-table-wrapper .ntm-table thead th {
            background-color: var(--primary-color) !important;
            color: #ffffff !important;
            border: none !important;
            border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
            border-right: 1px solid rgba(255, 255, 255, 0.2) !important;
            border-top: none !important;
            border-left: none !important;
            padding: 10px 12px;
            white-space: nowrap;
            text-align: left;
            font-weight: 500;
            font-size: 13px;
            vertical-align: middle;
        }

            .ntm-subgroup-table-wrapper .ntm-table thead th:hover {
                background-color: var(--primary-color) !important;
                opacity: 0.95;
            }

            .ntm-subgroup-table-wrapper .ntm-table thead th:first-child {
                border-left: none !important;
            }

            .ntm-subgroup-table-wrapper .ntm-table thead th.sticky {
                position: sticky !important;
                left: 0 !important;
                z-index: 10 !important;
                background-color: var(--primary-color) !important;
                color: #ffffff !important;
                min-width: 330px;
                box-shadow: 2px 0 4px rgba(0,0,0,0.1) !important;
            }

            .ntm-subgroup-table-wrapper .ntm-table thead th.draggable {
                cursor: grab;
                user-select: none;
            }

                .ntm-subgroup-table-wrapper .ntm-table thead th.draggable:active {
                    cursor: grabbing;
                }

        .ntm-subgroup-table-wrapper .ntm-table tbody td {
            background-color: var(--custom-white) !important;
            color: var(--default-text-color) !important;
            border-bottom: 1px solid var(--default-border) !important;
            border-right: 1px solid var(--default-border) !important;
            border-top: none !important;
            border-left: none !important;
            padding: 10px 12px;
            white-space: nowrap;
            vertical-align: middle;
            font-size: 13px;
            font-weight: 400;
        }

    /* Override table-bordered class to match other lists */
    .ntm-subgroup-table-wrapper .table-bordered {
        border: 1px solid var(--default-border) !important;
    }

        .ntm-subgroup-table-wrapper .table-bordered thead th {
            border: none !important;
            border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
            border-right: 1px solid rgba(255, 255, 255, 0.2) !important;
        }

        .ntm-subgroup-table-wrapper .table-bordered tbody td {
            border-top: none !important;
            border-left: none !important;
            border-bottom: 1px solid var(--default-border) !important;
            border-right: 1px solid var(--default-border) !important;
        }

        .ntm-subgroup-table-wrapper .table-bordered tbody tr:last-child td {
            border-bottom: 1px solid var(--default-border) !important;
        }

    .ntm-subgroup-table-wrapper .ntm-table tbody td:first-child {
        border-left: none !important;
    }

    .ntm-subgroup-table-wrapper .ntm-table tbody td:last-child {
        border-right: none !important;
    }

    .ntm-subgroup-table-wrapper .ntm-table thead th:last-child {
        border-right: none !important;
    }

    .ntm-subgroup-table-wrapper .ntm-table tbody td.sticky {
        position: sticky !important;
        left: 0 !important;
        z-index: 5 !important;
        background-color: var(--custom-white) !important;
        box-shadow: 2px 0 4px rgba(0,0,0,0.05) !important;
    }

    .ntm-subgroup-table-wrapper .ntm-table tbody tr:hover {
        background-color: var(--list-hover-focus-bg) !important;
        transition: background-color 0.15s ease !important;
    }

        .ntm-subgroup-table-wrapper .ntm-table tbody tr:hover td {
            background-color: var(--list-hover-focus-bg) !important;
        }

            .ntm-subgroup-table-wrapper .ntm-table tbody tr:hover td.sticky {
                background-color: var(--list-hover-focus-bg) !important;
            }

    /* Editable Cells */
    .ntm-subgroup-table-wrapper .ntm-table tbody td.editable {
        cursor: text;
        min-height: 32px;
    }

        .ntm-subgroup-table-wrapper .ntm-table tbody td.editable[contenteditable="true"] {
            outline: none;
        }

            .ntm-subgroup-table-wrapper .ntm-table tbody td.editable[contenteditable="true"]:focus {
                background: var(--custom-white);
                outline: 1px solid var(--primary-color);
                outline-offset: -1px;
            }

            .ntm-subgroup-table-wrapper .ntm-table tbody td.editable[contenteditable="true"]:empty:before {
                content: attr(data-placeholder);
                color: var(--text-muted);
                opacity: 0.6;
            }

    .ntm-subgroup-table-wrapper .ntm-placeholder {
        color: var(--text-muted);
        opacity: 0.6;
    }

/* Input/Display Toggle - Hidden by default, shown when editing */
.ntm-item-input,
.ntm-startdate-input,
.ntm-duedate-input,
.ntm-comments-input {
    width: 100%;
    padding: 6px 12px;
    border: 1px solid var(--default-border);
    border-radius: 6px;
    background: var(--custom-white);
    color: var(--default-text-color);
    font-size: 13px;
}

/* Hide inputs by default - jQuery .show() will override this */
.ntm-subgroup-table-wrapper .ntm-startdate-input,
.ntm-subgroup-table-wrapper .ntm-duedate-input {
    display: none !important;
}

    .ntm-subgroup-table-wrapper .ntm-startdate-input.show,
    .ntm-subgroup-table-wrapper .ntm-duedate-input.show {
        display: block !important;
    }

.ntm-item-input:focus,
.ntm-startdate-input:focus,
.ntm-duedate-input:focus,
.ntm-comments-input:focus {
    border-color: var(--primary-color);
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(var(--primary-rgb), 0.1);
}

.ntm-item-display,
.ntm-startdate-display,
.ntm-duedate-display,
.ntm-comments-display {
    display: block;
    color: var(--default-text-color);
    min-height: 20px;
}

/* Assignee Cell */
.ntm-assignee-cell-clickable {
    color: var(--default-text-color);
    cursor: pointer;
    transition: all 0.2s ease;
}

    .ntm-assignee-cell-clickable:hover {
        background: var(--list-hover-focus-bg);
        border-radius: 4px;
    }

/* Group Item */
.ntm-group-item {
    background: var(--custom-white);
    border: 1px solid var(--default-border);
    color: var(--default-text-color);
    margin-bottom: 12px;
    padding: 0;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

    .ntm-group-item:hover {
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    }

.ntm-group-breakdown-container {
    margin-top: 12px;
}

/* Edit/Save Buttons - Using main definition below, removed duplicate */

/* Summary Cards */
.ntm-summary-value,
.ntm-summary-label {
    color: var(--default-text-color);
}

/* Cell Types */
.ntm-item-cell,
.ntm-progress-cell,
.ntm-priority-cell,
.ntm-startdate-cell,
.ntm-duedate-cell,
.ntm-comments-cell,
.ntm-inputs-cell,
.ntm-title-cell,
.ntm-text-cell,
.ntm-content-type-cell {
    color: var(--default-text-color);
}

    .ntm-item-cell.editable,
    .ntm-comments-cell.editable,
    .ntm-inputs-cell.editable,
    .ntm-title-cell.editable,
    .ntm-text-cell.editable {
        cursor: text;
    }

        .ntm-item-cell.editable:focus,
        .ntm-comments-cell.editable:focus,
        .ntm-inputs-cell.editable:focus,
        .ntm-title-cell.editable:focus,
        .ntm-text-cell.editable:focus {
            outline: 1px solid var(--primary-color);
            background: var(--custom-white);
        }

/* Cell Labels */
.cell-label {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 6px;
    border: 1px solid var(--default-border);
    background: var(--default-background);
    color: var(--default-text-color);
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

    .cell-label:hover {
        background: var(--list-hover-focus-bg);
        border-color: var(--primary-color);
    }

/* Dropdown buttons - Remove Bootstrap's default caret, use custom single arrow */
.ntm-subgroup-table-wrapper .dropdown-toggle::after {
    display: none !important;
    content: none !important;
}

.ntm-subgroup-table-wrapper .nPriorityListBtn::after,
.ntm-subgroup-table-wrapper .nStatusListBtn::after,
.ntm-subgroup-table-wrapper .nPriorityDrop .dropdown-toggle::after,
.ntm-subgroup-table-wrapper .nStatusDrop .dropdown-toggle::after {
    display: none !important;
    content: none !important;
}

/* Dropdown button styling - Match other lists */
.ntm-subgroup-table-wrapper .dropdown-toggle,
.ntm-subgroup-table-wrapper .nPriorityListBtn,
.ntm-subgroup-table-wrapper .nStatusListBtn {
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    color: var(--default-text-color) !important;
    font-size: 13px !important;
    box-shadow: none !important;
}

    .ntm-subgroup-table-wrapper .dropdown-toggle:hover,
    .ntm-subgroup-table-wrapper .nPriorityListBtn:hover,
    .ntm-subgroup-table-wrapper .nStatusListBtn:hover {
        background: transparent !important;
        color: var(--primary-color) !important;
    }

/* Upload Input - Hidden by default */
.ntm-upload-input {
    display: none !important;
}

    .ntm-upload-input.show {
        display: block !important;
        width: 100%;
        padding: 6px 10px;
        border: 1px solid var(--default-border);
        border-radius: 4px;
        background: var(--custom-white);
        color: var(--default-text-color);
        font-size: 13px;
    }

.ntm-item-display,
.ntm-startdate-display,
.ntm-duedate-display,
.ntm-comments-display {
    display: block;
    color: var(--default-text-color);
}

/* Upload Section - Simple text link style */
.ntm-upload-display {
    display: block;
}

    .ntm-upload-display a {
        color: var(--primary-color);
        text-decoration: none;
        cursor: pointer;
    }

        .ntm-upload-display a:hover {
            text-decoration: underline;
        }

/* Selected files display - Show file name after selection */
.ntm-selected-files-display {
    display: inline-block;
    margin-left: 8px;
    font-size: 12px;
    color: var(--text-muted);
    font-style: italic;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

    .ntm-selected-files-display:hover {
        color: var(--primary-color);
        cursor: help;
    }

.ntm-upload-input {
    display: none;
}

    .ntm-upload-input.show {
        display: block;
    }

/* Edit/Save Buttons - Match other lists (using Bootstrap btn classes) */
.ntm-edit-btn,
.ntm-save-btn {
    font-size: 13px;
    font-weight: 500;
    padding: 6px 12px;
    margin-right: 4px;
}

/* Hide Save button by default - only show when editing */
.ntm-save-btn {
    display: none !important;
}

tr[data-is-editing="true"] .ntm-save-btn {
    display: inline-block !important;
}

tr[data-is-editing="true"] .ntm-edit-btn {
    display: none !important;
}

/* Item column styling - Title editable, task number as badge */
.ntm-subgroup-table-wrapper .ntm-item-cell {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
}

.ntm-subgroup-table-wrapper .ntm-item-title {
    flex: 1;
    min-width: 0;
    font-weight: 500;
    color: var(--default-text-color);
    outline: none;
    word-break: break-word;
}

    .ntm-subgroup-table-wrapper .ntm-item-title:focus {
        background: var(--list-hover-focus-bg);
        border-radius: 4px;
        padding: 2px 4px;
        margin: -2px -4px;
    }

    .ntm-subgroup-table-wrapper .ntm-item-title:empty:before {
        content: attr(data-placeholder);
        color: var(--text-muted);
        font-style: italic;
    }

/* Task number badge - Non-editable */
.ntm-subgroup-table-wrapper .ntm-task-number-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
    background: var(--list-hover-focus-bg);
    color: var(--default-text-color);
    border: 1px solid var(--default-border);
    white-space: nowrap;
    user-select: none;
    pointer-events: none;
    flex-shrink: 0;
}

    .ntm-subgroup-table-wrapper .ntm-task-number-badge:hover {
        background: var(--list-hover-focus-bg);
        border-color: var(--primary-color);
    }

/* Group Buttons */
.ntm-btn-edit-group,
.ntm-btn-save-group,
.ntm-btn-delete-group,
.ntm-btn-cancel-group {
    padding: 4px 12px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 6px;
    border: 1px solid var(--default-border);
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

    .ntm-btn-edit-group:hover,
    .ntm-btn-delete-group:hover {
        background: var(--list-hover-focus-bg);
        color: var(--default-text-color);
        border-color: var(--primary-color);
    }

.ntm-btn-save-group {
    background: var(--primary-color);
    color: var(--custom-white);
    border-color: var(--primary-color);
}

    .ntm-btn-save-group:hover {
        background: var(--primary-color);
        opacity: 0.9;
        color: var(--custom-white);
        box-shadow: 0 2px 4px rgba(var(--primary-rgb), 0.2);
    }

.ntm-btn-cancel-group {
    background: var(--text-muted);
    color: var(--custom-white);
    border-color: var(--text-muted);
}

    .ntm-btn-cancel-group:hover {
        background: var(--text-muted);
        opacity: 0.9;
        color: var(--custom-white);
    }

/* Form Controls in Table */
.ntm-subgroup-table-wrapper .form-control,
.ntm-subgroup-table-wrapper .form-select,
.ntm-subgroup-table-wrapper input[type="text"],
.ntm-subgroup-table-wrapper input[type="date"],
.ntm-subgroup-table-wrapper select {
    padding: 6px 12px;
    border: 1px solid var(--default-border);
    border-radius: 6px;
    background: var(--custom-white);
    color: var(--default-text-color);
    font-size: 13px;
    transition: all 0.2s ease;
}

    .ntm-subgroup-table-wrapper .form-control:focus,
    .ntm-subgroup-table-wrapper .form-select:focus,
    .ntm-subgroup-table-wrapper input[type="text"]:focus,
    .ntm-subgroup-table-wrapper input[type="date"]:focus,
    .ntm-subgroup-table-wrapper select:focus {
        border-color: var(--primary-color);
        outline: none;
        box-shadow: 0 0 0 0.2rem rgba(var(--primary-rgb), 0.1);
        background: var(--custom-white);
    }

/* Assignee Cell Readonly */
.ntm-assignee-cell-readonly {
    color: var(--default-text-color);
    pointer-events: none;
}

/* Group Breakdown Container */
.ntm-group-breakdown-container {
    margin-top: 20px;
}

/* Group Breakdown Section Heading */
#ntm-groupBreakdownSection h6 {
    font-size: 16px;
    font-weight: 600;
    color: var(--default-text-color);
    margin-bottom: 16px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--default-border);
}

.ntm-group-item.expanded {
    border-color: var(--primary-color);
}

    .ntm-group-item.expanded .group-header {
        background: var(--list-hover-focus-bg);
        border-color: var(--primary-color);
    }

/* Placeholder in Editable Cells */
.ntm-subgroup-table-wrapper .ntm-table tbody td.editable .ntm-placeholder {
    color: var(--text-muted);
    opacity: 0.6;
}

.ntm-subgroup-table-wrapper .ntm-table tbody td.editable:focus .ntm-placeholder {
    display: none;
}

/* Group Header and Body */
.group-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px;
    cursor: pointer;
    transition: background 0.2s ease;
    background: var(--default-background);
    border: 1px solid var(--default-border);
    border-radius: 6px;
}

    .group-header:hover {
        background: var(--list-hover-focus-bg);
        border-color: var(--primary-color);
    }

.group-color {
    width: 4px;
    height: 24px;
    border-radius: 2px;
    flex-shrink: 0;
    background: var(--primary-color);
}

.group-title {
    flex: 1;
    font-size: 15px;
    font-weight: 600;
    color: var(--default-text-color);
    margin: 0;
}

.group-summary {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 12px;
    color: var(--text-muted);
    margin-left: auto;
    padding-right: 8px;
}

.group-title-edit-input,
.group-title-input {
    background: transparent;
    border: 1px solid var(--primary-color);
    border-radius: 4px;
    color: var(--default-text-color);
    font-size: 15px;
    font-weight: 600;
    padding: 2px 8px;
    outline: none;
    flex: 1;
    max-width: 300px;
}

    .group-title-edit-input:focus,
    .group-title-input:focus {
        background: var(--custom-white);
        border-color: var(--primary-color);
    }


.group-actions {
    display: flex;
    gap: 8px;
    margin-left: auto;
}

.group-body {
    padding: 5px;
    display: none;
    background: var(--custom-white);
}

    .group-body.show {
        display: block;
    }

/* Group Arrow */
.ntm-group-arrow {
    font-size: 16px;
    color: var(--primary-color);
    display: inline-block;
    transition: transform 0.22s ease;
    margin-right: 8px;
    transform: rotate(0deg);
    font-weight: 600;
}

.ntm-group-item.expanded .ntm-group-arrow {
    transform: rotate(90deg);
    color: var(--primary-color);
}

.group-header:hover .ntm-group-arrow {
    color: var(--primary-color);
}

/* Cell Date */
.cell-date {
    cursor: pointer;
    color: var(--default-text-color);
    padding: 4px 8px;
    border-radius: 4px;
    transition: all 0.2s ease;
}

    .cell-date:hover {
        background: var(--list-hover-focus-bg);
        color: var(--primary-color);
    }

/* Auto Links */
.auto-links {
    word-break: break-word;
}

    .auto-links a {
        color: var(--primary-color);
        text-decoration: none;
    }

        .auto-links a:hover {
            text-decoration: underline;
        }

/* Pills */
.ntm-pill {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.2s ease;
}

    .ntm-pill:hover {
        transform: translateY(-1px);
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
    }

/* Cancel Group Button */
.ntm-btn-cancel-group {
    padding: 4px 12px;
    font-size: 12px;
    border-radius: 4px;
    border: 1px solid var(--default-border);
    background: var(--text-muted);
    color: var(--custom-white);
    cursor: pointer;
    transition: all 0.2s ease;
    font-weight: 500;
}

    .ntm-btn-cancel-group:hover {
        background: var(--text-muted);
        opacity: 0.9;
        color: var(--custom-white);
    }

.nLabel {
    font-weight: 500;
}

/* ========================================
   Rich Text Editor Dropdown Hover Fixes
   ======================================== */

/* Summernote dropdown hover visibility - light + dark */
.note-editor .dropdown-menu .dropdown-item,
.note-editor .dropdown-menu a {
    color: var(--default-text-color) !important;
}

    .note-editor .dropdown-menu .dropdown-item:hover,
    .note-editor .dropdown-menu .dropdown-item:focus,
    .note-editor .dropdown-menu a:hover,
    .note-editor .dropdown-menu a:focus {
        background: var(--list-hover-focus-bg) !important;
        color: var(--default-text-color) !important;
    }

/* ========================================
   CRITICAL: Quill Editor Dropdown Hover Fix
   Override Quill's base CSS to prevent text overlap
   ======================================== */

/* Remove any tooltip/::after that overlaps text - already handled below */

/* Base styles for picker items - ensure proper structure */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item {
    position: relative !important;
    display: block !important;
    padding: 8px 12px !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease !important;
    background-color: transparent !important;
}

    /* CRITICAL: Override Quill's hover color (#06c) and ensure text is visible */
    .ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item:hover {
        background-color: var(--list-hover-focus-bg) !important;
        color: var(--default-text-color) !important;
    }

/* CRITICAL: Override Quill's default hover color for text - ensure it's not blue */
.ql-snow.ql-toolbar .ql-picker.ql-header .ql-picker-item:hover,
.ql-snow .ql-toolbar .ql-picker.ql-header .ql-picker-item:hover {
    color: var(--default-text-color) !important;
}

/* CRITICAL: Ensure text content (::before) is ALWAYS visible - especially on hover */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item::before {
    position: relative !important;
    z-index: 100 !important;
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
    color: var(--default-text-color) !important;
}

/* CRITICAL: Hover state - text must be visible with proper color */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item:hover::before {
    color: var(--default-text-color) !important;
    position: relative !important;
    z-index: 100 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: inline-block !important;
}

/* CRITICAL: Selected item hover - text must be visible (this is the main issue) */
/* Don't override content - let Quill's default ::before content show, just ensure it's visible */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item.ql-selected:hover::before,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item.ql-selected::before,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item[data-value]:hover::before,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item[data-value]::before {
    color: var(--default-text-color) !important;
    position: relative !important;
    z-index: 100 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: inline-block !important;
}

/* CRITICAL FIX: "Normal" item hover - ensure text is visible on hover */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item:not([data-value]):hover::before,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=""]:hover::before {
    color: var(--default-text-color) !important;
    position: relative !important;
    z-index: 100 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: inline-block !important;
    content: "Normal" !important;
}

/* Fix: "Normal" option - ensure it shows properly */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label:not([data-value])::before,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=""]::before,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item:not([data-value])::before,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=""]::before {
    content: "Normal" !important;
}

/* Override Quill's default hover color for all picker items */
.ql-snow.ql-toolbar .ql-picker-item:hover,
.ql-snow .ql-toolbar .ql-picker-item:hover {
    color: var(--default-text-color) !important;
    background-color: var(--list-hover-focus-bg) !important;
}

/* CRITICAL: Selected item hover - ensure text is visible */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item.ql-selected:hover,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item[data-value]:hover {
    background-color: var(--list-hover-focus-bg) !important;
    color: var(--default-text-color) !important;
}

/* CRITICAL: Remove tooltip from picker-label (the button) when dropdown is open - it overlaps text */
.ql-toolbar.ql-snow .ql-picker.ql-header.ql-expanded .ql-picker-label:hover::after,
.ql-toolbar.ql-snow .ql-picker.ql-header.ql-expanded .ql-picker-label::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* CRITICAL: Remove tooltip from dropdown items - they should not show tooltips */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item:hover::after,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* CRITICAL: Picker label hover - ensure text is visible (the button that shows "Normal") */
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label:hover::before,
.ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label::before {
    color: var(--default-text-color) !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: inline-block !important;
    position: relative !important;
    z-index: 100 !important;
}

/* Override Quill's default hover color for SVG icons */
.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,
.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,
.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,
.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke {
    fill: var(--default-text-color) !important;
    stroke: var(--default-text-color) !important;
}

/* Ensure picker options dropdown has proper background */
.ql-snow .ql-picker-options {
    background-color: var(--custom-white) !important;
    border: 1px solid var(--default-border) !important;
}

/* Fix: Proper hover state for dropdown items without text overlap */
.note-editor .dropdown-menu .dropdown-item {
    display: flex;
    align-items: center;
    padding: 8px 12px;
    transition: background-color 0.2s ease;
}

/* ========== AGENT MANAGEMENT PAGE STYLES ========== */
/* Fix Multiple Scrollbar Issue - Final Fix */
html {
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

body {
    overflow: visible !important;
}

/* Main layout wrappers */
.main-content {
    overflow: visible !important;
}

.page-content {
    overflow: visible !important;
}

.container-fluid.nContentBody {
    overflow: visible !important;
}

/* Card Styling - Theme Aware */
.card {
    background-color: var(--custom-white, #fff);
    border: 1px solid var(--default-border, #e9ecef);
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.card-body {
    padding: 0px;
    background-color: var(--custom-white, #fff);
}

.card-header {
    border-bottom: 1px solid var(--default-border, #e9ecef);
    background-color: var(--custom-white, #fff);
    padding: 1rem 1.25rem;
}

.card.custom-card .card-header .card-title {
    color: var(--default-text-color, #495057);
    font-weight: 600;
}

    .card.custom-card .card-header .card-title:before {
        inset-block-start: 1.15rem;
    }

/* Dark Theme - Cards */
[data-theme-mode=dark] .card {
    background-color: var(--custom-white, #1a1a1a);
    border-color: var(--default-border, #2d2d2d);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme-mode=dark] .card-body {
    background-color: var(--custom-white, #1a1a1a);
}

[data-theme-mode=dark] .card-header {
    border-bottom-color: var(--default-border, #2d2d2d);
    background-color: var(--custom-white, #1a1a1a);
}

[data-theme-mode=dark] .card.custom-card .card-header .card-title {
    color: var(--default-text-color, #e0e0e0);
}
/* Make rows containing agent-detail-card use flexbox for equal height */
.row:has(.agent-detail-card) {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

    /* Make columns containing agent-detail-card stretch to full height and become flex containers */
    .row:has(.agent-detail-card) > [class*="col"]:has(.agent-detail-card),
    .row:has(.agent-detail-card) > [class*="col-"]:has(.agent-detail-card) {
        display: flex;
        flex-direction: column;
    }

.agent-detail-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
    border: 1px solid var(--default-border);
    margin-bottom: 10px;
    height: 100%;
    flex: 1;
}

.agent-detail-card-header {
    padding: 0.75rem 1.25rem;
    border-block-end: 1px solid var(--default-border, #e9ecef);
    display: flex;
    align-items: center;
    position: relative;
    flex-wrap: wrap;
    gap: .5rem;
    background-color: var(--custom-white, #fff) !important;
    color: var(--default-text-color, #495057);
    flex-shrink: 0;
}

    .agent-detail-card-header h6 {
        color: var(--default-text-color, #495057);
        font-weight: 600;
        font-size: 14px;
        margin: 0;
    }

        .agent-detail-card-header h6 i {
            color: var(--primary-color, #845adf);
        }

/* Dark Theme - Agent Detail Card Header */
[data-theme-mode=dark] .agent-detail-card-header {
    border-block-end-color: var(--default-border, #2d2d2d);
    background-color: var(--custom-white, #1a1a1a) !important;
    color: var(--default-text-color, #e0e0e0);
}

    [data-theme-mode=dark] .agent-detail-card-header h6 {
        color: var(--default-text-color, #e0e0e0);
    }

.agent-detail-card-body {
    padding: 15px;
    flex: 1;
    display: flex;
    flex-direction: column;
    background-color: var(--custom-white, #fff);
}

/* Dark Theme - Agent Detail Card Body */
[data-theme-mode=dark] .agent-detail-card-body {
    background-color: var(--custom-white, #1a1a1a);
}

/* Agent Detail Section */
#agentDetailSection,
#agentDetailSection .tab-content,
#agentDetailSection .card,
#agentDetailSection .card-body {
    overflow: visible !important;
    max-height: none !important;
}

/* DataTables scrollbars */
.dataTables_scrollBody {
    overflow-y: visible !important;
    overflow-x: hidden !important;
    max-height: none !important;
}

.dataTables_wrapper {
    overflow: visible !important;
}


/* ========== AGENT MANAGEMENT PAGE STYLES ========== */

/* Spin Animation for Refresh Buttons */
.spin-animation {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* Page Header - Theme Aware */
.agent-page-header {
    padding: 5px 0;
    border-bottom: 2px solid var(--default-border, #e9ecef);
    margin-bottom: 24px;
}

.agent-icon-box {
    width: 40px;
    height: 40px;
    background: rgba(var(--primary-rgb, 132, 90, 223), 0.1);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .agent-icon-box i {
        font-size: 24px;
        color: var(--primary-color, #845adf);
    }

.agent-page-title {
    font-size: 24px;
    font-weight: 700;
    color: var(--default-text-color, #1e293b);
    letter-spacing: -0.5px;
    margin: 0;
}

/* Dark Theme - Page Header */
[data-theme-mode=dark] .agent-page-header {
    border-bottom-color: var(--default-border, #2d2d2d);
}

[data-theme-mode=dark] .agent-icon-box {
    background: rgba(var(--primary-rgb, 132, 90, 223), 0.2);
}

[data-theme-mode=dark] .agent-page-title {
    color: var(--default-text-color, #e0e0e0);
}

/* Status Badge Items - Theme Aware */
.status-badge-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.2s ease;
    font-weight: 500;
    white-space: nowrap;
}

    .status-badge-item.color-all {
        background-color: var(--list-hover-focus-bg, #f1f5f9);
        color: var(--default-text-color, #475569);
    }

        .status-badge-item.color-all:hover {
            background-color: var(--default-background, #e2e8f0);
        }

    .status-badge-item.color-active {
        background-color: #dcfce7;
        color: #166534;
    }

        .status-badge-item.color-active:hover {
            background-color: #bbf7d0;
        }

    .status-badge-item.color-deactive {
        background-color: #fee2e2;
        color: #991b1b;
    }

        .status-badge-item.color-deactive:hover {
            background-color: #fecaca;
        }

/* Dark Theme - Status Badges */
[data-theme-mode=dark] .status-badge-item.color-all {
    background-color: var(--list-hover-focus-bg, #2d2d2d);
    color: var(--default-text-color, #e0e0e0);
}

    [data-theme-mode=dark] .status-badge-item.color-all:hover {
        background-color: var(--default-background, #404040);
    }

[data-theme-mode=dark] .status-badge-item.color-active {
    background-color: rgba(16, 185, 129, 0.2);
    color: #10b981;
}

    [data-theme-mode=dark] .status-badge-item.color-active:hover {
        background-color: rgba(16, 185, 129, 0.3);
    }

[data-theme-mode=dark] .status-badge-item.color-deactive {
    background-color: rgba(239, 68, 68, 0.2);
    color: #ef4444;
}

    [data-theme-mode=dark] .status-badge-item.color-deactive:hover {
        background-color: rgba(239, 68, 68, 0.3);
    }

/* Command Prompt Terminal Styles */
.cmd-terminal {
    background-color: #0c0c0c;
    color: #cccccc;
    font-family: 'Consolas', 'Courier New', monospace;
    font-size: 13px;
    padding: 10px 15px;
    min-height: 500px;
    max-height: 650px;
    overflow-y: auto;
    overflow-x: hidden;
    border: 1px solid #3c3c3c;
    position: relative;
}

    .cmd-terminal::-webkit-scrollbar {
        width: 12px;
    }

    .cmd-terminal::-webkit-scrollbar-track {
        background: #1e1e1e;
    }

    .cmd-terminal::-webkit-scrollbar-thumb {
        background: #505050;
        border-radius: 6px;
    }

        .cmd-terminal::-webkit-scrollbar-thumb:hover {
            background: #606060;
        }

.cmd-output {
    margin-bottom: 0;
    line-height: 1.4;
}

.cmd-line {
    margin: 0;
    padding: 0;
    word-wrap: break-word;
    line-height: 1.4;
    min-height: 18px;
}

.cmd-prompt {
    color: #0acc0a;
    font-weight: normal;
}

.cmd-input-line {
    display: flex;
    align-items: center;
    margin-top: 0;
    line-height: 1.4;
}

.cmd-input {
    background-color: transparent;
    border: none;
    color: #cccccc;
    font-family: 'Consolas', 'Courier New', monospace;
    font-size: 13px;
    outline: none;
    flex: 1;
    padding: 0;
    margin-left: 0;
    line-height: 1.4;
}

    .cmd-input:focus {
        outline: none;
    }

.cmd-output-line {
    color: #cccccc;
    white-space: pre-wrap;
    word-wrap: break-word;
    display: inline;
}

.cmd-error {
    color: #ff6b6b;
}

.cmd-header {
    color: #cccccc;
}
/* Badge Styling - Theme Aware */
.status-badge-item b {
    font-weight: 600;
    color: inherit;
}

.status-badge-item .badge {
    background-color: rgba(0, 0, 0, 0.15);
    color: inherit;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    min-width: 24px;
    text-align: center;
}

.status-badge-item.color-all .badge {
    background-color: #cbd5e1;
    color: #334155;
}

.status-badge-item.color-active .badge {
    background-color: #86efac;
    color: #14532d;
}

.status-badge-item.color-deactive .badge {
    background-color: #fca5a5;
    color: #7f1d1d;
}

/* Dark Theme - Badges */
[data-theme-mode=dark] .status-badge-item.color-all .badge {
    background-color: #475569;
    color: #e2e8f0;
}

[data-theme-mode=dark] .status-badge-item.color-active .badge {
    background-color: #059669;
    color: #ffffff;
}

[data-theme-mode=dark] .status-badge-item.color-deactive .badge {
    background-color: #dc2626;
    color: #ffffff;
}

/* Filters Row - Theme Aware */
.filters-status-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    flex-wrap: wrap;
    padding: 12px 0;
    border-bottom: 1px solid var(--default-border, #e9ecef);
    margin-bottom: 16px;
}

.filters-section {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    flex-wrap: wrap;
}

.filters-label {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--default-text-color, #495057);
    font-weight: 500;
    font-size: 14px;
}

    .filters-label b {
        color: var(--default-text-color, #495057);
        font-weight: 600;
    }

/* Dark Theme - Filters */
[data-theme-mode=dark] .filters-status-row {
    border-bottom-color: var(--default-border, #2d2d2d);
}

[data-theme-mode=dark] .filters-label,
[data-theme-mode=dark] .filters-label b {
    color: var(--default-text-color, #e0e0e0);
}

.status-badges-section {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.status-badges-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

/* Form Controls - Theme Aware */
.agent-filter-select,
.agent-search-input,
.agent-os-select {
    background-color: var(--form-control-bg, #fff) !important;
    border: 1px solid var(--input-border, #dee2e6) !important;
    color: var(--default-text-color, #495057) !important;
    transition: all 0.2s ease;
}

    .agent-filter-select:focus,
    .agent-search-input:focus,
    .agent-os-select:focus {
        border-color: var(--primary-color, #845adf) !important;
        box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
        outline: none;
    }

.agent-filter-select {
    width: 80px;
    height: 38px;
}

.agent-search-input {
    min-width: 150px;
    max-width: 200px;
    height: 38px;
}

.agent-os-select {
    min-width: 120px;
    max-width: 150px;
    height: 38px;
}

/* Dark Theme - Form Controls */
[data-theme-mode=dark] .agent-filter-select,
[data-theme-mode=dark] .agent-search-input,
[data-theme-mode=dark] .agent-os-select {
    background-color: var(--form-control-bg, #2d2d2d) !important;
    border-color: var(--input-border, #404040) !important;
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] .agent-filter-select:focus,
    [data-theme-mode=dark] .agent-search-input:focus,
    [data-theme-mode=dark] .agent-os-select:focus {
        border-color: var(--primary-color, #845adf) !important;
        box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
    }

/* Clear Filters Link - Theme Aware */
#btnClearFilters {
    color: var(--primary-color, #845adf);
    text-decoration: none;
    font-size: 13px;
    transition: all 0.2s ease;
}

    #btnClearFilters:hover {
        color: var(--primary-color, #845adf);
        text-decoration: underline;
    }

/* ========== DATATABLE THEME STYLING (AGENT TABLE) ========== */

/* DataTable Wrapper */
#agentTable_wrapper,
#agentTable_wrapper .dataTables_wrapper {
    width: 100%;
    overflow-x: hidden;
}

/* DataTable Header - Theme Aware */
#agentTable thead th {
    background-color: var(--primary-color, #845adf) !important;
    color: #ffffff !important;
    font-weight: 500;
    font-size: 13px;
    border: none !important;
    padding: 12px 8px;
    text-align: left;
    vertical-align: middle;
}

    #agentTable thead th.sorting,
    #agentTable thead th.sorting_asc,
    #agentTable thead th.sorting_desc {
        cursor: pointer;
        position: relative;
        padding-right: 30px;
    }

        #agentTable thead th.sorting:after,
        #agentTable thead th.sorting_asc:after,
        #agentTable thead th.sorting_desc:after {
            content: '';
            position: absolute;
            right: 8px;
            top: 50%;
            transform: translateY(-50%);
            width: 0;
            height: 0;
            border-left: 4px solid transparent;
            border-right: 4px solid transparent;
        }

        #agentTable thead th.sorting:after {
            border-top: 6px solid rgba(255, 255, 255, 0.5);
            border-bottom: none;
        }

        #agentTable thead th.sorting_asc:after {
            border-bottom: 6px solid #ffffff;
            border-top: none;
        }

        #agentTable thead th.sorting_desc:after {
            border-top: 6px solid #ffffff;
            border-bottom: none;
        }

/* DataTable Body - Theme Aware */
#agentTable tbody {
    background: var(--custom-white, #fff) !important;
}

    #agentTable tbody tr {
        background: var(--custom-white, #fff) !important;
        border-bottom: 1px solid var(--default-border, #f0f0f0) !important;
        transition: background-color 0.2s ease;
    }

        #agentTable tbody tr:hover {
            background: var(--list-hover-focus-bg, #f8f9fa) !important;
        }

    #agentTable tbody td {
        color: var(--default-text-color, #495057) !important;
        border-bottom: 1px solid var(--default-border, #f0f0f0) !important;
        padding: 12px 8px !important;
        vertical-align: middle !important;
        font-size: 13px;
    }

/* DataTable Controls - Search, Length, Info */
#agentTable_wrapper .dataTables_filter {
    float: right;
    text-align: right;
    margin-bottom: 10px;
}

    #agentTable_wrapper .dataTables_filter label {
        color: var(--default-text-color, #495057) !important;
        font-size: 13px;
        font-weight: normal;
        margin-bottom: 0;
    }

    #agentTable_wrapper .dataTables_filter input {
        background-color: var(--form-control-bg, #fff) !important;
        border: 1px solid var(--input-border, #dee2e6) !important;
        color: var(--default-text-color, #495057) !important;
        padding: 6px 12px;
        border-radius: 4px;
        font-size: 13px;
        margin-left: 8px;
        transition: all 0.2s ease;
    }

        #agentTable_wrapper .dataTables_filter input:focus {
            border-color: var(--primary-color, #845adf) !important;
            box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
            outline: none;
        }

#agentTable_wrapper .dataTables_length {
    float: left;
    margin-bottom: 10px;
}

    #agentTable_wrapper .dataTables_length label {
        color: var(--default-text-color, #495057) !important;
        font-size: 13px;
        font-weight: normal;
        margin-bottom: 0;
    }

    #agentTable_wrapper .dataTables_length select {
        background-color: var(--form-control-bg, #fff) !important;
        border: 1px solid var(--input-border, #dee2e6) !important;
        color: var(--default-text-color, #495057) !important;
        padding: 6px 12px;
        border-radius: 4px;
        font-size: 13px;
        margin: 0 8px;
        transition: all 0.2s ease;
    }

        #agentTable_wrapper .dataTables_length select:focus {
            border-color: var(--primary-color, #845adf) !important;
            box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
            outline: none;
        }

#agentTable_wrapper .dataTables_info {
    color: var(--default-text-color, #495057) !important;
    font-size: 13px;
    padding-top: 10px;
}

/* DataTable Pagination - Theme Aware */
#agentTable_wrapper .dataTables_paginate {
    float: right;
    text-align: right;
    margin-top: 10px;
}

    #agentTable_wrapper .dataTables_paginate .paginate_button {
        color: var(--default-text-color, #495057) !important;
        padding: 6px 12px;
        margin: 0 2px;
        border: 1px solid var(--default-border, #dee2e6) !important;
        border-radius: 4px;
        background: var(--custom-white, #fff) !important;
        cursor: pointer;
        transition: all 0.2s ease;
        font-size: 13px;
        min-width: 36px;
        text-align: center;
        display: inline-block;
    }

        #agentTable_wrapper .dataTables_paginate .paginate_button:hover:not(.disabled) {
            background: var(--list-hover-focus-bg, #f8f9fa) !important;
            color: var(--primary-color, #845adf) !important;
            border-color: var(--primary-color, #845adf) !important;
            transform: translateY(-1px);
            box-shadow: 0 2px 4px rgba(132, 90, 223, 0.2);
        }

        #agentTable_wrapper .dataTables_paginate .paginate_button.current {
            background: var(--primary-color, #845adf) !important;
            color: #ffffff !important;
            border-color: var(--primary-color, #845adf) !important;
            font-weight: 600;
            box-shadow: 0 2px 4px rgba(132, 90, 223, 0.3);
        }

            #agentTable_wrapper .dataTables_paginate .paginate_button.current:hover {
                background: #6b47b3 !important;
                border-color: #6b47b3 !important;
                box-shadow: 0 2px 6px rgba(132, 90, 223, 0.4);
            }

        #agentTable_wrapper .dataTables_paginate .paginate_button.disabled {
            opacity: 0.5;
            cursor: not-allowed;
            pointer-events: none;
        }

        #agentTable_wrapper .dataTables_paginate .paginate_button:active:not(.disabled) {
            transform: translateY(0);
            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
        }

/* Dark Theme - DataTable */
[data-theme-mode=dark] #agentTable tbody {
    background: var(--custom-white, #1a1a1a) !important;
}

    [data-theme-mode=dark] #agentTable tbody tr {
        background: var(--custom-white, #1a1a1a) !important;
        border-bottom-color: var(--default-border, #2d2d2d) !important;
    }

        [data-theme-mode=dark] #agentTable tbody tr:hover {
            background: var(--list-hover-focus-bg, #2d2d2d) !important;
        }

    [data-theme-mode=dark] #agentTable tbody td {
        color: var(--default-text-color, #e0e0e0) !important;
        border-bottom-color: var(--default-border, #2d2d2d) !important;
    }

[data-theme-mode=dark] #agentTable_wrapper .dataTables_filter label,
[data-theme-mode=dark] #agentTable_wrapper .dataTables_length label,
[data-theme-mode=dark] #agentTable_wrapper .dataTables_info {
    color: var(--default-text-color, #e0e0e0) !important;
}

[data-theme-mode=dark] #agentTable_wrapper .dataTables_filter input,
[data-theme-mode=dark] #agentTable_wrapper .dataTables_length select {
    background-color: var(--form-control-bg, #2d2d2d) !important;
    border-color: var(--input-border, #404040) !important;
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] #agentTable_wrapper .dataTables_filter input:focus,
    [data-theme-mode=dark] #agentTable_wrapper .dataTables_length select:focus {
        border-color: var(--primary-color, #845adf) !important;
        box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
    }

[data-theme-mode=dark] #agentTable_wrapper .dataTables_paginate .paginate_button {
    background: var(--custom-white, #2d2d2d) !important;
    border-color: var(--default-border, #404040) !important;
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] #agentTable_wrapper .dataTables_paginate .paginate_button:hover:not(.disabled) {
        background: var(--list-hover-focus-bg, #404040) !important;
        color: var(--primary-color, #845adf) !important;
        border-color: var(--primary-color, #845adf) !important;
    }

    [data-theme-mode=dark] #agentTable_wrapper .dataTables_paginate .paginate_button.current {
        background: var(--primary-color, #845adf) !important;
        color: #ffffff !important;
        box-shadow: 0 2px 4px rgba(132, 90, 223, 0.4);
    }

        [data-theme-mode=dark] #agentTable_wrapper .dataTables_paginate .paginate_button.current:hover {
            background: #6b47b3 !important;
        }

    [data-theme-mode=dark] #agentTable_wrapper .dataTables_paginate .paginate_button:hover:not(.disabled) {
        box-shadow: 0 2px 4px rgba(132, 90, 223, 0.3);
    }

/* Status Badges in Table - Theme Aware */
#agentTable .badge-online {
    background-color: #10b981;
    color: #ffffff;
}

#agentTable .badge-offline {
    background-color: #ef4444;
    color: #ffffff;
}

[data-theme-mode=dark] #agentTable .badge-online {
    background-color: #059669;
    color: #ffffff;
}

[data-theme-mode=dark] #agentTable .badge-offline {
    background-color: #dc2626;
    color: #ffffff;
}

/* Action Links in Table - Theme Aware (View, Edit, Delete) */
#agentTable .nEditDelelet {
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    padding: 4px 0;
}

    #agentTable .nEditDelelet a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 32px;
        height: 32px;
        border-radius: 4px;
        transition: all 0.2s ease;
        text-decoration: none;
        cursor: pointer;
        position: relative;
    }

        #agentTable .nEditDelelet a i {
            font-size: 16px;
            transition: all 0.2s ease;
        }

        #agentTable .nEditDelelet a:active {
            transform: scale(0.95);
        }

    /* View Link (Eye Icon) - Blue */
    #agentTable .nEditDelelet .link-primary {
        color: var(--default-text-color, #495057);
    }

        #agentTable .nEditDelelet .link-primary:hover {
            background: rgba(33, 150, 243, 0.1);
            color: #2196f3;
            transform: scale(1.1);
        }

            #agentTable .nEditDelelet .link-primary:hover i {
                color: #2196f3;
            }

    /* Edit Link (Pencil Icon) - Purple */
    #agentTable .nEditDelelet .link-warning {
        color: var(--default-text-color, #495057);
    }

        #agentTable .nEditDelelet .link-warning:hover {
            background: rgba(132, 90, 223, 0.1);
            color: var(--primary-color, #845adf);
            transform: scale(1.1);
        }

            #agentTable .nEditDelelet .link-warning:hover i {
                color: var(--primary-color, #845adf);
            }

    /* Delete Link (Trash Icon) - Red */
    #agentTable .nEditDelelet .link-danger {
        color: var(--default-text-color, #495057);
    }

        #agentTable .nEditDelelet .link-danger:hover {
            background: rgba(220, 53, 69, 0.1);
            color: #dc3545;
            transform: scale(1.1);
        }

            #agentTable .nEditDelelet .link-danger:hover i {
                color: #dc3545;
            }

/* Dark Theme - Action Links */
[data-theme-mode=dark] #agentTable .nEditDelelet .link-primary,
[data-theme-mode=dark] #agentTable .nEditDelelet .link-warning,
[data-theme-mode=dark] #agentTable .nEditDelelet .link-danger {
    color: var(--default-text-color, #e0e0e0);
}

    [data-theme-mode=dark] #agentTable .nEditDelelet .link-primary:hover {
        background: rgba(33, 150, 243, 0.2);
        color: #64b5f6;
    }

        [data-theme-mode=dark] #agentTable .nEditDelelet .link-primary:hover i {
            color: #64b5f6;
        }

    [data-theme-mode=dark] #agentTable .nEditDelelet .link-warning:hover {
        background: rgba(132, 90, 223, 0.2);
        color: var(--primary-color, #845adf);
    }

        [data-theme-mode=dark] #agentTable .nEditDelelet .link-warning:hover i {
            color: var(--primary-color, #845adf);
        }

    [data-theme-mode=dark] #agentTable .nEditDelelet .link-danger:hover {
        background: rgba(220, 53, 69, 0.2);
        color: #f44336;
    }

        [data-theme-mode=dark] #agentTable .nEditDelelet .link-danger:hover i {
            color: #f44336;
        }

/* Checkbox Styling - Theme Aware */
#agentTable .form-check-input {
    background-color: var(--form-control-bg, #fff);
    border: 1px solid var(--input-border, #dee2e6);
}

    #agentTable .form-check-input:checked {
        background-color: var(--primary-color, #845adf);
        border-color: var(--primary-color, #845adf);
    }

[data-theme-mode=dark] #agentTable .form-check-input {
    background-color: var(--form-control-bg, #2d2d2d);
    border-color: var(--input-border, #404040);
}

/* Device Name Link - Theme Aware */
#agentTable .nPerson b.text-primary {
    color: var(--primary-color, #845adf) !important;
}

#agentTable .nPerson .color-gray-light {
    color: var(--text-muted, #6c757d) !important;
}

[data-theme-mode=dark] #agentTable .nPerson .color-gray-light {
    color: var(--text-muted, #9ca3af) !important;
}

/* DataTable Fix - No Horizontal Scroll */
.dataTables_wrapper {
    overflow-x: hidden;
}

#tabPolicies .card-body,
#tabSoftware .card-body,
#tabUsers .card-body,
#tabEvents .card-body {
    overflow-x: hidden;
}

/* Tab Events - Card header: title left, date/search/refresh right in one row, aligned */
#tabEvents .agent-detail-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.75rem;
}

    #tabEvents .agent-detail-card-header h6 {
        margin: 0;
        flex-shrink: 0;
    }

    #tabEvents .agent-detail-card-header .events-header-controls {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        flex-wrap: nowrap;
    }

        #tabEvents .agent-detail-card-header .events-header-controls .form-control {
            height: 36px;
            width: 150px;
            min-width: 140px;
            margin: 0;
        }

        #tabEvents .agent-detail-card-header .events-header-controls input[type="search"] {
            width: 180px;
            min-width: 160px;
        }

        #tabEvents .agent-detail-card-header .events-header-controls .btn-refresh {
            height: 36px;
            padding: 0 12px;
            display: inline-flex;
            align-items: center;
            flex-shrink: 0;
        }

@media (max-width: 768px) {
    #tabEvents .agent-detail-card-header .events-header-controls {
        flex-wrap: wrap;
        width: 100%;
    }

        #tabEvents .agent-detail-card-header .events-header-controls .form-control {
            flex: 1;
            min-width: 120px;
        }
}

/* ========== TAB EVENTS LIST STYLING - THEME AWARE ========== */
#tabEvents .table-responsive {
    border-radius: 6px;
    border: 1px solid var(--default-border, #e9ecef);
    overflow-x: auto;
}

#tabEvents #securityEventsDataTable,
#tabEvents #applicationEventsDataTable {
    margin-bottom: 0;
    border-collapse: collapse;
    width: 100%;
}

    #tabEvents #securityEventsDataTable thead th,
    #tabEvents #applicationEventsDataTable thead th {
        background-color: var(--primary-color, #845adf) !important;
        color: #ffffff !important;
        font-weight: 600;
        font-size: 13px;
        padding: 12px 10px;
        border: none !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
        border-right: 1px solid rgba(255, 255, 255, 0.2);
        text-align: left;
        vertical-align: middle;
    }

        #tabEvents #securityEventsDataTable thead th:last-child,
        #tabEvents #applicationEventsDataTable thead th:last-child {
            border-right: none;
        }

    #tabEvents #securityEventsDataTable tbody,
    #tabEvents #applicationEventsDataTable tbody {
        background: var(--custom-white, #fff) !important;
    }

        #tabEvents #securityEventsDataTable tbody tr,
        #tabEvents #applicationEventsDataTable tbody tr {
            background: var(--custom-white, #fff) !important;
            border-bottom: 1px solid var(--default-border, #f0f0f0);
            transition: background-color 0.2s ease;
        }

            #tabEvents #securityEventsDataTable tbody tr:hover,
            #tabEvents #applicationEventsDataTable tbody tr:hover {
                background: var(--list-hover-focus-bg, #f8f9fa) !important;
            }

        #tabEvents #securityEventsDataTable tbody td,
        #tabEvents #applicationEventsDataTable tbody td {
            color: var(--default-text-color, #495057) !important;
            padding: 10px;
            vertical-align: middle;
            font-size: 13px;
            border-right: 1px solid var(--default-border, #f0f0f0);
        }

            #tabEvents #securityEventsDataTable tbody td:last-child,
            #tabEvents #applicationEventsDataTable tbody td:last-child {
                border-right: none;
            }

        #tabEvents #securityEventsDataTable tbody tr.text-center td,
        #tabEvents #applicationEventsDataTable tbody tr.text-center td {
            color: var(--default-text-color-muted, #6c757d) !important;
        }

[data-theme-mode=dark] #tabEvents .table-responsive {
    border-color: var(--default-border, #2d2d2d);
}

[data-theme-mode=dark] #tabEvents #securityEventsDataTable thead th,
[data-theme-mode=dark] #tabEvents #applicationEventsDataTable thead th {
    background-color: var(--primary-color, #845adf) !important;
    color: #ffffff !important;
    border-bottom-color: rgba(255, 255, 255, 0.15);
    border-right-color: rgba(255, 255, 255, 0.15);
}

[data-theme-mode=dark] #tabEvents #securityEventsDataTable tbody tr,
[data-theme-mode=dark] #tabEvents #applicationEventsDataTable tbody tr {
    border-bottom-color: var(--default-border, #2d2d2d);
}

    [data-theme-mode=dark] #tabEvents #securityEventsDataTable tbody tr:hover,
    [data-theme-mode=dark] #tabEvents #applicationEventsDataTable tbody tr:hover {
        background: var(--list-hover-focus-bg, #2d2d2d) !important;
    }

[data-theme-mode=dark] #tabEvents #securityEventsDataTable tbody td,
[data-theme-mode=dark] #tabEvents #applicationEventsDataTable tbody td {
    color: var(--default-text-color, #e0e0e0) !important;
    border-right-color: var(--default-border, #2d2d2d);
}

/* ========== PERIPHERALS TAB TABLE STYLING - MATCHING EVENTS TAB ========== */
#tabPeripherals .table-responsive {
    border-radius: 6px;
    border: 1px solid var(--default-border, #e9ecef);
    overflow-x: auto;
}

#tabPeripherals #monitorsDataTable,
#tabPeripherals #usbDevicesDataTable,
#tabPeripherals #printersDataTable {
    margin-bottom: 0;
    border-collapse: collapse;
    width: 100%;
}

    #tabPeripherals #monitorsDataTable thead th,
    #tabPeripherals #usbDevicesDataTable thead th,
    #tabPeripherals #printersDataTable thead th {
        background-color: var(--primary-color, #845adf) !important;
        color: #ffffff !important;
        font-weight: 600;
        font-size: 13px;
        padding: 12px 10px;
        border: none !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
        border-right: 1px solid rgba(255, 255, 255, 0.2);
        text-align: left;
        vertical-align: middle;
    }

        #tabPeripherals #monitorsDataTable thead th:last-child,
        #tabPeripherals #usbDevicesDataTable thead th:last-child,
        #tabPeripherals #printersDataTable thead th:last-child {
            border-right: none;
        }

    #tabPeripherals #monitorsDataTable tbody,
    #tabPeripherals #usbDevicesDataTable tbody,
    #tabPeripherals #printersDataTable tbody {
        background: var(--custom-white, #fff) !important;
    }

        #tabPeripherals #monitorsDataTable tbody tr,
        #tabPeripherals #usbDevicesDataTable tbody tr,
        #tabPeripherals #printersDataTable tbody tr {
            background: var(--custom-white, #fff) !important;
            border-bottom: 1px solid var(--default-border, #f0f0f0);
            transition: background-color 0.2s ease;
        }

            #tabPeripherals #monitorsDataTable tbody tr:hover,
            #tabPeripherals #usbDevicesDataTable tbody tr:hover,
            #tabPeripherals #printersDataTable tbody tr:hover {
                background: var(--list-hover-focus-bg, #f8f9fa) !important;
            }

        #tabPeripherals #monitorsDataTable tbody td,
        #tabPeripherals #usbDevicesDataTable tbody td,
        #tabPeripherals #printersDataTable tbody td {
            color: var(--default-text-color, #495057) !important;
            padding: 10px;
            vertical-align: middle;
            font-size: 13px;
            border-right: 1px solid var(--default-border, #f0f0f0);
        }

            #tabPeripherals #monitorsDataTable tbody td:last-child,
            #tabPeripherals #usbDevicesDataTable tbody td:last-child,
            #tabPeripherals #printersDataTable tbody td:last-child {
                border-right: none;
            }

        #tabPeripherals #monitorsDataTable tbody tr.text-center td,
        #tabPeripherals #usbDevicesDataTable tbody tr.text-center td,
        #tabPeripherals #printersDataTable tbody tr.text-center td {
            color: var(--default-text-color-muted, #6c757d) !important;
        }

[data-theme-mode=dark] #tabPeripherals .table-responsive {
    border-color: var(--default-border, #2d2d2d);
}

[data-theme-mode=dark] #tabPeripherals #monitorsDataTable thead th,
[data-theme-mode=dark] #tabPeripherals #usbDevicesDataTable thead th,
[data-theme-mode=dark] #tabPeripherals #printersDataTable thead th {
    background-color: var(--primary-color, #845adf) !important;
    color: #ffffff !important;
    border-bottom-color: rgba(255, 255, 255, 0.15);
    border-right-color: rgba(255, 255, 255, 0.15);
}

[data-theme-mode=dark] #tabPeripherals #monitorsDataTable tbody tr,
[data-theme-mode=dark] #tabPeripherals #usbDevicesDataTable tbody tr,
[data-theme-mode=dark] #tabPeripherals #printersDataTable tbody tr {
    border-bottom-color: var(--default-border, #2d2d2d);
}

    [data-theme-mode=dark] #tabPeripherals #monitorsDataTable tbody tr:hover,
    [data-theme-mode=dark] #tabPeripherals #usbDevicesDataTable tbody tr:hover,
    [data-theme-mode=dark] #tabPeripherals #printersDataTable tbody tr:hover {
        background: var(--list-hover-focus-bg, #2d2d2d) !important;
    }

[data-theme-mode=dark] #tabPeripherals #monitorsDataTable tbody td,
[data-theme-mode=dark] #tabPeripherals #usbDevicesDataTable tbody td,
[data-theme-mode=dark] #tabPeripherals #printersDataTable tbody td {
    color: var(--default-text-color, #e0e0e0) !important;
    border-right-color: var(--default-border, #2d2d2d);
}

/* ========== SERVICES TAB TABLE STYLING - MATCHING EVENTS TAB ========== */
#tabServices .table-responsive {
    border-radius: 6px;
    border: 1px solid var(--default-border, #e9ecef);
    overflow-x: auto;
}

#tabServices #servicesDataTable,
#tabServices #startupProgramsDataTable,
#tabServices #scheduledTasksDataTable {
    margin-bottom: 0;
    border-collapse: collapse;
    width: 100%;
}

    #tabServices #servicesDataTable thead th,
    #tabServices #startupProgramsDataTable thead th,
    #tabServices #scheduledTasksDataTable thead th {
        background-color: var(--primary-color, #845adf) !important;
        color: #ffffff !important;
        font-weight: 600;
        font-size: 13px;
        padding: 12px 10px;
        border: none !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
        border-right: 1px solid rgba(255, 255, 255, 0.2);
        text-align: left;
        vertical-align: middle;
    }

        #tabServices #servicesDataTable thead th:last-child,
        #tabServices #startupProgramsDataTable thead th:last-child,
        #tabServices #scheduledTasksDataTable thead th:last-child {
            border-right: none;
        }

    #tabServices #servicesDataTable tbody,
    #tabServices #startupProgramsDataTable tbody,
    #tabServices #scheduledTasksDataTable tbody {
        background: var(--custom-white, #fff) !important;
    }

        #tabServices #servicesDataTable tbody tr,
        #tabServices #startupProgramsDataTable tbody tr,
        #tabServices #scheduledTasksDataTable tbody tr {
            background: var(--custom-white, #fff) !important;
            border-bottom: 1px solid var(--default-border, #f0f0f0);
            transition: background-color 0.2s ease;
        }

            #tabServices #servicesDataTable tbody tr:hover,
            #tabServices #startupProgramsDataTable tbody tr:hover,
            #tabServices #scheduledTasksDataTable tbody tr:hover {
                background: var(--list-hover-focus-bg, #f8f9fa) !important;
            }

        #tabServices #servicesDataTable tbody td,
        #tabServices #startupProgramsDataTable tbody td,
        #tabServices #scheduledTasksDataTable tbody td {
            color: var(--default-text-color, #495057) !important;
            padding: 10px;
            vertical-align: middle;
            font-size: 13px;
            border-right: 1px solid var(--default-border, #f0f0f0);
        }

            #tabServices #servicesDataTable tbody td:last-child,
            #tabServices #startupProgramsDataTable tbody td:last-child,
            #tabServices #scheduledTasksDataTable tbody td:last-child {
                border-right: none;
            }

        #tabServices #servicesDataTable tbody tr.text-center td,
        #tabServices #startupProgramsDataTable tbody tr.text-center td,
        #tabServices #scheduledTasksDataTable tbody tr.text-center td {
            color: var(--default-text-color-muted, #6c757d) !important;
        }

[data-theme-mode=dark] #tabServices .table-responsive {
    border-color: var(--default-border, #2d2d2d);
}

[data-theme-mode=dark] #tabServices #servicesDataTable thead th,
[data-theme-mode=dark] #tabServices #startupProgramsDataTable thead th,
[data-theme-mode=dark] #tabServices #scheduledTasksDataTable thead th {
    background-color: var(--primary-color, #845adf) !important;
    color: #ffffff !important;
    border-bottom-color: rgba(255, 255, 255, 0.15);
    border-right-color: rgba(255, 255, 255, 0.15);
}

[data-theme-mode=dark] #tabServices #servicesDataTable tbody tr,
[data-theme-mode=dark] #tabServices #startupProgramsDataTable tbody tr,
[data-theme-mode=dark] #tabServices #scheduledTasksDataTable tbody tr {
    border-bottom-color: var(--default-border, #2d2d2d);
}

    [data-theme-mode=dark] #tabServices #servicesDataTable tbody tr:hover,
    [data-theme-mode=dark] #tabServices #startupProgramsDataTable tbody tr:hover,
    [data-theme-mode=dark] #tabServices #scheduledTasksDataTable tbody tr:hover {
        background: var(--list-hover-focus-bg, #2d2d2d) !important;
    }

[data-theme-mode=dark] #tabServices #servicesDataTable tbody td,
[data-theme-mode=dark] #tabServices #startupProgramsDataTable tbody td,
[data-theme-mode=dark] #tabServices #scheduledTasksDataTable tbody td {
    color: var(--default-text-color, #e0e0e0) !important;
    border-right-color: var(--default-border, #2d2d2d);
}

/* ========== NETWORK TAB TABLE STYLING - MATCHING EVENTS TAB ========== */
#tabNetwork .table-responsive {
    border-radius: 6px;
    border: 1px solid var(--default-border, #e9ecef);
    overflow-x: auto;
}

#tabNetwork #networkSharesDataTable,
#tabNetwork #mappedDrivesDataTable,
#tabNetwork #listeningPortsDataTable {
    margin-bottom: 0;
    border-collapse: collapse;
    width: 100%;
}

    #tabNetwork #networkSharesDataTable thead th,
    #tabNetwork #mappedDrivesDataTable thead th,
    #tabNetwork #listeningPortsDataTable thead th {
        background-color: var(--primary-color, #845adf) !important;
        color: #ffffff !important;
        font-weight: 600;
        font-size: 13px;
        padding: 12px 10px;
        border: none !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
        border-right: 1px solid rgba(255, 255, 255, 0.2);
        text-align: left;
        vertical-align: middle;
    }

        #tabNetwork #networkSharesDataTable thead th:last-child,
        #tabNetwork #mappedDrivesDataTable thead th:last-child,
        #tabNetwork #listeningPortsDataTable thead th:last-child {
            border-right: none;
        }

    #tabNetwork #networkSharesDataTable tbody,
    #tabNetwork #mappedDrivesDataTable tbody,
    #tabNetwork #listeningPortsDataTable tbody {
        background: var(--custom-white, #fff) !important;
    }

        #tabNetwork #networkSharesDataTable tbody tr,
        #tabNetwork #mappedDrivesDataTable tbody tr,
        #tabNetwork #listeningPortsDataTable tbody tr {
            background: var(--custom-white, #fff) !important;
            border-bottom: 1px solid var(--default-border, #f0f0f0);
            transition: background-color 0.2s ease;
        }

            #tabNetwork #networkSharesDataTable tbody tr:hover,
            #tabNetwork #mappedDrivesDataTable tbody tr:hover,
            #tabNetwork #listeningPortsDataTable tbody tr:hover {
                background: var(--list-hover-focus-bg, #f8f9fa) !important;
            }

        #tabNetwork #networkSharesDataTable tbody td,
        #tabNetwork #mappedDrivesDataTable tbody td,
        #tabNetwork #listeningPortsDataTable tbody td {
            color: var(--default-text-color, #495057) !important;
            padding: 10px;
            vertical-align: middle;
            font-size: 13px;
            border-right: 1px solid var(--default-border, #f0f0f0);
        }

            #tabNetwork #networkSharesDataTable tbody td:last-child,
            #tabNetwork #mappedDrivesDataTable tbody td:last-child,
            #tabNetwork #listeningPortsDataTable tbody td:last-child {
                border-right: none;
            }

        #tabNetwork #networkSharesDataTable tbody tr.text-center td,
        #tabNetwork #mappedDrivesDataTable tbody tr.text-center td,
        #tabNetwork #listeningPortsDataTable tbody tr.text-center td {
            color: var(--default-text-color-muted, #6c757d) !important;
        }

[data-theme-mode=dark] #tabNetwork .table-responsive {
    border-color: var(--default-border, #2d2d2d);
}

[data-theme-mode=dark] #tabNetwork #networkSharesDataTable thead th,
[data-theme-mode=dark] #tabNetwork #mappedDrivesDataTable thead th,
[data-theme-mode=dark] #tabNetwork #listeningPortsDataTable thead th {
    background-color: var(--primary-color, #845adf) !important;
    color: #ffffff !important;
    border-bottom-color: rgba(255, 255, 255, 0.15);
    border-right-color: rgba(255, 255, 255, 0.15);
}

[data-theme-mode=dark] #tabNetwork #networkSharesDataTable tbody tr,
[data-theme-mode=dark] #tabNetwork #mappedDrivesDataTable tbody tr,
[data-theme-mode=dark] #tabNetwork #listeningPortsDataTable tbody tr {
    border-bottom-color: var(--default-border, #2d2d2d);
}

    [data-theme-mode=dark] #tabNetwork #networkSharesDataTable tbody tr:hover,
    [data-theme-mode=dark] #tabNetwork #mappedDrivesDataTable tbody tr:hover,
    [data-theme-mode=dark] #tabNetwork #listeningPortsDataTable tbody tr:hover {
        background: var(--list-hover-focus-bg, #2d2d2d) !important;
    }

[data-theme-mode=dark] #tabNetwork #networkSharesDataTable tbody td,
[data-theme-mode=dark] #tabNetwork #mappedDrivesDataTable tbody td,
[data-theme-mode=dark] #tabNetwork #listeningPortsDataTable tbody td {
    color: var(--default-text-color, #e0e0e0) !important;
    border-right-color: var(--default-border, #2d2d2d);
}

/* ========== SECURITY TAB TABLE STYLING - MATCHING EVENTS TAB ========== */
#tabSecurity .table-responsive {
    border-radius: 6px;
    border: 1px solid var(--default-border, #e9ecef);
    overflow-x: auto;
}

#tabSecurity #localGroupsDataTable,
#tabSecurity #frameworksDataTable {
    margin-bottom: 0;
    border-collapse: collapse;
    width: 100%;
}

    #tabSecurity #localGroupsDataTable thead th,
    #tabSecurity #frameworksDataTable thead th {
        background-color: var(--primary-color, #845adf) !important;
        color: #ffffff !important;
        font-weight: 600;
        font-size: 13px;
        padding: 12px 10px;
        border: none !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
        border-right: 1px solid rgba(255, 255, 255, 0.2);
        text-align: left;
        vertical-align: middle;
    }

        #tabSecurity #localGroupsDataTable thead th:last-child,
        #tabSecurity #frameworksDataTable thead th:last-child {
            border-right: none;
        }

    #tabSecurity #localGroupsDataTable tbody,
    #tabSecurity #frameworksDataTable tbody {
        background: var(--custom-white, #fff) !important;
    }

        #tabSecurity #localGroupsDataTable tbody tr,
        #tabSecurity #frameworksDataTable tbody tr {
            background: var(--custom-white, #fff) !important;
            border-bottom: 1px solid var(--default-border, #f0f0f0);
            transition: background-color 0.2s ease;
        }

            #tabSecurity #localGroupsDataTable tbody tr:hover,
            #tabSecurity #frameworksDataTable tbody tr:hover {
                background: var(--list-hover-focus-bg, #f8f9fa) !important;
            }

        #tabSecurity #localGroupsDataTable tbody td,
        #tabSecurity #frameworksDataTable tbody td {
            color: var(--default-text-color, #495057) !important;
            padding: 10px;
            vertical-align: middle;
            font-size: 13px;
            border-right: 1px solid var(--default-border, #f0f0f0);
        }

            #tabSecurity #localGroupsDataTable tbody td:last-child,
            #tabSecurity #frameworksDataTable tbody td:last-child {
                border-right: none;
            }

        #tabSecurity #localGroupsDataTable tbody tr.text-center td,
        #tabSecurity #frameworksDataTable tbody tr.text-center td {
            color: var(--default-text-color-muted, #6c757d) !important;
        }

[data-theme-mode=dark] #tabSecurity .table-responsive {
    border-color: var(--default-border, #2d2d2d);
}

[data-theme-mode=dark] #tabSecurity #localGroupsDataTable thead th,
[data-theme-mode=dark] #tabSecurity #frameworksDataTable thead th {
    background-color: var(--primary-color, #845adf) !important;
    color: #ffffff !important;
    border-bottom-color: rgba(255, 255, 255, 0.15);
    border-right-color: rgba(255, 255, 255, 0.15);
}

[data-theme-mode=dark] #tabSecurity #localGroupsDataTable tbody tr,
[data-theme-mode=dark] #tabSecurity #frameworksDataTable tbody tr {
    border-bottom-color: var(--default-border, #2d2d2d);
}

    [data-theme-mode=dark] #tabSecurity #localGroupsDataTable tbody tr:hover,
    [data-theme-mode=dark] #tabSecurity #frameworksDataTable tbody tr:hover {
        background: var(--list-hover-focus-bg, #2d2d2d) !important;
    }

[data-theme-mode=dark] #tabSecurity #localGroupsDataTable tbody td,
[data-theme-mode=dark] #tabSecurity #frameworksDataTable tbody td {
    color: var(--default-text-color, #e0e0e0) !important;
    border-right-color: var(--default-border, #2d2d2d);
}

/* ========== SOFTWARE TABLE STYLING - THEME AWARE ========== */

/* Software Table Wrapper */
#softwareTable_wrapper,
#softwareTable_wrapper .dataTables_wrapper {
    width: 100%;
    overflow-x: hidden;
}

/* Software Table Header - Theme Aware */
#softwareTable thead th {
    background-color: var(--primary-color, #845adf) !important;
    color: #ffffff !important;
    font-weight: 500;
    font-size: 13px;
    border: none !important;
    padding: 12px 8px;
    text-align: left;
    vertical-align: middle;
}

    #softwareTable thead th.sorting,
    #softwareTable thead th.sorting_asc,
    #softwareTable thead th.sorting_desc {
        cursor: pointer;
        position: relative;
        padding-right: 30px;
    }

        #softwareTable thead th.sorting:after,
        #softwareTable thead th.sorting_asc:after,
        #softwareTable thead th.sorting_desc:after {
            content: '';
            position: absolute;
            right: 8px;
            top: 50%;
            transform: translateY(-50%);
            width: 0;
            height: 0;
            border-left: 4px solid transparent;
            border-right: 4px solid transparent;
        }

        #softwareTable thead th.sorting:after {
            border-top: 6px solid rgba(255, 255, 255, 0.5);
            border-bottom: none;
        }

        #softwareTable thead th.sorting_asc:after {
            border-bottom: 6px solid #ffffff;
            border-top: none;
        }

        #softwareTable thead th.sorting_desc:after {
            border-top: 6px solid #ffffff;
            border-bottom: none;
        }

/* Software Table Body - Theme Aware */
#softwareTable tbody {
    background: var(--custom-white, #fff) !important;
}

    #softwareTable tbody tr {
        background: var(--custom-white, #fff) !important;
        border-bottom: 1px solid var(--default-border, #f0f0f0) !important;
        transition: background-color 0.2s ease;
    }

        #softwareTable tbody tr:hover {
            background: var(--list-hover-focus-bg, #f8f9fa) !important;
        }

    #softwareTable tbody td {
        color: var(--default-text-color, #495057) !important;
        border-bottom: 1px solid var(--default-border, #f0f0f0) !important;
        padding: 12px 8px !important;
        vertical-align: middle !important;
        font-size: 13px;
    }

/* Software Table Controls - Search, Length, Info */
#softwareTable_wrapper .dataTables_filter {
    float: right;
    text-align: right;
    margin-bottom: 10px;
}

    #softwareTable_wrapper .dataTables_filter label {
        color: var(--default-text-color, #495057) !important;
        font-size: 13px;
        font-weight: normal;
        margin-bottom: 0;
    }

    #softwareTable_wrapper .dataTables_filter input {
        background-color: var(--form-control-bg, #fff) !important;
        border: 1px solid var(--input-border, #dee2e6) !important;
        color: var(--default-text-color, #495057) !important;
        padding: 6px 12px;
        border-radius: 4px;
        font-size: 13px;
        margin-left: 8px;
        transition: all 0.2s ease;
    }

        #softwareTable_wrapper .dataTables_filter input:focus {
            border-color: var(--primary-color, #845adf) !important;
            box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
            outline: none;
        }

#softwareTable_wrapper .dataTables_length {
    float: left;
    margin-bottom: 10px;
}

    #softwareTable_wrapper .dataTables_length label {
        color: var(--default-text-color, #495057) !important;
        font-size: 13px;
        font-weight: normal;
        margin-bottom: 0;
    }

    #softwareTable_wrapper .dataTables_length select {
        background-color: var(--form-control-bg, #fff) !important;
        border: 1px solid var(--input-border, #dee2e6) !important;
        color: var(--default-text-color, #495057) !important;
        padding: 6px 12px;
        border-radius: 4px;
        font-size: 13px;
        margin: 0 8px;
        transition: all 0.2s ease;
    }

        #softwareTable_wrapper .dataTables_length select:focus {
            border-color: var(--primary-color, #845adf) !important;
            box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
            outline: none;
        }

#softwareTable_wrapper .dataTables_info {
    color: var(--default-text-color, #495057) !important;
    font-size: 13px;
    padding-top: 10px;
}

/* Software Table Pagination - Theme Aware */
#softwareTable_wrapper .dataTables_paginate {
    float: right;
    text-align: right;
    margin-top: 10px;
}

    #softwareTable_wrapper .dataTables_paginate .paginate_button {
        color: var(--default-text-color, #495057) !important;
        padding: 6px 12px;
        margin: 0 2px;
        border: 1px solid var(--default-border, #dee2e6) !important;
        border-radius: 4px;
        background: var(--custom-white, #fff) !important;
        cursor: pointer;
        transition: all 0.2s ease;
        font-size: 13px;
        min-width: 36px;
        text-align: center;
        display: inline-block;
    }

        #softwareTable_wrapper .dataTables_paginate .paginate_button:hover:not(.disabled) {
            background: var(--list-hover-focus-bg, #f8f9fa) !important;
            color: var(--primary-color, #845adf) !important;
            border-color: var(--primary-color, #845adf) !important;
            transform: translateY(-1px);
            box-shadow: 0 2px 4px rgba(132, 90, 223, 0.2);
        }

        #softwareTable_wrapper .dataTables_paginate .paginate_button.current {
            background: var(--primary-color, #845adf) !important;
            color: #ffffff !important;
            border-color: var(--primary-color, #845adf) !important;
            font-weight: 600;
            box-shadow: 0 2px 4px rgba(132, 90, 223, 0.3);
        }

            #softwareTable_wrapper .dataTables_paginate .paginate_button.current:hover {
                background: #6b47b3 !important;
                border-color: #6b47b3 !important;
                box-shadow: 0 2px 6px rgba(132, 90, 223, 0.4);
            }

        #softwareTable_wrapper .dataTables_paginate .paginate_button.disabled {
            opacity: 0.5;
            cursor: not-allowed;
            pointer-events: none;
        }

        #softwareTable_wrapper .dataTables_paginate .paginate_button:active:not(.disabled) {
            transform: translateY(0);
            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
        }

/* Software Table View Button - Theme Aware */
#softwareTable .btn-sm.btn-primary {
    background-color: var(--primary-color, #845adf) !important;
    border-color: var(--primary-color, #845adf) !important;
    color: #ffffff !important;
    padding: 6px 14px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 6px;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: none;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(132, 90, 223, 0.2);
}

    #softwareTable .btn-sm.btn-primary i {
        font-size: 14px;
    }

    #softwareTable .btn-sm.btn-primary:hover {
        background-color: #6b47b3 !important;
        border-color: #6b47b3 !important;
        color: #ffffff !important;
        transform: translateY(-1px);
        box-shadow: 0 2px 6px rgba(132, 90, 223, 0.4);
    }

    #softwareTable .btn-sm.btn-primary:active {
        transform: translateY(0);
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    }

    #softwareTable .btn-sm.btn-primary:focus {
        outline: none;
        box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25);
    }

/* Dark Theme - Software Table View Button */
[data-theme-mode=dark] #softwareTable .btn-sm.btn-primary {
    background-color: var(--primary-color, #845adf) !important;
    border-color: var(--primary-color, #845adf) !important;
    box-shadow: 0 1px 3px rgba(132, 90, 223, 0.3);
}

    [data-theme-mode=dark] #softwareTable .btn-sm.btn-primary:hover {
        background-color: #6b47b3 !important;
        border-color: #6b47b3 !important;
        box-shadow: 0 2px 6px rgba(132, 90, 223, 0.5);
    }

/* Authorized Badge in Software Table - Theme Aware */
#softwareTable .badge-success,
#softwareTable .badge-active {
    background-color: #10b981;
    color: #ffffff;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 500;
}

#softwareTable .badge-danger,
#softwareTable .badge-deactive {
    background-color: #ef4444;
    color: #ffffff;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 500;
}

[data-theme-mode=dark] #softwareTable .badge-success,
[data-theme-mode=dark] #softwareTable .badge-active {
    background-color: #059669;
    color: #ffffff;
}

[data-theme-mode=dark] #softwareTable .badge-danger,
[data-theme-mode=dark] #softwareTable .badge-deactive {
    background-color: #dc2626;
    color: #ffffff;
}

/* Dark Theme - Software Table */
[data-theme-mode=dark] #softwareTable tbody {
    background: var(--custom-white, #1a1a1a) !important;
}

    [data-theme-mode=dark] #softwareTable tbody tr {
        background: var(--custom-white, #1a1a1a) !important;
        border-bottom-color: var(--default-border, #2d2d2d) !important;
    }

        [data-theme-mode=dark] #softwareTable tbody tr:hover {
            background: var(--list-hover-focus-bg, #2d2d2d) !important;
        }

    [data-theme-mode=dark] #softwareTable tbody td {
        color: var(--default-text-color, #e0e0e0) !important;
        border-bottom-color: var(--default-border, #2d2d2d) !important;
    }

[data-theme-mode=dark] #softwareTable_wrapper .dataTables_filter label,
[data-theme-mode=dark] #softwareTable_wrapper .dataTables_length label,
[data-theme-mode=dark] #softwareTable_wrapper .dataTables_info {
    color: var(--default-text-color, #e0e0e0) !important;
}

[data-theme-mode=dark] #softwareTable_wrapper .dataTables_filter input,
[data-theme-mode=dark] #softwareTable_wrapper .dataTables_length select {
    background-color: var(--form-control-bg, #2d2d2d) !important;
    border-color: var(--input-border, #404040) !important;
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] #softwareTable_wrapper .dataTables_filter input:focus,
    [data-theme-mode=dark] #softwareTable_wrapper .dataTables_length select:focus {
        border-color: var(--primary-color, #845adf) !important;
        box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
    }

[data-theme-mode=dark] #softwareTable_wrapper .dataTables_paginate .paginate_button {
    background: var(--custom-white, #2d2d2d) !important;
    border-color: var(--default-border, #404040) !important;
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] #softwareTable_wrapper .dataTables_paginate .paginate_button:hover:not(.disabled) {
        background: var(--list-hover-focus-bg, #404040) !important;
        color: var(--primary-color, #845adf) !important;
        border-color: var(--primary-color, #845adf) !important;
        box-shadow: 0 2px 4px rgba(132, 90, 223, 0.3);
    }

    [data-theme-mode=dark] #softwareTable_wrapper .dataTables_paginate .paginate_button.current {
        background: var(--primary-color, #845adf) !important;
        color: #ffffff !important;
        box-shadow: 0 2px 4px rgba(132, 90, 223, 0.4);
    }

        [data-theme-mode=dark] #softwareTable_wrapper .dataTables_paginate .paginate_button.current:hover {
            background: #6b47b3 !important;
        }

/* Software Search Input - Theme Aware */
#searchSoftware {
    background-color: var(--form-control-bg, #fff) !important;
    border: 1px solid var(--input-border, #dee2e6) !important;
    color: var(--default-text-color, #495057) !important;
    transition: all 0.2s ease;
    height: 38px;
    font-size: 13px;
    padding: 6px 12px;
    border-radius: 6px;
}

    #searchSoftware:focus {
        border-color: var(--primary-color, #845adf) !important;
        box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
        outline: none;
    }

    #searchSoftware::placeholder {
        color: var(--text-muted, #6c757d) !important;
        opacity: 0.7;
    }

[data-theme-mode=dark] #searchSoftware {
    background-color: var(--form-control-bg, #2d2d2d) !important;
    border-color: var(--input-border, #404040) !important;
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] #searchSoftware:focus {
        border-color: var(--primary-color, #845adf) !important;
        box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
    }

    [data-theme-mode=dark] #searchSoftware::placeholder {
        color: var(--text-muted, #9ca3af) !important;
        opacity: 0.6;
    }

/* Software Section Header - Better Alignment */
#tabSoftware .agent-detail-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
}

    #tabSoftware .agent-detail-card-header .d-flex {
        display: flex;
        align-items: center;
        gap: 8px;
    }

/* Software Table Loading/Empty States - Theme Aware */
#softwareTable tbody td.text-center {
    color: var(--text-muted, #6c757d) !important;
    font-size: 14px;
    padding: 40px 20px !important;
    font-style: italic;
}

[data-theme-mode=dark] #softwareTable tbody td.text-center {
    color: var(--text-muted, #9ca3af) !important;
}

#softwareTable tbody td.text-center.color-gray-light {
    color: var(--text-muted, #6c757d) !important;
}

[data-theme-mode=dark] #softwareTable tbody td.text-center.color-gray-light {
    color: var(--text-muted, #9ca3af) !important;
}

/* ========== PRINTER DETAILS MODAL - THEME AWARE ========== */
/* Modal Overlay */
#printerDetailsModal .modal-backdrop {
    background-color: rgba(0, 0, 0, 0.5);
}

[data-theme-mode=dark] #printerDetailsModal .modal-backdrop {
    background-color: rgba(0, 0, 0, 0.7);
}

/* Modal Content */
#printerDetailsModal .modal-content {
    background-color: var(--custom-white, #fff) !important;
    color: var(--default-text-color, #495057) !important;
    border: 1px solid var(--default-border, #dee2e6) !important;
    border-radius: 8px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
    overflow: hidden;
}

/* Modal Dialog - Responsive */
#printerDetailsModal .modal-dialog {
    margin: 1.75rem auto;
    max-width: 900px;
}

@media (max-width: 768px) {
    #printerDetailsModal .modal-dialog {
        margin: 0.5rem;
        max-width: calc(100% - 1rem);
    }
}

/* Modal Header */
#printerDetailsModal .modal-header {
    background-color: var(--custom-white, #fff) !important;
    border-bottom: 1px solid var(--default-border, #dee2e6) !important;
    padding: 16px 20px;
    border-radius: 8px 8px 0 0;
}

#printerDetailsModal .modal-title {
    color: var(--default-text-color, #495057) !important;
    font-size: 18px;
    font-weight: 600;
}

    #printerDetailsModal .modal-title i {
        color: var(--primary-color, #845adf) !important;
    }

#printerDetailsModal .close {
    color: var(--default-text-color, #495057) !important;
    opacity: 0.7;
    font-size: 28px;
    font-weight: 300;
    line-height: 1;
    padding: 8px;
    margin: -8px -8px -8px auto;
    background: transparent;
    border: none;
    border-radius: 4px;
    transition: all 0.2s ease;
    cursor: pointer;
}

    #printerDetailsModal .close:hover {
        opacity: 1;
        background-color: var(--list-hover-focus-bg, #f8f9fa);
    }

#printerDetailsModal .modal-body {
    background-color: var(--custom-white, #fff) !important;
    color: var(--default-text-color, #495057) !important;
    padding: 20px;
}

    #printerDetailsModal .modal-body .form-group,
    #printerDetailsModal .modal-body .mb-3 {
        margin-bottom: 20px;
        padding-bottom: 16px;
        border-bottom: 1px solid var(--default-border, #f0f0f0);
    }

        #printerDetailsModal .modal-body .mb-3:last-child {
            border-bottom: none;
            margin-bottom: 0;
            padding-bottom: 0;
        }

    #printerDetailsModal .modal-body label {
        color: var(--text-muted, #6c757d) !important;
        font-weight: 600;
        font-size: 12px;
        margin-bottom: 8px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        display: block;
    }

    #printerDetailsModal .modal-body .text-muted {
        color: var(--text-muted, #6c757d) !important;
    }

    #printerDetailsModal .modal-body p,
    #printerDetailsModal .modal-body .mb-0 {
        color: var(--default-text-color, #495057) !important;
        font-size: 15px;
        margin-bottom: 0;
        font-weight: 500;
        line-height: 1.5;
        word-break: break-word;
    }

.printer-name-link {
    color: var(--primary-color, #845adf) !important;
    text-decoration: none;
    font-weight: 500;
    cursor: pointer;
}

    .printer-name-link:hover {
        text-decoration: underline;
        color: var(--primary-color-hover, #6d47c7) !important;
    }

[data-theme-mode=dark] #printerDetailsModal .modal-content {
    background-color: var(--custom-white, #1a1a1a) !important;
    border-color: var(--default-border, #2d2d2d) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

[data-theme-mode=dark] #printerDetailsModal .modal-header {
    background-color: var(--custom-white, #1a1a1a) !important;
    border-bottom-color: var(--default-border, #2d2d2d) !important;
}

[data-theme-mode=dark] #printerDetailsModal .modal-title {
    color: var(--default-text-color, #e0e0e0) !important;
}

[data-theme-mode=dark] #printerDetailsModal .close {
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] #printerDetailsModal .close:hover {
        color: var(--default-text-color, #ffffff) !important;
        background-color: var(--list-hover-focus-bg, #2d2d2d) !important;
    }

[data-theme-mode=dark] #printerDetailsModal .modal-body {
    background-color: var(--custom-white, #1a1a1a) !important;
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] #printerDetailsModal .modal-body .form-group,
    [data-theme-mode=dark] #printerDetailsModal .modal-body .mb-3 {
        border-bottom-color: var(--default-border, #2d2d2d);
    }

    [data-theme-mode=dark] #printerDetailsModal .modal-body label {
        color: var(--text-muted, #9ca3af) !important;
    }

    [data-theme-mode=dark] #printerDetailsModal .modal-body .text-muted {
        color: var(--text-muted, #9ca3af) !important;
    }

    [data-theme-mode=dark] #printerDetailsModal .modal-body p,
    [data-theme-mode=dark] #printerDetailsModal .modal-body .mb-0 {
        color: var(--default-text-color, #e0e0e0) !important;
    }

[data-theme-mode=dark] .printer-name-link {
    color: var(--primary-color, #845adf) !important;
}

/* Printer Details Modal - Enhanced UI Styling */
#printerDetailsModal .modal-dialog {
    max-width: 1000px;
}

#printerDetailsModal .modal-header {
    background: linear-gradient(135deg, var(--primary-color, #845adf) 0%, rgba(var(--primary-rgb), 0.9) 100%);
    color: #fff;
    border-bottom: none;
    padding: 20px 25px;
}

    #printerDetailsModal .modal-header .modal-title {
        color: #fff !important;
        font-size: 20px;
        font-weight: 700;
        display: flex;
        align-items: center;
        gap: 10px;
    }

        #printerDetailsModal .modal-header .modal-title i {
            color: #fff !important;
            font-size: 24px;
        }

    #printerDetailsModal .modal-header .close {
        color: #fff !important;
        opacity: 0.9;
        font-size: 28px;
        font-weight: 300;
        text-shadow: none;
    }

        #printerDetailsModal .modal-header .close:hover {
            opacity: 1;
            color: #fff !important;
            background-color: rgba(255, 255, 255, 0.2);
        }

#printerDetailsModal .modal-body {
    padding: 25px;
    background-color: var(--custom-white, #fff);
    max-height: calc(100vh - 200px);
    overflow-y: auto;
}

/* Section Headers */
#printerDetailsModal .section-header {
    color: var(--default-text-color, #495057) !important;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--primary-color, #845adf);
    display: flex;
    align-items: center;
    gap: 10px;
}

    #printerDetailsModal .section-header i {
        color: var(--primary-color, #845adf) !important;
        font-size: 18px;
    }

/* Info Cards */
#printerDetailsModal .info-card {
    background: var(--custom-white, #fff);
    border: 1px solid var(--default-border, #e3e3e3);
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 15px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

    #printerDetailsModal .info-card:hover {
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        transform: translateY(-2px);
    }

    #printerDetailsModal .info-card label {
        color: var(--text-muted, #6c757d) !important;
        font-size: 11px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        margin-bottom: 6px;
        display: block;
    }

    #printerDetailsModal .info-card .info-value {
        color: var(--default-text-color, #495057) !important;
        font-size: 14px;
        font-weight: 500;
        margin: 0;
        word-break: break-word;
    }

/* Badge Colors (Default text color) */
#printerDetailsModal .printer-badge-yes {
    background-color: rgba(var(--success-rgb), 0.1);
    color: var(--default-text-color, #495057) !important;
    border: 1px solid rgba(var(--success-rgb), 0.3);
    font-size: 12px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 20px;
}

#printerDetailsModal .printer-badge-no {
    background-color: rgba(var(--danger-rgb), 0.1);
    color: var(--default-text-color, #495057) !important;
    border: 1px solid rgba(var(--danger-rgb), 0.3);
    font-size: 12px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 20px;
}

#printerDetailsModal .printer-badge-stat {
    background: linear-gradient(135deg, var(--primary-color, #845adf) 0%, rgba(var(--primary-rgb), 0.8) 100%);
    color: #fff !important;
    font-size: 14px;
    font-weight: 700;
    padding: 8px 16px;
    border-radius: 25px;
    box-shadow: 0 2px 6px rgba(var(--primary-rgb), 0.3);
    min-width: 60px;
    text-align: center;
    display: inline-block;
}

#printerDetailsModal .printer-badge-feature {
    background-color: rgba(var(--info-rgb), 0.1);
    color: var(--default-text-color, #495057) !important;
    border: 1px solid rgba(var(--info-rgb), 0.3);
    font-size: 12px;
    font-weight: 500;
    padding: 6px 12px;
    border-radius: 15px;
    margin-right: 8px;
    margin-bottom: 5px;
    display: inline-block;
}

    #printerDetailsModal .printer-badge-feature i {
        margin-right: 4px;
        font-size: 11px;
    }

#printerDetailsModal .printer-badge-detail {
    background-color: rgba(var(--secondary-rgb), 0.1);
    color: var(--default-text-color, #495057) !important;
    border: 1px solid rgba(var(--secondary-rgb), 0.3);
    font-size: 12px;
    font-weight: 500;
    padding: 6px 12px;
    border-radius: 15px;
    display: inline-block;
}

#printerDetailsModal .printer-total-pages {
    font-size: 24px;
    font-weight: 700;
    color: var(--primary-color, #845adf) !important;
    background: linear-gradient(135deg, rgba(var(--primary-rgb), 0.1) 0%, rgba(var(--primary-rgb), 0.05) 100%);
    padding: 12px 20px;
    border-radius: 8px;
    border-left: 4px solid var(--primary-color, #845adf);
    display: inline-block;
}

/* Statistics Section */
#printerDetailsModal .stat-card {
    background: linear-gradient(135deg, rgba(var(--primary-rgb), 0.05) 0%, rgba(var(--primary-rgb), 0.02) 100%);
    border: 1px solid var(--default-border, #e3e3e3);
    border-radius: 10px;
    padding: 15px;
    text-align: center;
    transition: all 0.3s ease;
}

    #printerDetailsModal .stat-card:hover {
        transform: translateY(-3px);
        box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
    }

    #printerDetailsModal .stat-card label {
        color: var(--text-muted, #6c757d) !important;
        font-size: 11px;
        font-weight: 600;
        text-transform: uppercase;
        margin-bottom: 8px;
    }

/* Dark Mode Support */
[data-theme-mode=dark] #printerDetailsModal .modal-header {
    background: linear-gradient(135deg, var(--primary-color, #845adf) 0%, rgba(var(--primary-rgb), 0.8) 100%);
}

[data-theme-mode=dark] #printerDetailsModal .info-card {
    background: var(--custom-white, #1a1a1a);
    border-color: var(--default-border, #2d2d2d);
}

    [data-theme-mode=dark] #printerDetailsModal .info-card label {
        color: var(--text-muted, #9ca3af) !important;
    }

    [data-theme-mode=dark] #printerDetailsModal .info-card .info-value {
        color: var(--default-text-color, #e0e0e0) !important;
    }

[data-theme-mode=dark] #printerDetailsModal .section-header {
    color: var(--default-text-color, #e0e0e0) !important;
    border-bottom-color: var(--primary-color, #845adf);
}

[data-theme-mode=dark] #printerDetailsModal .printer-badge-yes,
[data-theme-mode=dark] #printerDetailsModal .printer-badge-no,
[data-theme-mode=dark] #printerDetailsModal .printer-badge-feature,
[data-theme-mode=dark] #printerDetailsModal .printer-badge-detail {
    color: var(--default-text-color, #e0e0e0) !important;
}

[data-theme-mode=dark] #printerDetailsModal .printer-total-pages {
    color: var(--primary-color, #845adf) !important;
    background: linear-gradient(135deg, rgba(var(--primary-rgb), 0.2) 0%, rgba(var(--primary-rgb), 0.1) 100%);
}

[data-theme-mode=dark] #printerDetailsModal .stat-card {
    background: linear-gradient(135deg, rgba(var(--primary-rgb), 0.1) 0%, rgba(var(--primary-rgb), 0.05) 100%);
    border-color: var(--default-border, #2d2d2d);
}

    [data-theme-mode=dark] #printerDetailsModal .stat-card label {
        color: var(--text-muted, #9ca3af) !important;
    }

/* ========== SOFTWARE DETAILS MODAL - THEME AWARE ========== */

/* Modal Overlay */
#softwareDetailsModal .modal-backdrop {
    background-color: rgba(0, 0, 0, 0.5);
}

[data-theme-mode=dark] #softwareDetailsModal .modal-backdrop {
    background-color: rgba(0, 0, 0, 0.7);
}

/* Modal Content */
#softwareDetailsModal .modal-content {
    background-color: var(--custom-white, #fff) !important;
    color: var(--default-text-color, #495057) !important;
    border: 1px solid var(--default-border, #dee2e6) !important;
    border-radius: 8px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
    overflow: hidden;
}

/* Modal Dialog - Responsive */
#softwareDetailsModal .modal-dialog {
    margin: 1.75rem auto;
    max-width: 800px;
}

@media (max-width: 768px) {
    #softwareDetailsModal .modal-dialog {
        margin: 0.5rem;
        max-width: calc(100% - 1rem);
    }
}

/* Modal Header */
#softwareDetailsModal .modal-header {
    background-color: var(--custom-white, #fff) !important;
    border-bottom: 1px solid var(--default-border, #dee2e6) !important;
    padding: 16px 20px;
    border-radius: 8px 8px 0 0;
}

#softwareDetailsModal .modal-title {
    color: var(--default-text-color, #495057) !important;
    font-size: 18px;
    font-weight: 600;
}

    #softwareDetailsModal .modal-title i {
        color: var(--primary-color, #845adf) !important;
    }

#softwareDetailsModal .close {
    color: var(--default-text-color, #495057) !important;
    opacity: 0.7;
    font-size: 28px;
    font-weight: 300;
    line-height: 1;
    padding: 8px;
    margin: -8px -8px -8px auto;
    background: transparent;
    border: none;
    border-radius: 4px;
    transition: all 0.2s ease;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
}

    #softwareDetailsModal .close:hover {
        opacity: 1;
        color: var(--default-text-color, #495057) !important;
        background-color: var(--list-hover-focus-bg, #f8f9fa) !important;
        transform: scale(1.1);
    }

    #softwareDetailsModal .close:active {
        transform: scale(0.95);
    }

/* Modal Body */
#softwareDetailsModal .modal-body {
    background-color: var(--custom-white, #fff) !important;
    color: var(--default-text-color, #495057) !important;
    padding: 20px;
}

    #softwareDetailsModal .modal-body .form-group,
    #softwareDetailsModal .modal-body .mb-3 {
        margin-bottom: 20px;
        padding-bottom: 16px;
        border-bottom: 1px solid var(--default-border, #f0f0f0);
    }

        #softwareDetailsModal .modal-body .mb-3:last-child {
            border-bottom: none;
            margin-bottom: 0;
            padding-bottom: 0;
        }

    #softwareDetailsModal .modal-body label {
        color: var(--text-muted, #6c757d) !important;
        font-weight: 600;
        font-size: 12px;
        margin-bottom: 8px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        display: block;
    }

    #softwareDetailsModal .modal-body .text-muted {
        color: var(--text-muted, #6c757d) !important;
    }

    #softwareDetailsModal .modal-body p,
    #softwareDetailsModal .modal-body #modalSoftwareName,
    #softwareDetailsModal .modal-body #modalVersion,
    #softwareDetailsModal .modal-body #modalPublisher,
    #softwareDetailsModal .modal-body #modalInstallDate,
    #softwareDetailsModal .modal-body #modalInstallLocation,
    #softwareDetailsModal .modal-body #modalSize,
    #softwareDetailsModal .modal-body #modalEndOfSupportDate,
    #softwareDetailsModal .modal-body #modalIsAuthorized {
        color: var(--default-text-color, #495057) !important;
        font-size: 15px;
        margin-bottom: 0;
        font-weight: 500;
        line-height: 1.5;
        word-break: break-word;
    }

/* Modal Footer */
#softwareDetailsModal .modal-footer {
    background-color: var(--custom-white, #fff) !important;
    border-top: 1px solid var(--default-border, #dee2e6) !important;
    padding: 16px 20px;
    border-radius: 0 0 8px 8px;
}

/* Modal Close Button */
#softwareDetailsModal .btn-secondary {
    background-color: #6c757d !important;
    border-color: #6c757d !important;
    color: #ffffff !important;
    padding: 10px 24px;
    border-radius: 6px;
    font-weight: 500;
    font-size: 14px;
    transition: all 0.2s ease;
    border: none;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

    #softwareDetailsModal .btn-secondary:hover {
        background-color: #5a6268 !important;
        border-color: #5a6268 !important;
        color: #ffffff !important;
        transform: translateY(-1px);
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
    }

    #softwareDetailsModal .btn-secondary:active {
        transform: translateY(0);
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
    }

    #softwareDetailsModal .btn-secondary:focus {
        outline: none;
        box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.25);
    }

/* Dark Theme - Modal Close Button */
[data-theme-mode=dark] #softwareDetailsModal .btn-secondary {
    background-color: #5a6268 !important;
    border-color: #5a6268 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

    [data-theme-mode=dark] #softwareDetailsModal .btn-secondary:hover {
        background-color: #495057 !important;
        border-color: #495057 !important;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
    }

/* Dark Theme - Modal */
[data-theme-mode=dark] #softwareDetailsModal .modal-content {
    background-color: var(--custom-white, #1a1a1a) !important;
    border-color: var(--default-border, #2d2d2d) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

[data-theme-mode=dark] #softwareDetailsModal .modal-header {
    background-color: var(--custom-white, #1a1a1a) !important;
    border-bottom-color: var(--default-border, #2d2d2d) !important;
}

[data-theme-mode=dark] #softwareDetailsModal .modal-title {
    color: var(--default-text-color, #e0e0e0) !important;
}

[data-theme-mode=dark] #softwareDetailsModal .close {
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] #softwareDetailsModal .close:hover {
        color: var(--default-text-color, #ffffff) !important;
        background-color: var(--list-hover-focus-bg, #2d2d2d) !important;
    }

[data-theme-mode=dark] #softwareDetailsModal .modal-body {
    background-color: var(--custom-white, #1a1a1a) !important;
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] #softwareDetailsModal .modal-body .form-group,
    [data-theme-mode=dark] #softwareDetailsModal .modal-body .mb-3 {
        border-bottom-color: var(--default-border, #2d2d2d);
    }

    [data-theme-mode=dark] #softwareDetailsModal .modal-body label {
        color: var(--text-muted, #9ca3af) !important;
    }

    [data-theme-mode=dark] #softwareDetailsModal .modal-body .text-muted {
        color: var(--text-muted, #9ca3af) !important;
    }

    [data-theme-mode=dark] #softwareDetailsModal .modal-body p,
    [data-theme-mode=dark] #softwareDetailsModal .modal-body #modalSoftwareName,
    [data-theme-mode=dark] #softwareDetailsModal .modal-body #modalVersion,
    [data-theme-mode=dark] #softwareDetailsModal .modal-body #modalPublisher,
    [data-theme-mode=dark] #softwareDetailsModal .modal-body #modalInstallDate,
    [data-theme-mode=dark] #softwareDetailsModal .modal-body #modalInstallLocation,
    [data-theme-mode=dark] #softwareDetailsModal .modal-body #modalSize,
    [data-theme-mode=dark] #softwareDetailsModal .modal-body #modalEndOfSupportDate,
    [data-theme-mode=dark] #softwareDetailsModal .modal-body #modalIsAuthorized {
        color: var(--default-text-color, #e0e0e0) !important;
    }

[data-theme-mode=dark] #softwareDetailsModal .modal-footer {
    background-color: var(--custom-white, #1a1a1a) !important;
    border-top-color: var(--default-border, #2d2d2d) !important;
}

/* Fixed Table Layout for all DataTables */
#windowsPoliciesTable,
#softwareTable,
#domainUsersDataTable,
#securityEventsDataTable,
#applicationEventsDataTable,
#monitorsDataTable,
#usbDevicesDataTable,
#printersDataTable,
#startupProgramsDataTable,
#scheduledTasksDataTable,
#physicalDisksDataTable,
#networkSharesDataTable,
#mappedDrivesDataTable,
#listeningPortsDataTable,
#localGroupsDataTable,
#frameworksDataTable,
#servicesDataTable {
    table-layout: fixed;
    width: 100%;
}

    #windowsPoliciesTable th,
    #windowsPoliciesTable td,
    #softwareTable th,
    #softwareTable td,
    #domainUsersDataTable th,
    #domainUsersDataTable td,
    #securityEventsDataTable th,
    #securityEventsDataTable td,
    #applicationEventsDataTable th,
    #applicationEventsDataTable td,
    #monitorsDataTable th,
    #monitorsDataTable td,
    #usbDevicesDataTable th,
    #usbDevicesDataTable td,
    #printersDataTable th,
    #printersDataTable td,
    #startupProgramsDataTable th,
    #startupProgramsDataTable td,
    #scheduledTasksDataTable th,
    #scheduledTasksDataTable td,
    #physicalDisksDataTable th,
    #physicalDisksDataTable td,
    #networkSharesDataTable th,
    #networkSharesDataTable td,
    #mappedDrivesDataTable th,
    #mappedDrivesDataTable td,
    #listeningPortsDataTable th,
    #listeningPortsDataTable td,
    #localGroupsDataTable th,
    #localGroupsDataTable td,
    #frameworksDataTable th,
    #frameworksDataTable td,
    #servicesDataTable th,
    #servicesDataTable td {
        word-wrap: break-word;
        word-break: break-word;
        white-space: normal;
        overflow-wrap: break-word;
    }
        /* Keep Actions column buttons in one line */
        #servicesDataTable td:last-child {
            white-space: nowrap;
        }

        #windowsPoliciesTable th:first-child,
        #windowsPoliciesTable td:first-child {
            width: 50%;
        }

        #windowsPoliciesTable th:last-child,
        #windowsPoliciesTable td:last-child {
            width: 50%;
        }

/* Extended Tab Cards */
#tabPeripherals .card-body,
#tabServices .card-body,
#tabPerformance .card-body,
#tabNetwork .card-body,
#tabSecurity .card-body {
    overflow-x: hidden;
}

/* DataTables Pagination */
.dataTables_wrapper .dataTables_paginate {
    text-align: right;
    margin-top: 10px;
}

/* ========== BUTTON STYLING - COMPLETE THEME AWARE ========== */

/* Action Buttons - Common Style */
.btn-action {
    border: none;
    padding: 8px 16px;
    border-radius: 6px;
    font-weight: 500;
    font-size: 13px;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    text-decoration: none;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

    .btn-action i {
        font-size: 14px;
    }

    .btn-action:active {
        transform: translateY(1px);
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    }

/* Back to List Button - Primary Color */
.btn-back-list {
    background-color: var(--primary-color, #845adf);
    color: #ffffff;
}

    .btn-back-list:hover {
        background-color: #6b47b3;
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(132, 90, 223, 0.3);
    }

    .btn-back-list:active {
        background-color: #5a3a9a;
    }

/* Rename Button - Primary Color */
.btn-rename {
    background-color: var(--primary-color, #845adf);
    color: #ffffff;
}

    .btn-rename:hover {
        background-color: #6b47b3;
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(132, 90, 223, 0.3);
    }

    .btn-rename:active {
        background-color: #5a3a9a;
    }

/* Uninstall Button - Danger Color */
.btn-uninstall {
    background-color: #dc3545;
    color: #ffffff;
}

    .btn-uninstall:hover {
        background-color: #c82333;
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(220, 53, 69, 0.3);
    }

    .btn-uninstall:active {
        background-color: #bd2130;
    }

/* Refresh Button - Primary Color - Extra Small size */
.btn-refresh {
    background-color: var(--primary-color, #845adf);
    color: #ffffff;
    padding: 4px 10px;
    font-size: 11px;
    gap: 4px;
    border-radius: 4px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

    .btn-refresh i {
        font-size: 11px;
    }

    .btn-refresh:hover {
        background-color: #6b47b3;
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(132, 90, 223, 0.3);
    }

    .btn-refresh:active {
        background-color: #5a3a9a;
    }

    .btn-refresh:disabled {
        opacity: 0.6;
        cursor: not-allowed;
        background-color: #9ca3af;
    }

        .btn-refresh:disabled:hover {
            background-color: #9ca3af;
            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
        }

    .btn-refresh .spin-animation {
        animation: spin 1s linear infinite;
    }


/* Card Header Search - Theme Aware */
.card-header-search {
    min-width: 150px;
    max-width: 250px;
    background-color: var(--form-control-bg, #fff) !important;
    border: 1px solid var(--input-border, #dee2e6) !important;
    color: var(--default-text-color, #495057) !important;
    transition: all 0.2s ease;
}

    .card-header-search:focus {
        border-color: var(--primary-color, #845adf) !important;
        box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
        outline: none;
    }

[data-theme-mode=dark] .card-header-search {
    background-color: var(--form-control-bg, #2d2d2d) !important;
    border-color: var(--input-border, #404040) !important;
    color: var(--default-text-color, #e0e0e0) !important;
}

    [data-theme-mode=dark] .card-header-search:focus {
        border-color: var(--primary-color, #845adf) !important;
        box-shadow: 0 0 0 0.2rem rgba(132, 90, 223, 0.25) !important;
    }

/* ========== RESPONSIVE STYLES ========== */

/* Large screens and up - default desktop view */
@media (min-width: 1200px) {
    .filters-status-row {
        flex-wrap: nowrap;
    }
}

/* Tablet and below */
@media (max-width: 992px) {
    .filters-status-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .filters-section {
        width: 100%;
        margin-bottom: 10px;
    }

    .status-badges-section {
        width: 100%;
        justify-content: flex-start;
    }

    .agent-search-input {
        width: 100%;
        max-width: 100%;
    }

    .agent-os-select {
        width: 100%;
        max-width: 100%;
    }

    /* Agent Detail - Stack cards */
    #tabOverview .col-md-6,
    #tabHardware .col-md-6,
    #tabPolicies .col-md-6,
    #tabEvents .col-md-6 {
        margin-bottom: 15px;
    }

    /* Events tabs - full width on tablet */
    #tabEvents .col-md-6 {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .agent-page-title {
        font-size: 18px;
    }

    .agent-icon-box {
        width: 32px;
        height: 32px;
    }

        .agent-icon-box i {
            font-size: 16px !important;
        }

    .filters-section {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

        .filters-section > * {
            width: 100%;
        }

    .agent-filter-select {
        width: 100%;
    }

    .status-badges-list {
        flex-wrap: wrap;
        gap: 6px;
    }

    .status-badge-item {
        padding: 6px 12px;
        font-size: 12px;
    }

    /* Card header responsive */
    .card-header.d-flex {
        flex-direction: column;
        align-items: flex-start !important;
        gap: 10px;
    }

    .card-header .form-control,
    .card-header .w-150,
    .card-header .w-200,
    .card-header .w-250 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 1 1 100% !important;
    }

    /* Agent detail header */
    #agentDetailSection .agent-page-header {
        flex-direction: column;
        align-items: flex-start !important;
    }

    #agentDetailSection .d-flex.gap-2 {
        flex-wrap: wrap;
        width: 100%;
    }

    #agentDetailSection .btn {
        flex: 1;
        min-width: 100px;
    }

    /* Tabs responsive */
    .nav-tabs-custom {
        flex-wrap: wrap;
        gap: 2px;
    }

        .nav-tabs-custom .nav-item {
            flex: 1 1 auto;
            min-width: 70px;
        }

        .nav-tabs-custom .nav-link {
            padding: 8px 8px;
            font-size: 11px;
            text-align: center;
        }

            .nav-tabs-custom .nav-link i {
                display: none;
            }

    /* Table cells */
    .table td, .table th {
        font-size: 12px;
        padding: 8px 6px;
    }
}

/* Small Mobile */
@media (max-width: 576px) {
    .agent-page-header {
        flex-direction: column;
        align-items: flex-start !important;
        gap: 10px;
    }

    .status-badge-item {
        padding: 5px 8px;
        font-size: 11px;
    }

        .status-badge-item .badge {
            padding: 2px 6px;
            font-size: 10px;
        }

        .status-badge-item b {
            display: none;
        }

    /* Very small screens - show only count */
    .nav-tabs-custom .nav-link {
        padding: 6px 4px;
        font-size: 10px;
    }
}

/* ========== NEW STYLES FOR EXTENDED TABS ========== */

/* Performance Metrics - Theme Aware */
.performance-metric {
    padding: 20px 15px;
    background: var(--custom-white, #ffffff);
    border: 1px solid var(--default-border, #e9ecef);
    border-radius: 12px;
    margin-bottom: 10px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    position: relative;
    overflow: hidden;
}

    .performance-metric::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 4px;
        background: linear-gradient(90deg, var(--primary-color, #845adf), rgba(132, 90, 223, 0.5));
        border-radius: 12px 12px 0 0;
    }

    .performance-metric:hover {
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
        border-color: var(--primary-color, #845adf);
    }

    .performance-metric .metric-value {
        font-size: 32px;
        font-weight: 700;
        color: var(--primary-color, #845adf);
        margin-bottom: 8px;
        line-height: 1.2;
        text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    }

    .performance-metric .metric-label {
        font-size: 12px;
        color: var(--text-muted, #6c757d);
        text-transform: uppercase;
        letter-spacing: 0.8px;
        font-weight: 600;
        margin-top: 4px;
    }

/* Dark Theme - Performance Metrics */
[data-theme-mode=dark] .performance-metric {
    background: var(--custom-white, #1e1e1e);
    border-color: var(--default-border, #2d2d2d);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

    [data-theme-mode=dark] .performance-metric::before {
        background: linear-gradient(90deg, var(--primary-color, #845adf), rgba(132, 90, 223, 0.7));
    }

    [data-theme-mode=dark] .performance-metric:hover {
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
        border-color: var(--primary-color, #845adf);
        background: var(--custom-white, #252525);
    }

    [data-theme-mode=dark] .performance-metric .metric-value {
        color: var(--primary-color, #845adf);
        text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
    }

    [data-theme-mode=dark] .performance-metric .metric-label {
        color: var(--text-muted, #9ca3af);
    }

/* Performance Section - Card Body Styling */
#tabPerformance .agent-detail-card-body {
    padding: 20px !important;
}

#tabPerformance .row:has(.performance-metric) {
    margin-left: -8px;
    margin-right: -8px;
}

    #tabPerformance .row:has(.performance-metric) > [class*="col"] {
        padding-left: 8px;
        padding-right: 8px;
    }

/* Performance Section - Last Updated Text */
#tabPerformance #perfCollectedAt {
    color: var(--text-muted, #6c757d) !important;
    font-size: 12px;
    font-weight: 500;
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid var(--default-border, #e9ecef);
}

[data-theme-mode=dark] #tabPerformance #perfCollectedAt {
    color: var(--text-muted, #9ca3af) !important;
    border-top-color: var(--default-border, #2d2d2d);
}

/* Performance Metrics - Responsive */
@media (max-width: 768px) {
    .performance-metric {
        padding: 16px 12px;
        margin-bottom: 12px;
    }

        .performance-metric .metric-value {
            font-size: 24px;
        }

        .performance-metric .metric-label {
            font-size: 11px;
        }
}

/* Status Indicators */
.status-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.status-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

    .status-dot.green {
        background-color: #28a745;
    }

    .status-dot.red {
        background-color: #dc3545;
    }

    .status-dot.yellow {
        background-color: #ffc107;
    }

    .status-dot.blue {
        background-color: #007bff;
    }

/* Security Badge Styles */
.security-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 500;
}

    .security-badge.secure {
        background-color: #d4edda;
        color: #155724;
    }

    .security-badge.warning {
        background-color: #fff3cd;
        color: #856404;
    }

    .security-badge.danger {
        background-color: #f8d7da;
        color: #721c24;
    }

    .security-badge i {
        margin-right: 5px;
    }

/* Battery Status */
.battery-status {
    display: flex;
    align-items: center;
    gap: 15px;
}

.battery-icon {
    font-size: 48px;
}

    .battery-icon.charging {
        color: #28a745;
    }

    .battery-icon.low {
        color: #dc3545;
    }

    .battery-icon.normal {
        color: #17a2b8;
    }

.battery-details {
    flex: 1;
}

.battery-percent {
    font-size: 24px;
    font-weight: 700;
}

.battery-health {
    font-size: 12px;
    color: #6c757d;
}

/* Progress Bar for Health */
.health-progress {
    height: 6px;
    border-radius: 3px;
    background-color: #e9ecef;
    overflow: hidden;
}

    .health-progress .progress-bar {
        height: 100%;
        border-radius: 3px;
    }

        .health-progress .progress-bar.good {
            background-color: #28a745;
        }

        .health-progress .progress-bar.warning {
            background-color: #ffc107;
        }

        .health-progress .progress-bar.critical {
            background-color: #dc3545;
        }

/* Extended Info Table Styles */
.extended-info-table td:first-child {
    width: 40%;
    color: #6c757d;
    font-weight: 500;
}

.extended-info-table td:last-child {
    font-weight: 600;
}

/* Security Tab DataTable Styles */
#localGroupsDataTable,
#frameworksDataTable {
    table-layout: fixed;
    width: 100%;
}

    #localGroupsDataTable th,
    #localGroupsDataTable td,
    #frameworksDataTable th,
    #frameworksDataTable td {
        word-wrap: break-word;
        word-break: break-word;
        white-space: normal;
        overflow-wrap: break-word;
    }

        #localGroupsDataTable th:first-child,
        #localGroupsDataTable td:first-child {
            width: 30%;
        }

        #localGroupsDataTable th:nth-child(2),
        #localGroupsDataTable td:nth-child(2) {
            width: 40%;
        }

        #localGroupsDataTable th:last-child,
        #localGroupsDataTable td:last-child {
            width: 30%;
        }

/* Spin Animation for Loading */
@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.spin-animation {
    animation: spin 1s linear infinite;
    display: inline-block;
}

/* Agent Management - Badge Colors (Default text color instead of white) */
/* Security Tab - Events */
#tabEvents .badge-active,
#tabEvents .badge-deactive,
#tabEvents .badge-success,
#tabEvents .badge-danger,
#tabEvents .badge-warning,
#tabEvents .badge-secondary,
#tabEvents .badge-close {
    color: var(--default-text-color, #495057) !important;
}

#securityEventsDataTable .badge-active,
#securityEventsDataTable .badge-deactive,
#securityEventsDataTable .badge-success,
#securityEventsDataTable .badge-danger,
#securityEventsDataTable .badge-warning,
#securityEventsDataTable .badge-secondary,
#securityEventsDataTable .badge-close {
    color: var(--default-text-color, #495057) !important;
}

#applicationEventsDataTable .badge-active,
#applicationEventsDataTable .badge-deactive,
#applicationEventsDataTable .badge-success,
#applicationEventsDataTable .badge-danger,
#applicationEventsDataTable .badge-warning,
#applicationEventsDataTable .badge-secondary,
#applicationEventsDataTable .badge-close {
    color: var(--default-text-color, #495057) !important;
}

/* Security Tab - Posture, Antivirus, Firewall */
#tabSecurity .badge-active,
#tabSecurity .badge-deactive,
#tabSecurity .badge-success,
#tabSecurity .badge-danger,
#tabSecurity .badge-warning,
#tabSecurity .badge-secondary,
#tabSecurity .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

#securityPostureTable .badge-active,
#securityPostureTable .badge-deactive,
#securityPostureTable .badge-success,
#securityPostureTable .badge-danger,
#securityPostureTable .badge-warning,
#securityPostureTable .badge-secondary,
#securityPostureTable .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

#extendedAntivirusTable .badge-active,
#extendedAntivirusTable .badge-deactive,
#extendedAntivirusTable .badge-success,
#extendedAntivirusTable .badge-danger,
#extendedAntivirusTable .badge-warning,
#extendedAntivirusTable .badge-secondary,
#extendedAntivirusTable .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

#extendedFirewallTable .badge-active,
#extendedFirewallTable .badge-deactive,
#extendedFirewallTable .badge-success,
#extendedFirewallTable .badge-danger,
#extendedFirewallTable .badge-warning,
#extendedFirewallTable .badge-secondary,
#extendedFirewallTable .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

/* Users Tab */
#localUsersDataTable .badge-active,
#localUsersDataTable .badge-deactive,
#localUsersDataTable .badge-success,
#localUsersDataTable .badge-danger,
#localUsersDataTable .badge-warning,
#localUsersDataTable .badge-secondary,
#localUsersDataTable .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

#myUsersDataTable .badge-active,
#myUsersDataTable .badge-deactive,
#myUsersDataTable .badge-success,
#myUsersDataTable .badge-danger,
#myUsersDataTable .badge-warning,
#myUsersDataTable .badge-secondary,
#myUsersDataTable .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

/* Services Tab */
#servicesDataTable .badge-active,
#servicesDataTable .badge-deactive,
#servicesDataTable .badge-success,
#servicesDataTable .badge-danger,
#servicesDataTable .badge-warning,
#servicesDataTable .badge-secondary,
#servicesDataTable .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

#startupProgramsDataTable .badge-active,
#startupProgramsDataTable .badge-deactive,
#startupProgramsDataTable .badge-success,
#startupProgramsDataTable .badge-danger,
#startupProgramsDataTable .badge-warning,
#startupProgramsDataTable .badge-secondary,
#startupProgramsDataTable .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

#scheduledTasksDataTable .badge-active,
#scheduledTasksDataTable .badge-deactive,
#scheduledTasksDataTable .badge-success,
#scheduledTasksDataTable .badge-danger,
#scheduledTasksDataTable .badge-warning,
#scheduledTasksDataTable .badge-secondary,
#scheduledTasksDataTable .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

/* Network Tab */
#extendedNetworkTable .badge-active,
#extendedNetworkTable .badge-deactive,
#extendedNetworkTable .badge-success,
#extendedNetworkTable .badge-danger,
#extendedNetworkTable .badge-warning,
#extendedNetworkTable .badge-secondary,
#extendedNetworkTable .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

#mappedDrivesDataTable .badge-active,
#mappedDrivesDataTable .badge-deactive,
#mappedDrivesDataTable .badge-success,
#mappedDrivesDataTable .badge-danger,
#mappedDrivesDataTable .badge-warning,
#mappedDrivesDataTable .badge-secondary,
#mappedDrivesDataTable .badge-close {
    color: var(--default-text-color, #495057) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

/* Screen Captures View Options */
.view-option-btn {
    border: 1px solid var(--default-border, #e0e0e0) !important;
    color: var(--default-text-color, #495057) !important;
    transition: all 0.2s ease;
}

    .view-option-btn:hover {
        background-color: var(--primary01, rgba(132, 90, 223, 0.1)) !important;
        border-color: var(--primary-color, #845adf) !important;
        color: var(--primary-color, #845adf) !important;
    }

    .view-option-btn.active {
        background-color: var(--primary-color, #845adf) !important;
        border-color: var(--primary-color, #845adf) !important;
        color: #fff !important;
    }

/* Hour Group Cards */
.hour-group-card {
    border: 1px solid var(--default-border, #e0e0e0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.hour-group-header {
    background-color: var(--primary01, rgba(132, 90, 223, 0.1)) !important;
    border-bottom: 2px solid var(--primary-color, #845adf) !important;
    transition: background-color 0.2s ease;
}

    .hour-group-header:hover {
        background-color: var(--primary02, rgba(132, 90, 223, 0.2)) !important;
    }

.hour-group-time {
    color: var(--default-text-color, #495057) !important;
}

.hour-group-header .hour-group-icon {
    color: var(--primary-color, #845adf) !important;
}

/* Screen Lock Log Type Badge */
#screenLockLogTableBody .screen-lock-type-badge {
    color: var(--default-text-color, #495057) !important;
}

.hour-group-icon {
    transition: transform 0.3s ease;
}

/* List View Styles */
.list-view {
    padding: 10px 0;
}

    .list-view > div:hover {
        background-color: var(--list-hover-focus-bg, #f5f6f7);
        border-radius: 4px;
    }

/* Details View Table */
#screenCapturesContainer .table tbody tr:hover {
    background-color: var(--list-hover-focus-bg, #f5f6f7);
    cursor: pointer;
}

/* Screen Captures - Badge and Text Colors */
#screenCapturesContainer .badge,
#screenCapturesContainer .badge-active,
#screenCapturesContainer .badge-deactive,
#screenCapturesContainer .badge-info,
#screenCapturesContainer .badge-secondary,
#screenCapturesContainer .badge-success {
    color: var(--default-text-color, #495057) !important;
    background-color: transparent !important;
    border: 1px solid var(--default-border, #e0e0e0) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

#screenCapturesContainer small.text-muted {
    color: var(--default-text-color, #495057) !important;
}

#screenCapturesContainer .text-muted {
    color: var(--default-text-color, #495057) !important;
}

/* Dark mode adjustments */
[data-theme-mode=dark] .hour-group-card {
    border-color: var(--default-border, #2d2d2d);
    background-color: var(--custom-white, #1a1a1a);
}

[data-theme-mode=dark] .list-view > div:hover {
    background-color: var(--list-hover-focus-bg, #2d2d2d);
}

[data-theme-mode=dark] #screenCapturesContainer .table tbody tr:hover {
    background-color: var(--list-hover-focus-bg, #2d2d2d);
}

[data-theme-mode=dark] #screenCapturesContainer .badge,
[data-theme-mode=dark] #screenCapturesContainer .badge-active,
[data-theme-mode=dark] #screenCapturesContainer .badge-deactive,
[data-theme-mode=dark] #screenCapturesContainer .badge-info,
[data-theme-mode=dark] #screenCapturesContainer .badge-secondary,
[data-theme-mode=dark] #screenCapturesContainer .badge-success {
    color: var(--default-text-color, #e0e0e0) !important;
    border-color: var(--default-border, #2d2d2d) !important;
}

[data-theme-mode=dark] #screenCapturesContainer small.text-muted,
[data-theme-mode=dark] #screenCapturesContainer .text-muted {
    color: var(--default-text-color, #e0e0e0) !important;
}

/* Peripherals Tab - Monitors/Displays Primary Column */
#monitorsDataTable .badge,
#monitorsDataTable .badge-active,
#monitorsDataTable .badge-deactive {
    color: var(--default-text-color, #495057) !important;
    background-color: transparent !important;
    border: 1px solid var(--default-border, #e0e0e0) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

/* Peripherals Tab - Printers Default Column */
#printersDataTable .badge,
#printersDataTable .badge-active,
#printersDataTable .badge-deactive {
    color: var(--default-text-color, #495057) !important;
    background-color: transparent !important;
    border: 1px solid var(--default-border, #e0e0e0) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

/* Dark mode adjustments for Peripherals */
[data-theme-mode=dark] #monitorsDataTable .badge,
[data-theme-mode=dark] #monitorsDataTable .badge-active,
[data-theme-mode=dark] #monitorsDataTable .badge-deactive,
[data-theme-mode=dark] #printersDataTable .badge,
[data-theme-mode=dark] #printersDataTable .badge-active,
[data-theme-mode=dark] #printersDataTable .badge-deactive {
    color: var(--default-text-color, #e0e0e0) !important;
    border-color: var(--default-border, #2d2d2d) !important;
}

/* Hardware Tab - Storage Details Health and Encrypted Columns */
#storageInfoTable .badge,
#storageInfoTable .badge-active,
#storageInfoTable .badge-deactive,
#storageInfoTable .badge-warning,
#storageInfoTable .badge-secondary {
    color: var(--default-text-color, #495057) !important;
    background-color: transparent !important;
    border: 1px solid var(--default-border, #e0e0e0) !important;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 12px;
}

/* Dark mode adjustments for Storage Details */
[data-theme-mode=dark] #storageInfoTable .badge,
[data-theme-mode=dark] #storageInfoTable .badge-active,
[data-theme-mode=dark] #storageInfoTable .badge-deactive,
[data-theme-mode=dark] #storageInfoTable .badge-warning,
[data-theme-mode=dark] #storageInfoTable .badge-secondary {
    color: var(--default-text-color, #e0e0e0) !important;
    border-color: var(--default-border, #2d2d2d) !important;
}

/* User Policy Action Buttons - Enhanced UI with Button-like Appearance */
.btn-password-policy,
.btn-session-policy {
    min-width: 110px;
    padding: 0.6rem 1.2rem;
    font-weight: 600;
    font-size: 0.875rem;
    border-radius: 8px;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border: none;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-decoration: none;
    user-select: none;
}

.btn-password-policy {
    color: #fff;
    background: linear-gradient(135deg, #6f42c1 0%, #8b5cf6 100%);
    box-shadow: 0 3px 8px rgba(111, 66, 193, 0.25);
}

    .btn-password-policy:hover {
        background: linear-gradient(135deg, #5a2d91 0%, #7c3aed 100%);
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(111, 66, 193, 0.4);
    }

    .btn-password-policy:active {
        transform: translateY(0);
        box-shadow: 0 2px 5px rgba(111, 66, 193, 0.3);
    }

    .btn-password-policy:focus {
        outline: 2px solid rgba(111, 66, 193, 0.5);
        outline-offset: 2px;
    }

    .btn-password-policy i {
        font-size: 1.1rem;
    }

.btn-session-policy {
    color: #fff;
    background: linear-gradient(135deg, #0dcaf0 0%, #0aa2c0 100%);
    box-shadow: 0 3px 8px rgba(13, 202, 240, 0.25);
}

    .btn-session-policy:hover {
        background: linear-gradient(135deg, #0aa2c0 0%, #0891b2 100%);
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(13, 202, 240, 0.4);
    }

    .btn-session-policy:active {
        transform: translateY(0);
        box-shadow: 0 2px 5px rgba(13, 202, 240, 0.3);
    }

    .btn-session-policy:focus {
        outline: 2px solid rgba(13, 202, 240, 0.5);
        outline-offset: 2px;
    }

    .btn-session-policy i {
        font-size: 1.1rem;
    }

/* Dark mode adjustments for policy buttons */
[data-theme-mode=dark] .btn-password-policy {
    background: linear-gradient(135deg, #7c3aed 0%, #9333ea 100%);
    box-shadow: 0 3px 8px rgba(124, 58, 237, 0.3);
}

    [data-theme-mode=dark] .btn-password-policy:hover {
        background: linear-gradient(135deg, #6d28d9 0%, #7c3aed 100%);
        box-shadow: 0 5px 15px rgba(124, 58, 237, 0.5);
    }

[data-theme-mode=dark] .btn-session-policy {
    background: linear-gradient(135deg, #06b6d4 0%, #0891b2 100%);
    box-shadow: 0 3px 8px rgba(6, 182, 212, 0.3);
}

    [data-theme-mode=dark] .btn-session-policy:hover {
        background: linear-gradient(135deg, #0891b2 0%, #0e7490 100%);
        box-shadow: 0 5px 15px rgba(6, 182, 212, 0.5);
    }

/* Disabled state */
.btn-password-policy:disabled,
.btn-session-policy:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none !important;
}

/* Responsive adjustments for smaller screens */
@media (max-width: 768px) {
    .btn-password-policy,
    .btn-session-policy {
        min-width: 45px;
        padding: 0.5rem;
        font-size: 0.8rem;
    }

        .btn-password-policy span,
        .btn-session-policy span {
            display: none;
        }

        .btn-password-policy i,
        .btn-session-policy i {
            margin: 0;
            font-size: 1.2rem;
        }
}

/* Collapse/Expand Header Styling - Matching Screen Captures Design */
.collapse-header-clickable {
    background-color: var(--primary01, rgba(132, 90, 223, 0.1)) !important;
    border-bottom: 2px solid var(--primary-color, #845adf) !important;
    transition: background-color 0.2s ease;
    padding: 0.75rem 1rem;
}

    .collapse-header-clickable:hover {
        background-color: var(--primary02, rgba(132, 90, 223, 0.2)) !important;
    }

    .collapse-header-clickable .hour-group-icon {
        color: var(--primary-color, #845adf) !important;
        transition: transform 0.3s ease;
    }

    .collapse-header-clickable h6 {
        color: var(--default-text-color, #495057) !important;
    }

/* Smooth collapse animation */
.collapse {
    transition: height 0.35s ease;
}

    .collapse.show {
        display: block;
    }

/* Dark mode adjustments for collapse headers */
[data-theme-mode=dark] .collapse-header-clickable {
    background-color: rgba(132, 90, 223, 0.15) !important;
}

    [data-theme-mode=dark] .collapse-header-clickable:hover {
        background-color: rgba(132, 90, 223, 0.25) !important;
    }

    [data-theme-mode=dark] .collapse-header-clickable .hour-group-icon {
        color: var(--primary-color, #a78bfa) !important;
    }

    [data-theme-mode=dark] .collapse-header-clickable h6 {
        color: var(--default-text-color, #e0e0e0) !important;
    }

/* ========== Audit Log Page - User filter multiselect ========== */
.card-body .bootstrap-select select#filterUserId {
    position: absolute !important;
    left: -9999px !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    clip: rect(0,0,0,0) !important;
}

.audit-log-filters .bootstrap-select.btn-group .dropdown-toggle {
    border: 1px solid #ced4da;
    border-radius: 0.375rem;
    background-color: #fff;
    padding: 0.375rem 2.25rem 0.375rem 0.75rem;
    height: calc(1.5em + 0.75rem);
    font-size: 1rem;
    line-height: 1.5;
}

    .audit-log-filters .bootstrap-select.btn-group .dropdown-toggle:focus {
        border-color: #86b7fe;
        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    }

.audit-log-filters .bootstrap-select .dropdown-toggle::after {
    content: "";
    display: inline-block;
    margin-left: 0;
    vertical-align: middle;
    border: none;
    width: 12px;
    height: 12px;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    right: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
}

.audit-log-filters .bootstrap-select .caret {
    display: none !important;
}

.audit-log-filters .bootstrap-select .filter-option-inner-inner {
    padding-right: 0.25rem;
}

.audit-log-filters .bootstrap-select.btn-group {
    width: 100% !important;
}

    .audit-log-filters .bootstrap-select.btn-group .dropdown-toggle {
        width: 100%;
        text-align: left;
    }

.audit-log-filters .bootstrap-select .dropdown-menu {
    max-height: 280px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 0 !important;
}

    .audit-log-filters .bootstrap-select .dropdown-menu .inner {
        overflow: visible !important;
        max-height: none !important;
    }

    .audit-log-filters .bootstrap-select .dropdown-menu .bs-searchbox {
        padding: 0.5rem 0.75rem;
        overflow: visible !important;
    }

        .audit-log-filters .bootstrap-select .dropdown-menu .bs-searchbox input {
            width: 100%;
            padding: 0.35rem 0.6rem;
            border: 1px solid #ced4da;
            border-radius: 0.25rem;
            font-size: 0.9rem;
        }

    .audit-log-filters .bootstrap-select .dropdown-menu .inner ul {
        overflow: visible !important;
    }

.audit-log-filters .bootstrap-select.show-tick .dropdown-menu .inner li {
    list-style: none;
}

    .audit-log-filters .bootstrap-select.show-tick .dropdown-menu .inner li a {
        padding-left: 2.25rem;
        position: relative;
    }

        .audit-log-filters .bootstrap-select.show-tick .dropdown-menu .inner li a::before {
            content: "";
            position: absolute;
            left: 0.75rem;
            top: 50%;
            transform: translateY(-50%);
            width: 1rem;
            height: 1rem;
            border: 1px solid #6c757d;
            border-radius: 0.2rem;
            background: #fff;
        }

    .audit-log-filters .bootstrap-select.show-tick .dropdown-menu .inner li.selected a::before {
        background: #696cff;
        border-color: #696cff;
    }

    .audit-log-filters .bootstrap-select.show-tick .dropdown-menu .inner li.selected a::after {
        content: "\2713";
        position: absolute;
        left: 0.78rem;
        top: 50%;
        transform: translateY(-50%);
        font-size: 0.75rem;
        color: #fff;
        font-weight: bold;
    }

    .audit-log-filters .bootstrap-select.show-tick .dropdown-menu .inner li .check-mark {
        display: none !important;
    }
