
span.badge.bg-success, span.badge.bg-secondary, button.btn-success {
    color:white;
}
/* Small flag icons for dropdown menus */
.flag.flag-xs {
    width: 1.25rem;
    height: 0.9rem;
    background-size: contain;
}

div.html-popover {
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
    user-select: none;
    padding: 5px;
}


a.pnl-item
{
    view-transition-class: pnl-item;
}
::view-transition-old(.card2,.pnl-item),
::view-transition-new(.card2,.pnl-item)
{
    animation: fade-out ease-out 0.5s;
    
}
div[data-tippy-root] > div{
    min-width: 300px;
    padding: 0.5em;
    border: #0a53be 1px solid;
    background: #fafafa;
    color: #050000;
}

div.apexcharts-canvas *, .apexcharts-text tspan {
    font-family: 'Kanit' !important;
}

@media (max-width: 767.98px) {
    div.apexcharts-canvas {
        max-width: 100%;
    }
}

.apexcharts-pie-label {
    fill: #fff !important;
    stroke: rgba(0,0,0,0.6) !important;
    stroke-width: 3px !important;
    paint-order: stroke fill;
}

div.search-container > span {
    width: 100%;
}

tr[data-group-item]:not(.expand-group)
{
    display: none;
}



input
{
    
}
div[data-isinvalid] div.input-group.input-group-flat:not(:focus-within)
{
    border: 1px solid red;
}


tr.item-cancelled {
    text-decoration: line-through;color: red;
}

select:invalid
{    
    border-color: #d63939 !important;
    padding-right: calc(1.4285714286em + .875rem);
    background-image: url("/images/exclamation-circle.svg");
    background-repeat: no-repeat;
    background-position: right calc(.3571428572em + .21875rem) center;
    background-size: calc(.7142857143em + .4375rem) calc(.7142857143em + .4375rem)
}

input.form-control:invalid:not(.search-input)
{    
    border-color: #d63939 !important;
    padding-right: calc(1.4285714286em + .875rem);
    background-image: url("/images/exclamation-circle.svg");
    background-repeat: no-repeat;
    background-position: right calc(.3571428572em + .21875rem) center;
    background-size: calc(.7142857143em + .4375rem) calc(.7142857143em + .4375rem)
}

input.form-control:has(+span.input-icon-addon):invalid
{      
    background-position: right calc(1.8571428572em + .21875rem) center;
}

@media (max-width: 650px) {

    table.x-responsive thead {
        display: none;
    }

    table.x-responsive td {
        display: grid;
        gap: 0.5rem;
        grid-template-columns: 15ch auto auto;
        padding: 0.5rem 1rem;
        text-align: left;
    }

    table.x-responsive td:first-child {
        padding-top: 2rem;
    }

    table.x-responsive td:last-child {
        padding-bottom: 3rem;
    }

    table.x-responsive td::before {
        content: attr(data-cell) " : ";
        font-weight: 700;
        text-transform: capitalize;
    }

}
tr.font-italic{
    font-style: italic;
}
div.card.collapsible-card > div.card-header{
    cursor: pointer;
}

div.card.collapsible-card > div.card-header:not(.expand-card):before {
    font-family: "tabler-icons";
    content: "\ea61";/*ea5f down*/
    display: inline-block;
    margin-right: 10px;
    font-size: 1.2em;
    line-height: 1.556em;
    vertical-align: middle;
}

div.card.collapsible-card > div.expand-card:before {
    font-family: "tabler-icons";
    content: "\ea5f";/*ea5f down*/
    display: inline-block;
    margin-right: 10px;
    font-size: 1.2em;
    line-height: 1.556em;
    vertical-align: middle;
}

div.card.collapsible-card > div.card-header:not(.expand-card) + div.card-body {
    display: none;
}

div.card.collapsible-card > div.expand-card + div.card-body {
    display: block;
}



i.ti {
    font-size: 1.2rem;
}

i.ti-1_5x {
    font-size: 1.6rem;
}
i.ti-0_5x {
    font-size: 1.0rem;
}
i.ti-2x {
    font-size: 2rem;
}
i.ti-3x {
    font-size: 3rem;
}
i.ti-4x {
    font-size: 4rem;
}

div.letter p {
    margin-bottom: 0 !important;
    margin-top: 0;
}

.fc-h-event {
    background-color: transparent;
}

ul.validation-errors > li.validation-message {
    color: red;
}

.blink-icon {
    animation: blinker 1s linear infinite;
}

div.tooltip-wrapper > span {
    color: #6a6060;
    border: none;
    background-color: #f0f1f3;
    width: auto;
}

@keyframes blinker {
    50% {
        opacity: 0;
    }
}

div#blazor-error-ui {
    display: none;
    position: fixed;
    top: 30%;
    left: 50%;
    margin-top: -50px;
    margin-left: calc(-100px - 20em);
    background: #f95353;
    padding: 10em;
}

select:invalid {
    border-color: red;
}

div.validation-message {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 0.5em;
    color: #f64c4c;
    font-size: 0.8em;
    font-style: italic;
}

div.input-group-flat > div.form-select > span.me-2 {
    margin-top: 0.5em;
}

.popover {
    max-width: 600px;
    min-width: 400px;
    z-index: 2010; /* A value higher than 1010 that solves the problem */
}

i.ml-2 {
    margin-left: 0.5em !important;
}

i.mr-2 {
    margin-right: 0.5em !important;
}

i.la, i.lab {
    font-size: 1.5em;
}

i.la.mr-2 {
    margin-right: 0.5em !important;
}

i.lab.mr-2 {
    margin-right: 0.5em !important;
}

.text-right {
    text-align: right;
}

.overflow-y {
    overflow-y: scroll;
}

.modal-dialog-scrollable .modal-body {
    overflow-y: auto;
}

.modal-body .bootstrap-datetimepicker-widget {
    position: fixed;
    top: 100px !important;
    left: 40% !important;
}

.hover-selector {
    background-color: #c898f4 !important;
    color: #022051;
}

/* Standard syntax */
:fullscreen {
    background-color: whitesmoke;
}

a.full-screen:fullscreen {
    font-size: 1.5em;
    display: none;
}

a.close-full-screen:fullscreen {
    font-size: 1.5em;
}

td.thead-light {
    color: #656d77;
    font-size: .625rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    line-height: 1.6;
    padding-top: .5rem;
    padding-bottom: .5rem;
}

div.page-break {
    page-break-before: always;
}

/* page-break-after works, as well */

@media print {
    ::-webkit-input-placeholder { /* WebKit browsers */
        color: transparent !important;
        text-shadow: none !important;
    }

    :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
        color: transparent;
    }

    ::-moz-placeholder { /* Mozilla Firefox 19+ */
        color: transparent;
    }

    :-ms-input-placeholder { /* Internet Explorer 10+ */
        color: transparent;
    }
}


img.logo-small-full-dark {
    display: none;
}


.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
    cursor: default;
}

select[placeholder]:invalid {
    color: orangered !important;
}

.ql-mention-list-item {
    cursor: pointer;
    line-height: 44px;
    font-size: 12px !important;
    padding: 0 20px;
    vertical-align: middle;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #232e3c;
    background-color: #fff;
    border-color: rgba(101, 109, 119, .24);
    white-space: nowrap;
}

#notification-reader-panel .mention {
    background-color: var(--tblr-primary-lt) !important;
    color: var(--tblr-primary) !important;
    border-radius: 4px !important;
    padding: 2px 6px !important;
    font-weight: 500;
    font-size: 0.875em;
    border: none !important;
}

#notification-reader-panel .comment-text a[href],
#notification-reader-panel a.btn,
#notification-reader-panel a[style*="background"] {
    background-color: var(--tblr-primary) !important;
    background: var(--tblr-primary) !important;
    color: #fff !important;
    border-radius: 50rem !important;
    border: none !important;
    padding: 8px 16px !important;
    text-align: center;
    text-decoration: none !important;
    display: inline-block;
    font-size: 0.875rem !important;
    font-weight: 500;
    line-height: 1.5;
}

/* type ahead in td*/
td:has(span>div.dropdown) {
    min-width: 300px;
}

td > span > div.dropdown > div.input-group > span.form-control {
    width: 230px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;

}

/* Provider Picker Styles */
.provider-picker-item,
.provider-picker-option {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.provider-picker-option {
    padding: 0.5rem 0.75rem !important;
}

.provider-picker-item svg,
.provider-picker-option svg {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
}

.provider-picker-item .ti,
.provider-picker-option .ti {
    flex-shrink: 0;
    font-size: 20px;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.selectize-dropdown .provider-picker-option {
    cursor: pointer;
}

.selectize-dropdown .provider-picker-option:hover {
    background-color: #f1f5f9;
}

/* Fix provider picker selectize input extra space */
.selectize-control.provider-picker-control {
    margin-bottom: 0;
}

.selectize-control.provider-picker-control .selectize-input {
    min-height: 38px;
    padding: 0.4375rem 0.75rem;
    display: flex;
    align-items: center;
}

.selectize-control.provider-picker-control .selectize-input > input {
    height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1;
    width: 0 !important;
    opacity: 0;
}

.selectize-control.provider-picker-control .selectize-input.has-items > input {
    display: none;
}

/* Theme Base Gray Shade Variables */
/* Slate - Cool blue-gray */
.theme-base-slate,
[data-bs-theme-base="slate"] {
    --tblr-gray-50: #f8fafc;
    --tblr-gray-100: #f1f5f9;
    --tblr-gray-200: #e2e8f0;
    --tblr-gray-300: #cbd5e1;
    --tblr-gray-400: #94a3b8;
    --tblr-gray-500: #64748b;
    --tblr-gray-600: #475569;
    --tblr-gray-700: #334155;
    --tblr-gray-800: #1e293b;
    --tblr-gray-900: #0f172a;
}

/* Gray - Pure neutral gray */
.theme-base-gray,
[data-bs-theme-base="gray"] {
    --tblr-gray-50: #f9fafb;
    --tblr-gray-100: #f3f4f6;
    --tblr-gray-200: #e5e7eb;
    --tblr-gray-300: #d1d5db;
    --tblr-gray-400: #9ca3af;
    --tblr-gray-500: #6b7280;
    --tblr-gray-600: #4b5563;
    --tblr-gray-700: #374151;
    --tblr-gray-800: #1f2937;
    --tblr-gray-900: #111827;
}

/* Zinc - Cool gray with slight blue */
.theme-base-zinc,
[data-bs-theme-base="zinc"] {
    --tblr-gray-50: #fafafa;
    --tblr-gray-100: #f4f4f5;
    --tblr-gray-200: #e4e4e7;
    --tblr-gray-300: #d4d4d8;
    --tblr-gray-400: #a1a1aa;
    --tblr-gray-500: #71717a;
    --tblr-gray-600: #52525b;
    --tblr-gray-700: #3f3f46;
    --tblr-gray-800: #27272a;
    --tblr-gray-900: #18181b;
}

/* Neutral - True neutral gray (default) */
.theme-base-neutral,
[data-bs-theme-base="neutral"] {
    --tblr-gray-50: #fafafa;
    --tblr-gray-100: #f5f5f5;
    --tblr-gray-200: #e5e5e5;
    --tblr-gray-300: #d4d4d4;
    --tblr-gray-400: #a3a3a3;
    --tblr-gray-500: #737373;
    --tblr-gray-600: #525252;
    --tblr-gray-700: #404040;
    --tblr-gray-800: #262626;
    --tblr-gray-900: #171717;
}

/* Stone - Warm gray with slight brown */
.theme-base-stone,
[data-bs-theme-base="stone"] {
    --tblr-gray-50: #fafaf9;
    --tblr-gray-100: #f5f5f4;
    --tblr-gray-200: #e7e5e4;
    --tblr-gray-300: #d6d3d1;
    --tblr-gray-400: #a8a29e;
    --tblr-gray-500: #78716c;
    --tblr-gray-600: #57534e;
    --tblr-gray-700: #44403c;
    --tblr-gray-800: #292524;
    --tblr-gray-900: #1c1917;
}

/* Fix Tom-Select multi-select chips text visibility */
.ts-wrapper.multi .ts-control > div,
.ts-wrapper.multi .ts-control > div.item,
.ts-wrapper.multi.disabled .ts-control > div,
.ts-wrapper .ts-control .item,
.bg-azure,
.bg-primary {
    color: #ffffff !important;
}

/* Fix badge text visibility — override Tabler's color:#000!important on .text-bg-azure/.text-bg-primary */
.text-bg-azure.text-bg-azure,
.text-bg-primary.text-bg-primary,
.badge.bg-azure,
.badge.bg-primary,
.badge-list .badge {
    color: #ffffff !important;
}

/* Fix orange badge text visibility */
.badge.bg-orange {
    color: #ffffff !important;
}

/* Fix Thai text letter-spacing in nav-link */
.nav-pills .nav-link,
.nav-vertical .nav-link {
    letter-spacing: normal !important;
}

