/* Minification failed. Returning unminified contents.
(2743,21): run-time error CSS1039: Token not allowed after unary operator: '-statements-print-width'
 */
/*body {
    padding-top: 50px;
    padding-bottom: 20px;
}

/ * Set padding to keep content from hitting the edges * /
.body-content {
    padding-left: 15px;
    padding-right: 15px;
}*/

#ClaimMessagesGrid tr.dx-freespace-row {
    display: none !important;
}

#ClaimMessagesGrid .dx-header-row {
    font-weight: bold;
    color: black;
}

.white-space-normal {
    white-space: normal;
}
.change-claim-status-dd-margin {
    margin-top: 5px
}

.letters-btn-dd-margins {
    margin-top: 5px;
    margin-bottom: 5px;
}

.claims-details-modal-body {
    max-height: 80vh;
    overflow-y: auto;
}

.claim-attm-form-control {
    max-width: 600px;
}

.claim-attm-btn-minWidth {
    min-width: 100px;
}

.claim-attm-flexContainer {
    display: -webkit-flex; /* Safari */
    display: flex;
}

.claim-attm-inputField {
    -webkit-flex: 1; /* Safari 6.1+ */
    -ms-flex: 1; /* IE 10 */
    flex: 1;
    max-width: 500px
}

#uploadDiv [type='file'] {
    min-height: 38px;
}

/* CSP-compliant: use class instead of inline style for clickable elements */
.cursor-pointer {
  cursor: pointer;
}

/* Override .dx-datagrid .dx-link { text-decoration: underline } (higher specificity than .claim-* alone) */
.dx-datagrid .dx-link.claim-id-link,
.dx-datagrid .dx-link.claim-ticket-link {
  text-decoration: none;
}

.dx-datagrid .dx-link.claim-id-link:hover,
.dx-datagrid .dx-link.claim-id-link:focus,
.dx-datagrid .dx-link.claim-ticket-link:hover,
.dx-datagrid .dx-link.claim-ticket-link:focus {
  text-decoration: none;
}

/* Selected NPIs grid Delete column: same dx-link underline override as claim-id-link */
.dx-datagrid .dx-link.enrollment-npi-delete-link {
  text-decoration: none;
}

.dx-datagrid .dx-link.enrollment-npi-delete-link:hover,
.dx-datagrid .dx-link.enrollment-npi-delete-link:focus {
  text-decoration: none;
}

.claim-ticket-link {
  padding: 5px;
}

/* CSP-compliant: use class instead of inline style for report viewer iframes */
.report-viewer-iframe {
    border: 1px solid #ccc;
}

/* Report iframe wrapper: relative container for spinner overlay positioning */
.report-frame-container {
    position: relative;
}

/* Report loading spinner overlay */
.report-loading-spinner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0.85);
    z-index: 10;
}

.report-loading-spinner.report-loading-hidden {
    display: none;
}

/* Report viewer errors: CSP-safe toast (no inline styles; DevExtreme notify uses inline CSS) */
.report-viewer-error-toast {
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    max-width: 90%;
    box-sizing: border-box;
    padding: 12px 20px;
    background-color: #c9302c;
    color: #fff;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
    z-index: 10050;
    font-weight: 600;
    text-align: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
}

.report-viewer-error-toast.report-viewer-error-toast--visible {
    opacity: 1;
    pointer-events: auto;
}

.display-none {
    display: none;
}

.visibility-hidden {
    visibility: hidden;
}

/* Report select controls: Select All checkbox and placeholder styling */
.report-select-controls {
    margin-bottom: 4px;
}
.report-select-all-label {
    font-weight: normal;
    cursor: pointer;
}
option.report-select-placeholder {
    color: black;
    font-style: italic;
}

/* Report filter toggle bar: CSP-compliant collapsible controls */
.report-filter-toggle-bar {
    background-color: #213D74;
    padding: 6px 12px;
    cursor: pointer;
    border-radius: 4px 4px 0 0;
    margin-bottom: 0;
}

.report-filter-toggle-bar a {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    display: block;
}

.report-filter-toggle-bar a:hover {
    color: rgba(255, 255, 255, 0.75);
    text-decoration: none;
}

/* Report filter panel: collapsible container */
.report-filter-panel {
    overflow: hidden;
}

.report-filter-panel.collapsed {
    display: none;
}

/* Report index page: CSP-compliant visibility classes (replaces inline style="display:none") */
.report-category-hidden {
    display: none;
}

.report-item-hidden {
    display: none;
}

.report-select {
    margin-right: 1em;
    display: none;
}

/*
    Override the nav-bar branding
*/
.navbar-brand {
    padding: 5px 5px;
}

/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column.  Also left
    align the DT text.
*/
.dl-horizontal dt {
    white-space: normal;
    text-align: left;
}

/* Set width on the form input elements since they're 100% wide by default */
/*input,
select,
textarea {
    max-width: 280px;
}*/

/* Bootstrap compact form */
.form-compact {
  font-size: 0.8em;
}

.form-compact .form-control {
  padding: 1px 2px;
  height: 24px;
  font-size:1em;
}

.form-compact textarea.form-control  {
  height: 100px;
}

.form-compact label {
  margin-bottom: 1px;
}

.form-compact .form-group
{
  margin-bottom: 0;
}

.form-compact button, .form-compact input, .form-compact optgroup, .form-compact select, .form-compact textarea {
  margin: 0 0 5px 0;
}

.form-compact .radio,
.form-compact .checkbox {
  position: relative;
  display: block;
  /* min-height: 20px; */
  min-height: 13px;
  margin-top: 10px;
  margin-bottom: 10px;
}

.form-compact .radio label,
.form-compact .checkbox label {
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}

.form-compact .radio input[type="radio"],
.form-compact .radio-inline input[type="radio"],
.form-compact .checkbox input[type="checkbox"],
.form-compact .checkbox-inline input[type="checkbox"] {
  position: absolute;
  /* margin-top: 4px \9; */
  margin-top: 0;
  margin-left: -20px;
}

.form-compact .input-group-addon {
    padding-top: 0;
    padding-right: 6px;
    padding-bottom: 0;
    padding-left: 6px;
}

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}

.claim-status-icon {
    width: 14px;
}

.ticket-message {
    border-top: 1px solid #ddd;
    padding-top: 10px;
}

.ticket-reply {
    border-top: 1px hidden #ddd;
    padding-top: 10px;
}

/* Tickets Details / invalid id — strict CSP: no inline styles */
.ticket-detail-description {
    margin-top: 10px;
    white-space: pre-line;
}

.ticket-reply-file-input {
    height: 38px !important;
}

.ticket-invalid-heading-indent {
    margin-left: 20px;
}

/* Bootbox error dialog (eps.tickets.js DisplayTicketErrorMessage) — no inline styles in HTML strings */
.bootbox-dialog-title-error {
    color: #c00;
}

.bootbox-dialog-message-text {
    color: #000;
}

/* Dynamic ticket form fields (eps.tickets.js displayTicketFields) */
input.ticket-form-claim-type-checkbox.checkbox {
    position: absolute;
    min-height: 13px;
    margin-top: 0;
    margin-left: -20px;
}

.ticket-form-datepicker-high-zindex {
    z-index: 1151 !important;
}

/* Support (Tickets) Index search panel toggle — no inline width on #Searchpanel */
#Searchpanel.tickets-search-panel-open {
    width: 20%;
}

#Searchpanel.tickets-search-panel-closed {
    width: 0;
}

.required-field-designation {
    color: #000;
    margin-left: 3px;
}

.search {
  position: relative;
  color: #aaa;
  font-size: 16px;
}

.search input {
  background: #fcfcfc;
  border: 1px solid #aaa;
  border-radius: 5px;
  box-shadow: 0 0 3px #ccc, 0 10px 15px #ebebeb inset;
  text-indent: 32px;
}

.search .fa-search { 
  position: absolute;
  top: 10px;
  left: 10px;
}

.file-attachment {
    padding: 10px;
    margin-right: 10px;
    border: 1px solid #ccc;
}

#customDates {
    margin-left: 10px;
}

.dateSearchType {
    margin-left: 10px;
}

/* see article about whipping bootrap file inputs into shape */
.btn-file {
    position: relative;
    overflow: hidden;
}
.btn-file input[type=file] {
    position: absolute;
    top: 0;
    right: 0;
    min-width: 100%;
    min-height: 100%;
    font-size: 100px;
    text-align: right;
    filter: alpha(opacity=0);
    opacity: 0;
    outline: none;
    background: white;
    cursor: inherit;
    display: block;
}

.modal .datepicker { 
    z-index:1151 !important; 
}

.ticketStatus{
    font-weight: 900;
    font-size: 1.5em;
    /*padding-right: 15px;*/
}

.ticketStatus[data-status="New"] {
    color: red;
}

.ticketStatus[data-status="Open"] {
    color: forestgreen;
}

.ticketStatus[data-status="Resolved"] {
    color: darkorange;
}

.ticketStatus[data-status="Closed"] {
    color: blue;
}

.multiselect-container {
    height: auto;
    max-height: 300px;
    overflow-x: hidden;
    display: inline-block;
    margin-top: -9px;
    box-shadow: inset 0px 1px 1px rgba(0,0,0,0.075);
    min-width: 469px;
}

.multiselect[data-toggle="dropdown"] {
    display:none;
}

.multiselect-container>li>a,
.multiselect-container>li>a>label{
    margin:0;
    height:100%;
    cursor:pointer;
    font-weight:normal;
    padding:3px 20px 3px 20px
}

.multiselect-clear-filter {
    margin: 0 !important;
    padding: 2px 5px 0 5px;
}

/* IE zoom issues */
html, body, div {
    -ms-zoom: 1;
    zoom: 1;
    /*-ms-content-zooming: none;*/
    /*-moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);*/
}

.checkbox:active,
.checkbox.active {
    outline: auto;
}

.field-validation-valid {
    display: none;
}

.validation-summary-valid {
    display: none;
}

.btn-default .badge {
    /*color: #333;*/
    color: #213D74;
    background-color: #fff;
}

/* TODO: Try adding form-control instead */
.displayfor {
    padding-top: 6px;
}

.required:after 
{
    content:"*";
    font-weight: bold;
    color: red; 
}

/* For browsers that don't properly support HTML 5 hidden attribute*/
*[hidden] {
    display: none;
}

#customNav 
{
    /* Using visibility instead of display to allocate space on the page for the collapsed menu, 
       even when not visible, in order to display main page content in the correct location*/
    visibility:hidden;
    top: 60px;
}

/* Do not display collapsed menu and let default menu take over in responsive mode on mobile devices. */
@media screen and (max-width: 768px) {
  #customNav {
    display: none !important;
  }
  #defaultNav {
    display: block !important;
    visibility: visible !important;
  }
}

#customNav.navbar-side .side-nav {
    width:45px;
}

#page-wrapper.collapsed .page-content {
    margin-left:45px;
}

.icon-stack {
    position: relative;
}
.icon-stack .glyphicon {
    position: absolute; 
}

.not-active {
    color:GrayText;
    pointer-events: none;
    cursor: not-allowed;
}

/* For Firefox only */
@-moz-document url-prefix() {
    input[type=file].form-control {
        height: auto;
        padding-top: 2px;
        padding-bottom: 2px;
    }
}

.highlight {
  /*color: #8a6d3b;*/
  /*background-color: #fcf8e3;*/
  color: black;
  background-color: yellow;
}

.btn-flex {
  display: flex;
  align-items: stretch;
  align-content: stretch;
}

.btn-flex .btn:first-child {
  flex-grow: 1;
  text-align: left;
}

.m-top-em-1 {
    margin-top: 1em;
}

.m-top-em-2 {
    margin-top: 2em;
}

.m-top-em-3 {
    margin-top: 3em;
}

.m-top-em-4 {
    margin-top: 4em;
}

.m-top-em-5 {
    margin-top: 5em;
}

.m-bottom-em-1 {
    margin-bottom: 1em;
}

.m-bottom-em-2 {
    margin-bottom: 2em;
}

.m-bottom-em-3 {
    margin-bottom: 3em;
}

.m-bottom-em-4 {
    margin-bottom: 4em;
}

.m-bottom-em-5 {
    margin-bottom: 5em;
}

.m-right-em-1 {
    margin-right: 1em;
}

.m-right-em-2 {
    margin-right: 2em;
}

.m-right-em-3 {
    margin-right: 3em;
}

.m-right-em-4 {
    margin-right: 4em;
}

.m-right-em-5 {
    margin-right: 5em;
}

.m-left-em-1 {
    margin-left: 1em;
}

.m-left-em-2 {
    margin-left: 2em;
}

.m-left-em-3 {
    margin-left: 3em;
}

.m-left-em-4 {
    margin-left: 4em;
}

.m-left-em-5 {
    margin-left: 5em;
}

tr.collapsible-tr {
    background-color: #ffffff !important;
}

.table-hover > tbody > tr.collapsible-tr:hover > td {
    background-color: #ffffff;
}

.page-title-thin {
    margin: 0px 0;
}

.page-title-thin.page-title-thin-header {
    margin-top: 30px;
}

.page-title-thin.page-title-thin-row {
    margin-top: 1px;
    margin-bottom: 1px;
}

.page-title-thin.page-title-thin-footer {
    margin-bottom: 30px;
}

.page-title-thin h1 {
    margin: 0;
    margin-bottom: 15px;
    font-size: 26px;
}



.page-title-thin small {
    /*font-size: 18px;*/
    font-size: 70%;
    /*color: #777;*/
    color: #6e6e6e;
    /*color: #5a5a5a;*/
}



.page-title-thin .breadcrumb {
    margin-bottom: 0;
    background-color: #e0e7e8;
}



.page-title-thin .date-picker {
    margin-top: -8px;
    margin-right: -15px;
}



.page-title-thin .date-range {
    display: none;
}



.page-title-thin .btn {
    height: 36px;
    padding-top: 8px;
    border: none;
}



@media(min-width:768px) {

    .page-title-thin .date-range {
        display: inherit;
    }
}

input.transparent-input {
    background-color: transparent !important;
    border: none !important;
}

.claims-breakdown-blue {
    background-color: #01A6DF !important;
}

.brightwarning {
    background-color: #ffff00;
}

.brighterror {
    background-color: #FF0000;
    color: white;
}

fieldset.with-border {
    border: 1px groove #ddd !important;
    padding: 0 1em 1em 1em !important;
    margin: 0 0 1em 0 !important;
    -webkit-box-shadow: 0px 0px 0px 0px #000;
    box-shadow: 0px 0px 0px 0px #000;
}

legend.with-border {
    width: inherit; /* Or auto */
    padding: 0 10px; /* To give a bit of padding on the left and right */
    border-bottom: none;
    margin-bottom: 0em;
}

.nofocusborder:focus {
    outline: none;
}

/* Pin tooltip: show masked by default, reveal on hover (moved from inline style for CSP) */
.pinToolTip .masking .maskStrong {
    display: block;
}
.pinToolTip .unmasking .unmaskStrong {
    display: none;
}
.pinToolTip:hover .masking .maskStrong {
    display: none;
}
.pinToolTip:hover .unmasking .unmaskStrong {
    display: block;
}

/* Manage Claims grid - column header wrap and 1.1.1 bold + black (bold via headerCellTemplate) */
#ManageClaimsGrid .dx-header-row .dx-datagrid-claims-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

/* Manage Claims grid - wrap column content (1.2.1) */
#ManageClaimsGrid .dx-datagrid-rowsview .dx-data-row > td {
    white-space: normal;
    overflow-wrap: break-word;
}

#ManageClaimsGrid .dx-datagrid-rowsview .dx-data-row > td .dx-datagrid-text-content {
    white-space: normal;
    overflow-wrap: break-word;
}

/*
 * DevExtreme pads the last page (when page count > 1 and rows < page size) with .dx-freespace-row
 * so the last page matches the height of a full page. Legacy DevExpress grid did not; hide the spacer.
 */
#ManageClaimsGrid tr.dx-freespace-row {
    display: none !important;
}

/* Claim Files (Manage + Legacy) — hide padded freespace row on last page (match Manage Claims) */
#ManageClaimFilesGrid tr.dx-freespace-row,
#ManageLegacyClaimFilesGrid tr.dx-freespace-row {
    display: none !important;
}

/* Manage Claim Files — hide selection checkbox for ineligible rows.
   DevExtreme keeps the disabled checkbox in the DOM for its updateSelection path;
   we make it invisible so only eligible rows appear interactive. */
#ManageClaimFilesGrid .dx-data-row .dx-command-select .dx-checkbox.dx-state-disabled {
    visibility: hidden;
}

/* Claim Files grids — column header bold + black with wrapping (match Manage Claims / Enrollments; headerCellTemplate in eps.claimFiles.js) */
#ManageClaimFilesGrid .dx-header-row .dx-datagrid-claimfiles-header-text,
#ManageLegacyClaimFilesGrid .dx-header-row .dx-datagrid-claimfiles-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

.dx-datagrid-claimfiles-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

.claim-files-dx-grid .dx-datagrid-rowsview .dx-data-row:hover td {
    background-color: #e8e8e8;
}

/* Filename column: primary line + EPS + Source on separate lines (legacy DevExpress used <br> between rows) */
.claim-file-filename-cell {
    white-space: normal;
    overflow-wrap: break-word;
}

.claim-file-filename-cell .claim-file-eps-line,
.claim-file-filename-cell .claim-file-source-line {
    color: #aaa;
}

/* Claim Files Index & LegacyClaimsIndex — upload toolbar (strict CSP: no inline styles) */
.claim-files-upload-toolbar-row {
    margin-bottom: 10px;
}
.btn.claim-files-upload-btn {
    min-width: 225px;
    margin-bottom: 15px;
}

/* Bootbox "Failed to Load" dialog (eps.claimFiles.js — strict CSP) */
.claim-files-failed-load-title {
    color: red;
}
.claim-files-failed-load-message {
    color: #000;
}
.claim-files-failed-load-warning-emphasis {
    color: red;
    font-weight: bold;
}

/* Claim Files messages modal (_MessagesDialog.cshtml — strict CSP) */
.claim-files-messages-modal-body {
    height: 400px;
    overflow-y: scroll;
}

.claim-file-row-worked-by td {
    background-color: #d3d3d3 !important;
}

/* Saved Searches DevExtreme grids: hide padded freespace row on last page */
[id^="SavedSearchesGrid"] tr.dx-freespace-row {
    display: none !important;
}
/*[id^="SavedSearch"] .dx-datagrid-headers .dx-header-row > td {
    color: black;
    font-weight: 500;
}*/
/* Saved Searches grids — bolder column header text */
[id^="SavedSearchesGrid"] .dx-header-row .saved-search-grid-header-caption {
    color: black;
    font-weight: 600;
}

/* Saved Searches Index — create modal (strict CSP: no inline styles) */
.saved-search-create-modal-dialog {
    overflow-y: initial !important;
}
.saved-search-create-modal-body {
    max-height: 80vh;
    overflow-y: auto;
}

/* SavedClaimSearch — screen reader / layout-only labels (strict CSP) */
.saved-search-label-invisible {
    visibility: hidden;
}

/* Bootbox saved search delete — title emphasis without inline style */
.bootbox-saved-search-confirm-title {
    color: red;
}

/* Manage Claims grid - row background by claim status (Invalid / Rejected) */
.claim-row-invalid {
    background-color: cornsilk !important;
}
.claim-row-rejected {
    background-color: #f2dede !important;
}

/* Manage Claims top pager (2.1, 2.3) */
.manage-claims-top-pager {
    margin-bottom: 10px;
    min-height: 36px;
}
.manage-claims-top-pager .manage-claims-top-pager-left {
    display: inline-block;
}
.manage-claims-top-pager .manage-claims-top-pager-right {
    display: inline-block;
}
.manage-claims-top-pager .manage-claims-pagesize-label {
    margin-right: 6px;
    vertical-align: middle;
}
.manage-claims-top-pager .inline-block {
    display: inline-block;
    vertical-align: middle;
}
.manage-claims-top-pager .manage-claims-top-pager-info {
    margin-right: 10px;
    vertical-align: middle;
}
.manage-claims-top-pager-nav {
    vertical-align: middle;
}
.manage-claims-top-pager-nav .btn {
    margin-left: 2px;
}
.manage-claims-top-pagesize-select {
    width: auto;
    display: inline-block;
    min-width: 60px;
}

/* Manage Claims async messages container: fixed height + scroll (strict CSP: no inline styles) */
.scrollLoadMessages.claim-detail-messages,
.scrollLoadMessages {
    height: 200px;
    width: 100%;
    overflow-y: auto;
    overflow-x: hidden;
}

/* Manage Claims async messages table (strict CSP: no inline styles) */
.claim-messages-table {
    width: 100%;
    empty-cells: show;
    border-collapse: collapse;
}

.claim-messages-table > thead > tr > th {
    background-color: #fff;
    border: 1px solid #ccc;
    padding: 8px 10px;
    font-weight: 600;
    color: #333;
    vertical-align: bottom;
}

/* Restore top border: Bootstrap's .table sets border-top: 0 on first thead row */
.claim-messages-table > thead:first-child > tr:first-child > th {
    border-top: 1px solid #ccc;
}

.claim-messages-table .claim-msg-col-date {
    width: 325px;
}

.claim-messages-table .claim-msg-col-status {
    width: 115px;
}

.claim-messages-table .claim-msg-col-message {
    min-width: 200px;
}

.claim-messages-table .claim-msg-col-type {
    width: 100px;
}

.claim-messages-table .claim-msg-col-source {
    width: 125px;
}

.claim-messages-table > tbody > tr > td {
    border: 1px solid #ddd;
    padding: 8px 10px;
}

/* Info and everything else: white background, black text */
.claim-messages-table > tbody > tr:not(.claim-message-row-error):not(.claim-message-row-hold) > td {
    background-color: white;
    color: black;
}

.claim-messages-table .claim-message-row-error {
    background-color: red;
    color: white;
}

.claim-messages-table .claim-message-row-hold {
    background-color: yellow;
    color: black;
}

/* Claim detail messages links: class-based (CSP); applies to Manage Claims expanded row only */
.claim-detail-messages a.claim-message-link {
    color: #428bca;
    text-decoration: none;
}

.claim-detail-messages a.claim-message-link:hover,
.claim-detail-messages a.claim-message-link:focus {
    text-decoration: underline;
}

#ClaimMessagesGrid a.claim-message-link {
    color: #428bca;
    text-decoration: none;
}

#ClaimMessagesGrid a.claim-message-link:hover,
#ClaimMessagesGrid a.claim-message-link:focus {
    text-decoration: underline;
}

#ClaimsAttachmentsGrid tr.dx-freespace-row {
    display: none !important;
}

#ClaimsAttachmentsGrid .dx-header-row {
    font-weight: bold;
    color: black;
}

#ClaimsAttachmentsGrid a.claim-attachment-link {
    color: #428bca;
    text-decoration: none;
    padding-right: 5px;
}

#ClaimsAttachmentsGrid a.claim-attachment-link:hover,
#ClaimsAttachmentsGrid a.claim-attachment-link:focus {
    text-decoration: underline;
}

#ClaimScrubResultsGrid a.scrub-result-view-link {
    color: #428bca;
    text-decoration: none;
}

#ClaimScrubResultsGrid a.scrub-result-view-link:hover,
#ClaimScrubResultsGrid a.scrub-result-view-link:focus {
    color: #2a6496;
}

.scrub-results-page .form-control {
    max-width: 600px;
}

.scrub-results-page .btn {
    min-width: 100px;
}

#ClaimScrubResultsGrid tr.dx-freespace-row {
    display: none !important;
}
#ClaimScrubResultsGrid .dx-datagrid-headers .dx-header-row > td {
    color: black;
    font-weight: 500;
}

.claim-attachments-page .form-control {
    max-width: 600px;
}

.claim-attachments-page .btn {
    min-width: 100px;
}

.text-white {
    color: white;
}

.provision-logo {
    width: 140px;
}

.pin-table {
    margin-left: 21px;
}

.pin-change-td {
    padding:4px;
}

.settings-user-action-li {
    display: none;
    margin-right:.5em;
}

.settings-user-action-icon {
    font-size:18px;
    color:white;
}

.eps-logo-link {
    padding: 0 !important;
    width: 200px !important;
    background-color: transparent !important;
}

.powered-by-image {
    padding: 0 !important;
    margin: 0 15px 15px !important;
}

.inherit-color {
    color: inherit;
}

.nav-collapsed-width {
    width: 45px;
}

.openbtn {
    font-size: 10px;
    cursor: pointer;
    background-color: #3071a9;
    color: white;
    padding: 10px 15px;
    border: none;
}

.openbtn:hover {
    background-color: #001843;
}

.modal-dialog-overflow-y-initial {
    overflow-y: initial !important;
}

.search-tools-active {
    display: none;
}

.display-block {
    display: block;
}

.more-search-options-modal-body {
    max-height: 80vh;
    overflow-y: auto;    
}

.run-saved-search-modal-dialog {
    overflow-y: initial !important;
}

.run-saved-search-modal-body {
    max-height: 80vh;
    overflow-y: auto;
}

.spr-modal-dialog {
    overflow-y: initial !important;
}

.spr-modal-body {
    max-height: 80vh; 
    overflow-y: auto;
}

.privacy-policy-link {
    color: white;
}

.site-footer {
    padding-left: 15px;
    padding-right: 30px;
    color: white !important;
}

.site-footer-text {
    color: white !important
}

.dx-datagrid-claims-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    word-wrap: break-word;
}

.enrollment-info-box {
    margin-left: 10px;
    border: 1px solid black;
}

.selected-payers-panel {
    margin-left: 50px;
}

#availablePayersGrid .dx-header-row .dx-datagrid-enrollment-payers-header-text,
#selectedPayersGrid .dx-header-row .dx-datagrid-enrollment-payers-header-text {
    font-weight: bold;
    color: black;
}

/* Selected payers grid Delete column: same dx-link underline override as claim-id-link */
.dx-datagrid .dx-link.enrollment-payer-delete-link {
    text-decoration: none;
}

.dx-datagrid .dx-link.enrollment-payer-delete-link:hover,
.dx-datagrid .dx-link.enrollment-payer-delete-link:focus {
    text-decoration: none;
    word-wrap: break-word;
}

#availableNpisGrid .dx-header-row .dx-datagrid-enrollment-npis-header-text,
#selectedNpisGrid .dx-header-row .dx-datagrid-enrollment-npis-header-text {
    font-weight: bold;
    color: black;
    overflow-wrap: break-word;
}

/* Manage Enrollments grid - column header bold + black with wrapping */
#ManageEnrollmentsGrid .dx-header-row .dx-datagrid-enrollments-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

.dx-datagrid-enrollments-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

/* Manage Users grid — column header bold + black with wrapping (same pattern as Claims / Enrollments) */
#ManageUsersGrid .dx-header-row .dx-datagrid-users-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

.dx-datagrid-users-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

/* Manage Users — hide padded freespace row on last page (match Claims / Enrollments / Claim Files) */
#ManageUsersGrid tr.dx-freespace-row {
    display: none !important;
}

/* Manage Enrollments — selection column: Material theme uses 70px for .dx-command-select; legacy grid is narrower */
#ManageEnrollmentsGrid .dx-datagrid-content .dx-datagrid-table .dx-row .dx-command-select {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    padding-left: 2px;
    padding-right: 2px;
}

/* Enrollment Id: a bit wider; keep header on one line (global header template uses white-space: normal) */
#ManageEnrollmentsGrid .enrollment-id-grid-col {
    min-width: 132px;
}

#ManageEnrollmentsGrid .dx-header-row .enrollment-id-grid-col .dx-datagrid-enrollments-header-text {
    white-space: nowrap;
}

/* Manage Enrollments grid - wrap column content */
#ManageEnrollmentsGrid .dx-datagrid-rowsview .dx-data-row > td {
    white-space: normal;
    overflow-wrap: break-word;
}

#ManageEnrollmentsGrid .dx-datagrid-rowsview .dx-data-row > td .dx-datagrid-text-content {
    white-space: normal;
    overflow-wrap: break-word;
}

/* Hide freespace row padding (match Claims behavior) */
#ManageEnrollmentsGrid tr.dx-freespace-row {
    display: none !important;
}

/* Manage Enrollments grid - link styling (CSP-compliant, no inline styles) */
.dx-datagrid .dx-link.enrollment-id-link,
.dx-datagrid .dx-link.enrollment-ticket-link {
    text-decoration: none;
}

.dx-datagrid .dx-link.enrollment-id-link:hover,
.dx-datagrid .dx-link.enrollment-id-link:focus,
.dx-datagrid .dx-link.enrollment-ticket-link:hover,
.dx-datagrid .dx-link.enrollment-ticket-link:focus {
    text-decoration: none;
}

.enrollment-ticket-link {
    padding: 5px;
}

/* Manage Enrollments — needs-attention column */
#ManageEnrollmentsGrid .dx-datagrid-rowsview .dx-row-focused.dx-data-row > td.enrollment-needs-attention-col,
#ManageEnrollmentsGrid .dx-datagrid-rowsview .dx-row-focused.dx-data-row > tr > td.enrollment-needs-attention-col {
    background-color: #fff !important;
    color: rgba(0, 0, 0, 0.87) !important;
}

#ManageEnrollmentsGrid .dx-datagrid-rowsview .dx-selection.dx-row:not(.dx-row-focused) > td.enrollment-needs-attention-col,
#ManageEnrollmentsGrid .dx-datagrid-rowsview .dx-selection.dx-row:not(.dx-row-focused):hover > td.enrollment-needs-attention-col {
    background-color: #fff !important;
    color: rgba(0, 0, 0, 0.87) !important;
}

/* Manage Enrollments top pager */
.manage-enrollments-top-pager {
    margin-bottom: 10px;
    min-height: 36px;
}
.manage-enrollments-top-pager .manage-enrollments-top-pager-left {
    display: inline-block;
}
.manage-enrollments-top-pager .manage-enrollments-top-pager-right {
    display: inline-block;
}
.manage-enrollments-top-pager .manage-enrollments-pagesize-label {
    margin-right: 6px;
    vertical-align: middle;
}
.manage-enrollments-top-pager .inline-block {
    display: inline-block;
    vertical-align: middle;
}
.manage-enrollments-top-pager .manage-enrollments-top-pager-info {
    margin-right: 10px;
    vertical-align: middle;
}
.manage-enrollments-top-pager-nav {
    vertical-align: middle;
}
.manage-enrollments-top-pager-nav .btn {
    margin-left: 2px;
}
.manage-enrollments-top-pagesize-select {
    width: auto;
    display: inline-block;
    min-width: 60px;
}

/* Manage Tickets (Support) top pager */
.manage-tickets-top-pager {
    margin-bottom: 10px;
    min-height: 36px;
}
.manage-tickets-top-pager .manage-tickets-top-pager-left {
    display: inline-block;
}
.manage-tickets-top-pager .manage-tickets-top-pager-right {
    display: inline-block;
}
.manage-tickets-top-pager .manage-tickets-pagesize-label {
    margin-right: 6px;
    vertical-align: middle;
}
.manage-tickets-top-pager .inline-block {
    display: inline-block;
    vertical-align: middle;
}
.manage-tickets-top-pager .manage-tickets-top-pager-info {
    margin-right: 10px;
    vertical-align: middle;
}
.manage-tickets-top-pager-nav {
    vertical-align: middle;
}
.manage-tickets-top-pager-nav .btn {
    margin-left: 2px;
}
.manage-tickets-top-pagesize-select {
    width: auto;
    display: inline-block;
    min-width: 60px;
}
#ManageTicketsGrid .dx-header-row .dx-datagrid-tickets-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}
/*
 * DevExtreme pads the last page (when page count > 1 and rows < page size) with .dx-freespace-row
 * so the last page matches the height of a full page. Hide the spacer (match Claims / Manage Enrollments).
 */
#ManageTicketsGrid tr.dx-freespace-row {
    display: none !important;
}

/* ============================================================
   Continue Enrollments (EnrollmentBatches) grid
   ============================================================ */

/* Column header bold + black with wrapping */
#EnrollmentBatchesGrid .dx-header-row .dx-datagrid-batches-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

.dx-datagrid-batches-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

/* Wrap column content */
#EnrollmentBatchesGrid .dx-datagrid-rowsview .dx-row > td {
    white-space: normal;
    overflow-wrap: break-word;
}

/*
 * DevExtreme pads the last page (when page count > 1 and rows < page size) with .dx-freespace-row
 * so the last page matches the height of a full page. Hide the spacer (match Claims / Manage Enrollments).
 */
#EnrollmentBatchesGrid tr.dx-freespace-row {
    display: none !important;
}

/* Row coloring by batch status */
#EnrollmentBatchesGrid .batch-row-complete > td {
    background-color: lightgreen !important;
}

#EnrollmentBatchesGrid .batch-row-canceled > td {
    background-color: lightpink !important;
}

/* Completion report column — fixed narrow width to fit icon only */
#EnrollmentBatchesGrid .batch-completion-report-col {
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
}

/* Link styling */
.dx-datagrid .dx-link.batch-id-link,
.dx-datagrid .dx-link.batch-completion-report-link {
    text-decoration: none;
}

.dx-datagrid .dx-link.batch-id-link:hover,
.dx-datagrid .dx-link.batch-id-link:focus,
.dx-datagrid .dx-link.batch-completion-report-link:hover,
.dx-datagrid .dx-link.batch-completion-report-link:focus {
    text-decoration: none;
}

/* Top pager */
.enrollment-batches-top-pager {
    margin-bottom: 10px;
    min-height: 36px;
}

.enrollment-batches-top-pager-left {
    display: inline-block;
    vertical-align: middle;
}

.enrollment-batches-top-pager-right {
    display: inline-block;
    vertical-align: middle;
}

.enrollment-batches-top-pager-info {
    margin-right: 10px;
    vertical-align: middle;
}

.enrollment-batches-top-pager-nav {
    display: inline-block;
    vertical-align: middle;
}

.enrollment-batches-top-pager-nav .btn {
    margin-left: 2px;
}

.enrollment-batches-pagesize-label {
    margin-right: 6px;
    vertical-align: middle;
}

.enrollment-batches-top-pagesize-select {
    width: auto;
    display: inline-block;
    vertical-align: middle;
    min-width: 60px;
}

/* ============================================================
   Review and Submit (enrollment batch) grid
   ============================================================ */

/* Column header bold + black with wrapping (match Manage Enrollments / Batches grids) */
#ReviewAndSubmitGrid .dx-header-row .dx-datagrid-review-submit-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

.dx-datagrid-review-submit-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

/* Wrap column content */
#ReviewAndSubmitGrid .dx-datagrid-rowsview .dx-row > td {
    white-space: normal;
    overflow-wrap: break-word;
}

#ReviewAndSubmitGrid tr.dx-freespace-row {
    display: none !important;
}

/* Top pager (match Enrollment Batches / Manage Enrollments) */
.review-submit-top-pager {
    margin-bottom: 10px;
    min-height: 36px;
}

.review-submit-top-pager-left {
    display: inline-block;
    vertical-align: middle;
}

.review-submit-top-pager-right {
    display: inline-block;
    vertical-align: middle;
}

.review-submit-top-pager-info {
    margin-right: 10px;
    vertical-align: middle;
}

.review-submit-top-pager-nav {
    display: inline-block;
    vertical-align: middle;
}

.review-submit-top-pager-nav .btn {
    margin-left: 2px;
}

.review-submit-pagesize-label {
    margin-right: 6px;
    vertical-align: middle;
}

.review-submit-top-pagesize-select {
    width: auto;
    display: inline-block;
    vertical-align: middle;
    min-width: 60px;
}

/*
 * Review and Submit lives inside a .form-compact form (font-size: 0.8em). Other enrollment
 * grids are not, so their paging labels match default body size. Scale the custom top pager
 * by 1/0.8. Do not scale .dx-datagrid-pager — DevExtreme theme sizing plus that multiplier
 * reads larger than the same grids’ bottom pagers elsewhere.
 */
.form-compact .review-submit-top-pager {
    font-size: 1.25em;
}

/* Pending batch modal - moved from inline styles in _PendingBatchDialog.cshtml */
.pending-batch-modal-dialog {
    width: 70%;
}

.pending-batch-modal-body {
    height: 600px;
    overflow-y: scroll;
}

/* Bootbox warning icon - moved from inline style in eps.enrollments.js */
.bootbox-warning-icon {
    color: red;
}

/* Manage Webhooks top pager */
.manage-webhooks-top-pager {
    margin-bottom: 10px;
    min-height: 36px;
}
.manage-webhooks-top-pager .manage-webhooks-top-pager-left {
    display: inline-block;
}
.manage-webhooks-top-pager .manage-webhooks-top-pager-right {
    display: inline-block;
}
.manage-webhooks-top-pager .manage-webhooks-pagesize-label {
    margin-right: 6px;
    vertical-align: middle;
}
.manage-webhooks-top-pager .inline-block {
    display: inline-block;
    vertical-align: middle;
}
.manage-webhooks-top-pager .manage-webhooks-top-pager-info {
    margin-right: 10px;
    vertical-align: middle;
}
.manage-webhooks-top-pager-nav {
    vertical-align: middle;
}
.manage-webhooks-top-pager-nav .btn {
    margin-left: 2px;
}
.manage-webhooks-top-pagesize-select {
    width: auto;
    display: inline-block;
}

/* Webhooks grid — column header bold + black with wrapping (match Claims / Enrollments pattern) */
#WebhooksGrid .dx-header-row .dx-datagrid-webhooks-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

.dx-datagrid-webhooks-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

/* Webhooks grid — link styling (no text-decoration, matching claim-id-link / enrollment-id-link) */
.dx-datagrid .dx-link.webhook-id-link {
    text-decoration: none;
}

.dx-datagrid .dx-link.webhook-id-link:hover,
.dx-datagrid .dx-link.webhook-id-link:focus {
    text-decoration: none;
}

/*
 * DevExtreme pads the last page (when page count > 1 and rows < page size) with .dx-freespace-row
 * so the last page matches the height of a full page. Hide the spacer (match Claims / Enrollments).
 */
#WebhooksGrid tr.dx-freespace-row {
    display: none !important;
}

/* Webhooks form - moved from inline styles */
.webhook-form-container {
    max-width: 450px;
}
.webhook-form-container-wide {
    max-width: 500px;
}
.webhook-url-input {
    max-width: 100%;
    width: 700px;
}
.webhook-panel-overflow {
    overflow-x: hidden;
}
.webhook-spacer {
    margin-bottom: 10px;
}

.webhook-warning-color {
    color: red;
}

/* Statements DevExtreme grids — hide freespace row (parity with legacy DevExpress) */
#StatementFilesGrid tr.dx-freespace-row,
#ViewStatementsGrid tr.dx-freespace-row {
    display: none !important;
}

/* Statements DevExtreme grids — action buttons (legacy DevExpress Material + Bootstrap parity) */
#StatementFilesGrid .statement-grid-action-btn.btn.btn-primary,
#ViewStatementsGrid .statement-grid-action-btn.btn.btn-primary {
    font-family: "Roboto Medium", Roboto, "Helvetica Neue", Helvetica, "Droid Sans", Tahoma, Geneva, sans-serif;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0.12px;
    min-height: 32px;
    min-width: 95px;
    padding: 1px 5px;
    text-transform: uppercase;
    white-space: nowrap;
    border-radius: 3px;
    color: #fff;
    background-color: rgb(66, 139, 202);
    border-color: rgb(53, 126, 189);
    box-shadow: rgba(0, 0, 0, 0.2) 0 5px 6px 0;
    transition: box-shadow 0.3s ease-out, background-color 0.3s ease-out;
}

#StatementFilesGrid div.dx-datagrid-text-content,
#ViewStatementsGrid div.dx-datagrid-text-content {
    font-weight: 600;
    text-align: left;
    color: black;
}

#StatementFilesGrid a.statement-grid-action-btn.btn.btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

#StatementFilesGrid .statement-grid-action-btn.btn.btn-primary:hover,
#StatementFilesGrid .statement-grid-action-btn.btn.btn-primary:focus,
#ViewStatementsGrid .statement-grid-action-btn.btn.btn-primary:hover,
#ViewStatementsGrid .statement-grid-action-btn.btn.btn-primary:focus {
    color: #fff;
    background-color: rgb(40, 94, 142);
    border-color: rgb(33, 78, 118);
    box-shadow: rgba(0, 0, 0, 0.25) 0 6px 8px 0;
}

#StatementFilesGrid .statement-grid-action-btn.btn.btn-primary:active,
#ViewStatementsGrid .statement-grid-action-btn.btn.btn-primary:active {
    color: #fff;
    background-color: rgb(33, 78, 118);
    border-color: rgb(26, 61, 93);
    box-shadow: rgba(0, 0, 0, 0.2) 0 3px 4px 0;
}

/* Statement files grid row backgrounds (legacy HtmlRowPrepared colors) */
.statement-file-row-failed-empty {
    background-color: #F08080 !important;
}

.statement-file-row-pending {
    background-color: #ADD8E6 !important;
}

.statement-file-row-worked {
    background-color: #FFFFE0 !important;
}

.statement-file-row-processing {
    background-color: #E6E6FA !important;
}

.statement-file-row-default {
    background-color: transparent !important;
}

/* View Statements grid — deleted flag row */
.statement-row-deleted {
    background-color: #F08080 !important;
    text-decoration: line-through !important;
}

.statement-row-default {
    background-color: transparent !important;
}

/* Statements Index — upload toolbar (strict CSP: no inline styles) */
.statements-upload-toolbar {
    margin-bottom: 10px;
}

.statements-upload-btn {
    min-width: 225px !important;
    margin-bottom: 15px !important;
}

.statements-files-hint {
    color: royalblue;
    font-weight: bold;
}

#StatementFilesGrid {
    width: 100%;
}

/* Bootbox dialogs from eps.statements.js (no inline styles in HTML strings) */
.bootbox-title-neutral {
    color: black;
}

.bootbox-title-error {
    color: red;
}

.bootbox-body-text {
    color: black;
}


@media print {
    #StatementFilesGrid .noprint,
    #ViewStatementsGrid .noprint {
        display: none !important;
    }

    /* Entire action column (header + cells), not only inner controls */
    #StatementFilesGrid .statement-grid-action-column,
    #ViewStatementsGrid .statement-grid-action-column {
        display: none !important;
    }
    /* Target the grid container and force it to show everything */
    #ViewStatementsGrid .dx-datagrid-rowsview,
    #ViewStatementsGrid .dx-datagrid-container {
        overflow: visible !important;
        display: block !important;
        height: auto !important;
    }

    /* Hide Webkit scrollbars (Chrome, Safari, Edge) */
    #ViewStatementsGrid .dx-datagrid-rowsview::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        scrollbar-width: none !important;
    }
    .viewStmntsClass::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        scrollbar-width: none !important;
    }
    #ViewStatementsGrid .dx-scrollable-container::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        scrollbar-width: none !important;
    }
    /* Hide Firefox scrollbars */
    #ViewStatementsGrid .dx-datagrid-rowsview {
        scrollbar-width: none !important;
    }

    /* Hide the pager from the printout */
    #ViewStatementsGrid .dx-datagrid-pager {
        display: none !important;
    }
}

/* Release Queued Claims — DevExtreme progress bar layout (CSP: was DevExpress / inline <style>) */
.release-claims-progress-block {
    margin-left: auto;
    margin-right: auto;
    max-width: 400px;
}

.release-claims-centered {
    margin-left: auto;
    margin-right: auto;
}

/* About page (CSP: was inline <style>) */
.about-page {
    padding: 20px 0;
    max-width: 730px;
    margin: 0 auto;
}

.about-page .jumbotron {
    text-align: center;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.about-page .plans {
    display: -webkit-flex;
    display: flex;
}

.about-page .plans > div {
    background-color: lightgray;
    margin: 5px;
    padding: 10px;
    border-radius: 5px;
    width: 33%;
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    align-items: flex-start;
}

.about-page .plans > div .stretch {
    width: 100%;
    margin-bottom: 16px;
    margin-bottom: 1rem;
}

.about-page .plans > div a {
    margin-top: auto;
}

.about-page .marketing {
    margin-bottom: 96px;
    margin-bottom: 6rem;
}

.about-page .well form .inputs {
    display: -webkit-flex;
    display: flex;
}

.about-page .well form .inputs #email {
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
}

.about-page .well form .inputs .btn {
    width: 250px;
    width: 25rem;
    margin-left: 16px;
    margin-left: 1rem;
}

.about-page .footer {
    border-top: 1px solid #eee;
    padding-top: 32px;
    padding-top: 2rem;
    display: -webkit-flex;
    display: flex;
}

.about-page .footer p {
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
}

.about-page .footer a {
    padding-left: 16px;
    padding-left: 1rem;
}

/* Queue Enrollments — progress bar layout (was inline/DevExpress; CSP-friendly) */
.queue-enrollments-progress-block {
    margin-left: auto;
    margin-right: auto;
    max-width: 400px;
}

.queue-enrollments-progress {
    width: 100%;
    min-width: 150px;
    height: 0.625em;
    vertical-align: middle;
    /* Firefox: unfilled (incomplete) track */
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 9999px;
    overflow: hidden;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* Chromium / Safari: track = incomplete portion (white) */
.queue-enrollments-progress::-webkit-progress-bar {
    background-color: #fff;
    border-radius: 9999px;
}

/* Chromium / Safari: filled portion */
.queue-enrollments-progress::-webkit-progress-value {
    background-color: #337ab7;
    border-radius: 9999px;
}

/* Firefox: filled portion */
.queue-enrollments-progress::-moz-progress-bar {
    background-color: #337ab7;
    border-radius: 9999px;
}

/* Enrollments — bordered info notice (was inline style; strict CSP). Shared by Responsible Party and Provider IDs. */
.enrollment-responsible-party-notice,
.enrollment-provider-ids-notice {
    margin-left: 10px;
    border: 1px solid #000;
}


/* Remittance FileSearch — CSP: no inline styles (was FileSearch.cshtml / partials) */
.remittance-page-title-wrapper {
    position: relative;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.remittance-hide {
    display: none;
}

.remittance-pull-right-block {
    display: block;
}

.remittance-markas-icon-new {
    margin-right: .51em;
}

.remittance-markas-icon-sm {
    margin-right: .25em;
}

.remittance-modal-dialog {
    overflow-y: initial !important;
}

.remittance-modal-body {
    max-height: 80vh;
    overflow-y: auto;
}

/* Remittance grid action links (dx-link underline override, same pattern as claims) */
.dx-datagrid .dx-link.remittance-pc-print-link,
.dx-datagrid .dx-link.remittance-spr-print-link,
.dx-datagrid .dx-link.remittance-download-link,
.dx-datagrid .dx-link.remittance-eft-spr-link,
.dx-datagrid .dx-link.remittance-ticket-link {
    text-decoration: none;
}

.dx-datagrid .dx-link.remittance-pc-print-link {
    color: darkred;
}

.dx-datagrid .dx-link.remittance-spr-print-link {
    color: green;
}

.dx-datagrid .dx-link.remittance-ticket-link {
    padding: 5px;
}

.dx-datagrid .dx-link.remittance-pc-print-link:hover,
.dx-datagrid .dx-link.remittance-pc-print-link:focus,
.dx-datagrid .dx-link.remittance-spr-print-link:hover,
.dx-datagrid .dx-link.remittance-spr-print-link:focus,
.dx-datagrid .dx-link.remittance-download-link:hover,
.dx-datagrid .dx-link.remittance-download-link:focus,
.dx-datagrid .dx-link.remittance-eft-spr-link:hover,
.dx-datagrid .dx-link.remittance-eft-spr-link:focus,
.dx-datagrid .dx-link.remittance-ticket-link:hover,
.dx-datagrid .dx-link.remittance-ticket-link:focus {
    text-decoration: none;
}

.remittance-detail-content-wrapper {
    display: block;
    width: 100%;
}

.remittance-detail-eft-host {
    margin-top: 8px;
}

.remittance-detail-meta {
    margin-bottom: 8px;
}

#RemittanceGrid .dx-header-row {
    font-weight: bold;
    color: black;
}
/* DevExtreme pads the last page (when page count > 1 and rows < page size) with .dx-freespace-row
* so the last page matches the height of a full page. Hide the spacer (match Claims / Manage Enrollments).
*/
#RemittanceGrid tr.dx-row.dx-freespace-row {
    display: none !important;
}
[id^="remittanceEftGrid"] tr.dx-row.dx-freespace-row {
    display: none !important;
}


/* CSP: class-based hover highlight for PC Print / SPR links when hovering #sortOption */
.remittance-sortopt-hover {
    background-color: cornsilk;
}

.remittance-top-pager-info {
    margin-top: 4px;
    margin-right: 10px;
    margin-bottom: 4px;
    vertical-align: middle;
}

.inline-block {
    display:inline-block;
}

/* Allow the grid table to exceed the container width */
#RemittanceGrid .dx-datagrid-content {
    table-layout: fixed !important; /* Keep fixed for performance */
    width: auto !important; /* Let it be as wide as the sum of its columns */
    min-width: 100%; /* But still fill the screen if few columns exist */
}

/* Ensure the headers and rows stay aligned during horizontal scroll */
#RemittanceGrid .dx-datagrid {
    overflow-x: auto !important;
    overflow-wrap: break-word;
}

/* DownloadFiles page title wrapper (replaced inline style) */
.download-files-page-title-wrapper {
    position: relative;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

/* Download Files top pager (2.1, 2.3) */
.download-files-top-pager {
    margin-bottom: 10px;
    min-height: 36px;
}
.download-files-top-pager .download-files-top-pager-left {
    display: inline-block;
}
.download-files-top-pager .download-files-top-pager-right {
    display: inline-block;
}
.download-files-top-pager .download-files-pagesize-label {
    margin-right: 6px;
    vertical-align: middle;
}
.download-files-top-pager .inline-block {
    display: inline-block;
    vertical-align: middle;
}
.download-files-top-pager .download-files-top-pager-info {
    margin-right: 10px;
    vertical-align: middle;
}
.download-files-top-pager-nav {
    vertical-align: middle;
}
.download-files-top-pager-nav .btn {
    margin-left: 2px;
}
.download-files-top-pagesize-select {
    width: auto;
    display: inline-block;
}

/* Download Files grid download icon styling */
.download-files-download-icon {
    color: #428bca;
    cursor: pointer;
    font-size: 1.25em;
}
.download-files-download-icon:hover {
    color: #2e5ba6;
}

#downloadSelected {
    margin-bottom: 4px;
}

#DownloadFilesGrid tr.dx-freespace-row {
    display: none !important;
}

#DownloadFilesGrid .dx-header-row {
    font-weight: bold;
    color: black;
}


/* ==========================================================================
   Eligibility Results — sidepanel & grid styles (migrated from inline)
   ========================================================================== */

.eligibility-sidepanel {
    height: 125px;
    width: 0;
    position: fixed;
    z-index: 1;
    top: 0;
    left: 0;
    background-color: #fff !important;
    overflow-x: hidden;
    transition: 1.5s;
}

.eligibility-sidepanel a {
    padding: 8px 8px 8px 32px;
    text-decoration: none;
    font-size: 12px;
    color: #818181;
    display: block;
    transition: 0.3s;
}

.eligibility-sidepanel a:hover {
    color: #f1f1f1;
}

.eligibility-sidepanel .closebtn {
    font-size: 10px;
    cursor: pointer;
    background-color: #111;
    color: white;
    padding: 5px 10px;
    border: none;
}

/* Eligibility grid action icon styles */
.eligibility-report-icon {
    color: darkred;
}

.eligibility-271-icon {
    color: darkblue;
}

.eligibility-ticket-icon {
    color: #428bca;
    padding: 5px;
}

/* Eligibility ResultsForClaim form constraint styles */
.eligibility-claim-form .form-control {
    max-width: 600px;
}

.eligibility-claim-form .btn {
    min-width: 100px;
}

/* Eligibility grid top pager */
.eligibility-top-pager {
    margin-bottom: 10px;
}

.eligibility-top-pager-left {
    display: inline-block;
}

.eligibility-top-pager-info {
    margin-right: 10px;
    font-size: 13px;
}

.eligibility-top-pager-nav {
    display: inline-block;
}

.eligibility-top-pagesize-select {
    width: auto;
    display: inline-block;
}

.eligibility-pagesize-label {
    font-size: 13px;
    margin-right: 5px;
}

#EligibilityResultsMainGrid tr.dx-freespace-row {
    display: none !important;
}

#EligibilityResultsClaimGrid tr.dx-freespace-row {
    display: none !important;
}

#EligibilityResultsMainGrid .dx-header-row .elig-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

#EligibilityResultsClaimGrid .dx-header-row .elig-header-text {
    font-weight: bold;
    color: black;
    white-space: normal;
    overflow-wrap: break-word;
}

/* Eligibility Request page */
.eligibility-request-panel {
    max-width: 1000px;
    overflow: visible;
}

.eligibility-payer-hints-control {
    height: 5px;
}

.eligibility-payer-hints-btn-hidden {
    visibility: hidden;
}

.eligibility-service-types-group {
    min-height: 220px;
}

/* Eligibility DisplayPayerHints page */
.eligibility-hints-container {
    overflow: hidden;
}

.eligibility-hints-title {
    color: white;
}

/* Eligibility Processing page */
.eligibility-processing-logo {
    max-width: 400px;
}

.eligibility-processing-portlet {
    max-width: 600px;
}

.text-black {
    color: black;
}

/* ============================================================
   EPS-1720: CSP-compliant classes replacing inline styles
   ============================================================ */

/* Claim editor sticky bottom action bar */
.claim-editor-bottom-well {
    position: sticky;
    bottom: 0;
    background-color: white;
    z-index: 9999;
}

/* Modal z-index elevated above sticky bottom wells */
.modal-zindex-above-well {
    z-index: 10000;
}

/* Modal body scrollable (shared pattern for modal bodies needing scroll) */
.modal-body-scrollable {
    max-height: 80vh;
    overflow-y: auto;
}

/* Required field asterisk indicator */
.required-asterisk {
    color: red;
    font-weight: bold;
}

/* Warn-before-save toggle icon alignment */
.warn-toggle-icon {
    padding-top: 1px;
}

/* Calendar input-group-addon with tight horizontal padding */
.input-group-addon-tight {
    padding-left: 3px;
    padding-right: 3px;
}

/* Claim editor condition/anesthesia code buttons */
.btn-fixed-120 {
    width: 120px;
}

/* HCFA1500 claim line toggle button */
.btn-claim-line-toggle {
    width: 20px;
    height: 60px;
    padding: 1px;
}

/* Row with bottom margin spacing for required legend */
.row-margin-bottom-50 {
    margin-bottom: 50px;
}

/* Claim editor read-only warning text */
.text-red-bold {
    color: red;
    font-weight: bold;
}

/* DcnViewRows hidden by default */
#DcnViewRows {
    display: none;
}

/* Processing pages logo */
.processing-logo {
    max-width: 400px;
}

/* Processing pages portlet */
.processing-portlet {
    max-width: 600px;
}

/* Scrub response body padding */
.scrub-response-body {
    padding: 10px;
    margin: 10px;
}

/* Scrub response header margin */
.scrub-response-header {
    margin-left: 5px;
}

/* Claim letter textarea no-resize */
.textarea-no-resize {
    resize: none;
}

/* Claim letter pre-wrap text */
.text-pre-wrap {
    white-space: pre-wrap;
}

/* Table cell full width (claim letter tables) */
.td-full-width {
    width: 100%;
}

/* Dialog modals with fixed heights */
.modal-body-height-600 {
    height: 600px;
    overflow-y: scroll;
}

.modal-body-height-400 {
    height: 400px;
    overflow-y: scroll;
}

/* Modal dialog 70% width */
.modal-dialog-70 {
    width: 70%;
}

/* Claim file item muted text */
.claim-file-item-muted {
    color: #aaa;
}

/* Dashboard no-searches hr separator */
.dashboard-separator-hr {
    display: block;
    margin-left: 0.5em;
    margin-right: 0.5em;
    overflow: hidden;
    border-style: inset;
    border-width: 1px;
}

/* Atypical providers button hidden by default */
.btn-atypical-hidden {
    display: none;
}

/* Atypical providers reset/submit layout */
.atypical-reset-col {
    margin-left: 400px;
}

.atypical-submit-col {
    margin-left: -50px;
}

/* Enrollment file-type help text */
.enrollment-file-type-hint {
    margin-left: 150px;
}

/* Session conflict bold text (uses .text-danger for color) */
.text-bold {
    font-weight: bold;
}

/* Popup window layout (full-page layouts: _PopupWindow, _Logoff) */
html.popup-html {
    height: 100%;
    overflow: hidden;
}

html.popup-html body col-md-12 container-fluid {
    padding: 10px;
}

html.popup-html body {
    height: 100%;
}

html.popup-html body div.panel {
    margin: 10px 10px 10px 10px;
}

.popup-body-scroll {
    overflow: scroll;
    padding: 20px;
}

.popup-body-scroll div.page-title {
    margin: 10px;
}

.popup-body-scroll div.panel {
    margin: 10px;
}

.popup-content-wrapper {
    width: 98%;
    overflow: hidden;
}

.popup-title-text {
    color: white;
}

/* E-signature canvas margin */
.e-signature-canvas-wrapper {
    margin-left: 2.5em;
}

/* E-signature canvas border */
.e-signature-canvas {
    border: 1px solid #000000;
}

/* Bootbox dialog title/message classes (used in JS HTML strings) */
.bootbox-title-warning {
    color: red;
}

.bootbox-title-info {
    color: black;
}

.bootbox-message-text {
    color: black;
}

/* Search panel open/closed states (shared across claims, claimFiles, downloads, eligibility, enrollments, remittance, statements, tickets, webhooks) */
#Searchpanel.search-panel-open {
    width: 20%;
}

#Searchpanel.search-panel-closed {
    width: 0;
}

/* Claim editor list filter display states (eps.ClaimEditor.js) */
.list-item-hidden {
    display: none;
}

/* Claim detail row status colors (eps.claimDetails.js) */
.claim-detail-row-rejected {
    background-color: red;
    color: white;
}

.claim-detail-row-hold {
    background-color: yellow;
}

/* Page content hidden (session check) */
.page-content-hidden {
    opacity: 0;
}

/* DDE launch modal styles */
.dde-launch-container {
    text-align: center;
    padding: 20px;
}

.dde-countdown-display {
    font-size: 18px;
    font-weight: bold;
    color: #007bff;
    margin: 15px 0;
}

.dde-launch-btn {
    display: inline-block;
    padding: 10px 20px;
    background-color: #ccc;
    color: #666;
    text-decoration: none;
    border-radius: 4px;
    font-weight: bold;
    pointer-events: none;
    cursor: not-allowed;
}

.dde-launch-btn-active {
    background-color: #007bff;
    color: #fff;
    pointer-events: auto;
    cursor: pointer;
}

.dde-countdown-ready {
    color: #28a745;
}

.dde-copy-url-text {
    margin-top: 15px;
    font-size: 12px;
    color: #666;
}

.dde-copy-url-link {
    color: #007bff;
    text-decoration: underline;
    cursor: pointer;
}

/* Eligibility payer hints toggle */
.payer-hints-hidden {
    visibility: hidden;
}

.payer-hints-visible {
    visibility: visible;
}

/* Enrollment sign modal dimensions */
.e-signature-modal-dialog {
    width: 300px;
    height: auto;
    max-height: 100%;
}

/* HCFA1500/UB04 rendering provider lookup modal: dynamic z-index handled via class */
.modal-zindex-above-parent {
    z-index: 10010;
}

/* Claim lines view row height */
.claim-line-row-height {
    height: 30px;
}

/* Claim lines dropdown button height */
.btn-claim-line-dropdown {
    height: 60px;
}

/* Vertical align middle for table cells */
.vertical-align-middle {
    vertical-align: middle;
}

/* Data-init-action popup close (hidden utility element) */
.popup-close-trigger {
    display: none;
}

/* Statements print layout min-width helper (set dynamically via JS) */
.statements-grid-print-width {
    min-width: var(--statements-print-width);
}

/* Navigation menu state (eps.common.js applyCollapsedMenu/applyExpandedMenu) */
#customNav.nav-menu-visible {
    visibility: visible;
}

#customNav.nav-menu-hidden {
    visibility: hidden;
}

/* DDE copy URL link */
.dde-copy-url-success {
    color: #28a745 !important;
}

