﻿/************* SETUP FONT - START *************/
/* be-vietnam-pro-200 - vietnamese_latin */
@tailwind base;
@tailwind components;
@tailwind utilities;

/* inter-100 - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 100;
    src: url('../fonts/inter-v18-latin_vietnamese-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-100italic - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 100;
    src: url('../fonts/inter-v18-latin_vietnamese-100italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-200 - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 200;
    src: url('../fonts/inter-v18-latin_vietnamese-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-200italic - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 200;
    src: url('../fonts/inter-v18-latin_vietnamese-200italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-300 - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 300;
    src: url('../fonts/inter-v18-latin_vietnamese-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-300italic - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 300;
    src: url('../fonts/inter-v18-latin_vietnamese-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-regular - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/inter-v18-latin_vietnamese-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-italic - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 400;
    src: url('../fonts/inter-v18-latin_vietnamese-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-500 - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/inter-v18-latin_vietnamese-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-500italic - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 500;
    src: url('../fonts/inter-v18-latin_vietnamese-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-600 - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/inter-v18-latin_vietnamese-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-600italic - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 600;
    src: url('../fonts/inter-v18-latin_vietnamese-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-700 - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/inter-v18-latin_vietnamese-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-700italic - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 700;
    src: url('../fonts/inter-v18-latin_vietnamese-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-800 - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 800;
    src: url('../fonts/inter-v18-latin_vietnamese-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-800italic - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 800;
    src: url('../fonts/inter-v18-latin_vietnamese-800italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-900 - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 900;
    src: url('../fonts/inter-v18-latin_vietnamese-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-900italic - latin_vietnamese */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 900;
    src: url('../fonts/inter-v18-latin_vietnamese-900italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/************* SETUP FONT - END *************/


/************* GENERAL - START *************/
body {
    font-family: Inter;
    font-size: 14px;
    background-color: #f6f7fa;
}

.btn {
    font-size: 14px;
}

.myadmin-dd-empty .dd-list .dd-handle {
    height: 100%;
    cursor: grab;
}

.sortable-handle {
    height: 100%;
    cursor: grab;
}

[class*='-button'] {
    cursor: pointer;
}

.myadmin-dd-empty .dd-list .dd-handle::before {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    top: 0;
    right: 0;
    height: 100%;
}

[type="checkbox"].checkbox-fix + label {
    height: 18px;
}

.sortable-placeholder {
    height: 3rem;
    width: 100%;
    background-color: lightyellow;
    border: 2px dashed #c9b900;
}

.hiddenfile {
    display: none;
}

.upload-image {
    height: 10rem;
    width: 10rem;
    object-fit: cover;
}


hr.hr-text {
    position: relative;
    border: none;
    height: 1px;
    background: #999;
}

hr.hr-text::before {
    content: attr(data-content);
    display: inline-block;
    background: #fff;
    font-size: 0.85rem;
    border-radius: 30rem;
    padding: 0.2rem 2rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


#toast-container > .toast-success {
    background-color: #1b4c43;
    color: white;
}

#toast-container > .toast-error {
    background-color: #d22d3d;
    color: white;
}


/*::-webkit-input-placeholder {*/
/*    font-style: italic;*/
/*}*/

/*:-moz-placeholder {*/
/*    font-style: italic;*/
/*}*/

/*::-moz-placeholder {*/
/*    font-style: italic;*/
/*}*/

/*:-ms-input-placeholder {*/
/*    font-style: italic;*/
/*}*/

/*#toast-container > .toast-warning {
    background-color: #e2c636;
    color: white;

/*.note-editor .dropdown-toggle::after {
    all: unset
}

.note-editor .note-dropdown-menu {
    box-sizing: content-box
}

.note-editor .note-modal-footer {
    box-sizing: content-box
}*/
.note-btn.dropdown-toggle:after {
    content: none;
}

.page-wrapper.compact-wrapper .page-body-wrapper header.main-nav {
    top: 74px;
}

.bootstrap-tagsinput {
    margin: 0;
    width: 100%;
    padding: 10px;
    font-size: 1rem;
    line-height: 1.25;
    transition: border-color 0.15s ease-in-out;
}

.label-info {
    display: inline-block;
    background-color: #394a7d;
    padding: 10px;
    border-radius: 0.25rem;
    margin-bottom: 0.4em;
}

/*input {
    margin-bottom: 0.5em;
}
*/
.bootstrap-tagsinput .tag [data-role="remove"]:after {
    content: '\00d7';
}


.page-wrapper.compact-wrapper .page-body-wrapper header.main-nav {
    top: 60px;
}

.page-main-header {
    height: 60px;
}

.main-header-right > div {
    height: 60px;
}

.page-main-header .left-menu-header {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
}

.page-main-header .nav-right {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
}

.page-main-header .nav-right .nav-menus {
    height: 60px;
}

.page-main-header .main-header-right .left-menu-header {
    padding: 24px 24px;
}

.dropdown-item:hover, .dropdown-item:focus {
    background-color: rgb(81 107 170 / 0.10);
}

.hover-bg-white:hover {
    background-color: #FFF !important;
}

.hover-bg-light:hover {
    background-color: #ddeaf7 !important;
}

.modal-dialog {
    overflow-y: initial !important
}

.modal-body {
    max-height: 74vh;
    overflow-y: auto;
    overflow-x: hidden;
}

.table-sticky {
    overflow: auto;
    max-height: 69vh;
}

.table-sticky thead th {
    position: sticky;
    top: 0;
    z-index: 1;
}

.table-sticky th {
    background: #ffffff;
}

.text-a {
    color: #394a7d
}

div.dataTables_wrapper {
    font-family: 'Inter';
}

.modal-open {
    overflow: hidden;
}

.page-wrapper.compact-wrapper .page-body-wrapper .page-body {
    padding-top: 0px;
}

.page-wrapper .page-body-wrapper .page-body {
    min-height: calc(95vh - 73px);
    margin-top: 76px;
}

.footer {
    position: fixed;
    width: calc(100% - 260px);
    z-index: 1;
}

.page-wrapper.compact-wrapper .page-body-wrapper header.main-nav.close_icon ~ footer {
    margin-left: 0px;
    width: 100%;
}

.page-wrapper.compact-wrapper .page-body-wrapper header.main-nav.close_icon ~ .page-body .bottom-action-card {
    width: calc(100% - 2.5rem);
    left: 1.25rem;
}

.card.has-bottom-action-card {
    min-height: 80vh;
    margin-bottom: 5rem;
}

/*.bottom-action-card {
    position: fixed;
    bottom: 0.25rem;
    width: calc(100% - 290px - 2.5rem);
    transition-duration: 500ms;
}*/
.bottom-action-card {
    position: fixed;
    bottom: 0.25rem;
    left: calc(290px + 1.25rem);
    width: calc(100% - 290px - 2.5rem);
    transition-duration: 500ms;
}

.bottom-action-card .card-body {
    padding: 0.5rem 2rem;
}


.modal-open {
    padding-right: 0 !important;
    overflow: hidden;
}

.tempus-dominus-widget .toolbar {
    padding: 0;
    background-color: transparent;
    display: grid;
    color: inherit;
    border-radius: 0;
    margin-bottom: 0;
    margin-right: 0;
}

.tempus-dominus-widget .sec, .tempus-dominus-widget .min, .tempus-dominus-widget .hour {
    position: inherit;
    top: 0;
    left: 0;
    margin-top: 0;
    margin-left: 0;
}

.switch-md .switch {
    width: 40px;
    height: 24px;
    margin-top: 10px;
    margin-bottom: 0px;
}

.switch-md .switch .switch-state:before {
    height: 20px;
    width: 20px;
    left: 2px;
    bottom: 2px;
}

.switch-md input:checked + .switch-state:before {
    left: -8px;
}

.switch-state {
    -webkit-transition: .2s;
    transition: .2s;
}

.switch-state:before {
    -webkit-transition: .2s;
    transition: .2s;
}

input[type="date"]::-webkit-calendar-picker-indicator {
    /*    color: rgba(0, 0, 0, 0);
    opacity: 1;
    display: block;
    background: url(https://mywildalberta.ca/images/GFX-MWA-Parks-Reservations.png) no-repeat;
    width: 20px;
    height: 20px;
    border-width: thin;*/
}

@media (min-width: 768px) {
    .card-title {
        min-height: 50px;
    }
}

.ui-datepicker-calendar {
    display: none;
}


.flatpickr > .form-control[readonly] {
    background-color: #fff;
}

.flatpickr.form-control[readonly] {
    background-color: #fff;
}


.context-sub-menu,
.context-menu {
    position: fixed;
    background: #fff;
    z-index: 9999999;
    width: 120px;
    margin: 0;
    padding: 5px 0;
    border-radius: 2px;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
    font-size: 12px;
}

.context-menu .context-menu-item {
    height: 30px;
    display: flex;
    align-items: center;
    padding: 6px 10px;
    cursor: pointer;
    position: relative;
    border-bottom: 1px solid #f2f2f2;
}

.context-menu .context-menu-item span {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.context-menu-item:last-of-type {
    border-bottom: none;
}

.context-menu .context-menu-item:hover {
    background: #f2f2f2;
}

.context-menu .context-sub-menu {
    position: absolute;
    top: 0;
    left: 100%;
    display: none;
    width: 100px;
}

.context-menu .context-menu-item:hover > .context-sub-menu {
    display: block;
}

.context-menu.left .context-sub-menu {
    left: 0;
    transform: translateX(-100%);
}

.context-menu.top .context-sub-menu {
    top: 100%;
    transform: translateY(-100%);
}

.context-menu.left.top .context-sub-menu {
    transform: translate(-100%, -100%);
}

[type=checkbox] {
    accent-color: #2373FC;
    transform: scale(1.25);
}


/************** DATATABLE - START **************/
table.dataTable {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

table.dataTable thead .sorting:before, table.dataTable thead .sorting:after, table.dataTable thead .sorting_asc:before, table.dataTable thead .sorting_asc:after, table.dataTable thead .sorting_desc:before, table.dataTable thead .sorting_desc:after, table.dataTable thead .sorting_asc_disabled:before, table.dataTable thead .sorting_asc_disabled:after, table.dataTable thead .sorting_desc_disabled:before, table.dataTable thead .sorting_desc_disabled:after {
    top: 12px !important;
}

table.dataTable tr:first-child th {
    background: #EDEFF5;
    text-transform: uppercase;
}

table.dataTable tr:first-child th:first-child {
    border-top-left-radius: 12px !important;
}

table.dataTable tr:first-child th:last-child {
    border-top-right-radius: 12px !important;
}

table.dataTable.stripe > tbody > tr:nth-child(odd) > *, table.dataTable.display > tbody > tr:nth-child(odd) > * {
    box-shadow: none;
}

.dt-scroll {
    border-radius: 12px;
    border: 1px #E3E5E9 solid;
}

.dataTables_wrapper table.dataTable tr:nth-child(2) th {
    padding: 0.5rem;
}

table.dataTable thead .sorting:before, table.dataTable thead .sorting_asc:before, table.dataTable thead .sorting_desc:before, table.dataTable thead .sorting_asc_disabled:before, table.dataTable thead .sorting_desc_disabled:before {
    content: "";
    font: normal normal normal 10px / 1 FontAwesome;
    right: 8px;
}

table.dataTable thead .sorting:after, table.dataTable thead .sorting_asc:after, table.dataTable thead .sorting_desc:after, table.dataTable thead .sorting_asc_disabled:after, table.dataTable thead .sorting_desc_disabled:after {
    content: "";
    font: normal normal normal 10px / 1 FontAwesome;
    right: 8px;
    top: 20px !important;
}

table.dataTable thead .sorting:after, table.dataTable thead .sorting_asc:after, table.dataTable thead .sorting_asc_disabled:after, table.dataTable thead .sorting_desc:after, table.dataTable thead .sorting_desc_disabled:after {
    top: 20px !important;
}

table.dataTable.table thead th.sorting:after, table.dataTable.table thead th.sorting_asc:after, table.dataTable.table thead th.sorting_desc:after, table.dataTable.table thead td.sorting:after, table.dataTable.table thead td.sorting_asc:after, table.dataTable.table thead td.sorting_desc:after {
    content: "";
    font: normal normal normal 10px / 1 FontAwesome;
    right: 8px;
    top: 20px !important;
}

table.dataTable thead th, table.dataTable tfoot th {
    font-weight: normal;
}

div.dt-container .dt-paging .dt-paging-button {
    border: none;
}

div.dt-container .dt-paging .dt-paging-button:focus {
    outline: none;
}

div.dt-container .dt-paging .dt-paging-button.last {
    display: none;
}

div.dt-container .dt-paging .dt-paging-button.first {
    display: none;
}

div.dt-container .dt-paging .dt-paging-button.current, div.dt-container .dt-paging .dt-paging-button.current:hover {
    background: #E3E5E9 !important;
    color: #1E1F1F !important;
    border: none;
}

div.dt-container .dt-paging .dt-paging-button.current, div.dt-container .dt-paging .dt-paging-button.current:hover, div.dt-container .dt-paging .dt-paging-button:hover {
    background: #e3e5e9 !important;
    color: #1e1f1f !important;
    border: none;
}

div.dt-container .dt-paging .dt-paging-button:active {
    background: #e3e5e9 !important;
    color: #1e1f1f !important;
    border: none;
}

div.dt-container .dt-paging .dt-paging-button:hover {
    background: #e3e5e9 !important;
    color: #1e1f1f !important;
    border: none;
}

.dt-length {
    display: flex;
    gap: .5rem;
    align-items: center;
}

.dt-length > label {
    margin-bottom: 0;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button:active {
    background: #E3E5E9;
    color: #1E1F1F !important;
    border: none;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    border: none;
}

table.dataTable.stripe > tbody > tr:nth-child(odd).selected > *, table.dataTable.display > tbody > tr:nth-child(odd).selected > * {
    box-shadow: inherit !important;
}

table.dataTable.row-border > tbody > tr.selected + tr.selected > td, table.dataTable.display > tbody > tr.selected + tr.selected > td {
    box-shadow: inherit !important;
}

table.dataTable > tbody > tr.selected > *, table.dataTable.display > tbody > tr.selected > * {
    box-shadow: none !important;
}

table.dataTable tbody > tr.selected, table.dataTable tbody > tr > .selected {
    background-color: transparent !important;
}

table.dataTable > tbody > tr.selected > * {
    color: #212529;
}

table.dataTable.row-border > tbody > tr.selected + tr.selected > td, table.dataTable.display > tbody > tr.selected + tr.selected > td {
    border-top-color: inherit !important;
}

table.dataTable.hover tbody > tr.selected:hover, table.dataTable.hover tbody > tr > .selected:hover, table.dataTable.display tbody > tr.selected:hover, table.dataTable.display tbody > tr > .selected:hover {
    background-color: transparent !important;
}

table.dataTable.hover > tbody > tr.selected:hover > *, table.dataTable.display > tbody > tr.selected:hover > * {
    box-shadow: none !important;
}

table.dataTable input.dt-select-checkbox:checked:after {
    display: block;
    content: "✓";
    margin-top: -8px;
    color: #212529;
}

table.dataTable input.dt-select-checkbox {
    color: #212529;
}

table.dataTable > tbody > tr:hover > * {
    background-color: #F0F1F2 !important;
}

table.dataTable > tbody > tr[data-dt-row]:hover > * {
    background-color: white !important;
}

#tbl > div.dt-container > .dt-scroll-body > .dataTable > tbody > tr, td:hover {
    cursor: pointer !important;
}

/************** DATATABLE - END **************/

.dropdown-menu {
    font-size: 13px;
}


/************* OTHER - END *************/

/************* DATETIMEPICKER - START *************/
/* DateTimePicker container styling */
.calender-container {
    width: 700px;
    background-color: #fff;
    border: 1px solid #eaeaea;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    border-radius: 0.5rem;
    z-index: 1000;
}

/* DatePicker general styling */
.date-picker-container {
    position: relative;
}

.date-picker-input {
    cursor: pointer;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: right 10px center;
    padding-right: 30px;
}

.date-picker-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    margin-top: 5px;
}

/* Shortcut buttons */
.date-shortcuts-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.date-shortcut {
    transition: background-color 0.2s;
}

/* Calendar grid */
.calendar-month-header {
    font-weight: bold;
    margin-bottom: 0.75rem;
}

.calendar-days {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 0.25rem;
}

/* Calendar days styling */
.calendar-day {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 2.25rem;
    width: 2.25rem;
    border-radius: 0.375rem;
    cursor: pointer;
    font-size: 0.875rem;
    transition: all 0.2s ease;
}

.calendar-day:hover:not(.empty) {
    background-color: #f3f4f6;
}

.calendar-day.today {
    border: 1px solid #1e40af;
}

.calendar-day.selected {
    background-color: #1e40af;
    color: white;
}

.calendar-day.in-range {
    background-color: #e0e7ff;
}

.calendar-day.empty {
    cursor: default;
    color: #d1d5db;
}

/* Nav buttons */
.calendar-nav-btn {
    background: transparent;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
    border-radius: 9999px;
    transition: background-color 0.2s;
}

.calendar-nav-btn:hover {
    background-color: #f3f4f6;
}

/************* DATETIMEPICKER - END *************/

/************* LOGIN CUSTOM CSS - START *************/

/* Custom checkbox styles */
.custom-checkbox {
    position: relative;
    display: flex;
    align-items: center;
    cursor: pointer;
}

.custom-checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.checkmark {
    height: 18px;
    width: 18px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 3px;
    margin-right: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.custom-checkbox input:checked ~ .checkmark {
    background-color: #1a56db;
    border-color: #1a56db;
}

.checkmark svg {
    display: none;
}

.custom-checkbox input:checked ~ .checkmark svg {
    display: block;
    color: white;
}

/************* LOGIN CUSTOM CSS - END *************/

.custom-button-primary {
    background-color: #0047AB;
    color: white;
    border: none;
    border-radius: 8px;
    padding: 8px 20px;
    font-weight: 500;
    font-size: 16px;
}

.custom-button-primary:hover {
    background-color: #003d91;
    color: white;
}

input::-ms-reveal,
input::-ms-clear {
    display: none;
}

/************* MODAL - START *************/
.modal-title {
    font-weight: 600;
    font-size: 20px;
    line-height: 140%;
}

.modal-header {
    border-bottom: none;
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
}

.modal-content {
    border-radius: 16px;
}

.modal-footer {
    margin: 0.75rem;
    padding: 0.75rem 0 0;
}

.modal-body {
    font-size: 14px;
}

/************* MODAL - END *************/

/************** DATEPICKER - START **************/

.drp-buttons {
    display: flex !important;
    gap: 0.75rem;
    align-items: center;
}

.daterangepicker .calendar-table thead tr:first-child {
    background-color: #F1F3F5;
    border-radius: 4px;
}

.daterangepicker .calendar-table thead tr:first-child th {
}

.daterangepicker th.prev, .daterangepicker th.next, .daterangepicker td.prev, .daterangepicker td.next {
    width: 32px !important;
    height: 32px !important;
    border-radius: 6px;
    padding: 0 !important;
    background-color: #fff;
    color: #000;
    border: 1px solid #d3d5d8 !important;
}

.daterangepicker .calendar-table .next span, .daterangepicker .calendar-table .prev span {
    border-width: 0 1px 1px 0 !important;
}

.daterangepicker table {
    border-collapse: separate !important;
    border-spacing: 0.5rem !important;
}

.daterangepicker .drp-calendar {
    max-width: 304px !important;
}

.daterangepicker select.monthselect, .daterangepicker select.yearselect {
    background-color: #F1F3F5;
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: '';
}

.daterangepicker td.weekend {
    color: black !important;
}

.daterangepicker th.weekend-day {
    color: black !important;
}

.daterangepicker td.in-range {
    background-color: #EDEEF0 !important;
    color: #003DA5 !important;
}

.daterangepicker td.active, .daterangepicker td.active:hover {
    background-color: #003DA5 !important;
    color: #fff !important;
}

.daterangepicker td.weekend.active {
    color: #fff !important;
}

.daterangepicker td {
    border-radius: 4px !important;
}

/************** DATEPICKER - END **************/


/************** SELECT2 - START **************/
.select2 {
    width: 100%;
}

/*.select2-container {*/
/*    border: solid #CECFD0 1px;*/
/*}*/
.select2-container--default.select2-container--focus .select2-selection--multiple {
    border: solid #CECFD0 1px;
}

.select2-container--default .select2-selection--multiple {
    border: 1px solid #CECFD0;
    border-radius: 0.35rem;
}

.select2-container--default.select2-container--disabled .select2-selection--multiple {
    background-color: rgb(229 231 235);
    border-color: rgb(209 213 219);
}

.select2-container--default .select2-selection--single {
    border: solid #CECFD0 1px;
    border-radius: 0.35rem;
}

.select2-container--default.select2-container--disabled .select2-selection--single {
    background-color: rgb(229 231 235);
    border-color: rgb(209 213 219);
}

.select2-container {
    height: 2.375rem !important;
    min-height: 2.375rem !important;
    /*width: 100% !important;*/
}

.select2-container .select2-selection--single {
    height: auto !important;
    min-height: 2.375rem;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    min-height: 2.375rem;
}

.select2-container--default .select2-selection--single .select2-selection__rendered > * {
    min-height: 2.375rem;
    display: flex;
    align-items: center;
    font-weight: 400;
    font-size: 0.875rem;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered {
    margin-top: 0.25rem;
}

.selection .select2-selection {
    font-family: 'Inter';
    position: relative;
}


.select2-selection__choice {
    margin: 0.25rem;
}

.select2-selection__choice div {
    display: flex;
}

.select2-search__field {
    height: 100%;
    margin-bottom: 0px;
}

.select2-results__option > div {
    min-height: 2.375rem;
    padding: 0.25rem;
    display: flex;
    align-items: center;
    font-weight: 400;
    font-size: 0.875rem;
}

.select2-results__option {
    padding: 0;
}

.select2-search--dropdown .select2-search__field {
    min-height: 2.375rem;
    font-weight: 400;
    font-size: 0.875rem;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #003DA5;
    color: white;
}

.select2-selection__placeholder {
    font-weight: 400;
    font-size: 0.875rem;
    min-height: 2.375rem;
}

.select2-selection__rendered {
    max-height: 30vh !important;
    overflow-y: auto !important;
}
.select2-selection__choice{
    display: flex;
}

.select2-container{
    display: unset;
}

.select2-container  {
    width: auto !important;
    /*max-width: inherit !important;*/
    display: block;
}

/************** SELECT2 - END **************/
/************** CALENDAR **************/
.calendar-input-container input[type="text"]:disabled {
    background-color: #E5E7EB !important;
    color: #4b5563 !important;
}

.calendar-container.date-picker {
    width: 820px;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.15), 0 4px 10px -5px rgba(0, 0, 0, 0.1);
    border-radius: 0.5rem;
}

.calendar-container.single-date-picker {
    width: 520px;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.15), 0 4px 10px -5px rgba(0, 0, 0, 0.1);
    border-radius: 0.5rem;
}

.calendar-container .date-shortcut {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 8px 12px;
    transition: background-color 0.2s, color 0.2s;
    border-radius: 4px;
}

.calendar-container .date-shortcut.active {
    background-color: #EFF6FF;
    color: #1D4ED8;
    font-weight: 600;
}

.calendar-container .presets h3 {
    color: #374151;
    margin-bottom: 10px;
    font-size: 1rem;
    font-weight: 600;
}

.calendar-days .selected-start,
.calendar-days .selected-end,
.calendar-days .selected {
    background-color: #2563eb !important;
    color: white !important;
    font-weight: 600;
    border-radius: 0.375rem;
}

.calendar-days .in-range {
    background-color: #dbeafe !important;
    border-radius: 0;
    color: white !important;
    font-weight: 600;
    border-radius: 0.375rem;
}

.calendar-days .today {
    border: 1px solid #2563eb;
}

.calendar-days .in-range {
    background-color: #dbeafe !important;
    border-radius: 0;
}

.month-dropdown, .year-dropdown {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.current-month-option.active, .next-month-option.active, .current-year-option.active, .next-year-option.active {
    background-color: #2563eb;
    color: white;
}

.current-month-option:hover, .next-month-option:hover, .current-year-option:hover, .next-year-option:hover {
    background-color: #EFF6FF;
}

.current-month-option.active:hover, .next-month-option.active:hover, .current-year-option.active:hover, .next-year-option.active:hover {
    background-color: #1d4ed8;
}

.month-option.active, .year-option.active {
    background-color: #2563eb;
    color: white;
}

.month-option:hover, .year-option:hover {
    background-color: #EFF6FF;
}

.month-option.active:hover, .year-option.active:hover {
    background-color: #1d4ed8;
}

.month-selector-btn, .year-selector-btn {
    border: 1px solid transparent;
}

.month-selector-btn:hover, .year-selector-btn:hover {
    border-color: #d1d5db;
}

/* Responsive styles */
@media screen and (max-width: 768px) {
    .calendar-container {
        width: 95vw;
    }

    .calendar-container > div {
        flex-direction: column;
    }

    .calendar-container .presets {
        border-right: none;
        border-bottom: 1px solid #e5e7eb;
        min-width: 100% !important;
    }

    .calendar-container .ranger-calendar .p-4.flex.gap-4 {
        flex-direction: column;
    }

    .calendar-container #currentMonthHeader,
    .calendar-container #nextMonthHeader {
        font-size: 0.9rem;
    }
}

/************** CALENDAR - END **************/

/************** TAB **************/
.tab-component a.active {
    color: rgb(0 61 165);
    border-bottom-width: 2px;
    border-color: rgb(0 61 165);
    font-weight: 500;
}
.tab-component a.disabled {
    color: rgb(75 85 99);
}
/************** TAB - END **************/

.has-error{

}

/* Fix z-index issues for date picker dropdowns inside modals */
.modal .calendar-container,
.modal .single-date-picker {
    z-index: 9999 !important;
    position: absolute !important;
}

/* Ensure calendar container appears above modal backdrop */
.modal.show .calendar-container,
.modal.fade.show .calendar-container {
    z-index: 9999 !important;
}

/* Fix for Bootstrap modal z-index conflicts */
.modal-dialog .calendar-container {
    z-index: 9999 !important;
}

/* Ensure dropdown doesn't get clipped by modal overflow */
/* Tạm ẩn do lỗi khi nội dung modal dài xuống */
/*.modal .modal-body {*/
/*    overflow: visible !important;*/
/*}*/

/*.modal .modal-content {*/
/*    overflow: visible !important;*/
/*}*/

/* Additional fixes for specific modal contexts */
.modal .calendar-container.above {
    z-index: 9999 !important;
}

/* Fix for date picker positioning in modals */
.modal .calendar-input-container {
    position: relative !important;
}

/* Ensure date picker dropdown appears above all modal elements */
.modal .calendar-container {
    z-index: 9999 !important;
    position: absolute !important;
}

/* Fix for month/year dropdowns in modals */
.modal .month-dropdown,
.modal .year-dropdown {
    z-index: 10000 !important;
}

/************** STATUS BADGES - START **************/
/* Custom status badge styles for SellIn programs */
.status-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    white-space: nowrap;
    transition: all 0.2s ease-in-out;
}

.status-badge:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

/* Status-specific colors */
.status-badge.success {
    background-color: #dcfce7;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.status-badge.pending {
    background-color: #fef3c7;
    color: #92400e;
    border: 1px solid #fde68a;
}

.status-badge.rejected {
    background-color: #fee2e2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

.status-badge.info {
    background-color: #dbeafe;
    color: #1e40af;
    border: 1px solid #bfdbfe;
}

.status-badge.warning {
    background-color: #fef3c7;
    color: #92400e;
    border: 1px solid #fde68a;
}

.status-badge.default {
    background-color: #f3f4f6;
    color: #374151;
    border: 1px solid #e5e7eb;
}

/* Responsive adjustments */
@media screen and (max-width: 768px) {
    .status-badge {
        font-size: 0.7rem;
        padding: 0.2rem 0.6rem;
    }
}
/************** STATUS BADGES - END **************/
