/* Global compact sizing standard — shared by every page, card, table and modal form.
 * Change sizes here rather than per page so all screens stay consistent. */
:root {
    --ui-page-title: 24px;
    --ui-section-title: 18px;
    --ui-font: 14px;
    --ui-font-sm: 13px;
    --ui-control-h: 42px;
    --ui-btn-h: 40px;
    --ui-action-btn: 36px;
    --ui-radius: 12px;
    --ui-radius-sm: 8px;
    --ui-card-pad: 18px;
    --ui-gap: 18px;
}
.card {
    --bs-card-spacer-y: var(--ui-card-pad);
    --bs-card-spacer-x: var(--ui-card-pad);
    --bs-card-cap-padding-y: 14px;
    --bs-card-cap-padding-x: var(--ui-card-pad);
    margin-bottom: var(--ui-gap);
}
.modal {
    --bs-modal-padding: var(--ui-card-pad);
    --bs-modal-header-padding: 14px var(--ui-card-pad);
}
.modal .modal-title { font-size: var(--ui-section-title); }
.modal .modal-footer { padding: 12px var(--ui-card-pad); gap: 8px; }
.modal .modal-footer > * { margin: 0; }
.modal .form-group { margin-bottom: 14px; }
.modal .row[class*=" g-"] > * > .form-group { margin-bottom: 0; }
.modal .form-label { margin-bottom: 6px; font-size: var(--ui-font-sm); }
.modal .form-control,
.modal .form-select { min-height: var(--ui-control-h); font-size: var(--ui-font); }

/* theme-color css */
body.theme-1 {
    --theme-color: #0CAF60 !important;
}
body.theme-2 {
    --theme-color: #584ED2 !important;
}
body.theme-3 {
    --theme-color: #6FD943 !important;
}
body.theme-4 {
    --theme-color: #145388 !important;
}
body.theme-5 {
    --theme-color: #B9406B !important;
}
body.theme-6 {
    --theme-color: #008ECC !important;
}
body.theme-7 {
    --theme-color: #922C88 !important;
}
body.theme-8 {
    --theme-color: #C0A145 !important;
}
body.theme-9 {
    --theme-color: #48494B !important;
}
body.theme-10 {
    --theme-color: #0C7785 !important;
}
body.custom-color {
    --theme-color: var(--color-customColor) !important;
}
.Permission {
    white-space: inherit !important;
}
.action-btn {
    width: 29px;
    height: 28px;
    border-radius: 9.3552px;
    color: #fff;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 20px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.repeater-action-btn {
    /* width: 23px;
    height: 23px;
    border-radius: 9.3552px;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    flex-shrink: 0; */
}
.delete-form-btn {
    display: inline;
}
.dash-sidebar .main-logo {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    /*height: 100%;*/
    min-height: 80px;
    max-height: 80px;
    width: 100%;
    min-width: 255px;
    /*max-width: 255px;*/
}
a.b-brand {
    height: 100%;
    width: 100%;
}
.dash-sidebar .main-logo a img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    width: auto !important;
    height: auto;
    max-width: -webkit-fill-available !important;
    max-height: -webkit-fill-available !important;
    max-width: -moz-available;
    max-height: -moz-available;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    vertical-align: middle;
}
.price-card {
    text-align: center;
    position: relative;
    margin-top: 30px;
    height: 100%;
    max-height: 510px;
}
.price-card.price-2 {
    color: #fff;
}
.price-card.price-2 .price-badge {
    color: #fff;
    background: #1C232F;
}
.price-card .p-price {
    font-size: 80px;
}
.price-card .price-badge {
    color: #fff;
    padding: 7px 24px;
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.price-card .list-unstyled {
    display: inline-block;
}
.price-card .list-unstyled li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.price-card .list-unstyled li+li {
    margin-top: 8px;
}
.price-card .list-unstyled .theme-avtar {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: 30px;
    height: 30px;
    border-radius: 10px;
    background: #fff;
    margin-right: 15px;
}
.side-feature {
    overflow: hidden;
}
.faq .accordion .accordion-item {
    border-radius: 10px;
    overflow: hidden;
    border: none;
    margin-bottom: 10px;
}
.faq .accordion .accordion-item .accordion-button {
    font-weight: 700;
    padding: 1.3rem 1.25rem;
}
.faq .accordion .accordion-item .accordion-button span>i {
    font-size: 20px;
    margin-right: 8px;
}
.faq .accordion .accordion-item .accordion-button:not(.collapsed) {
    border-radius: 10px;
    background: transparent;
    -webkit-box-shadow: 0 6px 30px rgba(182, 186, 203, 0.3);
    box-shadow: 0 6px 30px rgba(182, 186, 203, 0.3);
}
.faq .accordion .accordion-item .accordion-body {
    /*padding: 2.3rem 2.3rem 2.3rem 3rem;*/
    padding: 1rem 1.25rem;
}
.choose-files div {
    color: #fff;
    background: #584ED2 !important;
    border: none;
    border-radius: 4px;
    padding: 8px 15px;
    max-width: 155px !important;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
}
.file {
    position: relative !important;
    left: 0;
    opacity: 0;
    top: 0;
    bottom: 0;
    width: 80%;
    border: none;
    padding: 0;
    margin: 0;
    cursor: pointer;
}
.file-icon {
    width: 30px;
    height: 30px;
    background: #0F5EF7;
    border-radius: 50px;
    float: left;
    text-align: center;
}
.file-icon i {
    color: #fff;
    z-index: 9999;
    position: relative;
    font-size: 14px;
}
.first-file {
    width: 100%;
    float: left;
    padding-bottom: 20px;
    position: relative;
}
.file-des {
    width: calc(100% - 40px);
    float: right;
    color: #A3AFBB;
    font-size: 12px;
}
.file-des span {
    width: 100%;
    float: left;
    color: #011C4B;
}
.general-tab .column-card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.first-file:before {
    position: absolute;
    bottom: 0;
    width: 3px;
    height: 100%;
    background: var(--bs-primary) !important;
    content: "";
    left: 25px;
}
.first-file:last-child:before {
    background: none;
}
.setting-favimg {
    width: 100px;
}
.setting-logoimg {
    width: 200px;
}
.colorinput {
    margin: 0;
    position: relative;
    cursor: pointer;
}
.colorinput-input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}
.colorinput-color {
    background-color: #fdfdff;
    border-color: #e4e6fc;
    border-width: 1px;
    border-style: solid;
    display: inline-block;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 3px;
    color: #fff;
    -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.colorinput-color:before {
    content: '';
    opacity: 0;
    position: absolute;
    top: .25rem;
    left: .25rem;
    height: 1.25rem;
    width: 1.25rem;
    -webkit-transition: .3s opacity;
    -o-transition: .3s opacity;
    transition: .3s opacity;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E") no-repeat center center/50% 50%;
}
.colorinput-input:checked~.colorinput-color:before {
    opacity: 1;
}
.img_setting {
    -webkit-filter: drop-shadow(2px 3px 7px #011C4B);
    filter: drop-shadow(2px 3px 7px #011C4B);
}
.btn-apply {
    font-size: 31px;
}
.avatar {
    text-align: center;
    border-radius: 100%;
    overflow: hidden;
    /* background-color: #eee; */
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.avatar-sm {
    width: 2.4375rem;
    height: 2.4375rem;
    font-size: 0.75rem;
    border-radius: 0.2rem;
}
.avatar {
    position: relative;
    color: #FFF;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    vertical-align: middle;
    font-size: 1rem;
    font-weight: 600;
    height: 3.125rem;
    width: 3.125rem;
    border-radius: 0.25rem;
}
.avatar img {
    width: 100%;
    border-radius: 0.25rem;
}
.avatar.rounded-circle img {
    border-radius: 50%;
}
/*.avatar span {*/
/*    background-color: #051C4B;*/
/*}*/
.avatar+.avatar {
    margin-left: .25rem;
}
.avatar+.avatar-content {
    display: inline-block;
    margin-left: .75rem;
}
.avatar-xl {
    width: 6rem;
    height: 6rem;
    font-size: 1.375rem;
}
.avatar-lg {
    width: 4rem;
    height: 4rem;
    font-size: 1.25rem;
}
.avatar-sm {
    width: 2.4375rem;
    height: 2.4375rem;
    font-size: 0.75rem;
    border-radius: 0.2rem;
}
.avatar-group {
    display: inline-block;
    line-height: 1;
}
.avatar-group .avatar {
    z-index: 1;
    -webkit-transition: margin 0.15s ease-in-out;
    -o-transition: margin 0.15s ease-in-out;
    transition: margin 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
    .avatar-group .avatar {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}
.avatar-group .avatar img {
    border: 2px solid #FFF;
}
.avatar-group .avatar:hover {
    z-index: 2;
}
.avatar-group .avatar+.avatar {
    margin-left: -1.25rem;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.avatar-group .avatar-sm+.avatar-sm {
    margin-left: -1rem;
}
.avatar-group:hover .avatar {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}
.avatar-group:hover .avatar-sm {
    border-top-left-radius: 0.2rem;
    border-bottom-left-radius: 0.2rem;
}
.hover-avatar-ungroup:hover .avatar:not(:first-child) {
    margin-left: 0;
}
.avatar-parent-child {
    display: inline-block;
    position: relative;
}
.avatar-child {
    position: absolute;
    right: 0;
    bottom: 0;
    background-color: #fff;
    border: 2px solid #FFF;
    border-radius: 0.2rem;
}
.avatar.rounded-circle+.avatar-child {
    border-radius: 50%;
}
.avatar+.avatar-child {
    width: 20px;
    height: 20px;
}
.avatar-lg+.avatar-child {
    width: 24px;
    height: 24px;
}
.avatar-sm+.avatar-child {
    width: 16px;
    height: 16px;
}
.avatar+.avatar-badge {
    width: 14px;
    height: 14px;
    right: -6px;
    bottom: 15px;
}
.avatar-lg+.avatar-badge {
    width: 16px;
    height: 16px;
    right: -5px;
    bottom: 20px;
}
.avatar-sm+.badge {
    width: 12px;
    height: 12px;
    right: -6px;
    bottom: 10px;
}
.avatar-connect {
    position: relative;
}
.avatar-connect:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    border-bottom: 2px dashed #EFF2F7;
}
.avatar-connect ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.rating {
    border: none;
    float: left;
}
.rating>input {
    display: none;
}
.rating>label:before {
    margin: 5px;
    font-size: 1.25em;
    font-family: FontAwesome;
    display: inline-block;
    content: "\f005";
}
.rating>.half:before {
    content: "\f089";
    position: absolute;
}
.rating>label {
    color: #ddd;
    float: right;
}
.rating>input:checked~label,
.rating:not(:checked)>label:hover,
.rating:not(:checked)>label:hover~label {
    color: #FFD700;
}
.rating>input:checked+label:hover,
.rating>input:checked~label:hover,
.rating>label:hover~input:checked~label,
.rating>input:checked~label:hover~label {
    color: #FFED85;
}
.table td .progress {
    height: 7px;
    width: 120px;
    margin: 0;
}
.mtt {
    margin-top: 35px;
}
.custom_messanger_counter {
    position: relative;
    top: -15px;
    left: -5px;
}
.dash-sidebar .main-logo {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    /*height: 100%;*/
    min-height: 80px;
    max-height: 80px;
    width: 100%;
    min-width: 255px;
    /*max-width: 255px;*/
}
a.b-brand {
    height: 100%;
    width: 100%;
}
.dash-sidebar .main-logo a img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    width: auto !important;
    height: auto;
    max-width: -webkit-fill-available !important;
    max-height: -webkit-fill-available !important;
    max-width: -moz-available;
    max-height: -moz-available;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    vertical-align: middle;
}
.m-view-btn {
    width: 65px;
    padding: 8px 10px;
    line-height: normal;
    border-radius: 10px;
    color: #fff;
}
.m-view-btn a {
    float: right;
    color: #fff;
    text-decoration: underline;
}
.white-sapce-nowrap {
    white-space: nowrap;
}
.list-group-flush>.list-group-item:last-child {
    border: none;
    border-bottom-width: 0;
}
.active_color {
    border: 2px solid #000 !important;
}
.display-total-time {
    font-size: 14px;
    font-weight: 500;
    height: 50px;
    border: 1px solid rgba(221, 221, 221, 1);
    padding: 12px;
    background: rgba(241, 241, 241, 1);
    margin: 14px 0;
    text-align: center;
    border-radius: 4px;
    width: 100%;
}
.swiper-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}
.rating-stars ul {
    list-style-type: none;
    padding: 0;
    -moz-user-select: none;
    -webkit-user-select: none;
}
.rating-stars ul>li.star {
    display: inline-block;
}
.rating-stars ul>li.star.selected>i.ti {
    color: #FF912C;
}
.rating-stars ul>li.star.selected>i.fa {
    fill: #FF912C;
}
.navbar.default.top-nav-collapse {
    background: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.active_color {
    border: 2px solid #000 !important;
}
.login-deafult {
    width: 139px !important;
}
/* card-icon-text-space */
.card-icon-text-space {
    margin-right: 5px;
}
.horizontal-scroll-cards p {
    width: 120px;
}
.horizontal-scroll-cards img {
    border: 2px solid #fff;
    padding: 0px;
}
.full-circle {
    width: 12px;
    height: 12px;
    border-radius: 50%;
}
.card-body.project_table {
    height: 400px;
    overflow-y: auto;
}
.project_table::-webkit-scrollbar {
    width: 3px;
}
.project_table::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 3px #f2f2f2;
    box-shadow: inset 0 0 3px #f2f2f2;
}
.project_table::-webkit-scrollbar-thumb {
    background-color: #bababa;
}
.round-img {
    width: 80px;
    height: 80px;
    object: cover !important;
}
.big-logo {
    width: 150px;
    height: 60px;
}
.card-2 {
    height: 100%;
    /* max-height: 480px; */
    margin-bottom: 0;
}
.full-card {
    min-height: 236px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.fulls-card {
    min-height: 180px;
}
.kanban-card img {
    position: relative;
    width: 39px;
    height: 38px;
    border-radius: 50% !important;
    z-index: 2;
    -webkit-transition: all 0.1s ease-in-out;
    -o-transition: all 0.1s ease-in-out;
    transition: all 0.1s ease-in-out;
    border: 2px solid #ffffff;
}
.grid_user_image img {
    margin-left: -10px;
    border: 2px solid #dbdbdb;
}
.dataTable-table>thead>tr>th {
    padding: 15px 40px 15px 0;
}
.dataTable-sorter::before,
.dataTable-sorter::after {
    right: -20px;
}
.status_badge {
    min-width: 95px;
}
.plan_card {
    width: 25%;
    float: left;
    margin-bottom: 20px;
}
.plan_card .card-body {
    min-height: 450px;
}
.card .progress .progress-bar {
    -webkit-box-shadow: none;
    box-shadow: none;
}
@media only screen and (max-width: 1700px) {
    .plan_card {
        width: 33.33%;
        float: left;
    }
}
@media only screen and (max-width: 1440px) {
    .plan_card {
        width: 33.33%;
        float: left;
    }
}
@media only screen and (max-width: 1366px) {
    .plan_card {
        width: 50%;
        float: left;
    }
}
@media only screen and (max-width: 1199px) {
    .plan_card {
        width: 50%;
        float: left;
    }
}
@media only screen and (max-width: 991px) {
    .plan_card {
        width: 100%;
        float: left;
    }
}
#cache-settings .input-group-text {
    border-radius: 0 6px 6px 0;
}
[dir="rtl"] #cache-settings .input-group-text {
    border-radius: 6px 0 0 6px !important;
}
.doc_status_badge {
    min-width: 100px;
}
.list_card {
    min-height: 400px;
}
.customer_card {
    height: 100%;
}
.vendor_card {
    height: 180px;
}
.logo_card {
    min-height: 280px;
}
.img_preview {
    width: 150px;
    height: 130px;
}
.setting_logo {
    top: -35px;
}
.choose-files input[type="file"] {
    display: none;
}
.drp-languages .drp-language .dropdown-toggle {
    color: #525B69;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.6rem 0.7rem;
    margin: 0 7.5px;
    border-radius: 4px;
    position: relative;
    font-weight: 500;
    border-radius: 8px;
    border: 1px solid rgba(110 106 106 / 20%);
}
.email_temp {
    height: 450px !important;
    overflow-y: scroll;
}
.emp_details {
    min-height: 420px !important;
}
.green-text {
    color: green;
}
.red-text {
    color: red;
}
.activity-scroll {
    overflow: auto;
    height: 400px;
}
.leads-scroll {
    overflow-y: auto;
    max-height: 400px;
}
.job-create {
    min-height: 488px;
}
.email-color {
    background: #FFFFFF;
}
.svg-inline--fa.fa-w-16 {
    width: 1em;
}
.svg-inline--fa.fa-w-20 {
    width: 1.25em;
}
/*POS SYSTEM CSS*/
.purchase_status {
    min-width: 95px;
}
.pos-top-bar {
    background: #6fd944;
    border-radius: 10px;
    padding: 15px;
}
.product-list-block .product-custom-card {
    border-radius: 10px;
    -webkit-box-shadow: 0 4px 20px 1px rgba(0, 0, 0, .06), 0 1px 4px rgba(0, 0, 0, .08);
    box-shadow: 0 4px 20px 1px rgba(0, 0, 0, .06), 0 1px 4px rgba(0, 0, 0, .08);
    cursor: pointer;
    margin-bottom: 16px;
    margin-left: 8px;
    margin-right: 8px;
    outline: 1px solid #e0e3ff;
    width: calc(24.96% - 16px);
}
.product-list-block .product-custom-card .card {
    border-color: transparent !important;
    border-radius: 10px;
    border: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    margin-bottom: 0;
}
.product-list-block .product-custom-card .card .card-img-top {
    height: 100px !important;
    max-height: 100px !important;
    -o-object-fit: contain;
    object-fit: contain;
    width: 100% !important;
    border: 0;
}
.product-list-block .product-custom-card h6 {
    font-size: 14px;
}
.product-list-block .product-custom-card .fs-small {
    font-size: 12px;
}
.product-list-block .product-custom-card .item-badges {
    position: absolute;
    left: 0;
    top: -3px;
}
.product-list-block .product-custom-card__card-badge {
    border-radius: 4px;
    font-size: 11px;
    font-weight: 400;
    line-height: 1;
    padding: .25em .4em;
    text-align: center;
    vertical-align: baseline;
    white-space: nowrap;
}
.right-content .product-list-block {
    height: auto;
    max-height: 500px;
    overflow-y: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 25px;
}
.right-content .button-list__item-active {
    background-color: #6571ff !important;
    border-color: #6571ff !important;
    color: #FFFFFF;
}
.sub-total .total-price {
    padding-bottom: 15px;
    border-bottom: 2px dashed #c5c5c5;
}
.button-list .button-list__item {
    margin-bottom: 0.5rem;
}
.cat-pad {
    background-color: #6fd944;
}
@media screen and (max-width:767px) {
    .product-list-block .product-custom-card {
        width: 100%;
    }
}
.carttable .quantity.buttons_added {
    display: block;
    text-align: center;
    position: relative;
    white-space: nowrap;
    vertical-align: middle;
    border: 1px solid #efefef;
}
.carttable .quantity.buttons_added .minus {
    border-right: 0;
}
.carttable .quantity.buttons_added input {
    display: inline-block;
    margin: 0;
    vertical-align: middle;
    -webkit-box-shadow: none;
    box-shadow: none;
    font-size: 14px;
    border: 0;
}
.carttable .quantity .input-number {
    width: 35px;
    height: 35px;
    padding: 0 5px;
    text-align: center;
    background-color: transparent;
}
.carttable .quantity .input-number::-webkit-inner-spin-button,
.carttable .quantity .input-number::-webkit-outer-spin-button {
    -webkit-appearance: none;
}
.carttable .quantity.buttons_added .plus {
    border-left: 0;
}
.carttable .quantity.buttons_added .minus,
.carttable .quantity.buttons_added .plus {
    padding: 4px 10px 8px;
    height: 35px;
    background-color: #ffffff;
    cursor: pointer;
}
.form-row>.zoom-in {
    -webkit-transition-property: background-color, border-color, color, fill, opacity, -webkit-box-shadow, -webkit-transform;
    transition-property: background-color, border-color, color, fill, opacity, -webkit-box-shadow, -webkit-transform;
    -o-transition-property: background-color, border-color, color, fill, opacity, box-shadow, transform;
    transition-property: background-color, border-color, color, fill, opacity, box-shadow, transform;
    transition-property: background-color, border-color, color, fill, opacity, box-shadow, transform, -webkit-box-shadow, -webkit-transform;
    -webkit-transition-duration: .3s;
    -o-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    -o-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --transform-translate-x: 0;
    --transform-translate-y: 0;
    --transform-rotate: 0;
    --transform-skew-x: 0;
    --transform-skew-y: 0;
    --transform-scale-x: 1;
    --transform-scale-y: 1;
    -webkit-transform: translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y));
    -ms-transform: translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y));
    transform: translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y));
    cursor: pointer;
    margin-bottom: 10px !important;
}
.zoom-in:hover {
    --transform-scale-x: 1.05;
    --transform-scale-y: 1.05;
}
#product-listing .toacart {
    cursor: pointer;
}
.cat-list-btn .btn-primary {
    color: #3f3f3f !important;
}
body.theme-1 .cat-list-btn .btn-primary {
    background: #fff !important;
    border-color: #fff !important;
}
body.theme-1 .cat-list-btn .cat-active .btn-primary {
    background: #0CAF60 !important;
    border-color: #0CAF60 !important;
    color: #fff !important;
}
body.theme-2 .cat-list-btn .btn-primary {
    background-color: #fff !important;
    border-color: #fff !important;
}
body.theme-2 .cat-list-btn .cat-active .btn-primary {
    background-color: #584ED2 !important;
    border-color: #584ED2 !important;
    color: #fff !important;
}
body.theme-3 .cat-list-btn .btn-primary {
    background-color: #fff !important;
    border-color: #fff !important;
}
body.theme-3 .cat-list-btn .cat-active .btn-primary {
    background-color: #6fd943 !important;
    border-color: #6fd943 !important;
    color: #fff !important;
}
body.theme-4 .cat-list-btn .btn-primary {
    background-color: #fff !important;
    border-color: #fff !important;
}
body.theme-4 .cat-list-btn .cat-active .btn-primary {
    background-color: #145388 !important;
    border-color: #145388 !important;
    color: #fff !important;
}
body.theme-5 .cat-list-btn .btn-primary {
    background-color: #fff !important;
    border-color: #fff !important;
}
body.theme-5 .cat-list-btn .cat-active .btn-primary {
    background-color: #B9406B !important;
    border-color: #B9406B !important;
    color: #fff !important;
}
body.theme-6 .cat-list-btn .btn-primary {
    background-color: #fff !important;
    border-color: #fff !important;
}
body.theme-6 .cat-list-btn .cat-active .btn-primary {
    background-color: #008ECC !important;
    border-color: #008ECC !important;
    color: #fff !important;
}
body.theme-7 .cat-list-btn .btn-primary {
    background-color: #fff !important;
    border-color: #fff !important;
}
body.theme-7 .cat-list-btn .cat-active .btn-primary {
    background-color: #922C88 !important;
    border-color: #922C88 !important;
    color: #fff !important;
}
body.theme-8 .cat-list-btn .btn-primary {
    background-color: #fff !important;
    border-color: #fff !important;
}
body.theme-8 .cat-list-btn .cat-active .btn-primary {
    background-color: #C0A145 !important;
    border-color: #C0A145 !important;
    color: #fff !important;
}
body.theme-9 .cat-list-btn .btn-primary {
    background-color: #fff !important;
    border-color: #fff !important;
}
body.theme-9 .cat-list-btn .cat-active .btn-primary {
    background-color: #48494B !important;
    border-color: #48494B !important;
    color: #fff !important;
}
body.theme-10 .cat-list-btn .btn-primary {
    background-color: #fff !important;
    border-color: #fff !important;
}
body.theme-10 .cat-list-btn .cat-active .btn-primary {
    background-color: #0C7785 !important;
    border-color: #0C7785 !important;
    color: #fff !important;
}
.top-badge {
    position: absolute;
    top: 10px;
    right: 10px;
}
.product-title-name {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-height: 33px;
    font-size: 14px;
}
.product-title-name.small {
    font-size: 14px;
}
.product-body-nop .form-row [class*="col-"] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.cat-active .btn {
    color: #fff;
}
.tab-btns {
    min-width: 100px;
    white-space: nowrap;
    border-radius: 0.625rem !important;
    padding: 10px 20px;
    font-size: 12px;
}
.cart-product-list .table tr th {
    padding: 5px 15px !important;
}
.total-price h6 {
    font-size: 11px;
}
.product-body-nop .card:not(:last-of-type) {
    margin-bottom: 12px;
}
.product-body-nop {
    height: calc(100vh - 260px);
    overflow-y: auto;
    overflow-x: hidden;
    margin-right: -7px;
    padding-right: 7px;
}
.product-body-nop::-webkit-scrollbar {
    width: 5px;
    margin-right: -5px;
}
.product-body-nop::-webkit-scrollbar-thumb {
    background-color: lightgrey;
    border-radius: 10px;
}
.sop-card {
    margin-bottom: 10px;
}
.carttable-scroll {
    height: calc(100vh - 115px);
}
.carttable-scroll .table-responsive {
    height: calc(100vh - 300px);
}
.carttable-scroll .table-responsive::-webkit-scrollbar {
    width: 5px;
    height: 5px;
    margin-right: -5px;
}
.carttable-scroll .table-responsive::-webkit-scrollbar-thumb {
    background-color: lightgrey;
    border-radius: 10px;
}
.carttable-scroll .name,
.carttable-scroll .tax {
    padding: 0 !important;
}
.carttable-scroll .tax {
    text-align: center;
}
.total-section {
    width: 100%;
    background: #f1f1f1;
    padding: 15px;
    border-radius: 10px;
    -webkit-box-shadow: 0px 10px 10px -10px #97979780;
    box-shadow: 0px 10px 10px -10px #97979780;
}
.sop-card {
    height: 100%;
}
.product-body-nop .card {
    width: 100%;
    padding: 15px;
}
.right-content .button-list .card .btn-primary {
    min-width: auto;
    padding: 10px 16px;
    color: #060606 !important;
    font-weight: 600;
    border: 1px solid #e5e5e5 !important;
    border-radius: 8px !important;
    background-color: transparent !important;
    font-size: 14px;
}
.right-content .button-list .card.cat-active .btn-primary {
    background-color: var(--theme-color) !important;
    border-color: var(--theme-color) !important;
    color: var(--bs-white) !important;
}
.right-content .button-list .card {
    box-shadow: none;
    border-radius: 0;
}
.right-content .button-list .form-row {
    gap: 10px;
}
.product-body-nop .card .avatar {
    -o-object-fit: scale-down;
    object-fit: scale-down;
    padding: 20px 0 10px;
    background: transparent;
    min-height: 9rem;
    width: 100%;
}
.product-body-nop .card .card-body {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 25px 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.product-body-nop .card .badge {
    padding: 4px 10px;
    width: auto;
    max-width: 100px;
    margin: 0 auto 0 0;
}
.product-body-nop .card .shadow {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}
.toacart {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.product-body-nop .card .product-title-name {
    min-height: unset;
}
/*END POS SYSTEM CSS*/
/*for messages counter*/
.message-counter {
    position: absolute !important;
    top: fpx !important;
    right: 4px !important;
    border-radius: 50%;
    font-size: 10px;
    left: 22px !important;
    width: 15px !important;
    height: 15px;
    text-align: center !important;
    color: #fff !important;
}
/*for messages counter*/
.status-drp .dash-head-link {
    color: #525b69;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    padding: 0.6rem 0.7rem;
    border-radius: 6px;
    position: relative;
    font-weight: 500;
    border: 1px solid rgba(110 106 106 / 20%);
    background-color: #fff;
}
/* start Rating Star Widgets Style - job application star*/
.rating-stars ul {
    list-style-type: none;
    padding: 0;
    -moz-user-select: none;
    -webkit-user-select: none;
}
.rating-stars ul>li.star {
    display: inline-block;
}
.rating-stars ul>li.star>i.fas {
    font-size: 1.5em;
    /* Change the size of the stars */
    color: #ccc;
    /* Color on idle state */
}
/* Hover state of the stars */
.rating-stars ul>li.star.hover>i.fas {
    color: #FFCC36;
}
/* Selected state of the stars */
.rating-stars ul>li.star.selected>i.fas {
    color: #ffa21d;
}
.static-rating {
    display: inline-block;
}
.static-rating .star {
    color: #E0E6ED;
}
.static-rating .voted {
    color: #ffa21d;
}
/* end start Rating Star Widgets Style - job application star*/
/* project_report */
.img_group {
    margin-left: -14px;
}
.circular-progressbar .flex-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
}
.circular-progressbar .single-chart {
    width: 60%;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}
.circular-progressbar .circular-chart {
    display: block;
    margin: 10px auto;
    max-width: 100%;
    max-height: 550px;
}
.circular-progressbar .circle-bg {
    fill: none;
    stroke: #eee;
    stroke-width: 3.8;
}
.circular-progressbar .circle {
    fill: none;
    stroke-width: 2.8;
    stroke-linecap: round;
    -webkit-animation: progress 1s ease-out forwards;
    animation: progress 1s ease-out forwards;
}
@-webkit-keyframes progress {
    0% {
        stroke-dasharray: 0 100;
    }
}
@keyframes progress {
    0% {
        stroke-dasharray: 0 100;
    }
}
.circular-progressbar .circular-chart.red .circle {
    stroke: #ff3a6e;
}
.circular-progressbar .circular-chart.orange .circle {
    stroke: #fd7e14;
}
.circular-progressbar .circular-chart.green .circle {
    stroke: #6fd943;
}
.circular-progressbar .circular-chart.blue .circle {
    stroke: #3c9ee5;
}
.circular-progressbar .percentage {
    /* fill: #666;*/
    font-family: sans-serif;
    font-size: 0.5em;
    text-anchor: middle;
}
.circular-progressbar .flex-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
}
.circular-progressbar .single-chart {
    width: 60%;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}
.circular-progressbar .circular-chart {
    display: block;
    margin: 10px auto;
    max-width: 100%;
    max-height: 550px;
}
.circular-progressbar .circle-bg {
    fill: none;
    stroke: #eee;
    stroke-width: 3.8;
}
.circular-progressbar .circle {
    fill: none;
    stroke-width: 2.8;
    stroke-linecap: round;
    -webkit-animation: progress 1s ease-out forwards;
    animation: progress 1s ease-out forwards;
}
@keyframes progress {
    0% {
        stroke-dasharray: 0 100;
    }
}
.circular-progressbar .circular-chart.red .circle {
    stroke: #ff3a6e;
}
.circular-progressbar .circular-chart.orange .circle {
    stroke: #fd7e14;
}
.circular-progressbar .circular-chart.green .circle {
    stroke: #6fd943;
}
.circular-progressbar .circular-chart.blue .circle {
    stroke: #3c9ee5;
}
.circular-progressbar .percentage {
    /* fill: #666;*/
    font-family: sans-serif;
    font-size: 0.5em;
    text-anchor: middle;
}
.pos-header {
    background-color: #e7e9ec;
}
.table.modal-table td,
.table.modal-table th {
    white-space: normal;
}
.task-calendar-scroll {
    overflow-y: scroll;
    height: 700px;
}
/*start pos thermal print */
.pos-module-tbl td,
.pos-module-tbl th {
    padding: 0px !important;
}
.pos-module .product-border {
    border-bottom: 3px dotted #d8d8d8 !important;
}
/*end pos print */
/*start balance-sheet new theme*/
.nav-pills.cust-nav {
    background: #E1E9ED;
}
.nav-pills.cust-nav .nav-item .nav-link {
    color: #162C4E;
}
.data-wrapper {
    /* height: 100%; */
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.data-wrapper .data-body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
/* .data-wrapper .data-body .list-group-item:nth-child(2) {
    flex: 1;
} */
/* end balance-sheet new theme*/
/* JOB PAGE START */
.job-wrapper .navbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}
.job-banner {
    position: relative;
    background-color: unset;
}
.job-banner .job-banner-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.job-banner .job-banner-bg img {
    width: 100%;
    height: 100%;
}
.job-banner .job-banner-content {
    padding: 5.9% 0;
    max-width: 360px;
    width: 100%;
    margin: auto;
}
.placedjob-section .section-title {
    padding: 35px 25px;
    background-color: var(--bs-white);
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
    text-align: center;
}
.job-card-body {
    padding: 15px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
    border: 1px solid var(--theme-color);
}
.placedjob-section {
    padding-bottom: 80px;
    background-color: unset;
}
.job-content .container {
    max-width: 1540px;
}
@media screen and (max-width:767px) {
    .job-banner .job-banner-content {
        padding: 10% 0;
    }
}
@media screen and (max-width:575px) {
    .job-banner .job-banner-content {
        padding: 21% 0;
    }
}
.job-card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.job-card .job-card-body {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.job-card .job-card-body h5 {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
/* JOB PAGE END */
/* apply job section */
.apply-job-section {
    padding-bottom: 80px;
    background-color: unset;
}
.apply-job-section .apply-job-wrapper {
    padding: 35px 25px;
    border-radius: 15px;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    -ms-border-radius: 15px;
    -o-border-radius: 15px;
    margin-top: -20px;
}
@media screen and (max-width:767px) {
    .job-banner .job-banner-content {
        padding: 10% 0;
    }
    .apply-job-section .apply-job-wrapper {
        padding: 35px 15px;
    }
    .placedjob-section .section-title {
        padding: 30px 15px;
    }
}
@media screen and (max-width:575px) {
    .job-banner .job-banner-content {
        padding: 26% 0;
    }
}
/* apply job section */
.stage li {
    cursor: pointer;
}
@media (min-width: 420px) {
    .seo_image {
        height: 200px;
        width: 360px
    }
}
@media (max-width: 420px) {
    .seo_image {
        height: 150px;
        width: 200px
    }
    .schedule-wrp .schedule-item {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: start !important;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 10px !important;
    }
    .schedule-wrp .schedule-item .date {
        margin-bottom: 4px !important;
    }
}
.disabledCookie {
    pointer-events: none;
    opacity: 0.4;
}
.cookie_btn {
    margin-right: 15px;
}
/*start for payment setting*/
.setting-accordion .accordion-item {
    border: 1px solid #E0E6EF !important;
    border-radius: 7px;
}
.setting-accordion .accordion-header {
    background: #F8F8F8;
    border-radius: 7px;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    -ms-border-radius: 7px;
    -o-border-radius: 7px;
}
.setting-accordion .accordion-header .accordion-button {
    background: #F8F8F8 !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-radius: 7px;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-bottom: 1px solid transparent;
}

.setting-accordion .accordion-header .accordion-button span {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
.setting-accordion .accordion-header .accordion-button::after {
    margin: 0 0 0 5px;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='25' viewBox='0 0 24 25' fill='none'%3E%3Cpath opacity='0.4' d='M12 22.4146C17.5228 22.4146 22 17.9374 22 12.4146C22 6.8917 17.5228 2.41455 12 2.41455C6.47715 2.41455 2 6.8917 2 12.4146C2 17.9374 6.47715 22.4146 12 22.4146Z' fill='%2325314C'/%3E%3Cpath d='M15.5301 12.8845C15.2371 12.5915 14.762 12.5915 14.469 12.8845L12.749 14.6045V8.41455C12.749 8.00055 12.413 7.66455 11.999 7.66455C11.585 7.66455 11.249 8.00055 11.249 8.41455L11.249 14.6035L9.52908 12.8835C9.23608 12.5905 8.76104 12.5905 8.46804 12.8835C8.17504 13.1765 8.17504 13.6516 8.46804 13.9446L11.468 16.9446C11.537 17.0136 11.62 17.0684 11.711 17.1064C11.802 17.1444 11.9001 17.1646 11.9981 17.1646C12.0961 17.1646 12.1929 17.1444 12.2849 17.1064C12.3769 17.0684 12.4591 17.0136 12.5281 16.9446L15.5281 13.9446C15.8231 13.6516 15.8231 13.1775 15.5301 12.8845Z' fill='%2325314C'/%3E%3C/svg%3E");
    background-size: 24px;
    border-radius: 100%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -ms-border-radius: 100%;
    -o-border-radius: 100%;
}
.setting-accordion .accordion-item:not(:last-of-type) {
    margin-bottom: 15px;
}
/*end for payment setting*/
.float-end a>i {
    color: #FFFFFF;
}
/* .ps--active-y  {
    height: 100vh !important;
} */
/*start - date:19-jun-2023*/
body.no-scroll {
    overflow: hidden;
    position: relative;
}
.auth-wrapper .navbar .navbar-brand {
    display: block;
    width: 100%;
    max-width: 150px;
}
.auth-wrapper .navbar .navbar-brand img {
    width: 100%;
}
@media (max-width: 1024px) {
    .ps {
        height: 100vh !important;
    }
}
.ps {
    overflow: hidden !important;
    overflow-anchor: none;
    -ms-touch-action: auto;
    touch-action: auto;
}
.dash-sidebar .navbar-content {
    height: calc(100vh - 70px);
}
.email-sidebar{
    max-height: 542px !important;
    overflow-y: auto;
}
/*end- date:19-jun-2023*/
/*[data-action] {*/
/*    background: gray !important;*/
/*}*/
/*start for balancesheet*/
.account-first span:first-child {
    width: 35%;
}
.data-wrapper .data-body .list-group-item span:nth-child(1) {
    width: 35%;
}
/*end for balancesheet*/
/*start for input search*/
.searchBoxElement {
    background-color: white;
    border: 1px solid #aaa;
    position: absolute;
    max-height: 150px;
    overflow-x: hidden;
    overflow-y: auto;
    margin: 0;
    padding: 0;
    line-height: 23px;
    list-style: none;
    z-index: 1;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.searchBoxElement span {
    padding: 0 5px;
}
.searchBoxElement li {
    background-color: white;
    color: black;
}
.searchBoxElement li:hover {
    background-color: #50a0ff;
    color: white;
}
.searchBoxElement li.selected {
    background-color: #50a0ff;
    color: white;
}
.formTextbox {
    display: block;
    width: 100%;
    padding: 0.575rem 1rem;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    color: #293240;
    background-color: #ffffff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 6px;
    -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    -o-transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
}
body.theme-1 .formTextbox:focus {
    border-color: var(--theme1-color);
    -webkit-box-shadow: 0 0 0 0.2rem rgb(12, 175, 96);
    box-shadow: 0 0 0 0.2rem rgb(12, 175, 96);
}
body.theme-2 .formTextbox:focus {
    border-color: var(--theme2-color);
    -webkit-box-shadow: 0 0 0 0.2rem rgb(117, 194, 81);
    box-shadow: 0 0 0 0.2rem rgb(117, 194, 81);
}
body.theme-3 .formTextbox:focus {
    border-color: var(--theme3-color);
    -webkit-box-shadow: 0 0 0 0.2rem rgb(88, 78, 210, 25%);
    box-shadow: 0 0 0 0.2rem rgb(88, 78, 210, 25%);
}
body.theme-4 .formTextbox:focus {
    border-color: var(--theme4-color);
    -webkit-box-shadow: 0 0 0 0.2rem rgb(20, 83, 136, 25%);
    box-shadow: 0 0 0 0.2rem rgb(20, 83, 136, 25%);
}
body.theme-5 .formTextbox:focus {
    border-color: var(--theme5-color);
    -webkit-box-shadow: 0 0 0 0.2rem rgb(185, 64, 107, 25%);
    box-shadow: 0 0 0 0.2rem rgb(185, 64, 107, 25%);
}
body.theme-6 .formTextbox:focus {
    border-color: var(--theme6-color);
    -webkit-box-shadow: 0 0 0 0.2rem rgb(0, 142, 204, 25%);
    box-shadow: 0 0 0 0.2rem rgb(0, 142, 204, 25%);
}
body.theme-7 .formTextbox:focus {
    border-color: var(--theme7-color);
    -webkit-box-shadow: 0 0 0 0.2rem rgb(146, 44, 136, 25%);
    box-shadow: 0 0 0 0.2rem rgb(146, 44, 136, 25%);
}
body.theme-8 .formTextbox:focus {
    border-color: var(--theme8-color);
    -webkit-box-shadow: 0 0 0 0.2rem rgb(192, 161, 69, 25%);
    box-shadow: 0 0 0 0.2rem rgb(192, 161, 69, 25%);
}
body.theme-9 .formTextbox:focus {
    border-color: var(--theme9-color);
    -webkit-box-shadow: 0 0 0 0.2rem rgb(72, 73, 75, 25%);
    box-shadow: 0 0 0 0.2rem rgb(72, 73, 75, 25%);
}
body.theme-10 .formTextbox:focus {
    border-color: var(--theme10-color);
    -webkit-box-shadow: 0 0 0 0.2rem rgb(12, 119, 133, 25%);
    box-shadow: 0 0 0 0.2rem rgb(12, 119, 133, 25%);
}
.account-inner p {
    max-width: 25%;
    width: 100%;
}
.aacount-title h6 {
    max-width: 25%;
    width: 100%;
}
.list_colume_notifi {
    position: relative;
    display: block;
    padding: 16.66667px 25px;
    color: #212529;
    /* background-color: #ffffff; */
    border: 1px solid #f1f1f1;
}
.account-arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
}
.account-arrow p {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
}
.account-arrow .account-icon {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #ffffff;
    margin-left: -20px;
    font-size: 12px;
}
body.theme-1 .account-arrow .account-icon {
    background-color: #0CAF60;
}
body.theme-2 .account-arrow .account-icon {
    background-color: #584ED2;
}
body.theme-3 .account-arrow .account-icon {
    background-color: #6FD943;
}
body.theme-4 .account-arrow .account-icon {
    background-color: #145388;
}
body.theme-5 .account-arrow .account-icon {
    background-color: #B9406B;
}
body.theme-6 .account-arrow .account-icon {
    background-color: #008ECC;
}
body.theme-7 .account-arrow .account-icon {
    background-color: #922C88;
}
body.theme-8 .account-arrow .account-icon {
    background-color: #C0A145;
}
body.theme-9 .account-arrow .account-icon {
    background-color: #48494B;
}
body.theme-10 .account-arrow .account-icon {
    background-color: #0C7785;
}
.account-arrow .account-icon i {
    -webkit-transition: .5s all ease-in-out;
    -o-transition: .5s all ease-in-out;
    transition: .5s all ease-in-out;
}
.collapse-view .account-arrow i {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
.subAccount {
    font-weight: 600;
}
.apexcharts-legend-text {
    margin-right: 10px;
}
[dir="rtl"] .apexcharts-xaxis-texts-g {
    -webkit-transform: translate(10px, 40px) !important;
    -ms-transform: translate(10px, 40px) !important;
    transform: translate(10px, 40px) !important;
}
.apexcharts-yaxis-title-text {
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: 0px 133.34800720214844px !important;
    -ms-transform-origin: 0px 133.34800720214844px !important;
    transform-origin: 0px 133.34800720214844px !important;
}
.apexcharts-yaxis {
    -webkit-transform: translate(0px, 0px) !important;
    -ms-transform: translate(0px, 0px) !important;
    transform: translate(0px, 0px) !important;
}
.color-wrp .color-picker-wrp input[type="color"] {
    background-color: #fff;
    height: 55px;
    cursor: pointer;
    border-radius: 3px;
    margin: 0px;
    padding: 0px;
    border: 0;
    margin-bottom: 5px;
    margin-left: 5px;
}
.color-wrp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 15px;
}
.color-wrp .theme-color {
    margin: 0;
}
.color-wrp .color-picker-wrp {
    width: 100px;
}
#calender_type {
    float: right;
    width: 150px;
}
.dash-header .drp-notification {
    margin-left: 10px;
}
.budget .btn {
    margin-top: 10px;
    margin-right: 10px;
}
.theme-avtar-logo {
    width: 80px;
    border-radius: 17.3552px;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 20px;
}
/*end for input search*/
/* google recapch  */
.grecaptcha-badge {
    z-index: 2;
}
.border-grey {
    border: 1px solid #cbcbcb !important;
}
.upgrade-line hr {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
/* IMPORT DATA TABLE SELECT CSS */
.import-data-table select {
    width: auto;
    padding-right: 35px;
    min-width: 100%;
}
/* this css for badge */
.badge {
    border-radius: 4px !important;
}
/* Kanban css */
.kanban-wrapper .card {
    -webkit-box-shadow: 0px 4px 17px #c1c5bfb3;
    box-shadow: 0px 4px 17px #c1c5bfb3;
}
.kanban-wrapper .card .card-header,
.kanban-wrapper .card .card-body {
    padding: 20px
}
.kanban-wrapper .card-list .kanban-box .card:last-of-type {
    margin-bottom: 0px;
}
/*  Image profile and other section users */
.users-image {
    position: relative;
    display: block;
    padding-top: 20%;
    height: 40px;
    max-width: 40px;
    width: 100%;
}
.users-image img {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}
.image-fixsize {
    position: relative;
    display: block;
}
.image-fixsize img {
    height: 80px;
    width: 80px;
    -o-object-fit: contain;
    object-fit: contain;
}
/* for comment */
.comment-card {
    background: var(--bs-body-bg);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 10px;
}
/* datatable  */
div.dataTables_wrapper div.dataTables_filter input {
    margin: 0 0.5em;
}
/* *{
    scrollbar-width: none !important;
} */
/* border-color */
body.theme-1 .border-primary {
    border-color: #0CAF60 !important;
}
body.theme-2 .border-primary {
    border-color: #584ed2 !important;
}
body.theme-3 .border-primary {
    border-color: #6fd943 !important;
}
body.theme-4 .border-primary {
    border-color: #145388 !important;
}
body.theme-5 .border-primary {
    border-color: #b9406b !important;
}
body.theme-6 .border-primary {
    border-color: #008ecc !important;
}
body.theme-7 .border-primary {
    border-color: #922c88 !important;
}
body.theme-8 .border-primary {
    border-color: #c0a145 !important;
}
body.theme-9 .border-primary {
    border-color: #48494b !important;
}
body.theme-10 .border-primary {
    border-color: #0c7785 !important;
}
/* button color list start */
.btn-primary-subtle {
    background-color: #0CAF60 !important;
}
.bg-warning-subtle {
    background-color: #009eff !important;
}
.bg-brown-subtitle {
    background: #674636 !important;
}
.bg-light-blue-subtitle {
    background: #3CAEA3 !important;
}
.bg-blue-subtitle {
    background: #20639B !important;
}
.bg-light-green-subtitle {
    background: #9bb958 !important;
}
/* button color list end */
/* 15-11-2024 */
.task-product-card {
    border: none !important;
    -webkit-box-shadow: 0 6px 30px rgba(182, 186, 203, 0.3) !important;
    box-shadow: 0 6px 30px rgba(182, 186, 203, 0.3) !important;
}
.task-product-wrapper .col-xl-3 {
    padding: 0 10px;
}
.task-product-wrapper {
    margin: 0 -10px;
}
/* .project-image-item{
    width: 45px;
    height:45px;
}
.project-image-item img{
    width:100%;
    height:100%;
} */
@media (max-width: 1400px) {
    .task-product-card .card-body,
    .full-card {
        padding: 20px 15px;
    }
    .task-product-wrapper .avatar-group .avatar {
        width: 30px;
        height: 30px;
    }
}
/* Dashboard Link */
.dashboard-link {
    color: #060606 !important;
    text-transform: capitalize;
}
/* All model close button css */
.btn-close:focus,
.btn-close:hover {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(81, 69, 157, 0.25);
    box-shadow: 0 0 0 0.2rem rgba(81, 69, 157, 0.25);
    opacity: 1;
    border-radius: 0.25rem;
    -webkit-border-radius: 0.25rem;
    -moz-border-radius: 0.25rem;
    -ms-border-radius: 0.25rem;
    -o-border-radius: 0.25rem;
}
/* All model close button css */
/* templates css */
.invoice-row {
    gap: 20px 0;
}
.language-sidebar {
    max-height: 500px;
    overflow-y: auto;
}
/* templates css */
/* hrm system setup tab */
.hrm_setup_tab li {
    -webkit-box-flex: 0 !important;
    -ms-flex: 0 0 auto !important;
    flex: 0 0 auto !important;
}
.information-tab {
    padding: 20px !important;
    gap: 12px;
}
.information-tab>.nav-item>a>.nav-link {
    border-radius: 5px !important;
    color: var(--theme-color);
}
/* delete confirm */
.swal2-container {
    z-index: 1073 !important;
}
/* dashboard card design css */
.dash-info-card .info-card-inner {
    position: relative;
    padding: 15px;
    overflow: hidden;
    border-radius: 10px;
    z-index: 1;
}
.dash-info-card .info-card-inner .star-bg,
.pos-dash-card .pos-card-inner .star-bg,
.warehouse-card .warehouse-card-inner .star-bg {
    position: absolute;
    z-index: -1;
    top: 10px;
    left: 40px;
}
.bottom-svg {
    position: absolute;
    bottom: 0;
    right: 0;
    opacity: 0.4;
    z-index: -1;
}
.dash-info-card:nth-child(4n + 1) .info-card-inner .star-bg path,
.pos-dash-card:nth-child(4n + 1) .pos-card-inner .star-bg path,
.warehouse-card:nth-child(3n + 1) .warehouse-card-inner svg path,
.project-dash-card:nth-child(3n + 1) .project-card-inner .star-bg path {
    fill: #FF3A6E;
}
.dash-info-card:nth-child(4n + 2) .info-card-inner .star-bg path,
.pos-dash-card:nth-child(4n + 2) .pos-card-inner .star-bg path,
.warehouse-card:nth-child(3n + 2) .warehouse-card-inner svg path,
.project-dash-card:nth-child(3n + 2) .project-card-inner .star-bg path {
    fill: #0CAF60;
}
.dash-info-card:nth-child(4n + 3) .info-card-inner .star-bg path,
.pos-dash-card:nth-child(4n + 3) .pos-card-inner .star-bg path,
.warehouse-card:nth-child(3n + 3) .warehouse-card-inner svg path,
.project-dash-card:nth-child(3n + 3) .project-card-inner .star-bg path {
    fill: #FFA21D;
}
.dash-info-card:nth-child(4n + 4) .info-card-inner .star-bg path,
.pos-dash-card:nth-child(4n + 4) .pos-card-inner .star-bg path {
    fill: #3EC9D6;
}
.dash-info-card:nth-child(4n + 1) .info-card-inner,
.pos-dash-card:nth-child(4n + 1) .pos-card-inner,
.deals-card:nth-child(4n + 1) .deals-card-inner,
.support-ticket-card:nth-child(4n + 1) .support-card-inner,
.crm-dash-card:nth-child(3n + 1) .crm-card-inner,
.payout-card:nth-child(3n + 1) .payout-card-inner,
.job-info-card:nth-child(3n + 1) .job-card-inner,
.leave-card:nth-child(4n + 1) .leave-card-inner,
.project-dash-card:nth-child(3n + 1) .project-card-inner {
    background: rgba(255, 58, 110, 0.1);
}
.dash-info-card:nth-child(4n + 2) .info-card-inner,
.pos-dash-card:nth-child(4n + 2) .pos-card-inner,
.deals-card:nth-child(4n + 2) .deals-card-inner,
.support-ticket-card:nth-child(4n + 2) .support-card-inner,
.crm-dash-card:nth-child(3n + 2) .crm-card-inner,
.payout-card:nth-child(3n + 2) .payout-card-inner,
.job-info-card:nth-child(3n + 2) .job-card-inner,
.leave-card:nth-child(4n + 2) .leave-card-inner,
.project-dash-card:nth-child(3n + 2) .project-card-inner {
    background: rgba(12, 175, 96, 0.1);
}
.dash-info-card:nth-child(4n + 3) .info-card-inner,
.pos-dash-card:nth-child(4n + 3) .pos-card-inner,
.deals-card:nth-child(4n + 3) .deals-card-inner,
.support-ticket-card:nth-child(4n + 3) .support-card-inner,
.crm-dash-card:nth-child(3n + 3) .crm-card-inner,
.payout-card:nth-child(3n + 3) .payout-card-inner,
.job-info-card:nth-child(3n + 3) .job-card-inner,
.leave-card:nth-child(4n + 3) .leave-card-inner,
.project-dash-card:nth-child(3n + 3) .project-card-inner {
    background: rgba(255, 162, 29, 0.1);
}
.dash-info-card:nth-child(4n + 4) .info-card-inner,
.pos-dash-card:nth-child(4n + 4) .pos-card-inner,
.deals-card:nth-child(4n + 4) .deals-card-inner,
.support-ticket-card:nth-child(4n + 4) .support-card-inner,
.leave-card:nth-child(4n + 4) .leave-card-inner {
    background: rgba(62, 201, 214, 0.1);
}

.support-ticket-card .support-card-inner .white-icon{
    fill: #ffffff !important;
}

.dash-info-card .info-card-inner .info-icon,
.pos-dash-card .pos-card-inner .pos-icon,
.warehouse-card .warehouse-card-inner .warehouse-icon,
.job-info-card .job-card-inner .job-icon,
.deals-card .deals-card-inner .deals-icon,
.support-ticket-card .support-card-inner .support-icon,
.payout-card .payout-card-inner .payout-icon {
    height: 45px;
    width: 45px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 6px;
    background-color: #fff;
    border-radius: 4px;
}
.warehouse-card .warehouse-card-inner .icon-inner,
.support-ticket-card .support-card-inner .icon-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    border-radius: 5px;
}
.warehouse-card:nth-child(3n + 1) .warehouse-card-inner .icon-inner,
.support-ticket-card:nth-child(4n + 1) .support-card-inner .icon-inner {
    background-color: #ff3a6e;
}
.support-ticket-card:nth-child(4n + 2) .support-card-inner .icon-inner {
    background: -o-linear-gradient(313.33deg, #509A31 6.85%, #6FD943 104.09%);
    background: linear-gradient(136.67deg, #509A31 6.85%, #6FD943 104.09%);
    background-color: #6FD943;
}
.warehouse-card:nth-child(3n + 3) .warehouse-card-inner .icon-inner,
.support-ticket-card:nth-child(4n + 3) .support-card-inner .icon-inner {
    background-color: #FFA21D;
}
.warehouse-card:nth-child(3n + 2) .warehouse-card-inner .icon-inner,
.support-ticket-card:nth-child(4n + 4) .support-card-inner .icon-inner {
    background-color: #3EC9D6;
}
.dash-info-card .info-card-inner .info-icon svg,
.pos-dash-card .pos-card-inner .pos-icon svg,
.warehouse-card .warehouse-card-inner .warehouse-icon svg,
.job-info-card .job-card-inner .job-icon svg,
.deals-card .deals-card-inner .deals-icon svg,
.support-ticket-card .support-card-inner .support-icon svg,
.payout-card .payout-card-inner .payout-icon svg {
    height: 24px;
    width: 24px;
}
.dash-info-card .info-card-inner .info-icon svg path,
.pos-dash-card .pos-card-inner .pos-icon svg path,
.job-info-card .job-card-inner .job-icon svg path,
.deals-card .deals-card-inner .deals-icon svg path,
.support-ticket-card .support-card-inner .support-icon svg path,
.payout-card .payout-card-inner .payout-icon svg path {
    fill: #fff;
}
.dash-info-card:nth-child(4n + 1) .info-card-inner .info-icon svg path,
.dash-info-card:nth-child(4n + 1) .info-card-inner .bottom-svg path,
.pos-dash-card:nth-child(4n + 1) .pos-card-inner .bottom-svg path,
.dash-info-card:nth-child(4n + 1) .info-card-inner .bottom-svg path,
.pos-dash-card:nth-child(4n + 1) .pos-card-inner .pos-icon svg path,
.leave-card:nth-child(4n + 1) .leave-card-inner .star-bg path {
    fill: #FF3A6E;
}
.dash-info-card:nth-child(4n + 2) .info-card-inner .info-icon svg path,
.dash-info-card:nth-child(4n + 2) .info-card-inner .bottom-svg path,
.pos-dash-card:nth-child(4n + 2) .pos-card-inner .bottom-svg path,
.pos-dash-card:nth-child(4n + 2) .pos-card-inner .pos-icon svg path,
.leave-card:nth-child(4n + 2) .leave-card-inner .star-bg path {
    fill: #0CAF60;
}
.dash-info-card:nth-child(4n + 3) .info-card-inner .info-icon svg path,
.dash-info-card:nth-child(4n + 3) .info-card-inner .bottom-svg path,
.pos-dash-card:nth-child(4n + 3) .pos-card-inner .bottom-svg path,
.pos-dash-card:nth-child(4n + 3) .pos-card-inner .pos-icon svg path,
.leave-card:nth-child(4n + 3) .leave-card-inner .star-bg path {
    fill: #FFA21D;
}
.dash-info-card:nth-child(4n + 4) .info-card-inner .info-icon svg path,
.dash-info-card:nth-child(4n + 4) .info-card-inner .bottom-svg path,
.pos-dash-card:nth-child(4n + 4) .pos-card-inner .bottom-svg path,
.pos-dash-card:nth-child(4n + 4) .pos-card-inner .pos-icon svg path,
.leave-card:nth-child(4n + 4) .leave-card-inner .star-bg path {
    fill: #3EC9D6;
}
.dash-info-card:nth-child(4n + 1) .info-card-inner .info-content .info-link,
.pos-dash-card:nth-child(4n + 1) .pos-info a {
    color: #FF3A6E !important;
}
.dash-info-card:nth-child(4n + 2) .info-card-inner .info-content .info-link,
.pos-dash-card:nth-child(4n + 2) .pos-info a {
    color: #0CAF60 !important;
}
.dash-info-card:nth-child(4n + 3) .info-card-inner .info-content .info-link,
.pos-dash-card:nth-child(4n + 3) .pos-info a {
    color: #FFA21D !important;
}
.dash-info-card:nth-child(4n + 4) .info-card-inner .info-content .info-link,
.pos-dash-card:nth-child(4n + 4) .pos-info a {
    color: #3EC9D6 !important;
}
.job-content span,
.support-content span {
    color: #060606;
}
/* income-card css */
.income-card .income-card-inner {
    position: relative;
    z-index: 1;
}
.income-card .income-card-inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    height: 100%;
    width: 2px;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background: -o-radial-gradient(#6FD943 0%, #ffffff 100%, #6FD943 0%);
    background: radial-gradient(#6FD943 0%, #ffffff 100%, #6FD943 0%);
}
.income-card .income-card-inner .income-card-left,
.income-card .income-card-inner .income-card-right {
    max-width: 40%;
    width: 100%;
}
.income-card .income-card-left .income-info:not(:last-of-type),
.income-card .income-card-right .income-info:not(:last-of-type) {
    margin: 0 0 20px;
}
.income-card .income-info .income-icon-wrp {
    gap: 12px;
    margin: 0 0 14px;
}
.income-card .income-info .income-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 35px;
    width: 35px;
    border-radius: 4px;
}
.income-card .income-info.iday .income-icon {
    background-color: #6FD943;
}
.income-card .income-info.imonth .income-icon {
    background-color: #FFA21D;
}
.income-card .income-info.eday .income-icon {
    background-color: #3EC9D6;
}
.income-card .income-info.emonth .income-icon {
    background-color: #FF3A6E;
}
.income-card .income-info .income-icon svg {
    height: 20px;
    width: 20px;
}
.income-card .income-info .income-icon svg path {
    fill: #fff;
}
.income-card .income-info .income-text {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
.income-card .income-info .progress-line {
    position: relative;
    height: 4px;
    width: 100%;
    border-radius: 10px;
}
.income-card .income-info.iday .progress-line {
    background-color: rgba(111, 217, 67, 0.16);
}
.income-card .income-info.imonth .progress-line {
    background-color: rgba(255, 162, 29, 0.16);
}
.income-card .income-info.eday .progress-line {
    background-color: rgba(62, 201, 214, 0.16);
}
.income-card .income-info.emonth .progress-line {
    background-color: rgba(255, 58, 110, 0.16);
}
.income-card .income-info .progress-line::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 55%;
    border-radius: 10px;
    -webkit-animation: load 3s normal forwards;
    animation: load 3s normal forwards;
}
.income-card .income-info.iday .progress-line::before {
    background: #6FD943;
}
.income-card .income-info.imonth .progress-line::before {
    background: #FFA21D;
}
.income-card .income-info.eday .progress-line::before {
    background: #3EC9D6;
}
.income-card .income-info.emonth .progress-line::before {
    background: #FF3A6E;
}
.support-ticket-card:nth-child(4n + 1) .support-card-inner .support-icon svg path,
.job-info-card:nth-child(4n + 1) .job-card-inner .job-icon svg path,
.payout-card:nth-child(2n + 1) .payout-card-inner .payout-icon svg path,
.crm-dash-card:nth-child(3n + 1) .crm-card-inner .crm-icon svg path,
.deals-card:nth-child(4n + 1) .deals-card-inner .deals-icon svg path,
.leave-card:nth-child(4n + 1) .leave-card-inner .leave-icon svg path,
.project-dash-card:nth-child(3n + 1) .project-card-inner .project-icon svg path {
    fill: #FF3A6E;
}
.support-ticket-card:nth-child(4n + 2) .support-card-inner .support-icon svg path,
.job-info-card:nth-child(4n + 2) .job-card-inner .job-icon svg path,
.payout-card:nth-child(2n + 2) .payout-card-inner .payout-icon svg path,
.crm-dash-card:nth-child(3n + 2) .crm-card-inner .crm-icon svg path,
.deals-card:nth-child(4n + 2) .deals-card-inner .deals-icon svg path,
.leave-card:nth-child(4n + 2) .leave-card-inner .leave-icon svg path,
.project-dash-card:nth-child(3n + 2) .project-card-inner .project-icon svg path {
    fill: #0CAF60;
}
.support-ticket-card:nth-child(4n + 3) .support-card-inner .support-icon svg path,
.job-info-card:nth-child(4n + 3) .job-card-inner .job-icon svg path,
.crm-dash-card:nth-child(3n + 3) .crm-card-inner .crm-icon svg path,
.deals-card:nth-child(4n + 3) .deals-card-inner .deals-icon svg path,
.leave-card:nth-child(4n + 3) .leave-card-inner .leave-icon svg path,
.project-dash-card:nth-child(3n + 3) .project-card-inner .project-icon svg path {
    fill: #FFA21D;
}
.support-ticket-card:nth-child(4n + 4) .support-card-inner .support-icon svg path,
.job-info-card:nth-child(4n + 4) .job-card-inner .job-icon svg path,
.deals-card:nth-child(4n + 4) .deals-card-inner .deals-icon svg path,
.leave-card:nth-child(4n + 4) .leave-card-inner .leave-icon svg path {
    fill: #3EC9D6;
}
.leave-card:nth-child(4n + 1) .leave-card-inner .leave-icon i {
    color: #FF3A6E !important;
}
.leave-card:nth-child(4n + 2) .leave-card-inner .leave-icon i {
    color: #0CAF60 !important;
}
.leave-card:nth-child(4n + 3) .leave-card-inner .leave-icon i {
    color: #FFA21D !important;
}
.leave-card:nth-child(4n + 4) .leave-card-inner .leave-icon i {
    color: #3EC9D6 !important;
}
.deals-card .deals-card-inner .deals-icon svg path {
    fill: var(--bs-white);
}
.deals-card:nth-child(4n + 1) .deals-card-inner h5 {
    color: #FF3A6E;
}
.deals-card:nth-child(4n + 2) .deals-card-inner h5 {
    color: #0CAF60;
}
.deals-card:nth-child(4n + 3) .deals-card-inner h5 {
    color: #FFA21D;
}
.deals-card:nth-child(4n + 4) .deals-card-inner h5 {
    color: #3EC9D6;
}
.active-checkmark {
    fill: var(--bs-white) !important;
}
@-webkit-keyframes load {
    0% {
        width: 0;
    }
    100% {
        width: 55%;
    }
}
@keyframes load {
    0% {
        width: 0;
    }
    100% {
        width: 55%;
    }
}
/* support-ticket-card-css */
.support-ticket-card .support-card-inner .star-bg,
.crm-card-inner .star-bg,
.payout-card-inner .star-bg,
.deals-card-inner .star-bg,
.leave-card .star-bg,
.project-card-inner .star-bg,
.job-card-inner .star-bg {
    position: absolute;
    z-index: -1;
    top: 7px;
    left: 35px;
    height: 60px;
    width: 60px;
}
/* scrollbar css */
::-webkit-scrollbar {
    height: 6px;
    width: 6px;
}
::-webkit-scrollbar-thumb {
    background: #c6ceed;
    border-radius: 10px;
}
/* nav-ul css */
.nav-pills {
    gap: 0.5rem;
}
.nav .nav-item .nav-link {
    border-radius: 4px;
    font-weight: 600;
    border: 1px solid var(--theme-color);
}
/* staff-info-card css */
.staff-info-card .staff-info-inner {
    padding: 12px;
    border-radius: 10px;
}
.staff-info-card .staff-info p {
    font-weight: 600;
}
.staff-info-card {
    padding: 0 6px;
}
.staff-info-card-wrp .row {
    margin: 0 -6px;
}
.warehouse-card:nth-child(3n + 1) .warehouse-card-inner {
    background: rgba(255, 58, 110, 0.1);
}
.warehouse-card:nth-child(3n + 2) .warehouse-card-inner {
    background: rgba(111, 217, 67, 0.1);
}

.warehouse-card:nth-child(3n + 3) .warehouse-card-inner {
    background: rgba(255, 162, 29, 0.1);
}
.staff-info-card .staff-info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
.staff-info-card .staff-info-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    border-radius: 5px;
    background-color: var(--bs-white);
}
.staff-info-card:nth-child(4n + 1) .staff-info-inner{
    background-color: rgba(255, 58, 110, 0.1);
}
.staff-info-card:nth-child(4n + 2) .staff-info-inner{
    background-color: rgba(12, 175, 96, 0.1);

}
.staff-info-card:nth-child(4n + 3) .staff-info-inner {
    background-color: rgba(255, 162, 29, 0.1);
}
.staff-info-card:nth-child(4n + 4) .staff-info-inner{
    background-color: rgba(62, 201, 214, 0.1);
}

.staff-info-card:nth-child(4n + 1) .staff-info-icon svg path {
    fill: #FF3A6E;
}

.staff-info-card:nth-child(4n + 2) .staff-info-icon svg path {
    fill: #0CAF60;
}

.staff-info-card:nth-child(4n + 3) .staff-info-icon svg path {
    fill: #ffa21d;
}

.staff-info-card:nth-child(4n + 4) .staff-info-icon svg path {
    fill: #3EC9D6;
}
.staff-info-card .staff-info-icon svg {
    height: 25px;
    width: 25px;
}
.staff-info-card .staff-info-icon svg path {
    fill: #fff;
}
/* report-card css */
.report-card .card-body {
    padding: 15px;
}
.report-card .report-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    border-radius: 5px;
    background-color: var(--theme-color);
}
.report-card .report-icon svg {
    height: 22px;
    width: 22px;
}
.report-card .report-icon svg path,
.report-card .report-icon svg rect {
    fill: var(--bs-white);
}
.dash-row .info-icon-wrp {
    margin-bottom: 35px;
}
/* leave-card css */
.leave-card .leave-card-inner,
.project-dash-card .project-card-inner,
.warehouse-card .warehouse-card-inner,
.deals-card .deals-card-inner {
    position: relative;
    z-index: 1;
    padding: 15px;
    height: 100%;
    overflow: hidden;
    border-radius: 10px;
}
.leave-card:nth-child(3n + 1) .leave-card-inner .top-svg path,
.leave-card:nth-child(3n + 1) .leave-card-inner .bottom-svg path,
.project-dash-card:nth-child(3n + 1) .project-card-inner .bg-svg rect {
    fill: #FF3A6E;
}
.leave-card:nth-child(3n + 2) .leave-card-inner .top-svg path,
.leave-card:nth-child(3n + 2) .leave-card-inner .bottom-svg path,
.project-dash-card:nth-child(3n + 2) .project-card-inner .bg-svg rect {
    fill: #FFA21D;
}
.leave-card:nth-child(3n + 3) .leave-card-inner .top-svg path,
.leave-card:nth-child(3n + 3) .leave-card-inner .bottom-svg path,
.project-dash-card:nth-child(3n + 3) .project-card-inner .bg-svg rect {
    fill: #3EC9D6;
}
.leave-card .leave-card-inner .leave-info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
.leave-card .leave-card-inner .leave-icon,
.crm-dash-card .crm-card-inner .crm-icon,
.project-dash-card .project-card-inner .project-icon {
    height: 45px;
    width: 45px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 6px;
    background-color: #fff;
    border-radius: 4px;
}
.leave-card .leave-card-inner .leave-icon svg,
.crm-dash-card .crm-card-inner .crm-icon svg,
.project-dash-card .project-card-inner .project-icon svg {
    height: 24px;
    width: 24px;
}
.leave-card .leave-card-inner .leave-icon svg path,
.crm-dash-card .crm-card-inner .crm-icon svg path,
.project-dash-card .project-card-inner .project-icon svg path {
    fill: #fff;
}
/* crm-dash-card css */
.crm-dash-card .crm-card-inner,
.job-info-card .job-card-inner,
.support-ticket-card .support-card-inner,
.payout-card .payout-card-inner,
.contract-details-wrp .leave-card .leave-card-inner {
    position: relative;
    z-index: 1;
    padding: 15px;
    height: 100%;
    border-radius: 10px;
    background-color: var(--bs-white);
    overflow: hidden;
}
.contract-details-wrp .leave-card .leave-card-inner {
    border: 1px solid var(--bs-border-color);
    -webkit-box-shadow: rgba(149, 157, 165, 0.1) 0px 0px 16px 4px;
    box-shadow: rgba(149, 157, 165, 0.1) 0px 0px 16px 4px;
}
.crm-dash-card .crm-card-inner::before,
.job-info-card .job-card-inner::before,
.support-ticket-card .support-card-inner::before,
.payout-card .payout-card-inner::before {
    height: 55%;
}
.crm-dash-card .crm-card-inner .crm-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: center;
}
.contract-details-wrp .leave-card:nth-child(3n + 1) .leave-card-inner .leave-icon {
    background-color: #6FD943;
}
.contract-details-wrp .leave-card:nth-child(3n + 2) .leave-card-inner .leave-icon {
    background-color: #FFA21D;
}
.contract-details-wrp .leave-card:nth-child(3n + 3) .leave-card-inner .leave-icon {
    background-color: #3EC9D6;
}
.contract-details-wrp .leave-card .leave-card-inner .leave-icon i {
    color: var(--bs-white) !important;
}
/* project-dash-card css */
.project-dash-card .project-card-inner .bg-svg {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    z-index: -1;
    opacity: 0.1;
}
.project-dash-card .project-right span {
    padding: 8px 10px;
    background-color: #fff;
    border-radius: 5px;
    line-height: 1;
    font-weight: 700;
}
.project-dash-card .project-right p {
    color: #060606;
    font-weight: 600;
}
.project-dash-card:nth-child(3n + 1) .project-right span {
    color: #FF3A6E;
}
.project-dash-card:nth-child(3n + 2) .project-right span {
    color: #0CAF60;
}
.project-dash-card:nth-child(3n + 3) .project-right span {
    color: #FFA21D;
}
.project-dash-card .project-card-inner .project-left h2 {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
/* pos-dash-card css */
.pos-dash-card .pos-card-inner {
    position: relative;
    z-index: 1;
    padding: 15px;
    overflow: hidden;
    height: 100%;
    border-radius: 10px;
}
.flex-1 {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
.pos-price {
    text-transform: capitalize;
    font-weight: 600;
}
.pos-price h3 {
    font-size: 18px;
    line-height: 1;
}
/* warehouse-card css */
/* tooltip css */
.tooltip {
    z-index: 1000;
}
/* new dropdown css */
.dropdown-menu {
    padding: 7px 0 !important;
    overflow: hidden;
}
.dropdown-menu .dropdown-item {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    padding: 8px 15px;
    cursor: pointer;
}
.dropdown-menu .dropdown-item i {
    font-size: 18px;
}
/* schedule card css */
.schedule-wrp .schedule-item,
.schedule-wrp .schedule-item .schedule-item-right,
.event-wrp .event-item {
    gap: 12px;
}
.schedule-wrp .schedule-item .action-btns .btn,
.event-wrp .event-item .action-btns .btn {
    padding: 7px;
}
.schedule-wrp .schedule-item .date {
    color: #060606;
}
/* btn-group-colors css */
.btn-group-colors.event-tag>label {
    border: 1px solid transparent;
}
.btn-group-colors.event-tag>label:has(input:checked) {
    border-color: #060606;
}
/* event-card css */
.event-wrp .event-item .date-wrp {
    gap: 5px 10px;
}
.event-wrp .event-item .date-wrp .date {
    font-size: 13px;
}
.event-wrp .event-item .date-wrp .date:not(:last-of-type) {
    position: relative;
    padding: 0 12px 0 0;
}
.event-wrp .event-item .date-wrp .date:not(:last-of-type)::before,
.client-card .project-info-wrp .project-info:not(:last-of-type)::before,
.support-user-card .project-info-wrp .project-info:not(:last-of-type)::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 2px;
    border-radius: 10px;
    background: -o-radial-gradient(var(--theme-color) 0%, #ffffff 100%, var(--theme-color) 0%);
    background: radial-gradient(var(--theme-color) 0%, #ffffff 100%, var(--theme-color) 0%);
}
/* bill-timeline-card css */
.bill-timeline-card {
    position: relative;
    z-index: 1;
    padding: 25px;
    background: var(--bs-white);
    -webkit-box-shadow: 0 6px 30px rgba(182, 186, 203, 0.3);
    box-shadow: 0 6px 30px rgba(182, 186, 203, 0.3);
    border-radius: 10px;
}
.bill-timeline-card .timeline-wrapper {
    padding: 0;
}
.bill-timeline-card .invoice {
    position: relative;
    z-index: 1;
}
.bill-timeline-card .bill-timeline-inner .timeline-icon {
    height: 35px;
    width: 35px;
    border-radius: 50%;
    background-color: var(--bs-white);
    border: 1px solid #f1f1f1;
}
.user-card .user-count-wrp .user-count:nth-child(3n + 1) .user-icon,
.user-card .date-wrp .date .date-icon,
.client-card .date-wrp .date .date-icon {
    background-color: #ff3a6e;
}
.user-card .user-count-wrp .user-count:nth-child(3n + 2) .user-icon {
    background-color: #ffa21d;
}
.user-card .user-count-wrp .user-count:nth-child(3n + 3) .user-icon,
.user-card .date-wrp .time .time-icon,
.client-card .date-wrp .time .time-icon {
    background-color: #3EC9D6;
}
.bill-timeline-card .bill-timeline-inner .timeline-icon svg {
    height: 18px;
    width: 18px;
}
.bill-timeline-card .bill-timeline-inner .timeline-icon svg path {
    fill: #fff;
}
.bill-timeline-card .create-invoice .timeline-icon svg path {
    fill: #6FD943;
}
.bill-timeline-card .send-invoice .timeline-icon svg path {
    fill: #FFA21D;
}
.bill-timeline-card .get-paid .timeline-icon svg path {
    fill: #3EC9D6;
}
.bill-timeline-card .create-invoice .timeline-content h5 {
    color: #6FD943;
}
.bill-timeline-card .send-invoice .timeline-content h5 {
    color: #FFA21D;
}
.bill-timeline-card .get-paid .timeline-content h5 {
    color: #3EC9D6;
}
.bill-timeline-card .timeline-content .btn {
    border: 1px solid #ced4da;
}
.bill-timeline-card .timeline-content .btn i {
    font-size: 16px;
}
.timeline-wrapper .progress {
    background: var(--bs-border-color);
    border-radius: 50px;
    position: relative;
    height: 8px;
    width: 100%;
}
.timeline-wrapper .progress-value {
    background-color: #6FD943;
    -webkit-animation: invoice-load 3s normal forwards;
    animation: invoice-load 3s normal forwards;
    -webkit-box-shadow: 0 10px 40px -10px #fff;
    box-shadow: 0 10px 40px -10px #fff;
    border-radius: 50px;
    height: 8px;
    width: 0;
}
@keyframes invoice-load {
    0% {
        width: 0;
    }
    100% {
        width: 100%;
    }
}
/* crm-sales-card css */
.crm-sales-card .card-header,
.crm-sales-card .sales-item-wrp {
    padding: 20px;
}
.crm-sales-card,
.crm-sales-card .sales-item {
    background-color: #fff;
    border: 1px solid #F1F1F1;
    -webkit-box-shadow: 0px 4.08px 17.34px 0px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 4.08px 17.34px 0px rgba(0, 0, 0, 0.05);
    border-radius: 10px;
}
.crm-sales-card .sales-item:not(:last-of-type) {
    margin: 0 0 20px;
}
.crm-sales-card .card-header {
    border-bottom: 2px solid var(--theme-color);
}
.crm-sales-card .card-header>span {
    padding: 6px 9px;
    border: 1px solid var(--theme-color);
    color: var(--theme-color);
    border-radius: 5px;
    line-height: 1;
}
.crm-sales-card .sales-item .sales-item-top,
.crm-sales-card .sales-item .sales-item-center,
.crm-sales-card .sales-item .sales-item-bottom {
    padding: 15px;
}
.crm-sales-card .sales-item .badge-wrp {
    margin: 10px 0 0;
}
/* deals-card css */
.deals-card .deals-card-inner .top-svg {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    opacity: 0.3;
}
/* note-editor css */
.note-editor.note-frame {
    overflow: hidden;
}
.note-editor.card .card-header {
    background-color: #fff;
}
/* task-item css */
.task-item-wrp .task-item:not(:last-of-type),
.event-wrp .event-item:not(:last-of-type),
.schedule-wrp .schedule-item:not(:last-of-type) {
    margin: 0 0 15px;
}
.task-item-wrp,
.schedule-wrp,
.event-wrp {
    padding: 0 0 0 15px;
    border-left: 1px dashed var(--theme-color);
}
.task-item-wrp .task-item,
.event-wrp .event-item,
.schedule-wrp .schedule-item {
    position: relative;
    padding: 12px;
    background-color: var(--bs-white);
    border: 1px solid rgba(0, 0, 0, 0.06);
    -webkit-box-shadow: 0px 4px 17px 0px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 4px 17px 0px rgba(0, 0, 0, 0.05);
    border-radius: 10px;
}
.task-item-wrp .task-item .task-item-icon {
    background-color: var(--theme-color);
    height: 35px;
    width: 35px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 5px;
    border-radius: 4px;
}
.task-item-wrp .task-item::before,
.event-wrp .event-item::before,
.schedule-wrp .schedule-item::before {
    content: '';
    position: absolute;
    background-color: var(--theme-color);
    top: 21px;
    left: -21px;
    height: 10px;
    width: 10px;
    border-radius: 50%;
}
/* user-card css */
.user-card,
.client-card,
.support-user-card {
    padding: 15px;
    border-radius: 10px;
    background-color: #fff;
    -webkit-box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}
.user-card .user-image,
.client-card .client-image,
.support-user-card .user-image {
    height: 60px;
    width: 60px;
    overflow: hidden;
}
.user-card .user-image img,
.client-card .client-image img,
.support-user-card .user-image img {
    -o-object-fit: cover;
    object-fit: cover;
}
.user-card .user-count-wrp .user-count .user-icon,
.user-card .date-wrp .date .date-icon,
.user-card .date-wrp .time .time-icon,
.client-card .date-wrp .date .date-icon,
.client-card .date-wrp .time .time-icon {
    height: 25px;
    width: 25px;
    border-radius: 4px;
}
/* client-card css */
.client-card .project-info-wrp .project-info,
.support-user-card .project-info-wrp .project-info {
    position: relative;
}
.client-card .project-info-wrp .project-info:not(:last-of-type)::before,
.support-user-card .project-info-wrp .project-info:not(:last-of-type)::before {
    right: -0.5rem;
}
/* support-user-card css */
.support-user-card .date-wrp .date .date-icon {
    height: 31px;
    width: 31px;
    border-radius: 4px;
    background-color: var(--theme-color);
}
/* super admin dashboard-info-card css */
.dash-info-card .icon-wrp {
    position: relative;
    z-index: 1;
}
.dash-info-card .icon-wrp::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    z-index: -1;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.dash-info-card:nth-child(4n + 1) .icon-wrp::before {
    border: 1px dashed #FF3A6E;
}
.dash-info-card:nth-child(4n + 2) .icon-wrp::before {
    border: 1px dashed #6FD943;
}
.dash-info-card:nth-child(4n + 3) .icon-wrp::before {
    border: 1px dashed #51459D;
}
.dash-info-card:nth-child(4n + 4) .icon-wrp::before {
    border: 1px dashed #FFA21D;
}
.dash-info-card .icon-wrp .card-label {
    padding: 10px 15px;
    line-height: 1;
    color: #fff;
    border-radius: 5px;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
}
.dash-info-card.super-admin .info-card-inner::after {
    display: none;
}
.support-ticket-card:nth-child(4n + 1) .support-card-inner .bottom-svg path,
.crm-dash-card:nth-child(4n + 1) .crm-card-inner .bottom-svg path,
.payout-card:nth-child(2n + 1) .payout-card-inner .bottom-svg path,
.deals-card:nth-child(4n + 1) .deals-card-inner .bottom-svg path,
.job-info-card:nth-child(3n + 1) .job-card-inner .bottom-svg path,
.leave-card.leave-card:nth-child(4n + 1) .leave-card-inner .bottom-svg path,
.project-dash-card:nth-child(3n + 1) .project-card-inner .bottom-svg path {
    fill: #FF3A6E;
}
.support-ticket-card:nth-child(4n + 2) .support-card-inner .bottom-svg path,
.crm-dash-card:nth-child(4n + 2) .crm-card-inner .bottom-svg path,
.payout-card:nth-child(2n + 2) .payout-card-inner .bottom-svg path,
.deals-card:nth-child(4n + 2) .deals-card-inner .bottom-svg path,
.job-info-card:nth-child(3n + 2) .job-card-inner .bottom-svg path,
.leave-card:nth-child(4n + 2) .leave-card-inner .bottom-svg path,
.project-dash-card:nth-child(3n + 2) .project-card-inner .bottom-svg path {
    fill: #0CAF60;
}
.support-ticket-card:nth-child(4n + 3) .support-card-inner .bottom-svg path,
.crm-dash-card:nth-child(4n + 3) .crm-card-inner .bottom-svg path,
.deals-card:nth-child(4n + 3) .deals-card-inner .bottom-svg path,
.job-info-card:nth-child(3n + 3) .job-card-inner .bottom-svg path,
.leave-card:nth-child(4n + 3) .leave-card-inner .bottom-svg path,
.project-dash-card:nth-child(3n + 3) .project-card-inner .bottom-svg path {
    fill: #FFA21D;
}
.support-ticket-card:nth-child(4n + 4) .support-card-inner .bottom-svg path,
.crm-dash-card:nth-child(4n + 4) .crm-card-inner .bottom-svg path,
.deals-card:nth-child(4n + 4) .deals-card-inner .bottom-svg path,
.leave-card:nth-child(4n + 4) .leave-card-inner .bottom-svg path {
    fill: #3EC9D6;
}
.support-ticket-card .bottom-svg,
.crm-dash-card .bottom-svg,
.payout-card .bottom-svg,
.deals-card .bottom-svg,
.job-info-card .bottom-svg,
.leave-card .bottom-svg,
.project-card-inner .bottom-svg,
.warehouse-card-inner .bottom-svg {
    bottom: -22px;
    height: 75px;
    width: 75px;
}
.leave-card .leave-card-inner .leave-icon i {
    color: var(--bs-white);
}
/* setting page css */
.setting-sidebar {
    max-height: 100vh !important;
    overflow-y: auto;
}
/* table css */
.dataTable-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 15px;
}
.card:not(.table-card) .dataTable-bottom {
    padding-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 10px;
}
.dataTable-top::after,
.dataTable-bottom::after {
    display: none;
}
.dataTable-bottom .dataTable-info {
    margin: 0;
}
.dataTable-pagination .dataTable-pagination-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
}
.dataTable-pagination .dataTable-pagination-list a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #000 !important;
    border-color: #dee2e6;
    font-size: 14px;
    height: 35px;
    width: 35px;
    padding: 0;
    border-radius: 4px;
    margin: 0;
}
.dataTable-pagination li.active a,
.dataTable-pagination li a:focus,
.dataTable-pagination li a:hover,
.dataTable-pagination li.active a:focus,
.dataTable-pagination li.active a:hover {
    background-color: var(--theme-color);
    border-color: var(--theme-color);
    color: #fff !important;
}
#useradd-sidenav .list-group-item i {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
}
@media screen and (max-width: 767px) {
    /* dash-info-card css */
    .dash-info-card .info-card-inner .info-icon,
    .project-dash-card .project-card-inner .project-icon,
    .pos-dash-card .pos-card-inner .pos-icon,
    .warehouse-card .warehouse-card-inner .warehouse-icon,
    .job-info-card .job-card-inner .job-icon,
    .deals-card .deals-card-inner .deals-icon,
    .support-ticket-card .support-card-inner .support-icon,
    .payout-card .payout-card-inner .payout-icon {
        height: 40px;
        width: 40px;
        padding: 5px;
    }
    .dash-info-card .info-card-inner .info-icon svg,
    .project-dash-card .project-card-inner .project-icon svg,
    .pos-dash-card .pos-card-inner .pos-icon svg,
    .warehouse-card .warehouse-card-inner .warehouse-icon svg,
    .job-info-card .job-card-inner .job-icon svg,
    .deals-card .deals-card-inner .deals-icon svg,
    .support-ticket-card .support-card-inner .support-icon svg,
    .payout-card .payout-card-inner .payout-icon svg {
        height: 20px;
        width: 20px;
    }
    .dash-info-card .info-card-inner .info-content h3,
    .pos-dash-card .pos-card-inner .pos-price h4,
    .warehouse-card .warehouse-card-inner h4,
    .warehouse-card .warehouse-card-inner .h4 {
        font-size: 18px;
    }
    /* leave-card css */
    .leave-card {
        height: auto;
    }
    /* project-dash-card css */
    .project-dash-card .project-card-inner,
    .warehouse-card .warehouse-card-inner,
    .deals-card .deals-card-inner {
        padding: 15px;
    }
    /* card css */
    .card-header,
    .card-body,
    .card-footer {
        padding: 20px 15px;
    }
    .card .card-header:not(.border-0) h5:after,
    .card .card-header:not(.border-0) .h5:after {
        left: -15px;
    }
    .bill-timeline-card {
        padding: 20px 15px 0;
    }
    .bill-timeline-card .timeline-wrapper {
        padding: 0 0 15px;
    }
    .card:not(.table-card) .table-responsive {
        margin: -20px -15px 0 -15px;
        width: calc(100% + 30px);
    }
    .card:not(.table-card) .dataTable-bottom,
    .card:not(.table-card) .dataTable-top {
        padding: 20px 15px;
    }
    .card:not(.table-card) .table tr td:first-child,
    .card:not(.table-card) .table tr th:first-child {
        padding-left: 15px;
    }
    /* crm-sales-card css */
    .crm-sales-card .card-header,
    .crm-sales-card .sales-item-wrp {
        padding: 15px;
    }
    .product-body-nop .card {
        padding: 10px;
    }
}
@media screen and (max-width: 575px) {
    /* income-card css */
    .income-card .income-card-inner::before {
        display: none;
    }
    .income-card .income-card-inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 20px;
    }
    .income-card .income-card-inner .income-card-left,
    .income-card .income-card-inner .income-card-right {
        max-width: 100%;
    }
    .income-card .income-info h4 {
        font-size: 16px;
    }
    /* leave-card css */
    .leave-card .leave-card-inner .leave-icon {
        height: 45px;
        width: 45px;
        padding: 5px;
    }
    .leave-card .leave-card-inner .leave-icon svg {
        height: 24px;
        width: 24px;
    }
    /* dash-info-card-css */
    .dash-info-card .info-card-inner .card-label {
        font-size: 12px;
    }
}
/* 03.11 copy payslip */
.payslip-number {
    max-width: 170px;
    width: 100%;
}
/* 03.11 copy payslip */
/* Tooltip radius */
.tooltip-inner {
    border-radius: 4px !important;
    text-transform: capitalize;
}
/* messenger scrollbar */
.messenger-tab {
    max-height: 680px;
    height: 100% !important;
}
/* client-side-css */
.total-client-card .client-card-content p {
    color: #060606;
}
.total-client-card:nth-child(3n + 1) .progress-bar {
    background: #6FD943 !important;
}
.total-client-card:nth-child(3n + 2) .progress-bar {
    background: #FFA21D !important;
}
.total-client-card:nth-child(3n + 3) .progress-bar {
    background: #3EC9D6 !important;
}
.total-client-card:nth-child(3n + 1) .client-card-content h3 {
    color: #6FD943;
}
.total-client-card:nth-child(3n + 2) .client-card-content h3 {
    color: #FFA21D;
}
.total-client-card:nth-child(3n + 3) .client-card-content h3 {
    color: #3EC9D6;
}
/* For .progress background */
.total-client-card:nth-child(3n + 1) .progress {
    background-color: rgba(111, 217, 67, 0.16);
}
.total-client-card:nth-child(3n + 2) .progress {
    background-color: rgba(255, 162, 29, 0.16);
}
.total-client-card:nth-child(3n + 3) .progress {
    background-color: rgba(62, 201, 214, 0.16);
}
.client-card-wrp .card-body {
    padding: 15px;
}
/* choose-file-img-css-start */
.choose-file-img {
    width: 60px;
    height: 40px;
    border-radius: 6px;
    overflow: hidden;
}
.choose-file-img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
/* choose-file-img-css-end */
.form-label {
    color: #060606;
    font-weight: 600;
}
.form-group .text-xs {
    font-size: 0.700rem !important;
}
.row-gap-1 {
    row-gap: 16px;
}
.row-gap-2 {
    row-gap: 20px;
}
.project-info-inner b,
.info,
.list-group-item .client-name {
    color: #060606;
}
.card .table td,
.card .table th {
    border-top: 0;
}
select {
    text-overflow: ellipsis;
}
.col-form-label {
    padding-top: 0;
}
/* setting-page-design-start */
.setting-menu-div .card .card-header:not(.border-0) h5:after,
.setting-menu-div .card .card-header:not(.border-0) .h5:after {
    left: -16px;
}
.setting-logo-box .logo-content {
    background-color: #f9f9f9;
    width: 100%;
    border-radius: 5px;
    position: relative;
    padding-top: 25%;
}
.setting-logo-box .logo-content img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: scale-down;
    padding: 10px 0;
}
.setting-logo-box .logo-content.dark-logo {
    background-color: #002333;
}
.setting-menu-div .note-editor.note-frame {
    margin: 0;
}
.setting-logo-box .row .col-12 {
    padding: 0 6px;
}
.setting-logo-box .card-header h6 {
    font-size: 14px;
}
#seo-settings .logo-content {
    position: relative;
    background-color: #f9f9f9;
    width: 100%;
    border-radius: 5px;
    padding-top: 50%;
    overflow: hidden;
}
#seo-settings .logo-content .seo_image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#storage-settings .choices__inner {
    min-height: 42px;
    padding: 5.50px 7.5px 3.75px;
}
.custom-switch .btn-primary .switch-on {
    color: var(--bs-white);
}
.permission-inner {
    max-height: 177px;
    overflow-y: auto;
}
.permission-inner .badge{
    font-size: 12px;
}
/* setting-page-design-end */

/* advanced application shell */
:root {
    --shell-primary: var(--primary-color, #0897cf);
    --shell-primary-dark: var(--primary-color-dark, #0678a8);
    --shell-navy: #172033;
    --shell-muted: #6b7280;
    --shell-border: #e8edf3;
    --shell-surface: #ffffff;
    --shell-canvas: #f6f8fb;
}

body {
    background: var(--shell-canvas);
}

.dash-sidebar.light-sidebar {
    background: rgba(255, 255, 255, 0.98);
    border-right: 1px solid var(--shell-border);
    box-shadow: 8px 0 30px rgba(23, 32, 51, 0.045);
}

.dash-sidebar .m-header {
    min-height: 76px;
    height: 76px;
    padding: 12px 22px;
    border-bottom: 1px solid var(--shell-border);
    background: var(--shell-surface);
    box-sizing: border-box;
}

.dash-sidebar .m-header .b-brand,
.dash-sidebar .m-header .logo {
    max-width: 100%;
}

.dash-sidebar .navbar-content {
    padding: 18px 14px 28px;
}

.dash-sidebar .dash-navbar > .dash-item {
    margin: 4px 0;
}

.dash-sidebar .dash-navbar .dash-link {
    min-height: 48px;
    padding: 10px 13px;
    border-radius: 12px;
    color: #3e495b;
    font-weight: 600;
    transition: background-color .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.dash-sidebar .dash-navbar .dash-link .dash-micon {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    border-radius: 9px;
    color: #687386;
    background: #f3f6f9;
    transition: inherit;
}

.dash-sidebar .dash-navbar .dash-link:hover {
    color: var(--shell-primary-dark);
    background: #eef8fc;
    transform: translateX(2px);
}

.dash-sidebar .dash-navbar .dash-link:hover .dash-micon {
    color: var(--shell-primary);
    background: #fff;
}

.dash-sidebar .dash-navbar > .dash-item.active > .dash-link,
.dash-sidebar .dash-navbar > .dash-item.dash-trigger > .dash-link {
    color: #fff;
    background: linear-gradient(135deg, var(--shell-primary), var(--shell-primary-dark));
    box-shadow: 0 8px 18px rgba(var(--primary-rgb, 8, 151, 207), 0.24);
}

.dash-sidebar .dash-navbar > .dash-item.active > .dash-link .dash-micon,
.dash-sidebar .dash-navbar > .dash-item.dash-trigger > .dash-link .dash-micon {
    color: var(--shell-primary-dark);
    background: #fff;
}

.dash-sidebar .dash-navbar .dash-submenu {
    margin: 5px 0 8px 18px;
    padding: 5px 0 5px 14px;
    border-left: 1px solid #dce5ed;
}

.dash-sidebar .dash-navbar .dash-submenu .dash-link {
    min-height: 38px;
    padding: 8px 12px;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 500;
}

.dash-header {
    background: rgba(255, 255, 255, 0.92) !important;
    border-bottom: 1px solid var(--shell-border);
    box-shadow: 0 6px 22px rgba(23, 32, 51, 0.045);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.dash-header .header-wrapper {
    min-height: 76px;
    height: 76px;
    padding-top: 12px;
    padding-bottom: 12px;
    box-sizing: border-box;
}

.dash-header .dash-head-link {
    min-height: 44px;
    border: 1px solid var(--shell-border);
    border-radius: 11px;
    background: #fff;
    color: #465266;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.dash-header .dash-head-link:hover,
.dash-header .dash-h-item.show .dash-head-link {
    color: var(--shell-primary-dark);
    border-color: rgba(var(--primary-rgb, 8, 151, 207), 0.35);
    box-shadow: 0 6px 16px rgba(23, 32, 51, 0.08);
    transform: translateY(-1px);
}

.dash-header .theme-avtar {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    overflow: hidden;
}

.dash-header .dash-h-dropdown {
    margin-top: 9px;
    padding: 8px;
    border: 1px solid var(--shell-border);
    border-radius: 12px;
    box-shadow: 0 16px 38px rgba(23, 32, 51, 0.14);
}

.dash-header .dash-h-dropdown .dropdown-item {
    padding: 9px 11px;
    border-radius: 8px;
}

.dash-container .dash-content {
    padding-bottom: 36px;
}

.dash-content > .page-header {
    margin-bottom: var(--ui-gap);
    padding: 4px 2px 12px;
    border-bottom: 1px solid var(--shell-border);
}

.dash-content .page-header-title h4 {
    color: var(--shell-navy);
    font-size: 24px;
    font-weight: 700;
    letter-spacing: -0.02em;
}

.dash-content .breadcrumb {
    margin-bottom: 0;
}

.dash-content .breadcrumb-item,
.dash-content .breadcrumb-item a {
    color: var(--shell-muted);
    font-size: 13px;
}

.dash-content .breadcrumb-item a:hover {
    color: var(--shell-primary);
}

/* page shell: content grows, footer spans from the sidebar edge to the right edge.
   --sidebar-width follows the theme sidebar (255px expanded, 70px .minimenu, off-canvas <= 1024px). */
:root { --sidebar-width: 255px; }
body.minimenu { --sidebar-width: 70px; }

.app-page {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.app-page > .page-content {
    flex: 1 0 auto;
    top: 0;
    margin-top: 70px;
    min-height: 0;
}

.app-page > .dash-footer {
    position: relative;
    top: 0;
    margin: 0 0 0 var(--sidebar-width);
    width: calc(100% - var(--sidebar-width));
}

[dir="rtl"] .app-page > .dash-footer { margin: 0 var(--sidebar-width) 0 0; }

@media (max-width: 1024px) {
    .app-page > .dash-footer,
    [dir="rtl"] .app-page > .dash-footer {
        width: 100%;
        margin: 0;
    }
}

/* application footer: Secondary Color from Brand Settings, text contrast picked in Utility::brandColors */
.dash-footer {
    /* Brand Settings -> Footer colors (falls back to the Secondary Color; see Utility::brandColors) */
    --footer-text-rgb: var(--footer-font-rgb, var(--secondary-text-rgb, 255, 255, 255));
    color: rgb(var(--footer-text-rgb));
    background: var(--footer-bg-color, var(--secondary-color, #008ECC)) !important;
    border-top: 1px solid rgba(var(--footer-text-rgb), 0.14);
    box-shadow: 0 -6px 20px rgba(15, 23, 42, 0.08);
}

.dash-footer .footer-wrapper {
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px 24px;
    padding-top: 12px;
    padding-bottom: 12px;
}

.dash-footer .footer-wrapper p {
    margin: 0;
    color: rgba(var(--footer-text-rgb), 0.92) !important;
    font-size: 13px;
    line-height: 1.5;
}

.dash-footer .footer-copy {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    font-weight: 600;
}

/* white badge so the brand icon reads clearly on any Secondary Color */
.dash-footer .footer-brand-badge {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 6px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 11px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12);
}

.dash-footer .footer-brand-icon {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    background: transparent;
}

.dash-footer .footer-copy > span:last-child { min-width: 0; }

.dash-footer .footer-credit {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 2px 8px;
    text-align: end;
}

.dash-footer .footer-credit > span { white-space: nowrap; }
.dash-footer .footer-credit strong { color: rgb(var(--footer-text-rgb)); font-weight: 700; }
.dash-footer .footer-credit-dot { opacity: 0.7; }
.dash-footer .footer-credit-link { color: inherit; text-decoration: none; }
.dash-footer .footer-credit-link:hover strong { text-decoration: underline; }
.dash-footer .footer-credit-developer { display: inline-flex; align-items: center; gap: 5px; }
/* white chip: the gradient M stays legible on any Secondary Color */
.dash-footer .footer-credit-icon { display: block; flex: 0 0 auto; width: 20px; height: 20px; padding: 3px 2px; object-fit: contain; background: #fff; border-radius: 5px; box-sizing: border-box; }

@media (max-width: 767.98px) {
    .dash-footer { padding: 0 16px; }
    .dash-footer .footer-wrapper { flex-direction: column; justify-content: center; gap: 8px; padding-top: 14px; padding-bottom: 14px; text-align: center; }
    .dash-footer .footer-brand-badge { width: 36px; height: 36px; padding: 5px; border-radius: 10px; }
    .dash-footer .footer-credit { justify-content: center; text-align: center; }
}

@media (max-width: 479.98px) {
    /* two short lines read better than one line that wraps mid-phrase */
    .dash-footer .footer-credit { flex-direction: column; gap: 2px; }
    .dash-footer .footer-credit-dot { display: none; }
}

@media (max-width: 767.98px) {
    .dash-header .header-wrapper { min-height: 64px; }
    .dash-content > .page-header { padding-bottom: 10px; }
    .dash-content .page-header-title h4 { font-size: 21px; }
}
/* advanced application shell end */

/* sidebar variant 2: dark navy */
.dash-sidebar.sidebar-variant-dark,
.dash-sidebar.sidebar-variant-dark.transprent-bg {
    background: var(--sidebar-bg-color, #12325B) !important;
    border-right: 0;
    box-shadow: 10px 0 32px rgba(9, 24, 48, 0.18);
}

/* sidebar logo header: see "sidebar brand header" below */

.dash-sidebar.sidebar-variant-dark .navbar-content {
    background: transparent;
    overflow-x: hidden;
    padding-left: 7px;
    padding-right: 7px;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-link {
    color: var(--sidebar-font-color, #fff);
    background: transparent;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item > .dash-link {
    display: flex;
    align-items: center;
    width: 100%;
    padding-left: 8px;
    padding-right: 10px;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item > .dash-link .dash-mtext {
    flex: 1;
    min-width: 0;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item > .dash-link .dash-arrow {
    float: none;
    flex: 0 0 auto;
    margin-left: auto;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-link .dash-micon {
    flex: 0 0 34px;
    order: -1;
    color: var(--sidebar-font-color, #fff);
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.055);
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-link .dash-micon i,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-link .dash-micon svg {
    color: inherit !important;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-link .dash-arrow {
    color: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.7);
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-link:hover {
    color: var(--sidebar-font-color, #fff);
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.08);
    box-shadow: none;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-link:hover .dash-micon {
    color: var(--sidebar-font-color, #fff);
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.14);
}

.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.active > .dash-link,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.dash-trigger > .dash-link {
    color: var(--sidebar-font-color, #fff);
    background: linear-gradient(135deg, rgba(var(--primary-rgb, 8, 151, 207), 0.95), var(--shell-primary-dark));
    box-shadow: 0 9px 22px rgba(0, 0, 0, 0.18);
}

.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.active > .dash-link .dash-micon,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.dash-trigger > .dash-link .dash-micon {
    color: var(--sidebar-font-color, #fff);
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.2);
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu {
    width: 100%;
    margin: 3px 0 7px;
    padding: 3px 0 3px 12px;
    border-left: 0;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-submenu,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-submenu .dash-submenu {
    margin-left: 0;
    padding-left: 12px;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item {
    width: 100%;
    min-width: 0;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item::before,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-submenu > .dash-item::before,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-submenu .dash-submenu > .dash-item::before {
    left: 8px;
    top: 16px;
    width: 6px;
    height: 6px;
    border: 2px solid rgba(var(--sidebar-font-rgb, 157, 181, 211), 0.6);
    border-right-color: var(--sidebar-font-color, #fff);
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-width: 0;
    margin: 2px 0;
    padding: 8px 12px 8px 28px;
    color: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.78);
    white-space: normal;
    line-height: 1.35;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-submenu .dash-link {
    padding-left: 28px;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-submenu .dash-submenu .dash-link {
    padding-left: 28px;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active > .dash-link,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-link:hover {
    color: var(--sidebar-font-color, #fff);
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.1);
}

.dash-sidebar.sidebar-variant-dark .simplebar-scrollbar::before {
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.25);
}

/* sidebar variant 2 end */

/* unified navy application palette */
body {
    color: #26364d;
    background: #f2f6fb;
}

.dash-container,
.dash-content {
    background: radial-gradient(circle at 100% 0, rgba(var(--primary-rgb, 8, 151, 207), 0.055), transparent 30%), #f2f6fb;
}

.dash-header {
    background: linear-gradient(90deg, #ffffff 0%, #f7fbfe 100%) !important;
    border-bottom: 2px solid rgba(19, 45, 84, 0.10);
}

.dash-header .dash-head-link {
    color: #132d54;
    border-color: #dfe7f0;
}

.dash-header .dash-head-link i,
.dash-header .dash-head-link svg {
    color: #132d54;
}

.dash-content .page-header-title h4,
.dash-content .card .card-header h5,
.dash-content .card .card-header .h5 {
    color: #132d54;
}

.dash-content > .page-header {
    border-bottom-color: rgba(19, 45, 84, 0.12);
}

.dash-content .card {
    border: 1px solid #e1e8f0;
    box-shadow: 0 8px 24px rgba(19, 45, 84, 0.055);
}

.dash-content .card .card-header {
    border-bottom-color: #e7edf4;
}

.dash-content .card .card-header:not(.border-0) h5::after,
.dash-content .card .card-header:not(.border-0) .h5::after {
    background: linear-gradient(180deg, var(--shell-primary), var(--secondary-color, #132d54));
}

.dash-content .table thead th {
    color: #132d54;
    background: #f3f6fa;
    border-bottom-color: #dfe7f0;
}

.dash-content .table tbody td {
    color: #45546a;
}

.btn-primary {
    border-color: var(--shell-primary-dark) !important;
    background: linear-gradient(135deg, var(--shell-primary), var(--shell-primary-dark)) !important;
    box-shadow: 0 6px 14px rgba(var(--primary-rgb, 8, 151, 207), 0.18);
}

.btn-primary:hover,
.btn-primary:focus {
    border-color: #132d54 !important;
    background: linear-gradient(135deg, var(--shell-primary-dark), var(--shell-primary-dark)) !important;
}

/* unified navy application palette end */

/* sidebar state hierarchy: one active item, subtle opened parents */
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-item.dash-hasmenu.dash-trigger > .dash-link,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-item.dash-hasmenu.active > .dash-link {
    color: var(--sidebar-font-color, #fff);
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.065);
    box-shadow: none;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-item.dash-hasmenu.dash-trigger > .dash-link .dash-micon,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-item.dash-hasmenu.active > .dash-link .dash-micon {
    color: var(--sidebar-font-color, #fff);
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.11);
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-item.dash-hasmenu.dash-trigger > .dash-link .dash-arrow,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-item.dash-hasmenu.active > .dash-link .dash-arrow {
    color: var(--sidebar-font-color, #fff);
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-item.active:not(.dash-hasmenu) > .dash-link {
    color: var(--sidebar-font-color, #fff);
    background: linear-gradient(135deg, var(--shell-primary), var(--shell-primary-dark));
    box-shadow: 0 7px 17px rgba(0, 0, 0, 0.17);
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-item.active:not(.dash-hasmenu)::before {
    border-color: var(--sidebar-font-color, #fff);
    background: var(--sidebar-font-color, #fff);
    transform: none;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active:not(.dash-hasmenu) > .dash-link {
    color: var(--shell-primary) !important;
    background: rgba(var(--primary-rgb, 249, 115, 22), 0.10);
    box-shadow: none;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active:not(.dash-hasmenu) > .dash-link span,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active:not(.dash-hasmenu) > .dash-link i,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active:not(.dash-hasmenu) > .dash-link svg {
    color: var(--shell-primary) !important;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active:not(.dash-hasmenu)::before {
    border-color: var(--shell-primary);
    background: var(--shell-primary);
}
/* sidebar state hierarchy end */

/* sidebar icon states: icons in the Sidebar Font / Icon Color everywhere; the selected main item gets a secondary (gold) icon card.
   !important keeps custom-color.css (loaded later) from repainting icons/links in the primary color. */
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item > .dash-link .dash-micon,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item > .dash-link:hover .dash-micon {
    color: var(--sidebar-font-color, #fff) !important;
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.08) !important;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item > .dash-link:hover .dash-micon {
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.14) !important;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item:not(.active):not(.dash-trigger) > .dash-link:hover,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item:not(.active):not(.dash-trigger) > .dash-link:focus {
    color: var(--sidebar-font-color, #fff) !important;
    background: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.08) !important;
    box-shadow: none !important;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.active > .dash-link,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.dash-trigger > .dash-link,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.active > .dash-link .dash-mtext,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.dash-trigger > .dash-link .dash-mtext,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.active > .dash-link .dash-arrow,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.dash-trigger > .dash-link .dash-arrow {
    color: var(--sidebar-font-color, #fff) !important;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.active > .dash-link .dash-micon,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item.dash-trigger > .dash-link .dash-micon {
    color: var(--sidebar-font-color, #fff) !important;
    background: var(--secondary-color, #d4a017) !important;
    box-shadow: 0 4px 10px rgba(var(--secondary-rgb, 212, 160, 23), 0.35);
}

.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item > .dash-link .dash-micon i,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item > .dash-link .dash-micon svg,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item > .dash-link .dash-arrow svg,
.dash-sidebar.sidebar-variant-dark .dash-navbar > .dash-item > .dash-link .dash-arrow i {
    color: inherit !important;
    stroke: currentColor !important;
}

/* selected submenu item: keep the highlight, text + bullet in the secondary color */
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active:not(.dash-hasmenu) > .dash-link {
    color: var(--secondary-color, #d4a017) !important;
    background: rgba(var(--secondary-rgb, 212, 160, 23), 0.14) !important;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active:not(.dash-hasmenu) > .dash-link span,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active:not(.dash-hasmenu) > .dash-link i,
.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active:not(.dash-hasmenu) > .dash-link svg {
    color: var(--secondary-color, #d4a017) !important;
}

.dash-sidebar.sidebar-variant-dark .dash-navbar .dash-submenu .dash-item.active:not(.dash-hasmenu)::before {
    border-color: var(--secondary-color, #d4a017) !important;
    background: var(--secondary-color, #d4a017) !important;
}
/* sidebar icon states end */

/* application header: see public/css/app-header.css */

/* Compact responsive bank-account create/edit modal. */
#commonModal:has(.bank-account-modal-form) .modal-dialog {
  width: min(920px, calc(100% - 28px));
  max-width: 920px;
  margin: 20px auto;
}
#commonModal:has(.bank-account-modal-form) .modal-content {
  max-height: calc(100vh - 40px);
  overflow: hidden;
  border: 1px solid #bfe5f3;
  border-radius: 16px;
  box-shadow: 0 22px 55px rgba(19,45,84,.18);
}
#commonModal:has(.bank-account-modal-form) .modal-header {
  min-height: 66px;
  padding: 15px 22px;
  border-bottom: 1px solid #dceaf1;
}
#commonModal:has(.bank-account-modal-form) .modal-title {
  margin: 0;
  color: #132d54;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}
.bank-account-modal-heading {
  display: inline-flex;
  align-items: center;
  gap: 11px;
}
.bank-account-modal-icon {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #008ecc;
  background: #eaf7fc;
  border: 1px solid #bfe5f3;
  border-radius: 10px;
  font-size: 19px;
  line-height: 1;
}
.bank-account-modal-icon i {
  display: block;
  line-height: 1;
}
#commonModal:has(.bank-account-modal-form) .btn-close {
  flex: 0 0 auto;
  margin: 0;
  padding: 9px;
  border-radius: 9px;
}
#commonModal:has(.bank-account-modal-form) > .modal-dialog > .modal-content > .body {
  display: flex;
  min-height: 0;
  flex: 1 1 auto;
  overflow: hidden;
}
.bank-account-modal-form {
  display: flex;
  min-height: 0;
  flex: 1 1 auto;
  flex-direction: column;
  overflow: hidden;
}
.bank-account-modal-form > .modal-body {
  padding: 20px 22px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.bank-account-modal-form .row {
  --bs-gutter-x: 18px;
  --bs-gutter-y: 15px;
}
.bank-account-modal-form .form-group {
  margin-bottom: 0;
}
.bank-account-modal-form .form-label {
  margin-bottom: 6px;
  color: #132d54;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
}
.bank-account-modal-form .form-control,
.bank-account-modal-form .form-select,
.bank-account-modal-form .choices__inner {
  min-height: 44px;
  border: 1.5px solid #8fd8f2;
  border-radius: 10px;
  background-color: #fff;
}
.bank-account-modal-form textarea.form-control {
  min-height: 72px;
  max-height: 110px;
  resize: vertical;
}
.bank-account-modal-form .bank-account-field-help,
.bank-account-modal-form .text-xs {
  margin-top: 5px;
  font-size: 11px;
  line-height: 1.35;
}
.bank-account-modal-form .bank-account-field-help {
  color: #6b7280;
}
.bank-account-modal-form .bank-account-field-help a {
  color: #008ecc;
  font-weight: 700;
}
.bank-account-modal-form > .modal-footer {
  gap: 10px;
  justify-content: flex-end;
  padding: 14px 22px;
  border-top: 1px solid #dceaf1;
  background: #fbfdff;
}
.bank-account-modal-form > .modal-footer .btn {
  min-width: 108px;
  min-height: 42px;
  margin: 0;
  border-radius: 10px;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  #commonModal:has(.bank-account-modal-form) .modal-dialog {
    width: calc(100% - 20px);
    margin: 10px auto;
  }
  #commonModal:has(.bank-account-modal-form) .modal-content {
    max-height: calc(100vh - 20px);
  }
  #commonModal:has(.bank-account-modal-form) .modal-header,
  .bank-account-modal-form > .modal-body,
  .bank-account-modal-form > .modal-footer {
    padding-right: 16px;
    padding-left: 16px;
  }
}
@media (max-width: 575.98px) {
  .bank-account-modal-heading { gap: 9px; }
  .bank-account-modal-icon { width: 34px; height: 34px; flex-basis: 34px; font-size: 17px; }
  .bank-account-modal-form > .modal-footer {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .bank-account-modal-form > .modal-footer .btn {
    width: 100%;
    min-width: 0;
  }
}

/* Modern customer detail page. */
.customer-detail-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}
.customer-detail-actions form { display: inline-flex; margin: 0; }
.customer-detail-actions .btn {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: 0 !important;
  padding: 8px 14px;
  border-radius: 10px;
  font-weight: 700;
  white-space: nowrap;
}
.customer-show-modern {
  --customer-detail-navy: #132d54;
  --customer-detail-blue: #008ecc;
  --customer-detail-border: #dceaf1;
  width: 100%;
  max-width: 100%;
  overflow: visible;
}
.customer-show-modern .customer_card,
.customer-show-modern .customer-company-card,
.customer-show-modern .customer-document-card {
  margin-bottom: 0;
  overflow: hidden;
  border: 1px solid var(--customer-detail-border);
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 9px 26px rgba(19,45,84,.065);
}
.customer-show-modern .customer-document-card {
  display: flex;
  flex-direction: column;
}
.customer-show-modern .customer_card .card-body,
.customer-show-modern .customer-company-card .card-body { padding: 20px; }
.customer-card-heading {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
}
.customer-card-heading h5 {
  margin: 0;
  color: var(--customer-detail-navy, #132d54);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}
.customer-section-icon {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--customer-detail-blue, #008ecc);
  background: #eaf7fc;
  border: 1px solid #bfe5f3;
  border-radius: 10px;
  font-size: 19px;
  line-height: 1;
}
.customer-detail-list {
  display: grid;
  gap: 0;
  margin: 16px 0 0;
}
.customer-detail-list > div {
  display: grid;
  grid-template-columns: minmax(92px, .4fr) minmax(0, 1fr);
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px dashed #e3edf3;
}
.customer-detail-list > div:last-child { padding-bottom: 0; border-bottom: 0; }
.customer-detail-list dt {
  color: #758196;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.customer-detail-list dd {
  min-width: 0;
  margin: 0;
  color: #263b5e;
  font-size: 13px;
  font-weight: 600;
  overflow-wrap: anywhere;
}
.customer-company-card .customer-card-heading { margin-bottom: 17px; }
.customer-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.customer-stat {
  min-width: 0;
  padding: 15px;
  background: #f8fbfd;
  border: 1px solid #e0ebf1;
  border-radius: 11px;
}
.customer-stat span {
  display: block;
  margin-bottom: 7px;
  color: #758196;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .025em;
  text-transform: uppercase;
}
.customer-stat strong {
  display: block;
  color: var(--customer-detail-navy);
  font-size: 16px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}
.customer-stat.is-financial { background: #edf9fd; border-color: #bfe5f3; }
.customer-stat.is-financial strong { color: #067fac; }
.customer-stat.is-danger { background: #fff5f6; border-color: #ffd8dd; }
.customer-stat.is-danger strong { color: #dc3545; }
.customer-document-heading {
  min-height: 86px;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  padding: 20px 22px 24px;
  overflow: visible;
  background: linear-gradient(90deg,#fff,#f7fcfe);
  border-bottom: 1px solid var(--customer-detail-border);
  box-sizing: border-box;
}
.customer-document-heading .customer-card-heading,
.customer-document-heading .customer-section-icon { overflow: visible; }
.customer-document-card > .card-body {
  position: relative;
  flex: 0 0 auto;
  padding: 10px 0 0;
  margin: 0;
}
.customer-document-card .table-responsive {
  width: calc(100% - 32px);
  max-width: calc(100% - 32px);
  margin: 0 16px;
  overflow-x: auto;
  overflow-y: visible;
}
.customer-document-table {
  width: 100%;
  max-width: 1120px;
  min-width: 900px;
  margin: 0;
  table-layout: fixed;
}
.customer-document-table .customer-col-number { width: 64px; }
.customer-document-table .customer-col-document { width: 190px; }
.customer-document-table .customer-col-date { width: 145px; }
.customer-document-table .customer-col-amount { width: 145px; }
.customer-document-table .customer-col-status { width: 125px; }
.customer-document-table .customer-col-actions { width: 220px; }
.customer-document-table .customer-row-number {
  width: 64px;
  min-width: 64px;
  padding-right: 14px;
  padding-left: 14px;
  text-align: center;
}
.customer-document-table .customer-actions-column {
  width: 220px;
  min-width: 220px;
}
.customer-document-table thead th {
  padding: 13px 11px;
  color: var(--customer-detail-navy);
  background: #f3f7fb;
  border-bottom: 1px solid var(--customer-detail-border);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
  white-space: nowrap;
}
.customer-document-table tbody td {
  padding: 14px 11px;
  vertical-align: middle;
  border-bottom-color: #edf2f6;
}
.customer-document-table .modern-number {
  display: inline-flex;
  padding: 7px 11px;
  color: #067fac;
  background: #edf9fd;
  border: 1px solid #bfe5f3;
  border-radius: 9px;
  font-weight: 700;
  white-space: nowrap;
}
.customer-document-table .status_badge { min-width: 82px; font-size: 11px; }
.customer-document-table .customer-document-empty {
  height: 150px;
  text-align: center;
  vertical-align: middle;
  color: #758196;
}
.customer-document-table .customer-document-empty .customer-section-icon {
  display: flex;
  margin: 0 auto 10px;
}
.customer-document-table .customer-document-empty strong {
  display: block;
  color: #52627a;
  font-size: 13px;
}
.customer-document-table .modern-actions {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 6px;
  width: max-content;
  white-space: nowrap;
}
.customer-document-table .modern-actions form,
.customer-document-table .modern-actions .action-btn { margin: 0 !important; }
.customer-document-table .modern-actions .btn {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0;
  border-radius: 8px;
}
@media (max-width: 991.98px) {
  .customer-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .customer-detail-actions { width: 100%; justify-content: flex-start; }
  .customer-detail-actions .btn { flex: 1 1 calc(50% - 8px); }
  .customer-detail-actions form { flex: 1 1 calc(50% - 8px); }
  .customer-detail-actions form .btn { width: 100%; }
  .customer-document-card .table-responsive {
    width: calc(100% - 20px);
    max-width: calc(100% - 20px);
    margin: 0 10px;
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 575.98px) {
  .customer-stat-grid { grid-template-columns: 1fr; }
  .customer-show-modern .customer_card .card-body,
  .customer-show-modern .customer-company-card .card-body { padding: 17px; }
  .customer-detail-list > div { grid-template-columns: 1fr; gap: 3px; }
  .customer-detail-actions .btn,
  .customer-detail-actions form { flex-basis: 100%; }
}

/* Chart of Accounts text-search filter. */
.chart-account-search-layout {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
}
.chart-account-search-field {
  min-width: 0;
  max-width: 590px;
  flex: 0 1 590px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.chart-account-search-field .form-label {
  flex: 0 0 auto;
  margin: 0;
  color: #132d54;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
}
.chart-account-search-field .input-group {
  min-width: 260px;
  flex: 1 1 470px;
  flex-wrap: nowrap;
}
.chart-account-search-field .input-group-text {
  min-width: 46px;
  justify-content: center;
  color: #008ecc;
  background: #eef9fd;
  border: 1.5px solid #8fd8f2;
  border-right: 0;
  border-radius: 10px 0 0 10px;
}
.chart-account-search-field .form-control {
  min-height: 46px;
  border: 1.5px solid #8fd8f2;
  border-left: 0;
  border-radius: 0 10px 10px 0;
}
.chart-account-search-actions {
  display: flex;
  flex: 0 0 auto;
  gap: 9px;
}
.chart-account-search-actions .btn {
  width: 46px;
  min-width: 46px;
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0;
  border-radius: 10px;
  font-weight: 700;
  white-space: nowrap;
}
@media (max-width: 767.98px) {
  .chart-account-search-layout { align-items: stretch; flex-direction: column; }
  .chart-account-search-field { width: 100%; }
  .chart-account-search-field { max-width: none; flex: 1 1 auto; }
  .chart-account-search-actions { width: auto; align-self: flex-end; }
  .chart-account-search-actions .btn { flex: 0 0 46px; }
}
@media (max-width: 420px) {
  .chart-account-search-field { align-items: stretch; flex-direction: column; gap: 7px; }
  .chart-account-search-field .input-group { width: 100%; min-width: 0; flex-basis: auto; }
  .chart-account-search-actions { flex-direction: row; }
}

/* Reusable Modern Index components */
.modern-index-create-btn { min-height: 38px; display: inline-flex !important; align-items: center; justify-content: center; gap: 9px; padding: 8px 16px; color: #fff !important; background: #6fd943 !important; border: 1px solid #6fd943 !important; border-radius: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .045em; box-shadow: 0 7px 18px rgba(111,217,67,.28); }
.modern-index-import-btn,
.modern-index-export-btn { width: 38px; height: 38px; display: inline-flex !important; align-items: center; justify-content: center; color: #fff !important; border-radius: 10px; }
.modern-index-import-btn { background: #132d54 !important; border: 1px solid #132d54 !important; box-shadow: 0 7px 18px rgba(19,45,84,.24); }
.modern-index-export-btn { background: #008ecc !important; border: 1px solid #008ecc !important; box-shadow: 0 7px 18px rgba(0,142,204,.26); }
.modern-index-create-btn:hover,
.modern-index-import-btn:hover,
.modern-index-export-btn:hover { color: #fff !important; transform: translateY(-1px); }
.modern-index-page .modern-filter-card,
.modern-index-page .modern-table-card { border-radius: 16px; }
.modern-index-page .modern-filter-card { position: relative; z-index: 20; overflow: visible; }
.modern-index-page .modern-table-card { position: relative; z-index: 1; overflow: hidden; }
.modern-index-page .modern-filter-card .card-body { padding: 22px 24px; }
.modern-index-page .modern-filter-icon { width: 38px; height: 38px; flex: 0 0 38px; display: inline-flex; align-items: center; justify-content: center; color: #008ecc; background: #eaf7fc; border: 1.5px solid #8fd8f2; border-radius: 10px; }
.modern-index-page .modern-filter-heading { color: #132d54; font-weight: 700; }
.modern-index-page .form-control,
.modern-index-page .choices__inner { min-height: var(--ui-control-h); border: 1.5px solid #8fd8f2; border-radius: 10px; transition: border-color .2s ease, box-shadow .2s ease; }
.modern-index-page .form-control:focus,
.modern-index-page .choices.is-focused .choices__inner,
.modern-index-page .choices.is-open .choices__inner { border-color: #008ecc; box-shadow: 0 0 0 3px rgba(0,142,204,.13); }
.modern-index-page .choices { position: relative; width: 100%; margin-bottom: 0; }
.modern-index-page .choices.is-open { z-index: 1090; }
.modern-index-page .choices__inner { width: 100%; padding: 8px 38px 7px 12px; background: #fff; }
.modern-index-page .choices__list--single { padding: 3px 0; }
.modern-index-page .choices__list--dropdown { z-index: 1091; width: 100%; border: 1.5px solid #8fd8f2; border-radius: 10px; box-shadow: 0 12px 30px rgba(71,190,232,.28), 0 0 0 3px rgba(143,216,242,.16); overflow: hidden; }
.modern-index-page .choices__list--dropdown .choices__input { width: calc(100% - 20px); margin: 10px; border: 1.5px solid #8fd8f2; border-radius: 8px; }
.modern-index-page .modern-filter-actions { display: flex; align-items: center; gap: 8px; padding-top: 27px; }
.modern-index-page .modern-filter-actions .btn { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; border-radius: 10px; }
.modern-index-page .modern-table-card .card-header { padding: 14px var(--ui-card-pad); background: #fff; }
.modern-index-page .modern-count { color: var(--secondary-color-dark, #0678a8); background: rgba(var(--secondary-rgb, 8, 151, 207), 0.10); border-radius: 999px; padding: 5px 11px; font-size: 12px; font-weight: 700; }
.modern-index-page .modern-table-card .card-body { padding: var(--ui-card-pad); }
.modern-index-page .modern-table { margin-bottom: 0; }
.modern-index-page .modern-table th { white-space: nowrap; font-size: 12px; letter-spacing: .025em; }
.modern-index-page .modern-table td { vertical-align: middle; white-space: nowrap; }
.modern-index-page .modern-number { display: inline-flex; align-items: center; gap: 7px; color: var(--secondary-color-dark, #0678a8); background: rgba(var(--secondary-rgb, 8, 151, 207), 0.10); border: 1px solid rgba(var(--secondary-rgb, 8, 151, 207), 0.35); border-radius: 9px; padding: 7px 11px; font-weight: 700; }
.modern-index-page .modern-number:hover { color: #fff; background: #008ecc; border-color: #008ecc; }
.modern-index-page .modern-status { min-width: 90px; border-radius: 999px !important; font-size: 11px; letter-spacing: .02em; }
.modern-index-page .modern-actions { display: flex; align-items: center; gap: 7px; }
.modern-index-page .modern-actions .action-btn { margin: 0 !important; }
.modern-index-page .modern-actions .btn { width: var(--ui-action-btn); height: var(--ui-action-btn); display: inline-flex; align-items: center; justify-content: center; margin: 0 !important; border-radius: 9px; }
.modern-index-page .dataTable-top,
.modern-index-page .dataTable-bottom { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding-left: 0; padding-right: 0; }
.modern-index-page .dataTable-dropdown,
.modern-index-page .dataTable-search { float: none; }
.modern-index-page .dataTable-selector,
.modern-index-page .dataTable-input { min-height: var(--ui-control-h); border: 1.5px solid #8fd8f2; border-radius: 10px; background: #fff; color: #263b5e; box-shadow: 0 7px 18px rgba(71,190,232,.18); }
.modern-index-page .dataTable-selector { min-width: 78px; padding: 9px 34px 9px 13px; }
.modern-index-page .dataTable-input { width: min(100%,240px); padding: 9px 14px; }
.modern-index-page .dataTable-selector:focus,
.modern-index-page .dataTable-input:focus { border-color: #008ecc; outline: 0; box-shadow: 0 0 0 3px rgba(143,216,242,.32), 0 8px 22px rgba(71,190,232,.20); }
.modern-index-page .dataTable-info { display: inline-flex; align-items: center; min-height: 38px; margin: 0; padding: 7px 13px; color: #17658a; background: #f2fbfe; border: 1px solid #b9e6f5; border-radius: 999px; box-shadow: 0 5px 14px rgba(71,190,232,.14); font-size: 12px; font-weight: 600; }
.modern-index-page .dataTable-pagination-list { display: flex; flex-wrap: wrap; gap: 7px; margin: 0; }
.modern-index-page .dataTable-pagination-list li { margin: 0; }
.modern-index-page .dataTable-pagination-list a { min-width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; color: #087eae; background: #fff; border: 1.5px solid #8fd8f2; border-radius: 9px; box-shadow: 0 6px 16px rgba(71,190,232,.16); }
.modern-index-page .dataTable-pagination li.active a,
.modern-index-page .dataTable-pagination li a:hover { color: #fff; background: #008ecc; border-color: #008ecc; }

/* Modern Index form controls used inside AJAX modals */
.modern-index-form .form-label { color: #132d54; font-weight: 600; }
.modern-index-form .form-control,
.modern-index-form .choices__inner { min-height: var(--ui-control-h); width: 100%; color: #263b5e; background: #fff; border: 1.5px solid #8fd8f2; border-radius: 10px; transition: border-color .2s ease, box-shadow .2s ease; }
.modern-index-form textarea.form-control { min-height: 86px; resize: vertical; }
.modern-index-form .form-control:hover,
.modern-index-form .choices__inner:hover { border-color: #47bee8; }
.modern-index-form .form-control:focus,
.modern-index-form .choices.is-focused .choices__inner,
.modern-index-form .choices.is-open .choices__inner { border-color: #008ecc; outline: 0; box-shadow: 0 0 0 3px rgba(0,142,204,.13), 0 7px 18px rgba(71,190,232,.12); }
.modern-index-form .choices { position: relative; width: 100%; margin-bottom: 0; }
.modern-index-form .choices.is-open { z-index: 1090; }
.modern-index-form .choices__inner { padding: 8px 38px 7px 12px; }
.modern-index-form .choices__list--single { padding: 3px 0; }
.modern-index-form .choices__list--dropdown { z-index: 1091; border: 1.5px solid #8fd8f2; border-radius: 10px; box-shadow: 0 12px 30px rgba(71,190,232,.28); overflow: hidden; }
.modern-index-form .choices__list--dropdown .choices__input { width: calc(100% - 20px); margin: 10px; border: 1.5px solid #8fd8f2; border-radius: 8px; }
.modern-index-form .form-check-input { border-color: #8fd8f2; }
.modern-index-form .form-check-input:focus { border-color: #008ecc; box-shadow: 0 0 0 3px rgba(0,142,204,.13); }
.modern-index-form .form-check-input:checked { background-color: #008ecc; border-color: #008ecc; }
.modern-index-form .modern-form-section-title { display: flex; align-items: center; margin: 4px 0 18px; padding: 11px 14px; color: #132d54; background: #f2fbfe; border: 1px solid #bfe5f3; border-radius: 10px; font-size: 14px; font-weight: 700; }
.modern-index-form .modern-form-section-title:not(:first-child) { margin-top: 8px; }
.modern-index-form .modern-form-section-title i { color: #008ecc; font-size: 18px; }
.modern-index-form .modal-footer { border-top-color: #dceef5; }

/* Reusable full-page Modern Create and Edit layout */
.modern-create-edit-page { --modern-form-border: #dceaf1; --modern-form-soft: #f2fbfe; --modern-form-navy: #132d54; }
.modern-create-edit-page .modern-form-card,
.modern-create-edit-page .modern-line-items-card { border: 1px solid var(--modern-form-border); border-radius: 16px; box-shadow: 0 10px 28px rgba(19,45,84,.07); }
.modern-create-edit-page .modern-form-card { overflow: visible; }
.modern-create-edit-page .modern-form-card > .card-body { padding: 26px; }
.modern-create-edit-page .modern-form-heading { display: flex; align-items: center; gap: 10px; margin-bottom: 22px; color: var(--modern-form-navy); font-size: 16px; font-weight: 700; }
.modern-create-edit-page .modern-form-heading-icon { width: 38px; height: 38px; flex: 0 0 38px; display: inline-flex; align-items: center; justify-content: center; color: #008ecc; background: #eaf7fc; border: 1px solid #bfe5f3; border-radius: 10px; font-size: 19px; line-height: 1; }
.modern-create-edit-page .modern-form-heading-icon i { display: inline-block; color: #008ecc; font-size: 19px; line-height: 1; }
.modern-create-edit-page .modern-form-helper { color: #66758b; font-size: 12px; }
.modern-create-edit-page .modern-form-helper a { color: #008ecc; font-weight: 700; }
.modern-create-edit-page .modern-line-items-card { overflow: hidden; }
.modern-create-edit-page .modern-line-items-header { padding: 18px 22px; background: linear-gradient(90deg,#fff,#f7fcfe); border-bottom: 1px solid var(--modern-form-border); }
.modern-create-edit-page .modern-line-items-header [data-repeater-create] { min-height: 42px; padding: 9px 17px; border-radius: 10px; font-weight: 700; box-shadow: 0 7px 17px rgba(0,142,204,.20); }
.modern-create-edit-page .modern-line-items-card > .card-body,
.modern-create-edit-page .modern-line-items-card .modern-line-items-body { padding: 0; }
.modern-create-edit-page .modern-line-items-table { min-width: 1080px; margin-bottom: 0; }
.modern-create-edit-page .modern-line-items-table thead th { padding: 15px 12px; color: var(--modern-form-navy); background: #f3f7fb; border-bottom: 1px solid var(--modern-form-border); font-size: 12px; letter-spacing: .025em; white-space: nowrap; }
.modern-create-edit-page .modern-line-items-table tbody td { padding: 16px 12px; vertical-align: middle; border-bottom-color: #edf2f6; }
.modern-create-edit-page .modern-line-items-table .modern-sequence-header,
.modern-create-edit-page .modern-line-items-table .modern-sequence-number { width: 72px !important; min-width: 72px !important; max-width: 72px !important; padding-right: 0 !important; padding-left: 0 !important; box-sizing: border-box; text-align: center !important; vertical-align: middle !important; }
.modern-create-edit-page .modern-line-items-table tfoot td { padding: 11px 12px; background: #fbfdff; border-color: #e7eef4; }
.modern-create-edit-page .modern-line-items-table tfoot tr:last-child td { color: var(--secondary-color-dark, #0678a8); background: rgba(var(--secondary-rgb, 8, 151, 207), 0.10); font-size: 15px; }
.modern-create-edit-page .modern-form-actions { margin-top: 22px; padding: 18px 0 0; border-top: 1px solid var(--modern-form-border); }
.modern-create-edit-page .modern-form-actions .btn { min-width: 112px; min-height: 42px; border-radius: 10px; font-weight: 700; }
.dash-container .page-header + .row.invoice-modern-page { padding-top: 0; }
.invoice-modern-page { --invoice-border: #dceaf1; --invoice-navy: #132d54; }
.invoice-modern-page .invoice-details-card,
.invoice-modern-page .invoice-items-card { border: 1px solid var(--invoice-border); border-radius: 16px; box-shadow: 0 10px 28px rgba(19,45,84,.07); }
.invoice-modern-page .invoice-details-card { overflow: visible; }
.invoice-modern-page .invoice-details-card .card-body { padding: 26px; }
.invoice-modern-page .invoice-section-heading { display: flex; align-items: center; gap: 11px; color: var(--invoice-navy); font-size: 16px; font-weight: 700; }
.invoice-modern-page .invoice-section-icon { width: 38px; height: 38px; flex: 0 0 38px; display: inline-flex; align-items: center; justify-content: center; color: #008ecc; background: #eaf7fc; border: 1px solid #bfe5f3; border-radius: 10px; font-size: 19px; }
.invoice-modern-page .invoice-details-heading { margin-bottom: 22px; }
.invoice-modern-page .invoice-items-card { overflow: visible; }
.invoice-modern-page .invoice-items-header {
  position: relative;
  z-index: 1;
  min-height: 96px;
  height: auto !important;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
  gap: 20px;
  padding: 22px 24px;
  overflow: visible;
  background: #fff;
  border-bottom: 1px solid var(--invoice-border);
}
.invoice-modern-page .invoice-items-header .invoice-section-heading,
.invoice-modern-page .invoice-items-header .all-button-box { display: flex; align-items: center; margin: 0; }
.invoice-modern-page .invoice-items-header .invoice-section-heading { min-width: 0; }
.invoice-modern-page .invoice-items-header .all-button-box { flex: 0 0 auto; }
.invoice-modern-page .invoice-add-item { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; margin: 0; padding: 9px 17px; border-radius: 10px; font-weight: 700; line-height: 1.2; box-shadow: 0 7px 17px rgba(0,142,204,.20); }
.invoice-modern-page .invoice-items-card > .card-body { position: relative; z-index: 0; padding: 0; }
.invoice-modern-page .invoice-items-card,
.invoice-modern-page .invoice-items-card > .card-body,
.invoice-modern-page .invoice-items-card .table-border-style,
.invoice-modern-page .invoice-items-card .table-responsive {
  height: auto !important;
  min-height: 0;
  max-height: none !important;
}
.invoice-modern-page .invoice-items-card .table-responsive {
  display: block;
  width: 100% !important;
  margin: 0 !important;
  overflow: visible;
}
.invoice-modern-page .invoice-items-card .table-responsive:has(.choices.is-open) {
  overflow: visible !important;
}
.invoice-modern-page #sortable-table { width: 100%; min-width: 1120px; margin-bottom: 0; table-layout: fixed; }
.invoice-modern-page #sortable-table .invoice-col-sequence { width: 55px; }
.invoice-modern-page #sortable-table .invoice-col-product { width: 300px; }
.invoice-modern-page #sortable-table .invoice-col-quantity { width: 145px; }
.invoice-modern-page #sortable-table .invoice-col-price { width: 125px; }
.invoice-modern-page #sortable-table .invoice-col-discount { width: 125px; }
.invoice-modern-page #sortable-table .invoice-col-tax { width: 115px; }
.invoice-modern-page #sortable-table .invoice-col-amount { width: 105px; }
.invoice-modern-page #sortable-table .invoice-col-action { width: 80px; }
.invoice-modern-page #sortable-table thead { position: static; transform: none; }
.invoice-modern-page #sortable-table thead tr { height: auto; }
.invoice-modern-page #sortable-table thead th { height: auto; padding: 15px 12px; vertical-align: middle; line-height: 1.35; color: var(--invoice-navy); background: #f3f7fb; border-bottom: 1px solid var(--invoice-border); font-size: 12px; letter-spacing: .025em; white-space: nowrap; }
.invoice-modern-page #sortable-table tbody td { padding: 16px 12px; vertical-align: middle; border-bottom-color: #edf2f6; }
.invoice-modern-page #sortable-table tbody > tr:not(.d-none) > td { height: 78px; vertical-align: middle !important; }
.invoice-modern-page #sortable-table tbody > tr:not(.d-none) > td > .form-group,
.invoice-modern-page #sortable-table tbody > tr:not(.d-none) > td > .choices,
.invoice-modern-page #sortable-table tbody > tr:not(.d-none) > td > .action-btn { margin-top: 0 !important; margin-bottom: 0 !important; }
.invoice-modern-page #sortable-table tbody td > .choices {
  position: relative;
  width: 100%;
  margin: 0 !important;
}
.invoice-modern-page #sortable-table tbody td > .choices.is-open { z-index: 1200; }
.invoice-modern-page #sortable-table .invoice-product-cell,
.invoice-modern-page #sortable-table tbody,
.invoice-modern-page #sortable-table tbody tr,
.invoice-modern-page #sortable-table tbody td { overflow: visible; }
.invoice-modern-page #sortable-table .invoice-product-cell .choices__list--dropdown {
  z-index: 1201;
  overflow: hidden;
  border: 1.5px solid #8fd8f2;
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(19,45,84,.18);
}
.invoice-modern-page #sortable-table .invoice-product-cell .choices__list--dropdown > .choices__list {
  max-height: 280px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.invoice-modern-page #sortable-table tbody td > .choices .choices__inner,
.invoice-modern-page #sortable-table tbody td > .input-group {
  min-height: var(--ui-control-h);
  height: 45px;
  box-sizing: border-box;
}
.invoice-modern-page #sortable-table tbody td > .input-group > .form-control,
.invoice-modern-page #sortable-table tbody td > .input-group > .input-group-text {
  min-height: var(--ui-control-h);
  height: 45px;
}
.invoice-modern-page #sortable-table .invoice-product-cell .choices__list--single { overflow: hidden; }
.invoice-modern-page #sortable-table .invoice-product-cell .choices__item--selectable { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.invoice-modern-page #sortable-table tbody td.amount { padding-right: 12px !important; line-height: 45px; text-align: right !important; white-space: nowrap; }
.invoice-modern-page #sortable-table tbody td:last-child .action-btn { display: flex; align-items: center; justify-content: center; min-height: var(--ui-control-h); }
.invoice-modern-page #sortable-table .invoice-row-number-header,
.invoice-modern-page #sortable-table .invoice-row-number { width: 72px !important; min-width: 72px !important; max-width: 72px !important; padding-right: 12px !important; padding-left: 12px !important; box-sizing: border-box; text-align: center !important; vertical-align: middle !important; }
.invoice-modern-page #sortable-table .invoice-row-number-header { line-height: 1; transform: none; }
.invoice-modern-page #sortable-table .invoice-sequence-label { display: inline-block; transform: translateX(22px); }
.invoice-modern-page #sortable-table .invoice-row-number::before { display: flex; align-items: center; justify-content: center; width: 100%; height: 45px; margin: 0; line-height: 1; text-align: center; transform: translateX(22px); }
.invoice-modern-page #sortable-table .form-group { margin-bottom: 0; }
.invoice-modern-page #sortable-table .amount { color: var(--invoice-navy); font-weight: 700; }
.invoice-modern-page #sortable-table tfoot td { padding: 11px 12px; background: #fbfdff; border-color: #e7eef4; }
.invoice-modern-page #sortable-table tfoot tr:last-child td { color: var(--secondary-color-dark, #0678a8); background: rgba(var(--secondary-rgb, 8, 151, 207), 0.10); font-size: 15px; }
.invoice-modern-page .invoice-form-actions { margin-top: 22px; padding: 18px 0 0; border-top: 1px solid var(--invoice-border); }
.invoice-modern-page .invoice-form-actions .btn { min-width: 112px; min-height: 42px; border-radius: 10px; font-weight: 700; }

/* Shared line-item behavior for Proposal, Purchase and Bill. */
.transaction-line-page:not(.invoice-modern-page) .repeater { overflow: visible; border: 1px solid #dceaf1; border-radius: 16px; box-shadow: 0 10px 28px rgba(19,45,84,.07); }
.transaction-line-page:not(.invoice-modern-page) .repeater > .item-section { min-height: 88px; display: flex; align-items: center; padding: 20px 24px !important; background: #fff; border-bottom: 1px solid #dceaf1; }
.transaction-line-page:not(.invoice-modern-page) .repeater > .card-body { padding: 0; }
.transaction-line-page:not(.invoice-modern-page) .repeater .table-responsive { width: 100% !important; height: auto !important; max-height: none !important; margin: 0 !important; overflow: visible; }
.transaction-line-page:not(.invoice-modern-page) .repeater table { min-width: 980px; margin: 0; table-layout: fixed; }
.transaction-line-page:not(.invoice-modern-page) .repeater thead th { height: auto; padding: 15px 12px; vertical-align: middle; line-height: 1.35; white-space: nowrap; }
.transaction-line-page:not(.invoice-modern-page) .repeater tbody td { padding: 16px 12px; vertical-align: middle; overflow: visible; }
.transaction-line-page:not(.invoice-modern-page) .repeater tbody td:first-child { width: 280px; }
.transaction-line-page:not(.invoice-modern-page) .repeater .form-group { margin-bottom: 0; }
.transaction-line-page:not(.invoice-modern-page) .repeater .item { width: 100%; text-overflow: ellipsis; }
.transaction-line-page:not(.invoice-modern-page) .repeater .select2-container { width: 100% !important; }
.transaction-line-page:not(.invoice-modern-page) .repeater .select2-dropdown,
.transaction-line-page:not(.invoice-modern-page) .repeater .choices.is-open { z-index: 1200; }
.transaction-line-page:not(.invoice-modern-page) .repeater .choices__list--dropdown > .choices__list { max-height: 280px; overflow-y: auto; }
.transaction-line-page:not(.invoice-modern-page) .repeater .amount { padding-right: 12px !important; text-align: right !important; white-space: nowrap; }
.transaction-line-page:not(.invoice-modern-page) .transaction-active-item > tr:first-child { background: rgba(0,142,204,.025); }

/* Bill expense rows: keep Choices selects and input groups on one precise baseline. */
.transaction-line-page .bill-expense-list-header {
  min-height: 72px !important;
  justify-content: flex-end !important;
  padding: 14px 24px !important;
}
.transaction-line-page .bill-expense-list-header > .row { width: 100%; margin: 0; }
.transaction-line-page .bill-expense-list-header .all-button-box { margin: 0 0 0 auto !important; }
.transaction-line-page .bill-expense-list-header [data-repeater-create] {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.transaction-line-page .bill-expense-list-table .bill-expense-row > td {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
  vertical-align: middle !important;
}
.transaction-line-page .bill-expense-list-table .bill-expense-row .form-group,
.transaction-line-page .bill-expense-list-table .bill-expense-row .choices,
.transaction-line-page .bill-expense-list-table .bill-expense-row .input-group { margin-bottom: 0 !important; }
.transaction-line-page .bill-expense-list-table .bill-expense-row .choices,
.transaction-line-page .bill-expense-list-table .bill-expense-row .input-group { width: 100%; min-height: var(--ui-control-h); }
.transaction-line-page .bill-expense-list-table .bill-expense-row .choices__inner,
.transaction-line-page .bill-expense-list-table .bill-expense-row .input-group > .form-control,
.transaction-line-page .bill-expense-list-table .bill-expense-row .input-group > .input-group-text {
  min-height: var(--ui-control-h);
  height: 45px;
  border-color: #8fd8f2;
}
.transaction-line-page .bill-expense-list-table .bill-expense-row .choices__inner {
  padding: 8px 38px 7px 12px;
  border-radius: 10px;
}
.transaction-line-page .bill-expense-list-table .bill-expense-row .input-group > .form-control,
.transaction-line-page .bill-expense-list-table .bill-expense-row .input-group > .input-group-text { padding: 8px 12px; }
.transaction-line-page .bill-expense-list-table .bill-expense-row .input-group > .form-control:only-child { border-radius: 10px; }
.transaction-line-page .bill-expense-list-table .bill-expense-row .input-group > .form-control:not(:last-child) {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
.transaction-line-page .bill-expense-list-table .bill-expense-row .input-group > .input-group-text:last-child {
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
@media (max-width: 1199.98px) {
  .transaction-line-page:not(.invoice-modern-page) .repeater .table-responsive { overflow-x: auto; overflow-y: hidden; }
  .transaction-line-page:not(.invoice-modern-page) .repeater .table-responsive:has(.select2-container--open),
  .transaction-line-page:not(.invoice-modern-page) .repeater .table-responsive:has(.choices.is-open) { overflow: visible; }
}
@media (max-width: 767.98px) {
  .invoice-modern-page .invoice-details-card .card-body { padding: 19px; }
  .invoice-modern-page .invoice-items-header { min-height: 88px; flex-wrap: wrap; align-items: center !important; gap: 14px; padding: 18px 16px; }
  .invoice-modern-page .invoice-items-header .invoice-section-heading { min-width: 0; }
  .invoice-modern-page .invoice-items-header .invoice-section-heading > span:last-child { line-height: 1.25; }
  .invoice-modern-page .invoice-section-heading { font-size: 15px; }
  .invoice-modern-page .invoice-section-icon { width: 36px; height: 36px; flex-basis: 36px; }
  .invoice-modern-page .invoice-form-actions { display: flex; }
  .invoice-modern-page .invoice-form-actions .btn { flex: 1; min-width: 0; }
}
@media (max-width: 1199.98px) {
  .invoice-modern-page .invoice-items-card .table-responsive {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
  }
}
/* Existing line-item markup: place the section icon/title left and add button right. */
.modern-create-edit-page > .col-12:has(> h5 + .repeater) { position: relative; }
.modern-create-edit-page > .col-12 > h5 + .repeater { margin-top: 0; overflow: hidden; border: 1px solid var(--modern-form-border); border-radius: 16px; box-shadow: 0 10px 28px rgba(19,45,84,.07); }
.modern-create-edit-page > .col-12 > h5:has(+ .repeater) { position: absolute; top: 17px; left: 22px; z-index: 3; display: flex !important; align-items: center; gap: 12px; margin: 0 !important; color: var(--modern-form-navy); font-size: 16px; font-weight: 700; pointer-events: none; }
.modern-create-edit-page > .col-12 > h5:has(+ .repeater)::before { content: ""; width: 38px; height: 38px; flex: 0 0 38px; display: inline-flex; background-color: #eaf7fc; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23008ecc' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6h11M9 12h11M9 18h11'/%3E%3Cpath d='M5 6v.01M5 12v.01M5 18v.01'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; border: 1px solid #bfe5f3; border-radius: 10px; }
.modern-create-edit-page > .col-12 > h5 + .repeater > .item-section { min-height: 72px; display: flex; align-items: center; justify-content: flex-end; padding: 14px 22px !important; background: linear-gradient(90deg,#fff,#f7fcfe); border-bottom: 1px solid var(--modern-form-border); }
.modern-create-edit-page > .col-12 > h5 + .repeater > .item-section > .row { width: 100%; margin: 0; }
.modern-create-edit-page > .col-12 > h5 + .repeater > .item-section .all-button-box { margin-right: 0 !important; }
.modern-create-edit-page > .col-12 > h5 + .repeater > .item-section [data-repeater-create] { min-height: 42px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 9px 17px; border-radius: 10px; font-weight: 700; box-shadow: 0 7px 17px rgba(0,142,204,.20); }
.modern-create-edit-page > .col-12 > h5 + .repeater > .card-body { padding: 0; }
.modern-create-edit-page > .col-12 > h5 + .repeater table { min-width: 1080px; margin-bottom: 0; }
@media (max-width: 767.98px) {
  .modern-create-edit-page .modern-form-card > .card-body { padding: 19px; }
  .modern-create-edit-page .modern-line-items-header { align-items: flex-start !important; gap: 12px; padding: 16px 18px; }
  .modern-create-edit-page .modern-form-actions { display: flex; }
  .modern-create-edit-page .modern-form-actions .btn { flex: 1; min-width: 0; }
  .modern-create-edit-page > .col-12 > h5:has(+ .repeater) { top: 16px; left: 18px; }
  .modern-create-edit-page > .col-12 > h5:has(+ .repeater) span { display: none; }
  .modern-create-edit-page > .col-12 > h5 + .repeater > .item-section { min-height: 70px; padding: 13px 16px !important; }
}

/* Reusable Modern All Fields controls */
.modern-all-fields .form-label { color: #132d54; font-weight: 600; }
.modern-all-fields .form-control,
.modern-all-fields .form-select,
.modern-all-fields .choices__inner { min-height: var(--ui-control-h); width: 100%; color: #263b5e; background-color: #fff; border: 1.5px solid #8fd8f2; border-radius: 10px; transition: border-color .2s ease, box-shadow .2s ease; }
.modern-all-fields textarea.form-control { min-height: 86px; resize: vertical; }
.modern-all-fields .form-control:hover,
.modern-all-fields .form-select:hover,
.modern-all-fields .choices__inner:hover { border-color: #47bee8; }
.modern-all-fields .form-control:focus,
.modern-all-fields .form-select:focus,
.modern-all-fields .choices.is-focused .choices__inner,
.modern-all-fields .choices.is-open .choices__inner { border-color: #008ecc; outline: 0; box-shadow: 0 0 0 3px rgba(0,142,204,.13), 0 7px 18px rgba(71,190,232,.12); }
.modern-all-fields .choices { position: relative; width: 100%; margin-bottom: 0; }
.modern-all-fields .choices.is-open { z-index: 1090; }
.modern-all-fields .choices__inner { padding: 8px 38px 7px 12px; }
.modern-all-fields .choices__list--single { padding: 3px 0; }
.modern-all-fields .choices__list--dropdown { z-index: 1091; border: 1.5px solid #8fd8f2; border-radius: 10px; box-shadow: 0 12px 30px rgba(71,190,232,.28); overflow: hidden; }
.modern-all-fields .choices__list--dropdown .choices__input { width: calc(100% - 20px); margin: 10px; border: 1.5px solid #8fd8f2; border-radius: 8px; }
/* The theme sets word-break: break-all on Choices dropdowns and reserves 100px per option for a
   "Press to select" hint these forms disable; both split names mid-word in narrow columns. */
.modern-all-fields .choices__list--dropdown { word-break: normal; overflow-wrap: normal; min-width: 100%; width: max-content; max-width: calc(100vw - 32px); }
.modern-all-fields .choices__list--dropdown .choices__item--selectable { padding-right: 14px; }
.modern-all-fields .choices__list--single .choices__item { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.modern-all-fields .form-check-input { border-color: #8fd8f2; }
.modern-all-fields .form-check-input:focus { border-color: #008ecc; box-shadow: 0 0 0 3px rgba(0,142,204,.13); }
.modern-all-fields .form-check-input:checked { background-color: #008ecc; border-color: #008ecc; }

/* Keep unit, currency, percentage, and other input-group addons inline. */
.modern-index-form .input-group,
.modern-all-fields .input-group { flex-wrap: nowrap; align-items: stretch; }
.modern-index-form .input-group > .form-control,
.modern-index-form .input-group > .form-select,
.modern-index-form .input-group > .choices,
.modern-all-fields .input-group > .form-control,
.modern-all-fields .input-group > .form-select,
.modern-all-fields .input-group > .choices { width: 1%; min-width: 0; flex: 1 1 auto; }
.modern-index-form .input-group > .input-group-text,
.modern-all-fields .input-group > .input-group-text { min-height: var(--ui-control-h); flex: 0 0 auto; color: #263b5e; border-color: #8fd8f2; }
.modern-index-form .input-group > .form-control:not(:last-child),
.modern-index-form .input-group > .form-select:not(:last-child),
.modern-index-form .input-group > .choices:not(:last-child) .choices__inner,
.modern-all-fields .input-group > .form-control:not(:last-child),
.modern-all-fields .input-group > .form-select:not(:last-child),
.modern-all-fields .input-group > .choices:not(:last-child) .choices__inner { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.modern-index-form .input-group > .input-group-text:last-child,
.modern-all-fields .input-group > .input-group-text:last-child { border-top-right-radius: 10px; border-bottom-right-radius: 10px; }
@media (max-width: 991.98px) { .modern-index-page .modern-filter-actions { padding-top: 8px; } }
@media (max-width: 767.98px) {
  .modern-index-page .modern-filter-card .card-body { padding: 18px; }
  .modern-index-page .modern-table-card { background: transparent; border: 0; box-shadow: none; overflow: visible; }
  .modern-index-page .modern-table-card .card-body { padding: 12px 0; }
  .modern-index-page .modern-table thead { display: none; }
  .modern-index-page .modern-table, .modern-index-page .modern-table tbody, .modern-index-page .modern-table tr, .modern-index-page .modern-table td { display: block; width: 100%; }
  .modern-index-page .modern-table tr { margin-bottom: 14px; padding: 12px 16px; background: #fff; border: 1px solid #bfe5f3; border-radius: 14px; box-shadow: 0 7px 18px rgba(71,190,232,.12); }
  .modern-index-page .modern-table td { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 10px 0; white-space: normal; text-align: right; border-bottom: 1px dashed #dceaf1; }
  .modern-index-page .modern-table td:last-child { border-bottom: 0; }
  .modern-index-page .modern-table td::before { content: attr(data-label); color: #132d54; font-size: 12px; font-weight: 700; text-align: left; }
  .modern-index-page .modern-actions { flex-wrap: wrap; justify-content: flex-end; }
  .modern-index-page .dataTable-top, .modern-index-page .dataTable-bottom { flex-direction: column; align-items: stretch; gap: 12px; }
  .modern-index-page .dataTable-dropdown, .modern-index-page .dataTable-search { width: 100%; }
  .modern-index-page .dataTable-input { width: 100%; max-width: none; }
  .modern-index-page .dataTable-info { width: 100%; justify-content: center; border-radius: 10px; }
  .modern-index-page .dataTable-pagination-list { justify-content: center; }
}

/* Final Chart of Accounts alignment overrides shared filter action defaults. */
.modern-index-page.chart-account-modern-index .chart-account-search-layout {
  align-items: center;
  justify-content: flex-end;
  gap: 11px;
}

/* Chart of Account create/edit modal details. */
#commonModal:has(.chart-account-modern-form) .modal-dialog {
  width: min(900px, calc(100% - 28px));
  max-width: 900px;
}

/* Relationship-based Chart of Accounts hierarchy. */
.chart-account-modern-index .chart-account-hierarchy-name {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding-left: calc(var(--account-depth, 0) * 22px);
  color: #263b5e;
  font-weight: 600;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.chart-account-modern-index .chart-account-branch {
  flex: 0 0 auto;
  color: #8eb1c3;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}
.chart-account-modern-index .chart-account-hierarchy-name[style*="--account-depth: 0"] {
  color: #132d54;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .chart-account-modern-index .chart-account-hierarchy-name {
    max-width: 70vw;
    padding-left: calc(var(--account-depth, 0) * 15px);
  }
}
.chart-account-modern-form .modal-body { padding: 20px 22px; }
.chart-account-modern-form .row {
  --bs-gutter-x: 18px;
  --bs-gutter-y: 15px;
}
.chart-account-modern-form .form-group { margin-bottom: 0; }
.chart-account-modern-form .form-label {
  margin-bottom: 6px;
  color: #132d54;
  font-size: 13px;
  font-weight: 700;
}
.chart-account-modern-form .form-control,
.chart-account-modern-form .form-select,
.chart-account-modern-form .choices__inner {
  min-height: 44px;
  border: 1.5px solid #8fd8f2;
  border-radius: 10px;
}
.chart-account-modern-form input[readonly] {
  color: #52627a;
  background: #f3f7fb;
  cursor: not-allowed;
}
.chart-account-modern-form .chart-account-code-group {
  flex-wrap: nowrap;
}
.chart-account-modern-form .chart-account-code-group .form-control {
  border-radius: 10px 0 0 10px;
}
.chart-account-modern-form .chart-account-code-group .input-group-text {
  min-width: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #008ecc;
  background: #eaf7fc;
  border: 1.5px solid #8fd8f2;
  border-left: 0;
  border-radius: 0 10px 10px 0;
}
.chart-account-modern-form small.text-muted {
  display: block;
  margin-top: 5px;
  font-size: 11px;
  line-height: 1.35;
}
.chart-account-modern-form .chart-account-switch-field {
  min-height: 70px;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.chart-account-modern-form .form-switch {
  min-height: 26px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}
.chart-account-modern-form .form-switch .form-check-input {
  width: 42px;
  height: 22px;
  flex: 0 0 auto;
  margin: 0;
}
.chart-account-modern-form textarea.form-control {
  min-height: 76px;
  resize: vertical;
}
@media (max-width: 767.98px) {
  #commonModal:has(.chart-account-modern-form) .modal-dialog {
    width: calc(100% - 20px);
  }
  .chart-account-modern-form .modal-body { padding: 17px 16px; }
}
.modern-index-page.chart-account-modern-index .chart-account-search-field {
  max-width: 500px;
  flex-basis: 500px;
}
.modern-index-page.chart-account-modern-index .chart-account-search-field .input-group {
  height: 46px;
  align-items: stretch;
}
.modern-index-page.chart-account-modern-index .chart-account-search-field .input-group-text,
.modern-index-page.chart-account-modern-index .chart-account-search-field .form-control {
  height: 46px;
  min-height: 46px;
  margin: 0;
  box-sizing: border-box;
}
.modern-index-page.chart-account-modern-index .chart-account-search-field .input-group-text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.modern-index-page.chart-account-modern-index .chart-account-search-actions {
  align-self: auto;
  margin: 0;
  padding: 0;
}
.modern-index-page.chart-account-modern-index .chart-account-status-field {
  width: 160px;
  min-width: 160px;
  flex: 0 0 160px;
}
.modern-index-page.chart-account-modern-index .chart-account-status-field .form-select {
  width: 100%;
  height: 46px;
  min-height: 46px;
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
  color: #263b5e;
  background-color: #fff;
  border: 1.5px solid #8fd8f2;
  border-radius: 10px;
  box-sizing: border-box;
}
.modern-index-page.chart-account-modern-index .chart-account-search-actions .btn {
  width: 46px;
  min-width: 46px;
  height: 46px;
  min-height: 46px;
  margin: 0;
  padding: 0;
  line-height: 1;
}
.modern-index-page.chart-account-modern-index .chart-account-search-actions .btn i {
  margin: 0;
  font-size: 18px;
  line-height: 1;
}
@media (max-width: 767.98px) {
  .modern-index-page.chart-account-modern-index .chart-account-search-layout {
    align-items: stretch;
  }
  .modern-index-page.chart-account-modern-index .chart-account-search-field {
    max-width: none;
    flex-basis: auto;
  }
  .modern-index-page.chart-account-modern-index .chart-account-status-field {
    width: 100%;
    min-width: 0;
    flex-basis: auto;
  }
  .modern-index-page.chart-account-modern-index .chart-account-search-actions {
    align-self: flex-end;
  }
}

/* ONKOD FOODS: retain the official artwork's proportions at every breakpoint. */
.dash-sidebar .m-header .logo,
.auth-wrapper .logo,
.auth-header .logo,
.footer-logo img,
.navbar-brand img {
    height: auto;
    max-width: 100%;
    object-fit: contain;
    object-position: center;
    filter: none;
}
.auth-wrapper .logo, .auth-header .logo { width: 200px; }
.geo-brand-logo-wrap { padding: 0; }

/* Bank balance transfer list: combined account + description columns. */
.bank-transfer-modern-index .modern-table td .transfer-accounts,
.bank-transfer-modern-index .modern-table td .transfer-description { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; white-space: normal; line-height: 1.35; }
.bank-transfer-modern-index .transfer-account-line { display: flex; align-items: baseline; gap: 5px; }
.bank-transfer-modern-index .transfer-account-label { color: #8a99ad; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .03em; }
.bank-transfer-modern-index .transfer-account-name { color: #132d54; font-weight: 600; }
.bank-transfer-modern-index .transfer-account-arrow { color: var(--secondary-color-dark, #0678a8); font-size: 13px; margin-left: 8px; }
.bank-transfer-modern-index .transfer-reference { color: #132d54; font-weight: 600; }
.bank-transfer-modern-index .transfer-note { color: #6b7a90; font-size: 13px; max-width: 320px; }
.bank-transfer-modern-index .transfer-amount { font-weight: 700; color: #132d54; }
@media (max-width: 767.98px) {
  .bank-transfer-modern-index .modern-table td .transfer-accounts,
  .bank-transfer-modern-index .modern-table td .transfer-description { align-items: flex-end; text-align: right; }
  .bank-transfer-modern-index .transfer-account-arrow { margin-left: 0; margin-right: 8px; }
}

/* HRM System Setup pages (Branch, Department, ...)
 * Colors come from the Brand Settings tokens (--primary-*, --secondary-*) and the shared shell
 * variables, so the global dark theme (dark-theme.css) restyles everything here without page rules.
 * Sizes come from the global --ui-* tokens at the top of this file. */
.page-header-icon,
.hrm-setup-tabs,
.hrm-setup-page,
.hrm-stat-card {
  --hrm-accent: var(--primary-color, var(--theme-color));
  --hrm-accent-dark: var(--primary-color-dark, var(--hrm-accent));
  --hrm-accent-rgb: var(--primary-rgb, 216, 127, 63);
  --hrm-info: var(--secondary-color, #0897cf);
  --hrm-info-rgb: var(--secondary-rgb, 8, 151, 207);
  --hrm-surface: var(--shell-surface, #fff);
  --hrm-border: var(--shell-border, #e8edf3);
  --hrm-muted: var(--shell-muted, #6b7280);
  --hrm-heading: var(--shell-navy, #172033);
  --hrm-soft-bg: var(--bs-tertiary-bg, #f8fafc);
  --hrm-shadow: 0 4px 14px rgba(15, 23, 42, .05);
}

/* Page header icon tile (layouts/admin.blade.php @section('page-icon')) */
.page-header-icon { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 44px; height: 44px; color: #fff; background: var(--hrm-info); border-radius: 11px; box-shadow: 0 6px 14px rgba(var(--hrm-info-rgb), .25); font-size: 22px; }

/* Header summary card */
.hrm-stat-card { display: inline-flex; align-items: center; gap: 10px; min-width: 160px; padding: 8px 14px; background: var(--hrm-surface); border: 1px solid var(--hrm-border); border-radius: var(--ui-radius); box-shadow: var(--hrm-shadow); }
.hrm-stat-icon { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 36px; height: 36px; color: var(--hrm-info); background: rgba(var(--hrm-info-rgb), .12); border-radius: 9px; font-size: 18px; }
.hrm-stat-label { display: block; color: var(--hrm-muted); font-size: 12px; font-weight: 500; }
.hrm-stat-value { display: block; color: var(--hrm-heading); font-size: 18px; font-weight: 700; line-height: 1.2; }

/* Tabs: wrap on desktop/tablet, single scrollable row on phones */
.hrm-setup-tabs { margin-bottom: var(--ui-gap); padding: 12px; background: var(--hrm-surface); border: 1px solid var(--hrm-border); border-radius: var(--ui-radius); box-shadow: var(--hrm-shadow); }
.hrm-setup-tabs-list { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.hrm-setup-tabs .nav-link { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 6px 11px; color: var(--hrm-heading); background: var(--hrm-surface); border: 1px solid var(--hrm-border); border-radius: var(--ui-radius-sm); font-size: var(--ui-font-sm); font-weight: 500; white-space: nowrap; transition: color .15s ease, background-color .15s ease, border-color .15s ease, box-shadow .15s ease; }
.hrm-setup-tabs .nav-link i { font-size: 16px; }
.hrm-setup-tabs .nav-link:hover { border-color: rgba(var(--hrm-accent-rgb), .5); box-shadow: 0 3px 10px rgba(15, 23, 42, .06); }
.hrm-setup-tabs .nav-link:focus-visible { outline: 0; box-shadow: 0 0 0 3px rgba(var(--hrm-accent-rgb), .25); }
.hrm-setup-tabs .nav-link.active { color: #fff; background: var(--hrm-accent); border-color: var(--hrm-accent); box-shadow: 0 4px 12px rgba(var(--hrm-accent-rgb), .3); }
.hrm-setup-tabs .nav-link.active i { color: inherit; }
.hrm-tone-amber { color: #f59e0b; }
.hrm-tone-blue { color: #2563eb; }
.hrm-tone-teal { color: #0d9488; }
.hrm-tone-red { color: #ef4444; }
.hrm-tone-green { color: #10b981; }
.hrm-tone-purple { color: #9333ea; }
.hrm-tone-indigo { color: #6d28d9; }
.hrm-tone-orange { color: #ea580c; }
.hrm-tone-slate { color: #475569; }
[data-theme="dark"] .hrm-tone-slate { color: var(--dark-muted); }

/* Table card */
.hrm-setup-page .modern-table-card { background: var(--hrm-surface); border: 1px solid var(--hrm-border); border-radius: var(--ui-radius); box-shadow: var(--hrm-shadow); }
.hrm-setup-page .hrm-table-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 14px var(--ui-card-pad); background: var(--hrm-surface); border-bottom: 1px solid var(--hrm-border); }
.hrm-setup-page .hrm-table-icon { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 42px; height: 42px; color: #fff; background: var(--hrm-accent); border-radius: 10px; box-shadow: 0 5px 12px rgba(var(--hrm-accent-rgb), .25); font-size: 20px; }
.hrm-setup-page .hrm-table-header h5 { margin-bottom: 2px !important; color: var(--hrm-heading); font-size: var(--ui-section-title); font-weight: 700; }
.hrm-setup-page .hrm-table-header h5::after { display: none; }
.hrm-setup-page .hrm-table-header small { font-size: var(--ui-font-sm); }
.hrm-setup-page .hrm-add-btn { display: inline-flex; align-items: center; gap: 6px; min-height: var(--ui-btn-h); padding: 7px 16px; border-radius: var(--ui-radius-sm); font-size: var(--ui-font); font-weight: 600; box-shadow: 0 5px 12px rgba(var(--hrm-accent-rgb), .25);
  --bs-btn-bg: var(--hrm-accent); --bs-btn-border-color: var(--hrm-accent); --bs-btn-hover-bg: var(--hrm-accent-dark); --bs-btn-hover-border-color: var(--hrm-accent-dark); --bs-btn-active-bg: var(--hrm-accent-dark); --bs-btn-active-border-color: var(--hrm-accent-dark); }
.hrm-setup-page .hrm-add-btn i { font-size: 16px; }
.hrm-setup-page .modern-table-card .card-body { padding: 14px var(--ui-card-pad) var(--ui-card-pad); }

/* simple-datatables controls */
.hrm-setup-page .dataTable-top { padding: 0 0 14px; }
.hrm-setup-page .dataTable-dropdown label { display: inline-flex; align-items: center; gap: 8px; margin: 0; color: var(--hrm-heading); font-size: var(--ui-font); }
.hrm-setup-page .dataTable-search { position: relative; }
.hrm-setup-page .dataTable-search::before { content: "\eb1c"; position: absolute; top: 50%; left: 12px; transform: translateY(-50%); font-family: "tabler-icons"; font-size: 16px; color: var(--hrm-muted); pointer-events: none; z-index: 1; }
.hrm-setup-page .dataTable-selector,
.hrm-setup-page .dataTable-input { min-height: var(--ui-control-h); height: var(--ui-control-h); color: var(--hrm-heading); background-color: var(--hrm-surface); border: 1px solid var(--hrm-border); border-radius: var(--ui-radius-sm); box-shadow: none; font-size: var(--ui-font); }
.hrm-setup-page .dataTable-selector { min-width: 72px; padding: 6px 30px 6px 12px; }
.hrm-setup-page .dataTable-input { width: min(100%, 280px); padding: 6px 12px 6px 36px; }
.hrm-setup-page .dataTable-selector:focus,
.hrm-setup-page .dataTable-input:focus { border-color: var(--hrm-accent); outline: 0; box-shadow: 0 0 0 3px rgba(var(--hrm-accent-rgb), .15); }

/* Table */
.hrm-setup-page .dataTable-container { border: 1px solid var(--hrm-border); border-radius: 10px; overflow: hidden; }
.hrm-setup-page .modern-table th { padding: 11px 16px; color: var(--hrm-heading); background: var(--hrm-soft-bg); border-bottom: 1px solid var(--hrm-border); font-size: 12px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; }
.hrm-setup-page .modern-table td { padding: 10px 16px; color: var(--hrm-muted); border-bottom: 1px solid var(--hrm-border); font-size: var(--ui-font-sm); }
.hrm-setup-page .modern-table :is(th, td) + :is(th, td) { border-left: 1px solid var(--hrm-border); }
.hrm-setup-page .modern-table tbody tr:last-child td { border-bottom: 0; }
.hrm-setup-page .modern-table tbody tr { transition: background-color .15s ease; }
.hrm-setup-page .modern-table tbody tr:hover > td { background: var(--hrm-soft-bg); }
.hrm-setup-page .hrm-col-index { width: 72px; }
.hrm-setup-page .hrm-col-action { width: 150px; }

.hrm-setup-page .hrm-record { display: flex; align-items: center; gap: 12px; }
.hrm-setup-page .hrm-record-avatar { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 36px; height: 36px; color: var(--hrm-accent); background: rgba(var(--hrm-accent-rgb), .1); border-radius: 50%; font-size: 17px; }
.hrm-setup-page .hrm-record-avatar.is-alt { color: var(--hrm-info); background: rgba(var(--hrm-info-rgb), .1); }
.hrm-setup-page .hrm-record-text { display: flex; flex-direction: column; min-width: 0; line-height: 1.35; }
.hrm-setup-page .hrm-record-name { color: var(--hrm-heading); font-size: var(--ui-font); font-weight: 700; }
.hrm-setup-page .hrm-record-date { display: inline-flex; align-items: center; gap: 8px; }
.hrm-setup-page .hrm-record-date i { font-size: 16px; }

/* Row action buttons */
.hrm-setup-page .modern-actions { gap: 8px; }
.hrm-setup-page .modern-actions .hrm-action-btn { width: var(--ui-action-btn); height: var(--ui-action-btn); color: #fff; border: 0; border-radius: var(--ui-radius-sm); font-size: 16px; transition: transform .15s ease, box-shadow .15s ease, filter .15s ease; }
.hrm-setup-page .hrm-action-edit { background: #2f8ff6; box-shadow: 0 4px 10px rgba(47, 143, 246, .25); }
.hrm-setup-page .hrm-action-delete { background: #f0466b; box-shadow: 0 4px 10px rgba(240, 70, 107, .25); }
.hrm-setup-page .hrm-action-btn:hover,
.hrm-setup-page .hrm-action-btn:focus-visible { color: #fff; filter: brightness(.95); transform: translateY(-1px); }

/* Footer: info + pagination (pager is rendered by simple-datatables only when there is more than one page) */
.hrm-setup-page .dataTable-bottom { margin-top: 0; padding: 14px 0 0; border-top: 0; }
.hrm-setup-page .dataTable-info { min-height: 0; padding: 0; color: var(--hrm-muted); background: transparent; border: 0; box-shadow: none; font-size: var(--ui-font-sm); font-weight: 400; }
.hrm-setup-page .dataTable-pagination-list { gap: 6px; }
.hrm-setup-page .dataTable-pagination-list a { min-width: var(--ui-action-btn); height: var(--ui-action-btn); color: var(--hrm-heading); background: var(--hrm-soft-bg); border: 0; border-radius: var(--ui-radius-sm); box-shadow: none; font-size: var(--ui-font); }
.hrm-setup-page .dataTable-pagination li.active a,
.hrm-setup-page .dataTable-pagination li a:hover { color: #fff; background: var(--hrm-accent); border-color: var(--hrm-accent); box-shadow: 0 4px 10px rgba(var(--hrm-accent-rgb), .25); }

@media (max-width: 991.98px) {
  .hrm-setup-page .modern-table :is(th, td) { padding: 10px 12px; }
  .hrm-setup-page .hrm-col-index { width: 56px; }
  .hrm-setup-page .hrm-col-action { width: 120px; }
}
@media (max-width: 767.98px) {
  .page-header-icon { width: 38px; height: 38px; font-size: 19px; }
  .hrm-stat-card { width: 100%; }
  .hrm-setup-tabs { padding: 10px; }
  .hrm-setup-tabs-list { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: thin; -webkit-overflow-scrolling: touch; padding-bottom: 4px; }
  .hrm-setup-page .modern-table-card { background: var(--hrm-surface); border: 1px solid var(--hrm-border); }
  .hrm-setup-page .hrm-table-header { padding: 12px 14px; }
  .hrm-setup-page .hrm-table-icon { width: 38px; height: 38px; font-size: 18px; }
  .hrm-setup-page .hrm-add-btn { width: 100%; justify-content: center; }
  .hrm-setup-page .modern-table-card .card-body { padding: 12px 14px 14px; }
  .hrm-setup-page .dataTable-container { border: 0; border-radius: 0; overflow: visible; }
  .hrm-setup-page .modern-table tr { margin-bottom: 10px; padding: 8px 12px; border-color: var(--hrm-border); box-shadow: none; }
  .hrm-setup-page .modern-table td,
  .hrm-setup-page .modern-table :is(th, td) + :is(th, td) { width: 100%; padding: 8px 0; border-left: 0; border-bottom: 1px dashed var(--hrm-border); }
  .hrm-setup-page .modern-table tbody tr td:last-child { border-bottom: 0; }
  .hrm-setup-page .modern-table td::before { color: var(--hrm-muted); }
  .hrm-setup-page .modern-table tbody tr:hover > td { background: transparent; }
  .hrm-setup-page .hrm-record { gap: 10px; }
  .hrm-setup-page .hrm-record-avatar { width: 32px; height: 32px; font-size: 15px; }
  .hrm-setup-page .hrm-record-text { align-items: flex-end; text-align: right; }
  .hrm-setup-page .dataTable-input { width: 100%; }
  .hrm-setup-page .dataTable-info { justify-content: center; }
}

/* Branch table: grouped Contact / Address details.
 * >=1200px all 6 columns; 992–1199px Created At folds under the branch name; 768–991px Address
 * Details folds too (Branch | Contact | Action); <768px each row becomes a labelled card. */
.hrm-branch-table td { white-space: normal; }
.hrm-branch-table .hrm-col-index { width: 48px; }
.hrm-branch-table .hrm-col-action { width: 92px; }
.hrm-branch-table .hrm-col-created { width: 130px; }
@media (min-width: 768px) {
  .hrm-setup-page .hrm-branch-table :is(th, td) { padding: 10px 12px; vertical-align: middle; }
}
.hrm-setup-page .hrm-info-list { display: flex; flex-direction: column; gap: 3px; }
.hrm-setup-page .hrm-info-line { display: flex; align-items: flex-start; gap: 7px; max-width: 260px; line-height: 1.4; }
.hrm-setup-page .hrm-info-line > i { flex: 0 0 auto; margin-top: 1px; color: var(--hrm-muted); font-size: 14px; }
.hrm-setup-page .hrm-info-line > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hrm-setup-page .hrm-info-stack { display: flex; flex-direction: column; }
.hrm-setup-page .hrm-info-stack > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hrm-setup-page .hrm-info-strong { color: var(--hrm-heading); font-size: var(--ui-font-sm); }
.hrm-setup-page .hrm-info-muted { color: var(--hrm-muted); font-size: 12px; }
.hrm-setup-page .hrm-info-link { color: var(--hrm-heading); font-size: var(--ui-font-sm); }
.hrm-setup-page .hrm-info-link.hrm-info-muted { color: var(--hrm-muted); font-size: 12px; }
.hrm-setup-page .hrm-info-link:hover { color: var(--hrm-accent); }
.hrm-setup-page .hrm-not-provided { color: var(--hrm-muted); font-size: 12px; font-style: italic; opacity: .8; }
.hrm-setup-page .hrm-branch-table .modern-actions .hrm-action-btn { width: 32px; height: 32px; font-size: 15px; }

.hrm-setup-page .hrm-row-details { display: none; flex-direction: column; gap: 1px; margin-top: 2px; }
.hrm-setup-page .hrm-row-details > span { display: none; align-items: center; gap: 5px; max-width: 220px; overflow: hidden; color: var(--hrm-muted); font-size: 12px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.hrm-setup-page .hrm-row-details i { flex: 0 0 auto; font-size: 13px; }

@media (min-width: 768px) and (max-width: 1199.98px) {
  .hrm-branch-table .hrm-col-created { display: none; }
  .hrm-setup-page .hrm-row-details,
  .hrm-setup-page .hrm-row-details > .hrm-detail-created { display: flex; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .hrm-branch-table .hrm-col-address { display: none; }
  .hrm-setup-page .hrm-row-details > .hrm-detail-address { display: flex; }
}
@media (max-width: 767.98px) {
  .hrm-branch-table .hrm-col-index,
  .hrm-branch-table .hrm-col-action,
  .hrm-branch-table .hrm-col-created { width: 100%; }
  .hrm-setup-page .hrm-info-list,
  .hrm-setup-page .hrm-info-stack { align-items: flex-end; text-align: right; }
  .hrm-setup-page .hrm-info-line { max-width: 65vw; }
}

/* ============================================================
 * Standard Create/Edit modal form (components/app-form/*).
 * The application-wide pattern for modal forms: icon header with subtitle, compact fields with a
 * leading icon, primary-colored focus, fixed header/footer and a body that scrolls when the screen
 * is short. Two columns on desktop/tablet, one on mobile. New Create/Edit forms should use
 * <x-app-form.modal> + <x-app-form.field> on a form with the `app-form` class instead of
 * page-specific modal CSS.
 * Colors are tokens: the --dark-* values exist only under [data-theme="dark"], so light mode
 * falls back to the shell palette and dark mode follows dark-theme.css automatically.
 * ============================================================ */
.app-form {
  --af-primary: var(--primary-color, var(--theme-color, #0897cf));
  --af-primary-rgb: var(--primary-rgb, 8, 151, 207);
  --af-border: var(--dark-border, var(--shell-border, #e8edf3));
  --af-input-border: var(--dark-border-strong, #dde3ec);
  --af-heading: var(--dark-heading, #1f2937);
  --af-muted: var(--dark-muted, var(--shell-muted, #6b7280));
  --af-icon: var(--dark-placeholder, #94a3b8);
  --af-danger: var(--bs-danger, #dc3545);
  --af-pad-x: 24px;
  display: flex; flex: 1 1 auto; flex-direction: column; min-height: 0; min-width: 0;
}

/* Modal shell: the form supplies its own header, so the common modal's plain header is hidden. */
.modal:has(.app-form) .modal-dialog { width: calc(100% - 24px); max-width: 820px; margin: 16px auto; }
.modal:has(.app-form) .modal-content { display: flex; flex-direction: column; max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); overflow: hidden; border: 1px solid var(--dark-border, var(--shell-border, #e8edf3)); border-radius: var(--ui-radius); }
.modal:has(.app-form) .modal-content > .modal-header { display: none; }
.modal:has(.app-form) .modal-content > :is(.body, .modal-body) { display: flex; flex: 1 1 auto; flex-direction: column; min-height: 0; padding: 0; }

.app-form-header { flex-shrink: 0; display: flex; align-items: center; gap: 12px; padding: 14px var(--af-pad-x); border-bottom: 1px solid var(--af-border); }
.app-form-header-icon { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; color: var(--af-primary); background: rgba(var(--af-primary-rgb), .12); border-radius: 10px; font-size: 21px; }
.app-form-heading { flex: 1 1 auto; min-width: 0; }
.app-form-title { margin: 0; color: var(--af-heading); font-size: var(--ui-section-title); font-weight: 700; line-height: 1.3; }
.app-form-subtitle { margin: 2px 0 0; color: var(--af-muted); font-size: var(--ui-font-sm); line-height: 1.4; }
.app-form-header .btn-close { flex: 0 0 auto; align-self: flex-start; margin: 2px 0 0; }

.app-form-body { flex: 1 1 auto; min-height: 0; padding: 18px var(--af-pad-x) 20px; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; }
.app-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; }
.app-form-field { min-width: 0; margin: 0; }
.app-form-field.is-wide { grid-column: 1 / -1; }
.app-form .form-label { display: block; margin-bottom: 5px; color: var(--af-heading); font-size: var(--ui-font-sm); font-weight: 600; }

/* Input with a leading icon. */
.app-form-control { position: relative; }
.app-form-control-icon { position: absolute; top: 50%; left: 12px; z-index: 1; color: var(--af-icon); font-size: 17px; line-height: 1; transform: translateY(-50%); pointer-events: none; transition: color .15s ease; }
.app-form .form-control,
.app-form .form-select { height: var(--ui-control-h); min-height: var(--ui-control-h); padding: 8px 12px; font-size: var(--ui-font); border: 1px solid var(--af-input-border); border-radius: var(--ui-radius-sm); box-shadow: none; transition: border-color .15s ease, box-shadow .15s ease; }
.app-form textarea.form-control { height: auto; min-height: 84px; }
.app-form-control.has-icon > :is(.form-control, .form-select) { padding-left: 38px; }
.app-form .form-control:focus,
.app-form .form-select:focus { border-color: var(--af-primary); box-shadow: 0 0 0 3px rgba(var(--af-primary-rgb), .15); outline: 0; }
.app-form-control:focus-within .app-form-control-icon { color: var(--af-primary); }

/* Validation: server errors (.is-invalid) and client-side checks (.was-validated from validation()). */
.app-form :is(.form-control, .form-select).is-invalid,
.app-form.was-validated :is(.form-control, .form-select):invalid { padding-right: 12px; background-image: none; border-color: var(--af-danger); }
.app-form :is(.form-control, .form-select).is-invalid:focus,
.app-form.was-validated :is(.form-control, .form-select):invalid:focus { border-color: var(--af-danger); box-shadow: 0 0 0 3px rgba(220, 53, 69, .15); }
.app-form-control:has(.is-invalid) .app-form-control-icon,
.app-form.was-validated .app-form-control:has(:invalid) .app-form-control-icon { color: var(--af-danger); }
.app-form.was-validated :is(.form-control, .form-select):valid { background-image: none; padding-right: 12px; }
.app-form-error { display: block; margin-top: 4px; color: var(--af-danger); font-size: 12px; font-weight: 500; }

.app-form-footer { flex-shrink: 0; display: flex; justify-content: flex-end; gap: 8px; padding: 12px var(--af-pad-x); border-top: 1px solid var(--af-border); }
.app-form-footer .btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 104px; min-height: var(--ui-btn-h); margin: 0; font-weight: 600; }
.app-form-footer .btn i { font-size: 16px; }
.app-form-footer .btn-primary { --bs-btn-bg: var(--af-primary); --bs-btn-border-color: var(--af-primary); --bs-btn-hover-bg: var(--primary-color-dark, var(--af-primary)); --bs-btn-hover-border-color: var(--primary-color-dark, var(--af-primary)); --bs-btn-active-bg: var(--primary-color-dark, var(--af-primary)); --bs-btn-active-border-color: var(--primary-color-dark, var(--af-primary)); --bs-btn-disabled-bg: var(--af-primary); --bs-btn-disabled-border-color: var(--af-primary); }

/* On/off switch row inside a standard form field (e.g. Social Media "Show on website"). */
.app-form-switch { display: flex; align-items: center; gap: 12px; margin: 0; padding: 10px 14px; border: 1px solid var(--af-input-border); border-radius: var(--ui-radius-sm); cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
.app-form-switch:has(.form-check-input:checked) { border-color: rgba(var(--af-primary-rgb), .45); background: rgba(var(--af-primary-rgb), .04); }
.app-form-switch-text { display: flex; flex: 1 1 auto; flex-direction: column; min-width: 0; }
.app-form-switch-text strong { color: var(--af-heading); font-size: var(--ui-font-sm); font-weight: 600; }
.app-form-switch-text small { color: var(--af-muted); font-size: 12px; }
.app-form-switch .form-switch { padding-left: 0; }
.app-form-switch .form-check-input { width: 2.5em; height: 1.35em; margin: 0; cursor: pointer; }

/* Searchable multi-select (Choices.js, via the `select2` class) inside a standard form field. */
.app-form-multiselect .choices { margin-bottom: 0; }
.app-form-multiselect .choices__inner { min-height: var(--ui-control-h); padding: 5px 8px 2px; background: var(--dark-input, #fff); border: 1px solid var(--af-input-border); border-radius: var(--ui-radius-sm); font-size: var(--ui-font); }
.app-form-multiselect .choices.is-focused .choices__inner,
.app-form-multiselect .choices.is-open .choices__inner { border-color: var(--af-primary); box-shadow: 0 0 0 3px rgba(var(--af-primary-rgb), .15); }
.app-form-multiselect .choices__list--multiple .choices__item { margin: 0 4px 3px 0; padding: 3px 8px; color: var(--af-primary); background: rgba(var(--af-primary-rgb), .12); border: 1px solid rgba(var(--af-primary-rgb), .25); border-radius: 999px; font-size: 12px; font-weight: 600; }
.app-form-multiselect .choices[data-type*="select-multiple"] .choices__button { border-left-color: rgba(var(--af-primary-rgb), .35); filter: none; opacity: .7; background-size: 7px; }
.app-form-multiselect .choices__input { margin-bottom: 3px; background: transparent; color: var(--af-heading); font-size: var(--ui-font); }
.app-form-multiselect .choices__list--dropdown { z-index: 5; background: var(--dark-card, #fff); border-color: var(--af-border); border-radius: var(--ui-radius-sm); }
.app-form-multiselect .choices__list--dropdown .choices__item { color: var(--af-heading); font-size: var(--ui-font); }
.app-form-multiselect .choices__list--dropdown .choices__item--selectable.is-highlighted { background: rgba(var(--af-primary-rgb), .1); }
.app-form-multiselect:has(.is-invalid) .choices__inner,
.app-form.was-validated .app-form-multiselect:has(select:invalid) .choices__inner { border-color: var(--af-danger); }

/* Related-record chips in list tables (e.g. a department's assigned branches). */
.branch-chip,
.hrm-chip { display: inline-flex; align-items: center; margin: 2px 4px 2px 0; padding: 2px 10px; color: var(--primary-color, #0897cf); background: rgba(var(--primary-rgb, 8, 151, 207), .1); border: 1px solid rgba(var(--primary-rgb, 8, 151, 207), .22); border-radius: 999px; font-size: 12px; font-weight: 600; line-height: 1.6; white-space: nowrap; }
.branch-chip > i,
.hrm-chip > i { margin-right: 4px; font-size: 13px; }
.hrm-setup-page .hrm-chip-list { display: flex; flex-wrap: wrap; }

/* HRM setup record tables (Department, Designation, Leave Type, …): # | Name | page columns | Created At | Action.
 * 768–1199px Created At folds under the record name; <768px each row becomes a labelled card. */
.hrm-record-table td { white-space: normal; }
.hrm-record-table .hrm-col-index { width: 48px; }
.hrm-record-table .hrm-col-action { width: 92px; }
.hrm-record-table .hrm-col-created { width: 130px; }
@media (min-width: 768px) {
  .hrm-setup-page .hrm-record-table :is(th, td) { padding: 10px 12px; vertical-align: middle; }
}
.hrm-setup-page .hrm-record-table .modern-actions .hrm-action-btn { width: 32px; height: 32px; font-size: 15px; }
.hrm-setup-page .hrm-info-line > i.hrm-icon-gold { color: var(--hrm-accent); }
@media (min-width: 768px) and (max-width: 1199.98px) {
  .hrm-record-table .hrm-col-created { display: none; }
}
@media (max-width: 767.98px) {
  .hrm-record-table :is(.hrm-col-index, .hrm-col-action, .hrm-col-created) { width: 100%; }
  .hrm-setup-page .hrm-chip-list { justify-content: flex-end; }
}

@media (max-width: 991.98px) {
  .modal:has(.app-form) .modal-dialog { max-width: 720px; }
  .app-form { --af-pad-x: 20px; }
  .app-form-grid { gap: 12px 14px; }
}
@media (max-width: 767.98px) {
  .modal:has(.app-form) .modal-dialog { width: calc(100% - 16px); margin: 8px auto; }
  .modal:has(.app-form) .modal-content { max-height: calc(100vh - 16px); max-height: calc(100dvh - 16px); }
  .app-form { --af-pad-x: 16px; }
  .app-form-header-icon { width: 36px; height: 36px; font-size: 19px; }
  .app-form-grid { grid-template-columns: 1fr; gap: 12px; }
}
@media (max-width: 575.98px) {
  .app-form-footer .btn { flex: 1 1 0; min-width: 0; }
}

/* Job Stage: drag-to-reorder rows (no datatable, so the order column is the handle). */
.hrm-setup-page .hrm-drag-handle { display: inline-flex; align-items: center; gap: 6px; color: var(--hrm-muted); font-weight: 600; }
.hrm-setup-page .sortable .hrm-drag-handle { cursor: grab; }
.hrm-setup-page .sortable .ui-sortable-helper { display: table; background: var(--hrm-surface); box-shadow: var(--hrm-shadow); }
.hrm-setup-page .hrm-table-note { display: flex; align-items: center; gap: 6px; margin: 14px 0 0; color: var(--hrm-muted); font-size: 12px; }

/* Nested account pickers: parent account shown under a sub-account in search results. */
.choices__item--choice .account-tree-parent { display: block; margin-top: 2px; color: #6b7280; font-size: 11.5px; font-weight: 500; white-space: normal; }

/* ============================================================
   Employee list + create form (employee/index, employee/create)
   Navy + darker gold (#8A6A1F keeps white text readable). Colors are
   tokens so dark-theme.css can remap them. Mobile first; the list turns
   into a table at 992px, the form gets its section menu at 992px.
   ============================================================ */
.emp-page,
.emp-form,
.emp-header-actions,
.emp-identity {
  --emp-navy: #14213D;
  --emp-navy-soft: #EEF1F7;
  --emp-gold: #8A6A1F;
  --emp-gold-hover: #75591A;
  --emp-gold-text: #7A5C14;
  --emp-gold-soft: #F6EFDC;
  --emp-gold-tint: #FBF7EC;
  --emp-drop-border: #CFC4A4;
  --emp-drop-bg: #FBF9F3;
  --emp-surface: #FFFFFF;
  --emp-soft: #F8F8F5;
  --emp-border: #E3E5E0;
  --emp-line: #EDEEEA;
  --emp-control-border: #DADDD6;
  --emp-heading: #14213D;
  --emp-body: #4A5468;
  --emp-muted: #6B7385;
  --emp-green: #1E6B4A;
  --emp-green-soft: #E8F3EE;
  --emp-green-dot: #1E8A5A;
  --emp-danger: #B42318;
  --emp-danger-soft: #FDF3F2;
  --emp-danger-border: #F1D3CF;
  --emp-shadow: 0 1px 2px rgba(20, 33, 61, .04);
  --emp-tile-bg: #EAF2FA;
  --emp-tile-fg: #2F6FA8;
  --emp-warn-bg: #FDF1DC;
  --emp-warn-fg: #8A4B0F;
  --emp-photo-bg: #E9E4D6;
  --emp-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  color: var(--emp-heading);
}

/* Buttons */
.emp-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 16px; border: 1px solid transparent; border-radius: 10px; font-size: 14px; font-weight: 700; line-height: 1; text-decoration: none; white-space: nowrap; cursor: pointer; transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease; }
.emp-btn i { font-size: 18px; }
.emp-btn-light { color: var(--emp-heading); background: var(--emp-surface); border-color: var(--emp-control-border); }
.emp-btn-light:hover, .emp-btn-light:focus-visible { color: var(--emp-heading); background: var(--emp-soft); }
.emp-btn-gold { padding: 0 20px; color: #fff; background: var(--emp-gold); box-shadow: 0 6px 16px rgba(138, 106, 31, .25); }
.emp-btn-gold:hover, .emp-btn-gold:focus-visible { color: #fff; background: var(--emp-gold-hover); }
.emp-btn:focus-visible, .emp-icon-btn:focus-visible, .emp-page-btn:focus-visible { outline: 3px solid rgba(138, 106, 31, .35); outline-offset: 2px; }
.emp-icon-btn { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; color: var(--emp-heading); background: var(--emp-surface); border: 1px solid var(--emp-control-border); border-radius: 10px; font-size: 18px; text-decoration: none; cursor: pointer; }
.emp-icon-btn:hover { color: var(--emp-heading); background: var(--emp-soft); }
.emp-icon-btn.is-danger { color: var(--emp-danger); background: var(--emp-danger-soft); border-color: var(--emp-danger-border); }
.emp-icon-btn.is-danger:hover { color: #fff; background: var(--emp-danger); border-color: var(--emp-danger); }
.emp-icon-btn.is-locked { color: var(--emp-muted); background: var(--emp-soft); cursor: default; }

/* Page header actions (layout's action-btn slot). Phones: Import/Export are icon buttons. */
.emp-header-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 10px; }
.emp-header-actions .emp-btn-light { width: 44px; padding: 0; }
.emp-header-actions .emp-btn-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.emp-new-desktop { display: none; }
@media (min-width: 768px) {
  .emp-header-actions .emp-btn-light { width: auto; padding: 0 16px; }
  .emp-header-actions .emp-btn-label { position: static; width: auto; height: auto; overflow: visible; clip: auto; }
  .emp-new-desktop { display: inline-flex; }
}

/* ---------- Employee list ---------- */
.emp-page { display: flex; flex-direction: column; gap: 18px; padding-bottom: 84px; }
.emp-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.emp-stat { display: flex; align-items: center; gap: 16px; min-width: 0; padding: 12px; background: var(--emp-surface); border: 1px solid var(--emp-border); border-radius: 14px; box-shadow: var(--emp-shadow); }
.emp-stat-icon { display: none; flex: 0 0 auto; align-items: center; justify-content: center; width: 48px; height: 48px; color: var(--emp-navy); background: var(--emp-navy-soft); border-radius: 12px; font-size: 22px; }
.emp-stat.is-green .emp-stat-icon { color: var(--emp-green); background: var(--emp-green-soft); }
.emp-stat.is-gold .emp-stat-icon { color: var(--emp-gold-text); background: var(--emp-gold-soft); }
.emp-stat-text { display: flex; flex-direction: column-reverse; gap: 2px; min-width: 0; }
.emp-stat-label { color: var(--emp-muted); font-size: 12px; font-weight: 600; line-height: 1.3; }
.emp-stat-value { font-size: 22px; font-weight: 800; line-height: 1.1; }
.emp-stat.is-green .emp-stat-value { color: var(--emp-green); }
.emp-stat.is-gold .emp-stat-value { color: var(--emp-gold-text); }
@media (min-width: 768px) {
  .emp-summary { gap: 20px; }
  .emp-stat { padding: 20px 24px; border-radius: 16px; }
  .emp-stat-icon { display: inline-flex; }
  .emp-stat-text { flex-direction: column; }
  .emp-stat-label { font-size: 13px; }
  .emp-stat-value { font-size: 26px; color: var(--emp-heading) !important; }
}

.emp-card { min-width: 0; }
.emp-toolbar { display: flex; flex-direction: column; gap: 10px; margin-bottom: 14px; }
.emp-search-row { display: flex; gap: 8px; }
.emp-search { position: relative; display: flex; flex: 1 1 auto; align-items: center; margin: 0; }
.emp-search i { position: absolute; left: 14px; color: var(--emp-muted); font-size: 18px; pointer-events: none; }
.emp-control { height: 46px; box-sizing: border-box; padding: 0 14px; color: var(--emp-heading); background-color: var(--emp-surface); border: 1px solid var(--emp-control-border); border-radius: 10px; font-family: inherit; font-size: 16px; }
.emp-control:focus { outline: none; border-color: var(--emp-gold); box-shadow: 0 0 0 3px rgba(138, 106, 31, .18); }
.emp-search .emp-control { width: 100%; padding-left: 42px; }
.emp-search .emp-control::placeholder { color: #8A91A0; }
.emp-filter-toggle[aria-expanded="true"] { color: #fff; background: var(--emp-navy); border-color: var(--emp-navy); }
.emp-filters { display: none; flex-direction: column; gap: 8px; }
.filters-open .emp-filters { display: flex; }
.emp-per-page { display: flex; align-items: center; gap: 10px; margin: 0; color: var(--emp-body); font-size: 14px; }
.emp-per-page .emp-control { height: 42px; padding-right: 30px; }

/* Rows are cards below 992px: two per row on tablets, one on phones. */
.emp-table { width: 100%; border-collapse: collapse; }
.emp-table thead { display: none; }
.emp-table tbody { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.emp-table tbody tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-areas: "id id" "person person" "branch department" "designation joined" "login actions"; gap: 12px; align-content: start; padding: 16px; background: var(--emp-surface); border: 1px solid var(--emp-border); border-radius: 16px; box-shadow: var(--emp-shadow); }
.emp-table tbody tr[hidden] { display: none; }
.emp-table td { min-width: 0; padding: 0; border: 0; font-size: 14px; }
.emp-table .emp-c-index { display: none; }
.emp-table .emp-c-person { grid-area: person; }
.emp-table .emp-c-id { grid-area: id; justify-self: start; margin-bottom: -4px; }
.emp-table .emp-c-org { display: contents; }
.emp-table .emp-detail-branch { grid-area: branch; }
.emp-table .emp-detail-department { grid-area: department; }
.emp-table .emp-c-designation { grid-area: designation; }
.emp-table .emp-c-joined { grid-area: joined; }
.emp-table .emp-c-login { grid-area: login; align-self: center; }
.emp-table .emp-c-actions { grid-area: actions; align-self: center; }
.emp-detail { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; min-width: 0; padding: 10px 12px; background: var(--emp-soft); border-radius: 12px; font-size: 13px; }
.emp-detail-label { color: var(--emp-muted); font-size: 12px; }
.emp-detail .emp-strong, .emp-detail .emp-muted, .emp-detail .emp-body { overflow-wrap: anywhere; color: var(--emp-heading); font-weight: 700; }
.emp-table .is-unassigned .emp-detail, .emp-table td.is-unassigned:not(.emp-c-org) { display: none; }
.emp-table tbody tr.is-unassigned { grid-template-areas: "id id" "person person" "note note" "login actions"; }
.emp-incomplete-note { display: flex; grid-area: note; align-items: center; justify-content: space-between; gap: 10px; padding: 12px; color: var(--emp-body); background: var(--emp-drop-bg); border: 1px dashed var(--emp-drop-border); border-radius: 12px; font-size: 13px; }
.emp-page .emp-link { color: var(--emp-gold-text); font-weight: 700; text-decoration: none; white-space: nowrap; }

.emp-person { display: flex; align-items: center; gap: 12px; min-width: 0; }
.emp-avatar { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 44px; height: 44px; overflow: hidden; color: #fff; background: var(--emp-navy, #14213D); border-radius: 50%; font-size: 14px; font-weight: 700; letter-spacing: .02em; }
.emp-avatar.is-gold { background: var(--emp-gold, #8A6A1F); }
.emp-avatar img { width: 100%; height: 100%; object-fit: cover; }
.emp-avatar.has-photo { background: var(--emp-soft, #F8F8F5); box-shadow: inset 0 0 0 1px var(--emp-border, #E3E5E0); }
.emp-avatar.has-photo .emp-avatar-initials { display: none; }
.emp-person-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.emp-person-name { overflow: hidden; font-size: 16px; font-weight: 700; text-overflow: ellipsis; }
.emp-person-email { overflow: hidden; color: var(--emp-muted); font-size: 13px; text-overflow: ellipsis; }
.emp-id-badge { display: inline-block; padding: 5px 10px; color: var(--emp-gold-text); background: var(--emp-gold-soft); border-radius: 8px; font-family: var(--emp-mono); font-size: 12px; font-weight: 600; text-decoration: none; white-space: nowrap; }
a.emp-id-badge:hover, a.emp-id-badge:focus-visible { color: #fff; background: var(--emp-gold); }
.emp-strong { font-weight: 600; }
.emp-muted { color: var(--emp-muted); font-size: 13px; }
.emp-body { color: var(--emp-body); }
.emp-na { display: inline-block; padding: 3px 10px; color: var(--emp-muted); border: 1px dashed #C9CCC4; border-radius: 999px; font-size: 12px; font-weight: 600; white-space: nowrap; }
.emp-login { display: flex; flex-direction: column; gap: 2px; }
.emp-login-day { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.emp-login-day.is-today::before { content: ""; width: 8px; height: 8px; background: var(--emp-green-dot); border-radius: 50%; }
.emp-c-login .emp-login { flex-direction: row; flex-wrap: wrap; align-items: center; column-gap: 6px; color: var(--emp-body); font-size: 13px; }
.emp-actions { display: flex; justify-content: flex-end; gap: 8px; }
.emp-actions form { margin: 0; }

.emp-empty { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 40px 16px; color: var(--emp-muted); font-size: 14px; text-align: center; }
.emp-empty i { font-size: 32px; }
.emp-footer { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 16px 0 0; color: var(--emp-body); font-size: 13px; }
.emp-footer:has(.emp-count:empty):has(.emp-pagination:empty) { display: none; }
.emp-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.emp-page-btn { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 10px; color: var(--emp-heading); background: var(--emp-surface); border: 1px solid var(--emp-control-border); border-radius: 10px; font-size: 14px; font-weight: 600; }
.emp-page-btn.is-current { color: #fff; background: var(--emp-navy); border-color: var(--emp-navy); }
.emp-page-btn:disabled { color: #8A91A0; cursor: default; opacity: .7; }
.emp-page-gap { align-self: center; color: var(--emp-muted); }

/* Phones: "New employee" is a full-width button pinned to the bottom. */
.emp-new-mobile { position: fixed; right: 16px; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); left: 16px; z-index: 1020; min-height: 52px; font-size: 15px; box-shadow: 0 10px 24px rgba(138, 106, 31, .3); }

@media (min-width: 768px) {
  .emp-page { gap: 24px; padding-bottom: 0; }
  .emp-new-mobile { display: none; }
  .emp-table tbody { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .emp-toolbar { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
  .emp-search-row { flex: 1 1 320px; max-width: 420px; }
  .emp-filter-toggle { display: none; }
  .emp-filters { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 12px; }
  .emp-control { height: 44px; font-size: 14px; }
  .emp-footer { flex-direction: row; justify-content: space-between; }
}

/* Desktop: a real table inside one card. */
@media (min-width: 992px) {
  .emp-card { overflow: hidden; background: var(--emp-surface); border: 1px solid var(--emp-border); border-radius: 18px; box-shadow: var(--emp-shadow); }
  .emp-toolbar { margin: 0; padding: 20px 24px; border-bottom: 1px solid var(--emp-line); }
  .emp-table thead { display: table-header-group; }
  .emp-table tbody { display: table-row-group; }
  .emp-table tbody tr { display: table-row; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; }
  .emp-table tbody tr[hidden] { display: none; }
  .emp-table th { padding: 14px 16px; color: var(--emp-muted); background: var(--emp-soft); border-bottom: 1px solid var(--emp-line); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-align: left; text-transform: uppercase; white-space: nowrap; }
  .emp-table td { padding: 16px; border-bottom: 1px solid var(--emp-line); vertical-align: middle; }
  .emp-table tbody tr:hover td { background: #FCFCFA; }
  .emp-table th:first-child, .emp-table td:first-child { padding-left: 24px; }
  .emp-table th:last-child, .emp-table td:last-child { padding-right: 24px; }
  .emp-table .emp-c-index { display: table-cell; width: 56px; color: var(--emp-muted); font-weight: 600; }
  .emp-table .emp-c-org { display: table-cell; }
  .emp-table .emp-c-actions { width: 1%; text-align: right; }
  .emp-table td.is-unassigned:not(.emp-c-org) { display: table-cell; }
  .emp-table .is-unassigned .emp-detail { display: flex; }
  .emp-avatar { width: 42px; height: 42px; }
  .emp-person-name { font-size: 14px; }
  .emp-detail { padding: 0; background: none; border-radius: 0; gap: 2px; }
  .emp-detail-label, .emp-incomplete-note, .emp-na-repeat { display: none; }
  .emp-detail .emp-strong { font-weight: 600; }
  .emp-detail .emp-muted { color: var(--emp-muted); font-weight: 400; }
  .emp-detail .emp-body { color: var(--emp-body); font-weight: 400; }
  .emp-c-login .emp-login { flex-direction: column; align-items: flex-start; color: inherit; font-size: 14px; }
  .emp-icon-btn { width: 40px; height: 40px; font-size: 17px; }
  .emp-empty { border-bottom: 1px solid var(--emp-line); }
  .emp-footer { padding: 16px 24px; }
  .emp-page-btn { min-width: 40px; height: 40px; }
}
/* Narrower desktops (sidebar open): drop the row number and wrap the email. */
@media (min-width: 992px) and (max-width: 1279.98px) {
  .emp-table .emp-c-index { display: none; }
  .emp-table th, .emp-table td { padding-left: 12px; padding-right: 12px; }
  .emp-person-email { overflow-wrap: anywhere; white-space: normal; }
}

/* ---------- Create employee form ---------- */
.emp-form-intro { margin: 0 0 16px; color: var(--emp-body); font-size: 14px; }
.emp-req { color: var(--emp-danger); font-weight: 700; }
.emp-form-layout { display: flex; flex-direction: column; gap: 16px; }
.emp-sections { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.emp-section-pair { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.emp-section { min-width: 0; overflow: hidden; background: var(--emp-surface); border: 1px solid var(--emp-border); border-radius: 16px; box-shadow: var(--emp-shadow); scroll-margin-top: 96px; }
.emp-section-head { display: flex; flex-flow: row wrap; align-items: center; gap: 12px; padding: 18px 16px; border-bottom: 1px solid var(--emp-line); }
.emp-section-head h2 { margin: 0; color: var(--emp-heading); font-size: 18px; font-weight: 800; }
.emp-section-head p { margin: 0; color: var(--emp-muted); font-size: 14px; }
.emp-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; padding: 20px 16px; }
.emp-stack { display: flex; flex-direction: column; gap: 18px; padding: 20px 16px; }
.emp-field { display: flex; flex-direction: column; gap: 8px; min-width: 0; margin: 0; padding: 0; border: 0; }
.emp-field > label, .emp-field > legend, .emp-label { margin: 0; padding: 0; color: var(--emp-heading); font-size: 14px; font-weight: 700; }
.emp-field > legend { float: left; width: 100%; margin-bottom: 8px; }
.emp-field > legend + * { clear: left; }
.emp-help { color: var(--emp-muted); font-size: 13px; font-weight: 500; }
.emp-link { color: var(--emp-gold-text); font-weight: 700; text-decoration: none; }
.emp-link:hover, .emp-link:focus-visible { color: var(--emp-gold-text); text-decoration: underline; }

.emp-input { width: 100%; min-height: 48px; box-sizing: border-box; padding: 0 14px; color: var(--emp-heading); background-color: var(--emp-surface); border: 1px solid var(--emp-control-border); border-radius: 10px; font-family: inherit; font-size: 16px; font-weight: 500; }
textarea.emp-input { min-height: 96px; padding: 12px 14px; resize: vertical; }
select.emp-input { padding-right: 36px; }
.emp-input::placeholder { color: #8A91A0; }
.emp-input:focus { outline: none; border-color: var(--emp-gold); box-shadow: 0 0 0 3px rgba(138, 106, 31, .18); }
.emp-input-group { display: flex; align-items: stretch; min-height: 48px; overflow: hidden; background: var(--emp-surface); border: 1px solid var(--emp-control-border); border-radius: 10px; }
.emp-input-group:focus-within { border-color: var(--emp-gold); box-shadow: 0 0 0 3px rgba(138, 106, 31, .18); }
.emp-input-group .emp-input { flex: 1 1 auto; min-width: 0; border: 0; border-radius: 0; box-shadow: none; }
.emp-phone-code { flex: 0 0 auto; padding: 0 8px 0 12px; color: var(--emp-heading); background: var(--emp-soft); border: 0; border-right: 1px solid var(--emp-control-border); font-family: inherit; font-size: 16px; font-weight: 600; }
.emp-phone-code:focus { outline: none; background: var(--emp-gold-tint); }
.emp-password-toggle { display: inline-flex; flex: 0 0 48px; align-items: center; justify-content: center; padding: 0; color: var(--emp-muted); background: transparent; border: 0; font-size: 20px; cursor: pointer; }
.emp-password-toggle:hover, .emp-password-toggle[aria-pressed="true"] { color: var(--emp-gold-text); }
.emp-password-toggle:focus-visible { outline: 3px solid rgba(138, 106, 31, .35); outline-offset: -3px; }

.emp-choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.emp-choice { display: flex; align-items: center; gap: 10px; min-height: 48px; margin: 0; padding: 0 14px; color: var(--emp-heading); background: var(--emp-surface); border: 1px solid var(--emp-control-border); border-radius: 10px; font-size: 15px; font-weight: 600; cursor: pointer; }
.emp-choice input { width: 18px; height: 18px; margin: 0; accent-color: var(--emp-gold); }
.emp-choice:has(input:checked) { background: var(--emp-gold-tint); border-color: var(--emp-gold); box-shadow: inset 0 0 0 1px var(--emp-gold); }
.emp-choice:has(input:focus-visible) { outline: 3px solid rgba(138, 106, 31, .35); outline-offset: 2px; }


.emp-drop { position: relative; display: flex; align-items: center; gap: 14px; min-height: 80px; margin: 0; padding: 16px; background: var(--emp-drop-bg); border: 2px dashed var(--emp-drop-border); border-radius: 14px; cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
.emp-drop:hover, .emp-drop.is-dragging { background: var(--emp-gold-tint); border-color: var(--emp-gold); }
.emp-drop.has-file { border-style: solid; }
.emp-drop:focus-within { outline: 3px solid rgba(138, 106, 31, .35); outline-offset: 2px; }
.emp-drop-input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); opacity: 0; }
.emp-drop-icon { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 44px; height: 44px; color: var(--emp-gold-text); background: var(--emp-gold-soft); border-radius: 50%; font-size: 22px; }
.emp-drop-empty, .emp-drop-file { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.emp-drop-empty[hidden], .emp-drop-file[hidden] { display: none; }
.emp-drop-title, .emp-drop-name { overflow-wrap: anywhere; color: var(--emp-heading); font-size: 15px; font-weight: 700; }
.emp-drop-link { color: var(--emp-gold-text); text-decoration: underline; }
.emp-drop-preview { max-width: 100%; max-height: 120px; margin-bottom: 6px; border-radius: 8px; object-fit: contain; }
.emp-drop-clear { align-self: flex-start; min-height: 44px; padding: 0; color: var(--emp-danger); background: none; border: 0; font-size: 13px; font-weight: 700; cursor: pointer; }
.emp-drop-clear[hidden] { display: none; }

.was-validated .emp-input:invalid, .was-validated .emp-input-group:has(.emp-input:invalid), .was-validated .emp-drop:has(input:invalid) { border-color: var(--emp-danger); }
.was-validated .emp-choices:has(input:invalid) .emp-choice { border-color: var(--emp-danger); }

.emp-actionbar { position: sticky; bottom: 0; z-index: 20; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 10px; margin: 20px -16px 0; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)); background: var(--emp-surface); border-top: 1px solid var(--emp-border); box-shadow: 0 -6px 20px rgba(20, 33, 61, .06); }
.emp-actionbar-id { display: none; }
.emp-actionbar-buttons { display: contents; }
.emp-actionbar .emp-btn { width: 100%; min-height: 50px; font-size: 15px; }

@media (min-width: 768px) {
  .emp-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 24px; padding: 28px; }
  .emp-stack { padding: 28px; }
  .emp-section-head { padding: 22px 28px; }
  .emp-span-2 { grid-column: span 2; }
  .emp-input, .emp-phone-code { font-size: 15px; }
  .emp-drop { flex-direction: column; justify-content: center; min-height: 180px; padding: 24px; text-align: center; }
  .emp-drop-empty, .emp-drop-file { align-items: center; }
  .emp-drop-icon { width: 52px; height: 52px; font-size: 24px; }
  .emp-drop-clear { align-self: center; }
  .emp-actionbar { display: flex; align-items: center; justify-content: space-between; margin: 24px 0 0; padding: 14px 20px; border: 1px solid var(--emp-border); border-radius: 16px 16px 0 0; }
  .emp-actionbar-id { display: inline; color: var(--emp-body); font-size: 14px; }
  .emp-actionbar-id strong { color: var(--emp-gold-text); font-family: var(--emp-mono); }
  .emp-actionbar-buttons { display: flex; gap: 12px; }
  .emp-actionbar .emp-btn { width: auto; min-height: 48px; padding: 0 24px; }
}
@media (min-width: 992px) {
  .emp-form-layout { flex-direction: row; align-items: flex-start; gap: 28px; }
  .emp-sections { flex: 1 1 auto; gap: 24px; }
  .emp-section { border-radius: 18px; }
}
@media (min-width: 1400px) {
  .emp-section-pair { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 24px; }
}

/* ---------- Employee form parts shared by Create and Edit (employee/form): gold tabs, icon fields, photo ---------- */
.emp-visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.emp-help.is-error { color: var(--emp-danger); font-weight: 600; }

/* Tabs: chips that scroll sideways on phones; a settings menu with a gold active item from 992px. */
.emp-side { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.emp-tabs { display: flex; gap: 8px; margin: 0 -16px; padding: 0 16px 4px; overflow-x: auto; scrollbar-width: none; }
.emp-tabs::-webkit-scrollbar { display: none; }
.emp-tabs-title, .emp-tab-arrow, .emp-tab-long { display: none; }
.emp-tab { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 8px; min-height: 44px; padding: 0 14px; color: var(--emp-heading); background: var(--emp-surface); border: 1px solid var(--emp-control-border); border-radius: 10px; font-size: 14px; font-weight: 600; text-decoration: none; }
.emp-tab i { color: var(--emp-muted); font-size: 18px; }
.emp-tab:hover { color: var(--emp-heading); }
.emp-tab.is-active, .emp-tab.is-active:hover { color: #fff; background: var(--emp-gold); border-color: var(--emp-gold); font-weight: 700; }
.emp-tab.is-active i { color: #fff; }
.emp-tab:focus-visible { outline: 3px solid rgba(138, 106, 31, .35); outline-offset: 2px; }
.emp-completion { display: none; flex-direction: column; gap: 10px; padding: 18px; background: var(--emp-surface); border: 1px solid var(--emp-border); border-radius: 16px; font-size: 13px; }
.emp-completion-head { display: flex; justify-content: space-between; font-size: 14px; font-weight: 700; }
.emp-completion-head strong { color: var(--emp-gold-text); }
.emp-completion-bar { height: 8px; overflow: hidden; background: #EEF0EC; border-radius: 999px; }
.emp-completion-bar span { display: block; height: 100%; background: var(--emp-gold); border-radius: inherit; }

/* Section headers with a light-blue icon tile and a "fields missing" badge. */
.emp-section-icon { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 40px; height: 40px; color: var(--emp-tile-fg); background: var(--emp-tile-bg); border-radius: 10px; font-size: 20px; }
.emp-section-titles { display: flex; flex: 1 1 180px; flex-direction: column; gap: 3px; min-width: 0; }
.emp-section-titles p { display: none; }
.emp-missing-badge { flex: 0 0 auto; padding: 4px 10px; color: var(--emp-warn-fg); background: var(--emp-warn-bg); border-radius: 999px; font-size: 12px; font-weight: 700; white-space: nowrap; }

/* Inputs with a leading icon. */
.emp-icon-input { position: relative; display: flex; flex: 1 1 auto; align-items: center; min-width: 0; }
.emp-icon-input > i:first-child { position: absolute; left: 14px; z-index: 1; color: #8A91A0; font-size: 18px; pointer-events: none; }
.emp-icon-input > .emp-input { padding-left: 44px; }
.emp-icon-input.is-textarea > i:first-child { top: 14px; }
.emp-icon-input .emp-icon-end { position: absolute; right: 14px; color: var(--emp-gold-text); font-size: 16px; pointer-events: none; }
.emp-icon-input.is-locked > i:first-child { color: var(--emp-gold-text); }
.emp-icon-input.is-locked > .emp-input { padding-right: 44px; color: var(--emp-gold-text); background: var(--emp-gold-soft); border-color: #E8DFC6; font-family: var(--emp-mono); }
.emp-icon-input > .emp-has-toggle { padding-right: 48px; }
.emp-icon-input > .emp-password-toggle { position: absolute; top: 2px; right: 2px; bottom: 2px; width: 44px; border-radius: 8px; }
.emp-input-group > .emp-icon-input > .emp-input { border: 0; border-radius: 0; box-shadow: none; }

/* Photo: a card above the tabs on phones; a large framed photo in Personal details from 768px. */
.emp-photo { display: grid; grid-template-columns: var(--photo-size); justify-items: stretch; gap: 12px; }
.emp-photo-sm { --photo-size: 88px; }
.emp-photo-lg { --photo-size: 180px; display: none; align-content: start; }
.emp-photo-frame { grid-area: 1 / 1; display: flex; align-items: center; justify-content: center; width: var(--photo-size); height: var(--photo-size); overflow: hidden; box-sizing: border-box; color: var(--emp-gold-text); background: var(--emp-photo-bg); border: 3px solid var(--emp-gold); border-radius: 14px; }
.emp-photo-lg .emp-photo-frame { border-radius: 18px; }
.emp-photo-frame img { width: 100%; height: 100%; object-fit: cover; }
.emp-photo-frame img[hidden], .emp-photo-initials[hidden] { display: none; }
.emp-photo-initials { display: inline-flex; align-items: center; justify-content: center; font-size: calc(var(--photo-size) * .3); font-weight: 800; letter-spacing: -.02em; }
.emp-photo-initials i { font-size: calc(var(--photo-size) * .42); opacity: .7; }
.emp-photo-initials i[hidden] { display: none; }
.emp-photo-camera { grid-area: 1 / 1; align-self: end; justify-self: end; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin: 0 -10px -10px 0; color: #fff; background: var(--emp-gold); border: 3px solid var(--emp-surface); border-radius: 50%; font-size: 17px; cursor: pointer; }
.emp-photo-lg .emp-photo-camera { width: 46px; height: 46px; font-size: 19px; }
.emp-photo-camera:hover { background: var(--emp-gold-hover); }
#photo:focus-visible ~ .emp-photo-card .emp-photo-camera, #photo:focus-visible ~ .emp-form-layout .emp-photo-camera { outline: 3px solid rgba(138, 106, 31, .45); outline-offset: 2px; }
.emp-btn-outline { width: 100%; margin-top: 8px; color: var(--emp-gold-text); background: transparent; border: 1.5px solid var(--emp-gold); }
.emp-btn-outline:hover { color: var(--emp-gold-text); background: var(--emp-gold-tint); }
.emp-photo-lg .emp-help { text-align: center; }
.emp-photo-card { display: flex; align-items: center; gap: 18px; margin-bottom: 16px; padding: 20px 16px; background: var(--emp-surface); border: 1px solid var(--emp-border); border-radius: 16px; box-shadow: var(--emp-shadow); }
.emp-photo-card-text { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; }
.emp-photo-card-name { overflow-wrap: anywhere; font-size: 17px; font-weight: 800; }
.emp-personal-body { display: flex; flex-direction: column; }

/* Current document file with View, and a Replace button. */
.emp-file { display: flex; align-items: center; gap: 12px; padding: 12px; background: var(--emp-soft); border: 1px solid var(--emp-border); border-radius: 12px; }
.is-replacing .emp-file { border-color: var(--emp-gold); }
.emp-file-type { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 44px; height: 44px; color: var(--emp-navy); background: var(--emp-navy-soft); border-radius: 10px; font-size: 11px; font-weight: 800; }
.emp-file-type.is-pdf { color: var(--emp-danger); background: var(--emp-danger-soft); }
.emp-file-text { display: flex; flex: 1 1 auto; flex-direction: column; gap: 2px; min-width: 0; }
.emp-file-name { overflow: hidden; font-size: 14px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.emp-replace { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; margin: 0; color: var(--emp-gold-text); background: var(--emp-drop-bg); border: 1.5px dashed var(--emp-drop-border); border-radius: 10px; font-size: 14px; font-weight: 700; cursor: pointer; }
.emp-replace:hover { background: var(--emp-gold-tint); border-color: var(--emp-gold); }
.emp-replace:focus-within { outline: 3px solid rgba(138, 106, 31, .35); outline-offset: 2px; }

@media (min-width: 768px) {
  .emp-photo-card { display: none; }
  .emp-photo-lg { display: grid; }
  .emp-personal-body { flex-direction: row; align-items: flex-start; gap: 32px; padding: 28px; }
  .emp-personal-body > .emp-grid { flex: 1 1 auto; padding: 0; }
  .emp-section-icon { width: 48px; height: 48px; border-radius: 12px; font-size: 22px; }
  .emp-section-head { gap: 16px; }
  .emp-section-titles p { display: block; }
  .emp-missing-badge { padding: 6px 12px; font-size: 13px; }
  .emp-tabs { margin: 0; padding: 0; }
}
/* Tablets: the photo column is too wide next to a two-column grid; stack the fields. */
@media (min-width: 768px) and (max-width: 1199.98px) {
  .emp-personal-body > .emp-grid { grid-template-columns: minmax(0, 1fr); }
  .emp-personal-body > .emp-grid .emp-span-2 { grid-column: auto; }
}
@media (min-width: 992px) {
  .emp-side { position: sticky; top: 96px; flex: 0 0 280px; }
  .emp-tabs { flex-direction: column; gap: 6px; padding: 18px 14px; overflow: visible; background: var(--emp-surface); border: 1px solid var(--emp-border); border-radius: 16px; box-shadow: var(--emp-shadow); }
  .emp-tabs-title { display: block; padding: 0 8px 8px; color: var(--emp-muted); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
  .emp-tab { gap: 12px; min-height: 52px; padding: 0 14px; background: transparent; border: 0; border-radius: 12px; font-size: 15px; }
  .emp-tab:hover { background: var(--emp-soft); }
  .emp-tab.is-active, .emp-tab.is-active:hover { background: var(--emp-gold); box-shadow: 0 6px 14px rgba(138, 106, 31, .28); }
  .emp-tab-label { flex: 1 1 auto; }
  .emp-tab-long, .emp-tab-arrow { display: inline; }
  .emp-tab-short { display: none; }
  .emp-tab-arrow { color: #8A91A0; }
  .emp-tab.is-active .emp-tab-arrow { color: #fff; }
  .emp-completion { display: flex; }
}

/* Employee detail page (employee/show): photo, name and ID above the personal details. */
.emp-identity { display: flex; align-items: center; gap: 16px; margin-bottom: 18px; padding-bottom: 18px; border-bottom: 1px solid var(--emp-line); }
.emp-identity-text { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; }
.emp-identity-name { overflow-wrap: anywhere; color: var(--emp-heading); font-size: 18px; font-weight: 800; }
.emp-avatar.is-lg { width: 64px; height: 64px; font-size: 20px; }

/* Employee form: Education records (x-employee.education-row) */
.emp-optional { margin-left: 4px; color: var(--emp-muted); font-size: 12px; font-weight: 500; }
.emp-edu { display: flex; flex-direction: column; gap: 14px; padding: 14px; background: var(--emp-soft); border: 1px solid var(--emp-border); border-radius: 14px; }
.emp-edu-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.emp-edu-title { display: inline-flex; align-items: center; gap: 8px; color: var(--emp-heading); font-size: 15px; font-weight: 800; }
.emp-edu-title i { color: var(--emp-tile-fg); font-size: 18px; }
.emp-grid.emp-edu-grid { padding: 0; gap: 16px; }
.emp-edu .emp-input, .emp-edu .emp-file { background-color: var(--emp-surface); }
.emp-edu-empty { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 0; padding: 18px; color: var(--emp-muted); border: 1px dashed var(--emp-control-border); border-radius: 12px; font-size: 14px; }
.emp-edu-empty[hidden] { display: none; }
.emp-edu-empty i { font-size: 20px; }
.emp-edu-add { align-self: flex-start; width: auto; margin-top: 0; padding: 0 18px; }
@media (min-width: 768px) {
  .emp-edu { padding: 18px 20px; }
  .emp-grid.emp-edu-grid { gap: 18px 20px; }
}

/* Employee form: Phone with intl-tel-input (flag + dial code selector, searchable country list). */
.emp-phone { position: relative; }
.emp-phone .iti { display: block; width: 100%; --iti-border-color: var(--emp-control-border); --iti-hover-color: var(--emp-gold-tint); --iti-country-selector-bg: var(--emp-surface); --iti-icon-color: var(--emp-muted); }
.emp-phone .iti .emp-input { width: 100%; padding-right: 44px; }
.emp-phone .iti__country-container { padding: 1px; }
.emp-phone .iti__selected-country { height: 100%; background: var(--emp-soft); border-right: 1px solid var(--emp-control-border); border-radius: 9px 0 0 9px; }
.emp-phone .iti__selected-country:hover, .emp-phone .iti__selected-country:focus-visible { background: var(--emp-gold-tint); }
.emp-phone .iti__selected-dial-code { color: var(--emp-heading); font-weight: 600; }
.emp-phone-icon { position: absolute; top: 0; right: 14px; bottom: 0; z-index: 2; display: flex; align-items: center; color: #8A91A0; font-size: 18px; pointer-events: none; }
.emp-phone.is-invalid .emp-input, .was-validated .emp-phone .emp-input:invalid { border-color: var(--emp-danger); }
.emp-phone.is-invalid .emp-input:focus { box-shadow: 0 0 0 3px rgba(180, 35, 24, .15); }
/* The country list (attached to <body>, so outside the form's token scope: use literal colors). */
.emp-iti .iti__country-selector, .iti--detached-country-selector .iti__country-selector { overflow: hidden; background: #fff; border: 1px solid #E3E5E0; border-radius: 12px; box-shadow: 0 12px 30px rgba(20, 33, 61, .16); }
.iti__search-input { height: 44px; padding-left: 36px; font-size: 16px; }
.iti__search-input:focus { outline: none; box-shadow: inset 0 0 0 2px rgba(138, 106, 31, .35); }
.iti__country { min-height: 44px; padding: 8px 12px; font-size: 14px; }
.iti__country.iti__highlight { background-color: #FBF7EC; }
.iti__country-name { color: #14213D; }
.iti__dial-code { color: #6B7385; }
[data-theme="dark"] .emp-iti .iti__country-selector, [data-theme="dark"] .iti--detached-country-selector .iti__country-selector { background: var(--dark-card); border-color: var(--dark-border); }
[data-theme="dark"] .iti__search-input { color: var(--dark-heading); background: var(--dark-input); }
[data-theme="dark"] .iti__country-name { color: var(--dark-heading); }
[data-theme="dark"] .iti__country.iti__highlight { background-color: var(--dark-hover); }

/* ==========================================================================
   Authentication inputs (resources/views/auth/partials/field.blade.php)
   Login, Forgot Password, Reset Password and Confirm Password share these.
   Focus uses the Brand Primary Color; the Dark Layout setting adds body.auth-dark.
   ========================================================================== */
.auth-field-group {
    --auth-input-bg: #ffffff;
    --auth-input-border: #cbd5e1;
    --auth-input-border-hover: #94a3b8;
    --auth-input-text: #102a43;
    --auth-placeholder: #8c9aab;
    --auth-icon: #7b8a9b;
    --auth-label: #243b53;
    --auth-toggle-hover-bg: rgba(var(--primary-rgb, 8, 127, 192), 0.10);
    --auth-error: #b42318;
    margin-bottom: 20px;
}

/* The login page card is always light; the older auth cards follow the Dark Layout setting. */
body.auth-dark:not(.geo-login-page) .auth-field-group {
    --auth-input-bg: #1b2433;
    --auth-input-border: #3a475a;
    --auth-input-border-hover: #56657b;
    --auth-input-text: #e6edf5;
    --auth-placeholder: #7d8b9e;
    --auth-icon: #8e9bb0;
    --auth-label: #d5dde8;
    --auth-error: #f97066;
}

.auth-field-label {
    display: block;
    margin-bottom: 8px;
    color: var(--auth-label);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
}

.auth-required { color: var(--auth-error); }

.auth-field {
    position: relative;
    width: 100%;
    min-width: 0;
}

.auth-field-icon {
    position: absolute;
    top: 50%;
    inset-inline-start: 16px;
    transform: translateY(-50%);
    color: var(--auth-icon);
    font-size: 20px;
    line-height: 1;
    pointer-events: none;
    transition: color .18s ease;
}

.auth-field .auth-input {
    display: block;
    width: 100%;
    height: 52px;
    margin: 0;
    padding-block: 0;
    padding-inline: 48px 16px;
    color: var(--auth-input-text);
    background: var(--auth-input-bg);
    border: 1px solid var(--auth-input-border);
    border-radius: 12px;
    outline: none;
    box-shadow: none;
    font-size: 16px; /* 16px stops iOS Safari zooming in on focus */
    line-height: 1.4;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.auth-field.has-toggle .auth-input { padding-inline-end: 56px; }
.auth-field .auth-input::placeholder { color: var(--auth-placeholder); opacity: 1; }
.auth-field .auth-input:hover { border-color: var(--auth-input-border-hover); }

.auth-field .auth-input:focus {
    border-color: var(--primary-color, #087fc0);
    box-shadow: 0 0 0 4px rgba(var(--primary-rgb, 8, 127, 192), 0.16);
}

.auth-field:focus-within .auth-field-icon { color: var(--primary-color, #087fc0); }

/* Keep browser autofill from painting a yellow/blue block behind the icon. */
.auth-field .auth-input:-webkit-autofill {
    -webkit-text-fill-color: var(--auth-input-text);
    -webkit-box-shadow: 0 0 0 1000px var(--auth-input-bg) inset;
    caret-color: var(--auth-input-text);
}

.auth-field.is-invalid .auth-input { border-color: var(--auth-error); }
.auth-field.is-invalid .auth-field-icon { color: var(--auth-error); }
.auth-field.is-invalid .auth-input:focus { box-shadow: 0 0 0 4px rgba(180, 35, 24, 0.14); }

.auth-password-toggle {
    position: absolute;
    top: 50%;
    inset-inline-end: 4px;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: var(--auth-icon);
    background: transparent;
    border: 0;
    border-radius: 10px;
    font-size: 20px;
    cursor: pointer;
    transition: color .18s ease, background-color .18s ease;
}

.auth-password-toggle:hover { color: var(--primary-color, #087fc0); background: var(--auth-toggle-hover-bg); }
.auth-password-toggle:focus-visible { outline: 3px solid rgba(var(--primary-rgb, 8, 127, 192), 0.35); outline-offset: 0; }

.auth-field-error {
    display: block;
    margin-top: 7px;
    color: var(--auth-error);
    font-size: 13px;
    line-height: 1.45;
}

@media (prefers-reduced-motion: reduce) {
    .auth-field-icon, .auth-field .auth-input, .auth-password-toggle { transition: none; }
}

/* auth pages: platform credit under the copyright (partials/brand/platform-credit) */
.auth-footer .auth-footer-credit { margin-top: 6px; }

/* auth pages copyright: Brand Favicon / Icon in a white badge before the text */
.auth-footer .auth-footer-copy {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-transform: none;
}

.auth-footer .auth-footer-badge {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 5px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 10px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.1);
}

.auth-footer .auth-footer-badge img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* sidebar brand header: Company Logo when expanded, Favicon / Icon badge when collapsed (.minimenu).
   It is exactly as tall as the top header bar (app-header.css --hdr-bar-h: 76px, 64px <= 767px), so its
   divider continues the header's bottom line and the whole logo sits above it. The menu below takes
   the remaining height instead of 100vh - 70px. */
.dash-sidebar {
    --sb-brand-h: 76px;
    --sb-brand-pad: 10px;
}

.dash-sidebar .navbar-wrapper {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

/* The menu is the sidebar's only scroll container: native scrolling (wheel, trackpad, touch, keyboard)
   with the scrollbar hidden. It no longer depends on SimpleBar (assets/js/dash.js), which could leave
   the menu unscrollable when it did not initialise and nested a second scrollbar when it did. */
.dash-sidebar .navbar-wrapper > .navbar-content {
    flex: 1 1 auto;
    min-height: 0;
    height: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.dash-sidebar .navbar-wrapper > .navbar-content::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}

/* if SimpleBar still initialises (cached dash.js), flatten its layers so they don't scroll or clip */
.dash-sidebar .navbar-content .simplebar-wrapper,
.dash-sidebar .navbar-content .simplebar-mask,
.dash-sidebar .navbar-content .simplebar-offset,
.dash-sidebar .navbar-content .simplebar-content-wrapper {
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

.dash-sidebar .navbar-content .simplebar-placeholder,
.dash-sidebar .navbar-content .simplebar-track,
.dash-sidebar .navbar-content .simplebar-height-auto-observer-wrapper {
    display: none !important;
}

.dash-sidebar .m-header.main-logo {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    /* + 1px: the divider sits on the same pixel row as the top header's border-bottom */
    height: calc(var(--sb-brand-h) + 1px) !important;
    min-height: 0;
    max-height: none;
    padding: var(--sb-brand-pad) 0;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    box-sizing: border-box;
    overflow: hidden;
    transition: background-color .2s ease, padding .2s ease, border-color .2s ease;
}

/* both marks share one grid cell so the swap can cross-fade */
.dash-sidebar .m-header.main-logo .b-brand {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    overflow: visible;
}

.dash-sidebar .m-header.main-logo .b-brand > .logo {
    grid-area: 1 / 1;
    display: block !important;
    margin: 0 auto;
    object-fit: contain;
    object-position: center;
    transition: opacity .2s ease, transform .2s ease, visibility 0s linear 0s;
}

/* fills the space above the divider; object-fit keeps the artwork's proportions */
.dash-sidebar .m-header.main-logo .b-brand > .logo-lg {
    width: 88% !important;
    max-width: 88% !important;
    height: calc(var(--sb-brand-h) - 2 * var(--sb-brand-pad)) !important;
    max-height: none !important;
}

.dash-sidebar .m-header.main-logo .b-brand > .logo-sm {
    width: 44px !important;
    max-width: none !important;
    height: 44px;
    max-height: none !important;
    padding: 6px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 11px;
    box-shadow: 0 2px 6px rgba(9, 24, 48, 0.18);
    box-sizing: border-box;
}

.dash-sidebar .m-header.main-logo .b-brand > .logo-sm,
.minimenu .dash-sidebar .m-header.main-logo .b-brand > .logo-lg {
    opacity: 0;
    visibility: hidden;
    transform: scale(.92);
    transition: opacity .2s ease, transform .2s ease, visibility 0s linear .2s;
}

.minimenu .dash-sidebar .m-header.main-logo .b-brand > .logo-sm {
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: opacity .2s ease, transform .2s ease, visibility 0s linear 0s;
}

/* collapsed: the badge sits on the sidebar colour, so the header reads as part of the sidebar */
.minimenu .dash-sidebar .m-header.main-logo {
    background: transparent;
    border-bottom-color: rgba(var(--sidebar-font-rgb, 255, 255, 255), 0.12);
}

@media (max-width: 767.98px) {
    .dash-sidebar { --sb-brand-h: 64px; --sb-brand-pad: 8px; }
}

@media (prefers-reduced-motion: reduce) {
    .dash-sidebar .m-header.main-logo,
    .dash-sidebar .m-header.main-logo .b-brand > .logo { transition: none !important; }
}

/* ============================================================
 * Role Management: Create/Edit Role permission picker (role/permission-tabs.blade.php)
 * and the compact Role List summary (role/index.blade.php).
 * Modules, labels and icons come from config/app-modules.php, shared with the sidebar.
 * The modal has a fixed height: header, name/search, counts and module chips stay put and only
 * the permission panel scrolls. Below 768px each permission row becomes a card.
 * ============================================================ */
.role-perms,
.role-list,
.role-view {
  --rp-primary: var(--primary-color, var(--theme-color, #0897cf));
  --rp-primary-rgb: var(--primary-rgb, 8, 151, 207);
  --rp-surface: var(--dark-card, #fff);
  --rp-soft: var(--dark-card-secondary, #f8fafc);
  --rp-border: var(--dark-border, var(--shell-border, #e8edf3));
  --rp-text: var(--dark-text, #374151);
  --rp-heading: var(--dark-heading, #1f2937);
  --rp-muted: var(--dark-muted, var(--shell-muted, #6b7280));
  --rp-hover: var(--dark-hover, #f1f5f9);
  --rp-danger: var(--bs-danger, #dc3545);
}
.role-perms [hidden] { display: none !important; }

.modal:has(.role-form) .modal-dialog { max-width: 1120px; }
.modal:has(.role-form) .modal-content { height: calc(100vh - 32px); height: calc(100dvh - 32px); }
.role-form .app-form-body { display: flex; flex-direction: column; padding-top: 16px; padding-bottom: 0; overflow: hidden; }
.app-form-grid.role-form-layout { display: flex; flex: 1 1 auto; flex-direction: column; min-height: 0; }

.role-perms { display: flex; flex: 1 1 auto; flex-direction: column; gap: 12px; min-height: 0; }
.role-perms-top { flex-shrink: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; }

.role-perms-option { flex-shrink: 0; display: flex; align-items: center; gap: 10px; margin: -2px 0 0; cursor: pointer; }
.role-perms-option .form-switch { margin: 0; padding-left: 0; }
.role-perms .role-perms-option .form-check-input { width: 2.3em; height: 1.25em; margin: 0; }
.role-perms .role-perms-option .form-check-input:disabled { opacity: .75; }
.role-perms-option strong { display: block; color: var(--rp-heading); font-size: var(--ui-font-sm); font-weight: 600; line-height: 1.3; }
.role-perms-option small { display: block; color: var(--rp-muted); font-size: 12px; line-height: 1.3; }
.role-perms-summary { flex-shrink: 0; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding: 8px 12px; background: rgba(var(--rp-primary-rgb), .06); border: 1px solid rgba(var(--rp-primary-rgb), .18); border-radius: var(--ui-radius-sm); }
.role-perms-total { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; color: var(--rp-heading); font-size: var(--ui-font-sm); }
.role-perms-total strong { color: var(--rp-primary); font-variant-numeric: tabular-nums; }
.role-perms-progress { width: 140px; height: 6px; overflow: hidden; background: rgba(var(--rp-primary-rgb), .15); border-radius: 999px; }
.role-perms-progress > span { display: block; width: 0; height: 100%; background: var(--rp-primary); border-radius: inherit; transition: width .2s ease; }
.role-perms-error { display: inline-flex; align-items: center; gap: 4px; color: var(--rp-danger); font-weight: 600; }
.role-perms-global { display: flex; gap: 8px; }
.role-perms-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 32px; padding: 0 12px; color: var(--rp-primary); background: var(--rp-surface); border: 1px solid rgba(var(--rp-primary-rgb), .35); border-radius: var(--ui-radius-sm); font-size: 12.5px; font-weight: 600; white-space: nowrap; transition: background-color .15s ease, color .15s ease, border-color .15s ease; }
.role-perms-btn:hover { color: #fff; background: var(--rp-primary); border-color: var(--rp-primary); }
.role-perms-btn.is-muted { color: var(--rp-muted); border-color: var(--rp-border); }
.role-perms-btn.is-muted:hover { color: var(--rp-heading); background: var(--rp-hover); border-color: var(--rp-border); }
.role-perms-btn i { font-size: 15px; }

/* Module navigation: wrapping chips on desktop, one horizontally scrolling row on smaller screens. */
.role-perms-nav { flex-shrink: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.role-perms-tab { display: inline-flex; flex-shrink: 0; align-items: center; gap: 7px; height: 34px; padding: 0 8px 0 11px; color: var(--rp-text); background: var(--rp-surface); border: 1px solid var(--rp-border); border-radius: 999px; font-size: 12.5px; font-weight: 600; white-space: nowrap; transition: background-color .15s ease, color .15s ease, border-color .15s ease, opacity .15s ease; }
.role-perms-tab > i { color: var(--rp-muted); font-size: 16px; }
.role-perms-tab:hover { color: var(--rp-primary); border-color: rgba(var(--rp-primary-rgb), .45); }
.role-perms-tab:hover > i { color: var(--rp-primary); }
.role-perms-tab:focus-visible { outline: 2px solid var(--rp-primary); outline-offset: 2px; }
.role-perms-tab.is-active { color: #fff; background: var(--rp-primary); border-color: var(--rp-primary); box-shadow: 0 4px 12px rgba(var(--rp-primary-rgb), .25); }
.role-perms-tab.is-active > i { color: #fff; }
.role-perms-tab.is-dimmed { opacity: .45; }
.role-perms-tab-count { min-width: 34px; padding: 1px 7px; color: var(--rp-muted); background: var(--rp-soft); border-radius: 999px; font-size: 11px; font-variant-numeric: tabular-nums; text-align: center; }
.role-perms-tab.has-selection .role-perms-tab-count { color: var(--rp-primary); background: rgba(var(--rp-primary-rgb), .12); }
.role-perms-tab.is-active .role-perms-tab-count { color: #fff; background: rgba(255, 255, 255, .22); }

/* Scrolling permission panel. */
.role-perms-panel { position: relative; flex: 1 1 auto; min-height: 0; margin: 0 calc(-1 * var(--af-pad-x)); padding: 0 var(--af-pad-x) 16px; overflow-y: auto; overscroll-behavior: contain; border-top: 1px solid var(--rp-border); }
.role-perms-module + .role-perms-module { margin-top: 12px; }
.role-perms-module-head { position: sticky; top: 0; z-index: 3; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding: 10px 0; background: var(--rp-surface); }
.role-perms-module-title { display: flex; align-items: center; gap: 10px; min-width: 0; }
.role-perms-module-title h6 { margin: 0; color: var(--rp-heading); font-size: 15px; font-weight: 700; }
.role-perms-module-icon { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 30px; height: 30px; color: var(--rp-primary); background: rgba(var(--rp-primary-rgb), .12); border-radius: 8px; font-size: 17px; }
.role-perms-module-count { padding: 2px 8px; color: var(--rp-muted); background: var(--rp-soft); border-radius: 999px; font-size: 12px; font-weight: 600; font-variant-numeric: tabular-nums; }
.role-perms-module-actions { display: flex; align-items: center; gap: 16px; }
.role-perms-select-module { display: inline-flex; align-items: center; gap: 8px; margin: 0; color: var(--rp-heading); font-size: var(--ui-font-sm); font-weight: 600; cursor: pointer; }
.role-perms-link { padding: 0; color: var(--rp-muted); background: none; border: 0; font-size: var(--ui-font-sm); font-weight: 600; }
.role-perms-link:hover { color: var(--rp-danger); text-decoration: underline; }

.role-perms .form-check-input { float: none; flex: 0 0 auto; width: 17px; height: 17px; margin: 0; cursor: pointer; }
.role-perms .form-check-input:is(:checked, :indeterminate) { background-color: var(--rp-primary); border-color: var(--rp-primary); }
.role-perms .form-check-input:focus { border-color: var(--rp-primary); box-shadow: 0 0 0 3px rgba(var(--rp-primary-rgb), .18); }

/* Permission table: CSS grid rows so each row can turn into a card on mobile. */
.role-perms-grid { overflow: clip; border: 1px solid var(--rp-border); border-radius: var(--ui-radius-sm); }
.role-perms-row { display: grid; grid-template-columns: var(--rp-grid); align-items: center; border-top: 1px solid var(--rp-border); }
.role-perms-row:first-child { border-top: 0; }
.role-perms-row.is-head { position: sticky; top: var(--rp-head-h, 52px); z-index: 2; color: var(--rp-muted); background: var(--rp-soft); font-size: 11.5px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; }
.role-perms-row:not(.is-head):hover { background: rgba(var(--rp-primary-rgb), .035); }
.role-perms-cell { display: flex; align-items: center; justify-content: center; min-width: 0; padding: 8px 10px; }
.role-perms-cell.is-name { justify-content: flex-start; gap: 10px; margin: 0; color: var(--rp-heading); font-size: var(--ui-font-sm); font-weight: 600; cursor: pointer; }
.role-perms-row.is-head .role-perms-cell.is-name { padding-left: 37px; cursor: default; }
.role-perms-cell.is-extras { flex-wrap: wrap; justify-content: flex-start; gap: 6px; }
.role-perms-check { display: inline-flex; align-items: center; margin: 0; padding: 4px; cursor: pointer; }
.role-perms-check-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.role-perms-na::before { content: ""; display: block; width: 12px; height: 2px; background: var(--rp-border); border-radius: 2px; }
.role-perms-chip { display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 3px 10px 3px 7px; color: var(--rp-text); background: var(--rp-surface); border: 1px solid var(--rp-border); border-radius: 999px; font-size: 12px; font-weight: 600; line-height: 1.5; cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
.role-perms-chip .form-check-input { width: 14px; height: 14px; }
.role-perms-chip:has(:checked) { color: var(--rp-primary); background: rgba(var(--rp-primary-rgb), .08); border-color: rgba(var(--rp-primary-rgb), .45); }
.role-perms-empty { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 48px 16px; color: var(--rp-muted); font-size: var(--ui-font-sm); text-align: center; }
.role-perms-empty > i { font-size: 30px; }

@media (max-width: 991.98px) {
  .modal:has(.role-form) .modal-dialog { max-width: 820px; }
  .role-perms-nav { flex-wrap: nowrap; margin: 0 calc(-1 * var(--af-pad-x)); padding: 0 var(--af-pad-x) 4px; overflow-x: auto; scrollbar-width: thin; }
}
@media (max-width: 767.98px) {
  .modal:has(.role-form) .modal-content { height: calc(100vh - 16px); height: calc(100dvh - 16px); }
  .role-form .app-form-body { padding-top: 12px; }
  .role-perms { gap: 10px; }
  .role-perms-top { grid-template-columns: 1fr; gap: 8px; }
  .role-perms-search .form-label { display: none; }
  .role-perms-progress { width: 72px; }
  .role-perms-global { width: 100%; }
  .role-perms-btn { flex: 1 1 0; }
  .role-perms-module-head { gap: 6px; }
  .role-perms-module-actions { justify-content: space-between; width: 100%; }
  /* Cards: row name on top, the permissions as a two-column checklist, extra actions below. */
  .role-perms-grid { display: flex; flex-direction: column; gap: 10px; overflow: visible; border: 0; border-radius: 0; }
  .role-perms-row.is-head { display: none; }
  .role-perms-row { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 10px; padding: 0 12px 8px; background: var(--rp-surface); border: 1px solid var(--rp-border); border-radius: var(--ui-radius-sm); }
  .role-perms-row:first-child { border-top: 1px solid var(--rp-border); }
  .role-perms-cell { justify-content: flex-start; padding: 6px 0; }
  .role-perms-cell.is-name { grid-column: 1 / -1; margin-bottom: 4px; padding: 10px 0; border-bottom: 1px solid var(--rp-border); }
  .role-perms-cell.is-extras { grid-column: 1 / -1; }
  .role-perms-cell:has(> .role-perms-na),
  .role-perms-cell.is-extras:empty { display: none; }
  .role-perms-check { gap: 8px; padding: 2px 0; }
  .role-perms-check-text { position: static; width: auto; height: auto; overflow: visible; clip: auto; color: var(--rp-text); font-size: var(--ui-font-sm); }
}

/* Role List: compact permission summary instead of one badge per permission. */
.role-list .role-name { display: block; color: var(--rp-heading); font-weight: 700; }
.role-list .role-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; margin-top: 3px; color: var(--rp-muted); font-size: 12px; }
.role-list .role-meta i { margin-right: 3px; font-size: 13px; }
.role-list .role-default-badge { display: inline-flex; align-items: center; padding: 0 8px; color: var(--rp-primary); background: rgba(var(--rp-primary-rgb), .1); border: 1px solid rgba(var(--rp-primary-rgb), .25); border-radius: 999px; font-weight: 600; }
.role-list .role-perm-summary { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.role-list .role-perm-total { display: inline-flex; align-items: center; gap: 6px; color: var(--rp-heading); font-size: var(--ui-font-sm); font-weight: 700; }
.role-list .role-perm-total > i { color: var(--rp-primary); font-size: 16px; }
.role-list .role-perm-modules { color: var(--rp-muted); font-size: 12.5px; white-space: normal; }
.role-list .role-perm-more { color: var(--rp-primary); font-weight: 600; text-decoration: none; }
.role-list .role-perm-module { color: var(--rp-text); text-decoration: none; border-bottom: 1px dashed rgba(var(--rp-primary-rgb), .45); }
.role-list .role-perm-module > span { color: var(--rp-muted); font-variant-numeric: tabular-nums; }
.role-list :is(.role-perm-module, .role-perm-more):hover { color: var(--rp-primary); border-bottom-style: solid; }
.role-list .role-perm-sep { margin: 0 5px; color: var(--rp-muted); }
.role-list .role-perm-view { display: inline-flex; align-items: center; gap: 4px; padding: 0; color: var(--rp-primary); font-size: 12.5px; font-weight: 600; text-decoration: none; }
.role-list .role-perm-view:hover { text-decoration: underline; }

/* View Permissions modal (read-only). */
.role-view .app-form-body { padding-top: 12px; }
.role-view-module { padding: 12px 0; border-top: 1px solid var(--rp-border); }
.role-view-module:first-child,
.role-view-filter + .role-view-module { border-top: 0; padding-top: 0; }
.role-view-module-head { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.role-view-module-head h6 { margin: 0; color: var(--rp-heading); font-size: 14px; font-weight: 700; }
.role-view-row { display: grid; grid-template-columns: minmax(140px, 200px) minmax(0, 1fr); gap: 4px 12px; padding: 5px 0; }
.role-view-row-label { color: var(--rp-text); font-size: var(--ui-font-sm); font-weight: 600; }
.role-view-row-perms { display: flex; flex-wrap: wrap; gap: 4px; }
.role-view-filter { position: sticky; top: -12px; z-index: 2; display: flex; flex-wrap: wrap; gap: 6px; margin: -12px 0 12px; padding: 12px 0 10px; background: var(--rp-surface); border-bottom: 1px solid var(--rp-border); }
.role-view-filter-btn { display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 10px; color: var(--rp-text); background: var(--rp-surface); border: 1px solid var(--rp-border); border-radius: 999px; font-size: 12.5px; font-weight: 600; white-space: nowrap; }
.role-view-filter-btn > i { color: var(--rp-muted); font-size: 15px; }
.role-view-filter-btn > span { padding: 0 6px; color: var(--rp-muted); background: var(--rp-soft); border-radius: 999px; font-size: 11px; }
.role-view-filter-btn:hover { color: var(--rp-primary); border-color: rgba(var(--rp-primary-rgb), .45); }
.role-view-filter-btn.is-active { color: #fff; background: var(--rp-primary); border-color: var(--rp-primary); }
.role-view-filter-btn.is-active > i { color: #fff; }
.role-view-filter-btn.is-active > span { color: #fff; background: rgba(255, 255, 255, .22); }
.role-view-module[hidden] { display: none; }
.role-view-module-total { color: var(--rp-muted); font-size: var(--ui-font-sm); font-weight: 600; }
.role-view-admin { display: inline-flex; align-items: center; gap: 4px; margin-left: auto; padding: 1px 8px; color: #b45309; background: rgba(245, 158, 11, .12); border: 1px solid rgba(245, 158, 11, .35); border-radius: 999px; font-size: 11.5px; font-weight: 700; }
[data-theme="dark"] .role-view-admin { color: #fbbf24; }
.role-view-chip { font-family: inherit; padding: 1px 9px; color: var(--rp-primary); background: rgba(var(--rp-primary-rgb), .08); border: 1px solid rgba(var(--rp-primary-rgb), .22); border-radius: 999px; font-size: 12px; font-weight: 600; }
@media (max-width: 575.98px) {
  .role-view-row { grid-template-columns: 1fr; }
}
