﻿/* THE application baseline. This blanket !important sets the size of very nearly every element that
   holds text - every li, a, label, input, td, th - so whatever it resolves to IS the app's body size,
   and nothing without its own !important can escape it.
   It must stay pinned to a REAL 12px, which is why it names --fs-sm directly instead of --fs-12.
   The phase-2b token collapse folded the 26 numeric tokens onto 8 semantic steps by value, rounding
   UP, so --fs-12 became --fs-base (13px). Through this one selector that quietly grew the entire
   application by a pixel: the claim rail stopped fitting a 1920x1080 window, the claim panel ran off
   the bottom, and the sidebar needed its own escape tokens (--side-fs-*) to claw the space back.
   Do NOT "tidy" this back to var(--fs-12) - that is the bug. Per-element sizes elsewhere may keep
   using the numeric aliases; this one is the floor everything else is measured against. */
html, button, a, label, ul, li, input, textarea, select, table, tr, td, th,
span.select2,
div.ribbon,
div.float-right,
div.float-left,
div.row,
div.toast-message {
    font-size: var(--fs-sm) !important;
}

/* THE state's screen typeface. --ccvc-font-ui is declared in the page head only when a state has
   picked something (System Administration > State Branding, Genoa only); the fallback here is the
   stack the app has always inherited from Bootstrap, so an unconfigured deployment renders exactly
   as before.
   One declaration reaches nearly everything because almost nothing in this app declares a font
   family of its own - which is also how the app came to have no font identity at all. Deliberately
   NOT reached: FontAwesome (icon glyphs, would render empty boxes), the monospace spots (warrant
   and claim numbers, EIN, account codes - chosen so digits align and 0/O stay apart), and the
   form-letter editor, where the author's own per-letter font choice is a feature.
   BODY IS NAMED DELIBERATELY, and html alone is not enough: Bootstrap declares font-family on body,
   and a declaration on body beats a value inherited from html, so everything inside the page would
   keep Bootstrap's stack no matter what html said. Measured that way round before this line existed.
   Inputs and buttons are named for the same class of reason - browsers do NOT inherit font-family
   into form controls by default, they use a UA font, so they have to be told explicitly. */
html,
body,
input, textarea, select, button {
    font-family: var(--ccvc-font-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);
}

.fancy-checkbox input[type=checkbox][disabled] + span:before {
    font-size: var(--fs-22);
    font-family: "FontAwesome";
    content: '\f023';
    color: #7b848c;
    line-height: 22px;
    border: 0px !important;
}

ul.feeds_widget {
    margin-left: calc(100% - 250px) !important;
}

    label.error {
        font-size: small !important;
        color: red !important;
        font-weight: 400 !important;
    }

div.error {
    font-size: small !important;
    color: red !important;
    font-weight: 400 !important;
}

span.error {
    background-color: #fbe3e4 !important;
}

.errorLabel {
    font-weight: 400 !important;
    color: red !important;
}

textarea.error {
    background-color: #fbe3e4 !important;
}

input.error {
    background-color: #fbe3e4 !important;
}

select.error {
    background-color: #fbe3e4 !important;
}

.bg-warningovc {
    background-color: #ffdf00 !important;
}

/*.modal .modal-body {
    overflow-x: auto !important;
}*/

.mainBody {
    min-height: 750px !important;
}

.toastOverRide {
    min-width: 600px !important;
    width: 600px !important;
}


.table.dataTable > tbody > tr.selected {
    background-color: var(--accentbg) !important;
    color: var(--head) !important;
}

.table.dataTable > tbody > tr.odd > td {
    background-color: #f8f9fa;
    color: black;
}

.table.dataTable > tbody > tr.selected > td {
    background-color: var(--accentbg) !important;
    color: var(--head) !important;
}

body.swal2-shown > [aria-hidden='true'] {
    transition: 0.1s filter;
    filter: blur(3px);
    background: rgba(0, 0, 0, 0.5) !important;
    backdrop-filter: blur(8px) !important;
}

.select2-results__options {
    overflow-x: hidden !important;
}

.ct-label {
    font-size: var(--fs-10) !important;
    font-weight: 600 !important;
}

.ct-series-a .ct-point, .ct-series-a .ct-line, .ct-series-a .ct-bar, .ct-series-a .ct-slice-donut {
    stroke: #3C89DA !important;
}

.ct-series-a .ct-slice-pie, .ct-series-a .ct-slice-donut-solid, .ct-series-a .ct-area {
    stroke: #3C89DA !important;
}

.ct-series-b .ct-point, .ct-series-b .ct-line, .ct-series-b .ct-bar, .ct-series-b .ct-slice-donut {
    stroke: #E15858 !important;
}

.ct-series-b .ct-slice-pie, .ct-series-b .ct-slice-donut-solid, .ct-series-b .ct-area {
    fill: #E15858 !important;
}

.ct-series-c .ct-point, .ct-series-c .ct-line, .ct-series-c .ct-bar, .ct-series-c .ct-slice-donut {
    stroke: #FFA117 !important;
}

.ct-series-c .ct-slice-pie, .ct-series-c .ct-slice-donut-solid, .ct-series-c .ct-area {
    fill: #FFA117 !important;
}

.ct-series-d .ct-point, .ct-series-d .ct-line, .ct-series-d .ct-bar, .ct-series-d .ct-slice-donut {
    stroke: #5CB65F !important;
}

.ct-series-d .ct-slice-pie, .ct-series-d .ct-slice-donut-solid, .ct-series-d .ct-area {
    fill: #5CB65F !important;
}

.ct-series-e .ct-point, .ct-series-e .ct-line, .ct-series-e .ct-bar, .ct-series-e .ct-slice-donut {
    stroke: #453d3f;
}

.ct-series-e .ct-slice-pie, .ct-series-e .ct-slice-donut-solid, .ct-series-e .ct-area {
    fill: #453d3f;
}

.ct-series-f .ct-point, .ct-series-f .ct-line, .ct-series-f .ct-bar, .ct-series-f .ct-slice-donut {
    stroke: #59922b;
}

.ct-series-f .ct-slice-pie, .ct-series-f .ct-slice-donut-solid, .ct-series-f .ct-area {
    fill: #59922b;
}

.ct-series-g .ct-point, .ct-series-g .ct-line, .ct-series-g .ct-bar, .ct-series-g .ct-slice-donut {
    stroke: #0544d3;
}

.ct-series-g .ct-slice-pie, .ct-series-g .ct-slice-donut-solid, .ct-series-g .ct-area {
    fill: #0544d3;
}

.ct-series-h .ct-point, .ct-series-h .ct-line, .ct-series-h .ct-bar, .ct-series-h .ct-slice-donut {
    stroke: #6b0392;
}

.ct-series-h .ct-slice-pie, .ct-series-h .ct-slice-donut-solid, .ct-series-h .ct-area {
    fill: #6b0392;
}

.ct-series-i .ct-point, .ct-series-i .ct-line, .ct-series-i .ct-bar, .ct-series-i .ct-slice-donut {
    stroke: #f05b4f;
}

.ct-series-i .ct-slice-pie, .ct-series-i .ct-slice-donut-solid, .ct-series-i .ct-area {
    fill: #f05b4f;
}

.ct-series-j .ct-point, .ct-series-j .ct-line, .ct-series-j .ct-bar, .ct-series-j .ct-slice-donut {
    stroke: #dda458;
}

.ct-series-j .ct-slice-pie, .ct-series-j .ct-slice-donut-solid, .ct-series-j .ct-area {
    fill: #dda458;
}

.ct-series-k .ct-point, .ct-series-k .ct-line, .ct-series-k .ct-bar, .ct-series-k .ct-slice-donut {
    stroke: #eacf7d;
}

.ct-series-k .ct-slice-pie, .ct-series-k .ct-slice-donut-solid, .ct-series-k .ct-area {
    fill: #eacf7d;
}

.ct-series-l .ct-point, .ct-series-l .ct-line, .ct-series-l .ct-bar, .ct-series-l .ct-slice-donut {
    stroke: #86797d;
}

.ct-series-l .ct-slice-pie, .ct-series-l .ct-slice-donut-solid, .ct-series-l .ct-area {
    fill: #86797d;
}

.ct-series-m .ct-point, .ct-series-m .ct-line, .ct-series-m .ct-bar, .ct-series-m .ct-slice-donut {
    stroke: #b2c326;
}

.ct-series-m .ct-slice-pie, .ct-series-m .ct-slice-donut-solid, .ct-series-m .ct-area {
    fill: #b2c326;
}

.ct-series-n .ct-point, .ct-series-n .ct-line, .ct-series-n .ct-bar, .ct-series-n .ct-slice-donut {
    stroke: #6188e2;
}

.ct-series-n .ct-slice-pie, .ct-series-n .ct-slice-donut-solid, .ct-series-n .ct-area {
    fill: #6188e2;
}

.ct-series-o .ct-point, .ct-series-o .ct-line, .ct-series-o .ct-bar, .ct-series-o .ct-slice-donut {
    stroke: #a748ca;
}

.ct-series-o .ct-slice-pie, .ct-series-o .ct-slice-donut-solid, .ct-series-o .ct-area {
    fill: #a748ca;
}



.custom-select.pro-modern {
    height: 60px;
    padding: 0.45rem 0.7rem;
    color: #1f2937;
    background-color: #ffffff;
    border: 1px solid #d1d5db;
    border-radius: 0.5rem;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.04), 0 1px 3px rgba(0,0,0,0.06);
    appearance: none;
    -webkit-appearance: none;
    overflow-y: auto;
    transition: border-color 0.16s ease, box-shadow 0.16s ease;
}

.custom-select.pro-modern:focus {
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59,130,246,0.18), inset 0 1px 2px rgba(0,0,0,0.05);
    outline: none;
}

.custom-select.pro-modern option {
    padding: 0.55rem 0.8rem;
}

    .custom-select.pro-modern option:checked {
        background: linear-gradient(to right, #3b82f6, #2563eb);
        color: white;
    }

.custom-select.pro-modern::-webkit-scrollbar {
    width: 6px;
}

.custom-select.pro-modern::-webkit-scrollbar-track {
    background: #f3f4f6;
    border-radius: 3px;
}

.custom-select.pro-modern::-webkit-scrollbar-thumb {
    background: #9ca3af;
    border-radius: 3px;
}

    .custom-select.pro-modern::-webkit-scrollbar-thumb:hover {
        background: #6b7280;
    }

.custom-select.pro-modern option {
    line-height: 1.4;
}


.custom-listbox {
    height: 600px;
    overflow-y: auto;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    background-color: #fff;
    padding: 0;
    font-size: 1rem;
}

    .custom-listbox .list-group-item {
        border: none;
        border-radius: 0;
        cursor: pointer;
        padding: .75rem 1.25rem;
        transition: background-color 0.15s ease;
    }

        .custom-listbox .list-group-item:hover {
            background-color: #f8f9fa;
        }

        .custom-listbox .list-group-item.active {
            background-color: #007bff;
            color: white;
            font-weight: 500;
        }

.listbox-container {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

/*Select2 ReadOnly Start*/
select[readonly].select2-hidden-accessible + .select2-container {
    pointer-events: none;
    touch-action: none;
}

    select[readonly].select2-hidden-accessible + .select2-container .select2-selection {
        background: #eee;
        box-shadow: none;
    }

    select[readonly].select2-hidden-accessible + .select2-container .select2-selection__arrow, select[readonly].select2-hidden-accessible + .select2-container .select2-selection__clear {
        display: none;
    }

/*Select2 ReadOnly End*/