/* #region  Assessment Table */
.assessment-table {
    width: 100%
}
    .assessment-table .slim-column {
        width: 7%;
    }
    .assessment-table .small-column {
        width: 10%;
    }
    .assessment-table .mid-column {
        width: 25%;
    }
    .assessment-table .medium-column {
        width: 40%;
    }
    .assessment-table .large-column {
        width: 54%;
    }
    .assessment-table .administer,
    .assessment-table .score,
    .assessment-table .confidence-interval {
        text-align: center;
    }
    .assessment-table .descriptor {
        vertical-align: middle;
    }
    td.score input,
    td.score input::placeholder,
    td.confidence-interval input,
    td.confidence-interval input::placeholder {
        text-align: center;
        padding-left: 0px;
        min-width: 75px;
    }
    td.score .e-dropdownlist.e-input {
        min-width: 100px;
    }




.e-tab-header .missing-score,
.missing-score .e-tab-wrap {
    background-color: #fff3cd !important;
}

        .missing-score .e-tab-wrap:hover {
            background: #fff3cd !important;
        }
/* #endregion */

/* #region Brand */
.brand {
    display: flex;
    align-items: center;
    width: var(--brand-w);
    height: 100%;
    margin: 0;
    padding: 0;
    background: var(--brand-bg);
    color: var(--brand-fg);
    text-decoration: none;
}

.brand-icon {
    display: block;
    background: #fff;
    height: var(--brand-icon-h);
    margin: 0 15px 0 10px;
    border-radius: var(--radius-1);
}

.company-name {
    color: var(--brand-fg);
    font-weight: 600;
    font-size: var(--fs-1);
    line-height: 1.1;
    margin: 0;
    text-align: center;
}
/* #endregion  */

/* #region Nine Grid Layout*/
.nine-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(3, 1fr);
    gap: var(--space-3);
    height: 100%;
    min-height: 0;
}

    .nine-grid > .nine-grid-card {
        display: flex;
        flex-direction: column;
        min-height: 0;
    }

        .nine-grid > .nine-grid-card > * {
            flex: 1 1 auto;
            min-height: 0;
        }
/* #endregion  */

/* #region Six Grid Layout*/
.six-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
    gap: var(--space-2);
    height: 100%;
    width: 100%;
    min-height: 0;
}

    .six-grid > .six-grid-card {
        display: flex;
        flex-direction: column;
        min-height: 0;
    }

        .six-grid > .six-grid-card > * {
            flex: 1 1 auto;
            min-height: 0;
        }
/* #endregion  */

/* #region 3x2 Grid Layout*/
.three-by-two-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: var(--space-2);
    height: 100%;
    width: 100%;
    min-height: 0;
}

    .three-by-two-grid > .three-by-two-grid-card {
        display: flex;
        flex-direction: column;
        min-height: 0;
        border: 1px solid #dee2e6;
        border-radius: 0.25rem;
        padding: .5rem;
    }

        .three-by-two-grid > .three-by-two-grid-card > * {
            flex: 1 1 auto;
            min-height: 0;
        }
/* #endregion  */

/* #region 3x1 Grid Layout */
.three-by-one-grid {
    display: grid;
    grid-template-columns: 60% 20% 20%;
    gap: var(--space-2);
    height: 100%;
    width: 100%;
    min-height: 0;
}

    .three-by-one-grid > .three-by-one-grid-card {
        display: flex;
        flex-direction: column;
        min-height: 0;
        text-align: center;
        color: white;
    }

    .three-by-one-grid .three-by-one-grid-fill {
        flex: 1 1 auto;
        min-height: 0;
        align-content: center;
    }
/* #endregion */

/* #region 2x1 Grid Layout */
.two-by-one-grid {
    display: grid;
    grid-template-columns: 90% 10%;
    gap: var(--space-2);
    height: 100%;
    width: 100%;
    min-height: 0;
}

    .two-by-one-grid > .two-by-one-grid-card {
        display: flex;
        flex-direction: column;
        min-height: 0;
        text-align: center;
        color: white;
    }

    .two-by-one-grid .two-by-one-grid-fill {
        flex: 1 1 auto;
        min-height: 0;
        align-content: center;
    }
/* #endregion */

/*#region Generic Grid*/
#FPMGrid .e-toolbar-items {
    margin-left: 95%;
}
/*#endregion*/

/* #region Dashboard Buttons */

.grid-toolbar-button {
    padding-top: .1rem !important;
    padding-right: .3rem !important;
    padding-bottom: .25rem !important;
    padding-left: .3rem !important;
    font-size: .875rem !important;
    line-height: .875rem !important;
}

    .grid-toolbar-button .e-btn-icon {
        font-size: .875rem !important;
        line-height: .875rem !important;
        margin-top: 0px !important;
    }

.grid-toolbar-dropdown {
    padding-top: .1rem !important;
    padding-right: .3rem !important;
    padding-bottom: .25rem !important;
    padding-left: .3rem !important;
    line-height: .875rem !important;
}

    .grid-toolbar-dropdown .e-btn-icon.e-icon-left {
        margin-left: 0 !important;
        width: .875rem !important;
        line-height: .875rem !important;
        margin-top: 0px !important;
    }

.grid-row-button {
    padding-top: .1rem !important;
    padding-right: .3rem !important;
    padding-bottom: .25rem !important;
    padding-left: .3rem !important;
    font-size: .875rem !important;
    line-height: .875rem !important;
}

    .grid-row-button .e-btn-icon {
        font-size: .875rem !important;
        line-height: .875rem !important;
        margin-top: 0px !important;
    }

.e-toolbar .e-toolbar-item .e-tbar-btn:hover {
    background: unset;
    color: unset;
}

    .e-toolbar .e-toolbar-item .e-tbar-btn:hover .e-tbar-btn-text {
        color: unset;
    }
/* #endregion  */

/* #region FPM Toolbar */
.fpm-toolbar.e-toolbar,
.fpm-toolbar .e-toolbar-items {
    min-height: var(--size-fpmheader-lg);
    height: var(--size-fpmheader-lg);
    align-items: center;
    padding-left: 0;
    padding-right: var(--pad-md);
    gap: var(--space-3);
}

    .fpm-toolbar .e-toolbar-items:not(.e-tbar-pos):not(.e-toolbar-multirow) .e-toolbar-item:first-child {
        margin-left: 0px !important;
    }

.fpm-toolbar .e-toolbar-item:not(.e-separator):not(.e-spacer) {
    padding: 0px !important;
}

.fpm-toolbar .search-wrap {
    width: 480px;
}

.fpm-toolbar .e-menu-container ul .e-menu-item .e-caret::before {
    display: none;
}

.fpm-toolbar .e-menu-wrapper ul .e-menu-item.e-menu-caret-icon,
.fpm-toolbar .e-menu-container ul .e-menu-item.e-menu-caret-icon {
    padding-right: 12px;
}

.fpm-toolbar .e-menu-wrapper ul .e-menu-item .e-menu-icon,
.fpm-toolbar .e-menu-container ul .e-menu-item .e-menu-icon {
    margin-right: 0;
}

.fpmformgrid .e-toolbar-right {
    display: flex !important;
}
/*#endregion*/

/* #region FPM Form */
.fpmgrid.fpmformgrid .e-gridheader {
    display: none;
}

.fpmform .input-group { /*span group that contains the label and the input*/
    height: 40px;
    min-height: 40px;
    max-height: 40px;
}

.fpmform .input-group-text { /*the label*/
    height: 40px;
    min-height: 40px;
    max-height: 40px;
}

.fpmform .e-input-group {
    margin-bottom: 0px !important;
    margin-top: 0px !important;
}

.fpmform input.e-input,
.fpmform .e-input-group,
.fpmform .e-input-group.e-control-wrapper { /*input corner rounding*/
    border-top-left-radius: 0px !important;
    border-bottom-left-radius: 0px !important;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

.fpmform .date-span {
    height: 38px;
}

.fpmform .e-input-group,
.fpmform .e-textbox.e-input,
.fpmform .e-combobox.e-input{ /*the input*/
    min-height: 40px;
    max-height: 40px;
}

.fpmform span.form-control.e-input-group {
    padding-top: 0px !important;
}

.fpmformgrid.e-grid.e-default .e-rowcell.e-lastrowcell:not(.e-xlsel-bottom-border),
.fpmformgrid.e-grid.e-default .e-detailrowcollapse.e-lastrowcell,
.fpmformgrid.e-grid .e-gridcontent .e-rowdragdrop.e-lastrowcell {
    border-bottom-width: 0px;
}

.fpmformgrid.e-grid .e-focused {
    box-shadow: unset !important;
}

.fpmgrid.fpmformgrid.e-grid td.e-active {
    background: unset;
}

.fpmform span.e-ddl {
    padding-right: 0px;
    padding-bottom: 0px;
}

.fpmform .e-data-form .e-label-position-left {
    margin-top: 5px;
}

.fpmform .e-autocomplete.e-input,
.fpmform .e-autocomplete.e-input {
    height: 40px !important;
}

.fpmform .e-checkbox-wrapper {
    text-align:left;
    padding-left:20px;
    border: 0px;
}

.fpmform .checkbox-question {
    border-top-right-radius: 0px !important;
    border-bottom-right-radius: 0px !important;
}

.fpmform .e-checkbox-wrapper.checkbox-answer {
    background-color: #f8f9fa;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    margin-left: -11px;
    border: var(--bs-border-width) solid var(--bs-border-color);
    height: 40px;
}

.fpmform .e-grid .e-rowcell .e-checkbox-wrapper {
    top:0px;
}
/* #endregion  */

/* #region Tabs */
.fpmtab {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    height: 100% !important;
    min-height: 0;
}

    .fpmtab > .e-tab-header {
        flex: 0 0 var(--size-tabstrip-h);
    }

    .fpmtab > .e-content {
        flex: 1 1 auto;
        min-height: 0;
        overflow-x: hidden;
        overflow-y: auto;
        padding-top: var(--pad-sm);
        padding-right: 8px;
        overscroll-behavior: contain;
    }

        .fpmtab > .e-content .e-item.e-active {
            height: 100%
        }


    .fpmtab.level1:has(.level2, .level3, .level4) > .e-content,
    .fpmtab.level2:has(.level3, .level4) > .e-content,
    .fpmtab.level3:has(.level4) > .e-content {
        height: 100%;
        overflow: hidden !important;
    }
/* #endregion Tabs */

/* #region  Text Editor (RTE) */
.fpmtexteditor {
    display: flex;
    flex-direction: row;
    height: 100%;
    min-height: 0;
    width: 100%;
}

.fpmtexteditor-left {
    margin-right: 5px;
}

.e-richtexteditor > .e-control.e-tooltip.e-lib {
 display: none;   
}

/*
.fpmtexteditor-right {
    flex: 0 0 50%;
}*/

    .fpmtexteditor .e-rte-toolbar,
    .fpmtexteditor .e-toolbar-container {
        position: sticky;
        top: 0;
        z-index: var(--z-sticky);
        background: #f8f9fa;
        height: var(--size-toolbar-h);
    }

    .fpmtexteditor > .e-content {
        flex: 1 1 auto;
        min-height: 0;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
    }

    .fpmtexteditor .e-rte-container, .fpmtexteditor .e-rte-content {
        flex: 1 1 auto;
        min-height: 0;
        height: 100%;
    }

        .fpmtexteditor .e-rte-content .e-content {
            height: 100%;
            min-height: 0;
            overflow-y: auto;
            overflow-x: hidden;
            overscroll-behavior: contain;
        }

    .fpmtexteditor .e-rte-content {
        overflow: hidden;
    }
/* #endregion */

/* #region  Cards */
.fpmcard,
.assessmentcard,
.bspcard{
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    justify-content: flex-start;
}

.fpmcard {
    height: 100%;
}

.assessmentcard {
    margin-bottom: 1rem;
    margin-right: 1rem;
}

    .fpmcard > .e-card-header,
    .assessmentcard > .e-card-header,
    .bspcard > .e-card-header {
        flex: 0 0 var(--size-fpmheader-lg);
        padding: var(--pad-sm);
        background: var(--bg-fpmheader);
        border-bottom: var(--border-thin) solid var(--line);
    }

        .fpmcard .e-card-header:has(.fpmheader-left.green-okay) {
            background: green;
        }
        .fpmcard .e-card-header:has(.fpmheader-left.yellow-risk) {
            background: yellow;
        }
        .fpmcard .e-card-header:has(.fpmheader-left.orange-high-risk) {
            background: orange;
        }
        .fpmcard .e-card-header:has(.fpmheader-left.red-warning) {
            background: red;
        }

.fpmcard > .e-card-content,
.assessmentcard > .e-card-content {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: var(--pad-sm);
    overscroll-behavior: contain;
    width: 100%;
}

    .bspcard > .e-card-content {
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
    }

.level1:has(.level2) > .assessmentcard > .e-card-content,
.level2:has(.level3) > .assessmentcard > .e-card-content,
.level3:has(.level4) > .assessmentcard > .e-card-content,
.level1:has(.level2) > .fpmcard > .e-card-content,
.level2:has(.level3) > .fpmcard > .e-card-content,
.level3:has(.level4) > .fpmcard > .e-card-content,
.level1:has(.level2) > .bspcard > .e-card-content,
.level2:has(.level3) > .bspcard > .e-card-content,
.level3:has(.level4) > .bspcard > .e-card-content {
    overflow: hidden !important;
}
/* #endregion */

/* #region  Vertical Card */
.fpmverticalcard {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    justify-content: flex-start;
    padding-bottom: 1rem;
}
    .fpmverticalcard > .e-card-header {
        flex: 0 0 var(--size-fpmheader-lg);
        padding: var(--pad-sm);
        background: var(--bg-fpmheader);
        border-bottom: var(--border-thin) solid var(--line);
    }

    .fpmverticalcard > .e-card-content {
        display: flex;
        flex-direction: column;
        flex: 0 0 auto !important;
        min-height: 0;
        overflow-x: hidden;
        overflow-y: auto;
        padding: var(--pad-sm);
        overscroll-behavior: contain;
        width: 100%;
        height: 100%;
        justify-content: flex-start;
    }

/*.level1:has(.level2) > .fpmverticalcard > .e-card-content,
.level2:has(.level3) > .fpmverticalcard > .e-card-content,
.level3:has(.level4) > .fpmverticalcard > .e-card-content {
    overflow: hidden !important;
}*/
/* #endregion */

.status-checkboxes {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr)); /* 4 columns */
    column-gap: 1.5rem; /* horizontal spacing */
    row-gap: 0.25rem; /* vertical spacing */
    font-size: .75rem; /* keep your smaller font */
}

tr:has(.critical-background) td {
    background: #FFFAA0 !important;
}

/* #region Question - Answer */
.fpm-question {
    margin-bottom: 0;
    width: 100%;
}

    .fpm-answer {
        margin-bottom: 2rem;
        width: 100%;
    }
/* #endregion  */

/* #region  FPMGrid */
.fpmgrid {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    height: 100%;
    min-height: 0;
}

.fpmgrid > .e-gridheader {
    flex: 0 0 var(--size-header-md);
    padding: var(--pad-sm);
}

.fpmgrid.grid-with-filter > .e-gridheader {
    flex: 0 0 var(--size-fpmheader-xlg);
}

.fpmgrid > .e-gridcontent {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: var(--pad-sm);
}

.fpmgrid .e-row,
.fpmgrid .e-rowcell {
    height: var(--size-grid-row-h);
}

.fpmgrid .e-filterdiv.e-fltrinputdiv:not(:has(.e-input-group)) {
    width: 10px !important;
    min-width: 10px !important;
    max-width: 10px !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.fpmgrid.e-grid .e-groupdroparea {
    display: none;
}

.fpmgrid.e-grid .e-icon-gdownarrow {
    padding: .25rem;
}

.level1:has(.level2) > .fpmgrid > .e-content,
.level2:has(.level3) > .fpmgrid > .e-content,
.level3:has(.level4) > .fpmgrid > .e-content {
    height: 100%;
    overflow: hidden !important;
}
/* #endregion */

        /* #region  List */
        .fpmlist {
            display: flex;
            flex-direction: column;
            height: 100%;
            min-height: 0;
        }

            .fpmlist > .e-list-header {
                flex: 0 0 var(--size-header-md);
                padding: var(--pad-sm);
            }

            .fpmlist > .e-content {
                flex: 1 1 auto;
                min-height: 0;
                overflow-x: hidden !important;
                overflow-y: auto !important;
                padding: var(--pad-sm);
                overscroll-behavior: contain;
            }

            .fpmlist .e-list-item {
                min-height: var(--size-listitem-min);
            }

                .fpmlist .e-list-item.e-focused {
                    background-color: var(--bg-header) !important;
                }

        .level1:has(.level2) > .fpmlist > .e-content,
        .level2:has(.level3) > .fpmlist > .e-content,
        .level3:has(.level4) > .fpmlist > .e-content {
            height: 100%;
            overflow: hidden !important;
        }
        /* #endregion */

        /* #region Header*/
        .fpmheader {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: var(--pad-sm);
            width: 100%;
        }

            .fpmheader .fpmheader-left,
            .fpmheader .fpmheader-middle,
            .fpmheader .fpmheader-right {
                display: flex;
                align-items: center;
                gap: var(--pad-sm);
            }

        .title-wrap {
            display: flex;
            flex-direction: column;
        }

        .title {
            margin: 0;
            line-height: 1.2;
        }

        .subtitle {
            line-height: 1.2;
        }
        /* #endregion */
        /* #region  Bridges & states */
        :where(.e-btn) {
            background: var(--btn-bg);
            color: var(--btn-color);
        }

        :where(.e-badge) {
            background: var(--badge-bg);
            color: var(--badge-color);
        }

        :where(button, .e-btn):focus-visible {
            outline: 0;
            box-shadow: var(--state-focus-ring);
        }

        :where(.e-list-item):hover {
            background: var(--state-hover-bg);
        }
        /* #endregion */
        /* #region Color, Show, Hide */
        .green {
            background: whitesmoke !important;
        }

        .yellow {
            background: #FFFF00 !important;
        }

        .orange {
            background: #FF6600 !important;
        }

        .red {
            background: #FF0000 !important;
        }

        .no-color {
            background: whitesmoke !important;
        }

        .hidden {
            display: none !important;
        }

        .show {
            display: block !important;
        }
        /* #endregion */
        /* #region Icons*/
        .e-menu .e-menu-item .e-menu-icon.svg::before,
        .e-contextmenu .e-menu-item .e-menu-icon.svg::before {
            content: none !important;
        }

        .e-menu .e-menu-item .e-menu-icon.svg,
        .e-contextmenu .e-menu-item .e-menu-icon.svg {
            background-repeat: no-repeat;
            background-position: center;
            background-size: contain;
            display: inline-block;
            line-height: 1;
        }

        .e-menu .e-menu-item .e-menu-icon.svg {
            width: 30px !important;
            height: 30px !important;
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg {
            width: 18px;
            height: 18px;
        }

        .e-contextmenu .e-menu-item .e-menu-icon {
            margin-right: 8px;
        }

            .e-contextmenu .e-menu-item .e-menu-icon.svg.available {
                background-image: url("/icons/event-available-outline-rounded.svg");
            }

        .e-menu .e-menu-item .e-menu-icon.svg.calendar {
            background-image: url("/icons/calendar-month-outline-rounded.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.cancel {
            background-image: url("/icons/cancel-outline.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.check {
            background-image: url("/icons/fact-check-outline-rounded.svg");
        }

        .e-menu .e-menu-item .e-menu-icon.svg.comm {
            background-image: url("/icons/communication-rounded.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.copy {
            background-image: url("/icons/content-copy-outline-rounded.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.cut {
            background-image: url("/icons/content-cut-rounded.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.delete {
            background-image: url("/icons/delete-forever-outline-rounded.svg");
        }

        .e-menu .e-menu-item .e-menu-icon.svg.exchange {
            background-image: url("/icons/component-exchange.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.frame-person {
            background-image: url("/icons/frame-person-off-outline-rounded.svg");
        }

        .e-menu .e-menu-item .e-menu-icon.svg.help {
            background-image: url("/icons/help-center-outline-rounded.svg");
        }

        .e-menu .e-menu-item .e-menu-icon.svg.list {
            background-image: url("/icons/list-alt-outline-rounded.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.medical {
            background-image: url("/icons/medical-information-outline-rounded.svg");
        }

        .e-menu .e-menu-item .e-menu-icon.svg.money {
            background-image: url("/icons/attach-money-rounded.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.notes {
            background-image: url("/icons/add-notes-outline-rounded.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.paste {
            background-image: url("/icons/content-paste-rounded.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.person-check {
            background-image: url("/icons/person-check-outline-rounded.svg");
        }

        .e-contextmenu .e-menu-item .e-menu-icon.svg.receipt {
            background-image: url("/icons/receipt-long-outline-rounded.svg");
        }
        /* #endregion */
        /* #region Chart Switch */
        .e-switch-wrapper.chart-switch {
            height: 33px;
            width: 100px;
            border: 0px;
        }

        .chart-switch .e-switch-inner {
            left: 0px;
            top: 0px;
            height: 33px;
            border: 0px;
            border-radius: 4px;
        }

        .chart-switch .e-switch-on {
            text-indent: -20px;
            height: 33px;
            font-size: .75rem;
        }

        .chart-switch .e-switch-off {
            text-indent: 20px;
            height: 33px;
            background: lightgray;
            font-size: .75rem;
        }

        .chart-switch .e-switch-handle.e-switch-active {
            height: 33px;
            width: 15px;
            left: calc(100% - 15px);
            border-radius: 4px;
            margin-left: 0px;
            top: 2px;
        }

        .chart-switch .e-switch-handle {
            height: 33px;
            width: 15px;
            right: calc(100% - 15px);
            border-radius: 4px;
            margin-left: -1.6px;
            top: 2px;
            background: #fff;
            background-color: white;
        }

            .chart-switch .e-switch-handle:hover {
                background: #fff;
                background-color: white;
            }

        .chart-switch .e-switch-wrapper:not(.e-switch-disabled):hover .e-switch-handle:not(.e-switch-active),
        .chart-switch .e-css.e-switch-wrapper:not(.e-switch-disabled):hover .e-switch-handle:not(.e-switch-active) {
            background: #fff;
            background-color: white;
        }

        .e-switch-wrapper:not(.e-switch-disabled):hover .e-switch-handle:not(.e-switch-active),
        .e-css.e-switch-wrapper:not(.e-switch-disabled):hover .e-switch-handle:not(.e-switch-active) {
            background-color: white;
        }
        /* #endregion  */
        /* #region Search Switch */
        .search-switch.e-switch-wrapper {
            height: 31px;
            width: 100px;
        }

        .search-switch .e-switch-inner {
            height: 100%;
            padding-top: 0;
            padding-bottom: 0;
            border-radius: 0;
        }

        .search-autocomplete .e-ddl {
            border-top-right-radius: 0px;
            border-bottom-right-radius: 0px;
        }

        .search-switch .e-switch-off {
            text-indent: 0;
            height: 30px;
            background: lightgray;
        }

        .search-switch .e-switch-on {
            text-indent: 0;
            height: 30px;
        }

        .search-switch .e-switch-handle {
            display: none;
        }
        /* #endregion  */
        /* #region Chart Date Control */
        .e-date-wrapper.chart-date-control {
            width: 100px;
            padding: 0;
            text-align: center;
            align-items: center;
        }

        .chart-date-control > .e-input {
            font-size: .75rem !important;
            padding: .25rem !important;
            width: 100px !important;
            text-align: center !important;
        }

        .chart-date .input-group-text {
            font-size: .75rem;
            padding: .4rem;
        }

        .chart-date-control .e-input-group-icon {
            display: none !important;
        }

        .chart-date-control-button {
            background: #F8F9FA;
            border-color: #DEE2E6;
            box-shadow: none;
            color: #212529;
/*            border-top-right-radius: 4px;
            border-bottom-right-radius: 4px;
*/
            font-size: .75rem !important;
            padding: .4rem;
        }
        /* #endregion  */
        /* #region External Scheduler */
        .external-scheduler-wrapper {
            height: calc(100vh - 90px);
            min-height: 0;
            display: flex;
        }

            .external-scheduler-wrapper .external-scheduler {
                flex: 1 1 auto;
                height: 100% !important;
                min-height: 0;
            }

        .external-scheduler,
        .external-scheduler * {
            transition: none !important;
            animation: none !important;
        }

            .external-scheduler .e-current-time-indicator,
            .external-scheduler .e-current-timeline,
            .external-scheduler .e-current-time {
                display: none !important;
            }

        .external-scheduler-blocker {
            position: fixed;
            inset: 0;
            background-color: rgba(255, 255, 255, 0.7);
            z-index: 9999;
            display: flex;
            align-items: center;
            justify-content: center;
            pointer-events: all;
        }

            .external-scheduler-blocker .e-spinner-pane {
                background-color: transparent !important;
            }
        /* #endregion  */
        /* #region Tooltip */
        .e-tooltip {
            width: 100%;
        }
        /* #endregion */
        /* #region R5 Report */
        .r5-gray-background {
            background-color: whitesmoke !important;
        }

        .r5-report .e-card-header {
            padding: 0.75rem 1rem;
        }

        .r5-empty i {
            font-size: 32px;
            display: block;
            margin-bottom: 0.5rem;
        }

        .r5-transaction-layout {
            display: flex;
            gap: 1.5rem;
            align-items: flex-start;
            padding: 1rem 0.75rem 0.5rem;
        }
        /* #region Summary */
        .r5-summary {
            flex: 0 0 260px;
        }

        .r5-summary-card {
            border-radius: 6px;
            overflow: hidden;
        }

        .r5-summary-header {
            padding: 0.5rem 0.75rem;
            font-weight: 600;
            background-color: gainsboro;
            border-bottom: 1px solid #e2e2e2;
        }

        .r5-summary-body {
            padding: 0.75rem;
        }

        .r5-summary-row {
            display: flex;
            justify-content: space-between;
            gap: 0.5rem;
            margin-bottom: 0.35rem;
            font-size: 0.875rem;
        }

            .r5-summary-row .label {
                color: #666;
            }

            .r5-summary-row .value {
                font-weight: 600;
            }
        /* #endregion */
        /* #region Claim Card */
        .r5-claims {
            flex: 1 1 auto;
            display: flex;
            flex-direction: column;
            gap: 1rem;
        }

        .r5-claim-card {
            margin-bottom: 3rem;
            border: solid 1px gainsboro;
        }

        .r5-claim-header {
            display: flex;
            justify-content: space-between;
            gap: 1rem;
            border-bottom: 1px solid #e2e2e2;
            padding: 0.7rem;
            margin-bottom: 0.5rem;
            background: gainsboro;
        }

            .r5-claim-header .left .title {
                font-weight: 600;
            }

            .r5-claim-header .left .subtitle {
                font-size: 0.8rem;
                color: #777;
            }

            .r5-claim-header .right {
                display: flex;
                flex-wrap: wrap;
                gap: 1.25rem;
                justify-content: flex-end;
                font-size: 0.8rem;
            }

            .r5-claim-header .metric {
                text-align: right;
            }

                .r5-claim-header .metric .label {
                    display: block;
                    color: #777;
                }

                .r5-claim-header .metric .value {
                    font-weight: 600;
                }

        .r5-claim-meta {
            display: flex;
            flex-wrap: wrap;
            gap: 1.5rem;
            font-size: 0.8rem;
            margin-bottom: 0.5rem;
            padding-left: .7rem;
        }

            .r5-claim-meta .label {
                color: #777;
                margin-right: 0.25rem;
            }
        /* #endregion */
        /* #region Service Lines */
        .r5-service-lines {
            margin-top: 0.25rem;
            padding-left: .7rem;
        }

        .r5-section-title {
            font-weight: 600;
            font-size: 0.85rem;
            margin-bottom: 0.25rem;
            padding-left: .7rem;
        }

        .r5-service-table thead th {
            font-size: 0.8rem;
            background-color: gainsboro;
        }

        .r5-service-table tbody td {
            font-size: 0.8rem;
        }

        .r5-adjustments-row td {
            border-top: none;
            padding-top: 0;
            font-size: 0.75rem;
        }

        .r5-adjustments-row .adj {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            margin-bottom: 0.15rem;
        }

        .r5-adjustments-row .code {
            font-weight: 600;
        }

        .r5-adjustments-row .amount {
            margin-left: auto;
            font-weight: 600;
        }
        /* #endregion */
        /* #endregion */