/* ============================================================
   PMB common UI — shared design stylesheet
   Visual layer only. Every rule is scoped under html.pmb-ui, which
   /js/pmb-common.js adds, so it can be reused on sibling pages
   by linking both files.

   Hooks used (all added by pmb-common.js, no markup changes needed):
     .pmb-masthead .pmb-lastchecked          page header
     .pmb-filters  .pmb-f-*                  filter card + its cells
   Existing page ids/classes and attribute selectors are used for
   server-rendered fragments that carry inline styles.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@500&display=swap');

html.pmb-ui {
    --pmb-bg: #F4F6F8;
    --pmb-surface: #FFFFFF;
    --pmb-surface-alt: #F8FAFB;
    --pmb-border: #E1E6EC;
    --pmb-divider: #EEF1F4;
    --pmb-input-border: #CDD5DF;
    --pmb-ink: #1A2433;
    --pmb-ink-2: #3A4554;
    --pmb-muted: #5B6675;
    --pmb-faint: #8792A2;
    --pmb-blue: #1F6FB2;
    --pmb-blue-dark: #174F80;
    --pmb-blue-head: #4384C2;
    --pmb-blue-tint: #E8F1FA;
    --pmb-blue-row: #F5F9FD;
    --pmb-green: #2F7D3E;
    --pmb-green-dark: #266833;
    --pmb-danger: #C0392B;
    --pmb-danger-bg: #FCEBEA;
    --pmb-warn-bg: #FDF6E3;
    --pmb-warn-border: #F1DFB4;
    --pmb-warn-ink: #8A4500;
    --pmb-radius: 8px;
    --pmb-radius-lg: 12px;
    --pmb-font: 'IBM Plex Sans', 'Segoe UI', system-ui, sans-serif;
    --pmb-mono: 'IBM Plex Mono', ui-monospace, monospace;
}

/* ---------- Page base ---------- */
html.pmb-ui .container-fluid {
    background: var(--pmb-bg);
    font-family: var(--pmb-font);
    color: var(--pmb-ink);
    letter-spacing: 0;
    padding: 24px 24px 48px;
}

html.pmb-ui .container-fluid label,
html.pmb-ui .container-fluid input,
html.pmb-ui .container-fluid select,
html.pmb-ui .container-fluid button,
html.pmb-ui .modal,
html.pmb-ui .menu {
    font-family: var(--pmb-font);
    letter-spacing: 0;
}

/* ---------- Masthead ---------- */
html.pmb-ui .pmb-masthead {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
    padding: 0 !important;
    margin: 0 0 24px;
    background: transparent !important;
    color: var(--pmb-ink) !important;
}

html.pmb-ui .pmb-masthead p {
    padding: 0 !important;
    margin: 0 !important;
}

html.pmb-ui .pmb-masthead [id$="lblGuidelInes"] {
    display: block;
    padding: 0 !important;
    margin: 0;
    font-size: 30px !important;
    line-height: 1.15;
    font-weight: 600;
    color: var(--pmb-blue-dark);
}

html.pmb-ui .pmb-masthead [id$="lblGuidelInes"]::before {
    content: "Practice Management";
    display: block;
    margin-bottom: 6px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--pmb-green);
}

html.pmb-ui .pmb-masthead [id$="lblGuidelInes"]::after {
    content: "Track prior authorizations, flag visits at risk of denial, and request renewals before they expire.";
    display: block;
    margin-top: 6px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    color: var(--pmb-muted);
}

html.pmb-ui .pmb-lastchecked {
    float: none !important;
    margin: 0 !important;
    color: var(--pmb-ink) !important;
    font-size: 13px !important;
    font-weight: 600;
    background: var(--pmb-surface);
    border: 1px solid var(--pmb-border);
    border-radius: 10px;
    padding: 10px 14px 10px 38px;
    position: relative;
    white-space: nowrap;
}

html.pmb-ui .pmb-lastchecked::before {
    content: "\f017"; /* fa-clock-o */
    font-family: FontAwesome;
    font-weight: 400;
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 16px;
    color: var(--pmb-green);
}

/* ---------- Filter card ---------- */
html.pmb-ui .pmb-filters-wrap {
    padding-top: 0 !important;
    margin-left: 0 !important;
    left: 0 !important;
}

html.pmb-ui .pmb-filters {
    margin: 0 0 24px !important;
    background: var(--pmb-surface);
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius-lg);
    padding: 16px 18px;
}

html.pmb-ui .pmb-filters > .col-md-12 {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 16px;
    padding: 0 !important;
    width: 100%;
}

html.pmb-ui .pmb-filters > .col-md-12::before,
html.pmb-ui .pmb-filters > .col-md-12::after { display: none; }

html.pmb-ui .pmb-filters > .col-md-12 > div {
    float: none !important;
    position: static !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

html.pmb-ui .pmb-filters .font12,
html.pmb-ui .pmb-filters label {
    font-size: 14px !important;
    font-weight: 400;
    color: var(--pmb-ink);
    cursor: pointer;
}

html.pmb-ui .pmb-filters input[type="checkbox"],
html.pmb-ui .chkCheckbox,
html.pmb-ui .CPTcheckboxAll {
    accent-color: var(--pmb-green);
}

/* cell order (design): Patient · Payer · Date of service · actions, then option checkboxes */
html.pmb-ui .pmb-f-patient  { order: 1; display: flex; flex-direction: column; gap: 6px; flex: 2 1 190px; min-width: 180px; }
html.pmb-ui .pmb-f-payer    { order: 2; flex: 2 1 340px; max-width: 460px; display: flex; flex-direction: row; flex-wrap: wrap; align-items: flex-end; gap: 6px 10px; }
html.pmb-ui .pmb-f-payer > .pmb-field-label { flex: 0 0 100%; }
html.pmb-ui .pmb-f-dos     { order: 3; flex: 1 1 170px; max-width: 220px; display: flex; flex-direction: column; gap: 6px; }
html.pmb-ui .pmb-f-actions  { order: 4; flex: 3 1 auto; align-self: flex-end; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
html.pmb-ui .pmb-f-checks   { order: 5; flex: 1 1 100%; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; padding-top: 12px !important; border-top: 1px solid var(--pmb-divider); }
html.pmb-ui .pmb-f-gear     { display: none !important; }

html.pmb-ui .pmb-filters .pmb-field-label,
html.pmb-ui .pmb-field-label { font-size: 12px !important; font-weight: 600 !important; color: var(--pmb-ink-2) !important; margin: 0; cursor: default; }
html.pmb-ui .pmb-f-payer #PayerFilter { align-self: flex-start; }
html.pmb-ui .pmb-f-payer br { display: none; }

html.pmb-ui .pmb-f-dos > span { display: flex; align-items: center; gap: 8px; }
html.pmb-ui .pmb-f-checks br,
html.pmb-ui .pmb-f-expiring br { display: none; }
html.pmb-ui .pmb-f-checks > input[type="checkbox"] { width: 16px; height: 16px; margin: 0 -14px 0 0; flex: none; }
html.pmb-ui .pmb-f-checks > label { margin: 0 !important; padding-left: 0; display: inline-flex; align-items: center; }

/* inputs & selects */
html.pmb-ui #txtPatientName,
html.pmb-ui #MainContent_ddlDisplayDOS {
    box-sizing: border-box;
    width: 100% !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid var(--pmb-input-border) !important;
    border-radius: var(--pmb-radius) !important;
    font-size: 14px !important;
    color: var(--pmb-ink);
    background-color: var(--pmb-surface);
    box-shadow: none;
}

html.pmb-ui #txtPatientName:focus,
html.pmb-ui #MainContent_ddlDisplayDOS:focus,
html.pmb-ui #txtRemaining:focus,
html.pmb-ui #txtExpiring:focus {
    outline: 0;
    border-color: var(--pmb-blue) !important;
    box-shadow: 0 0 0 3px rgba(31, 111, 178, .15);
}

html.pmb-ui .pmb-f-dos .fa-question-circle { color: var(--pmb-green) !important; font-size: 16px !important; cursor: help; }

/* multi-select (jquery.multiselect "ms-*") */
html.pmb-ui .ms-choice {
    height: 40px !important;
    line-height: 38px;
    border: 1px solid var(--pmb-input-border) !important;
    border-radius: var(--pmb-radius) !important;
    background: var(--pmb-surface) !important;
    color: var(--pmb-ink);
    font-size: 14px !important;
}
html.pmb-ui .ms-choice > span { top: 0 !important; padding-left: 10px; }
html.pmb-ui .ms-choice > span.placeholder { color: var(--pmb-faint) !important; }
html.pmb-ui .ms-drop {
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius);
    box-shadow: 0 12px 32px rgba(26, 36, 51, .16);
}
html.pmb-ui .pmb-f-payer .ms-parent { width: 190px !important; margin: 0 !important; display: block; flex: 1 1 160px; }

/* expiring / remaining box */
html.pmb-ui .pmb-filters > .col-md-12 > .pmb-f-expiring {
    background: var(--pmb-warn-bg) !important;
    border: 1px solid var(--pmb-warn-border) !important;
    border-radius: var(--pmb-radius) !important;
    padding: 12px 14px !important;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
html.pmb-ui .pmb-f-expiring label { color: var(--pmb-ink) !important; }
html.pmb-ui .pmb-f-expiring #txtRemaining,
html.pmb-ui .pmb-f-expiring #txtExpiring {
    width: 48px !important;
    height: 30px;
    padding: 0 4px;
    border: 1px solid var(--pmb-input-border) !important;
    border-radius: 6px !important;
    background: #fff;
    font-size: 13px;
    font-weight: 600;
}
html.pmb-ui .pmb-f-expiring #RemaingFilterType {
    width: auto !important;
    height: 28px;
    margin: 0 0 0 24px !important;
    padding: 0 8px;
    border: 1px solid var(--pmb-input-border) !important;
    border-radius: 6px;
    background: #fff;
    color: var(--pmb-warn-ink);
    font-size: 13px;
    font-weight: 600;
}

/* ---------- Buttons ---------- */
html.pmb-ui .btn,
html.pmb-ui .btn-flat {
    border-radius: var(--pmb-radius);
    font-weight: 600;
    box-shadow: none;
    transition: background-color .15s, border-color .15s, color .15s;
}

html.pmb-ui .btn-primary {
    background: var(--pmb-blue);
    border-color: var(--pmb-blue);
    color: #fff;
}
html.pmb-ui .btn-primary:hover,
html.pmb-ui .btn-primary:focus { background: var(--pmb-blue-dark); border-color: var(--pmb-blue-dark); }

html.pmb-ui .btn-warning {
    background: #FDF0E3;
    border-color: #E8C48F;
    color: var(--pmb-warn-ink);
}
html.pmb-ui .btn-warning:hover,
html.pmb-ui .btn-warning:focus { background: #FBE4CB; border-color: #DDAE6E; color: var(--pmb-warn-ink); }

html.pmb-ui .btn-default { background: #fff; border-color: var(--pmb-input-border); color: var(--pmb-ink); }

/* filter-row action buttons */
html.pmb-ui .pmb-f-actions .btn,
html.pmb-ui #PayerFilter {
    height: 40px;
    padding: 0 18px;
    margin: 0 !important;
    font-size: 14px !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

html.pmb-ui #btnsearch { background: var(--pmb-green); border-color: var(--pmb-green); color: #fff; }
html.pmb-ui #btnsearch:hover { background: var(--pmb-green-dark); border-color: var(--pmb-green-dark); }

html.pmb-ui #btnAdvanceSearchModal,
html.pmb-ui #PayerFilter {
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    color: var(--pmb-ink);
}
html.pmb-ui #btnAdvanceSearchModal:hover,
html.pmb-ui #PayerFilter:hover { background: var(--pmb-surface-alt); border-color: var(--pmb-faint); color: var(--pmb-ink); }

html.pmb-ui #btnClear {
    background: transparent;
    border-color: transparent;
    color: var(--pmb-muted);
    font-weight: 500;
}
html.pmb-ui #btnClear:hover { background: var(--pmb-divider); color: var(--pmb-ink); }

html.pmb-ui #btnLogs {
    margin-left: auto !important;
    background: #fff;
    border: 1px solid var(--pmb-blue);
    color: var(--pmb-blue);
}
html.pmb-ui #btnLogs:hover { background: var(--pmb-blue-tint); }

html.pmb-ui #PayerFilter { margin-bottom: 0 !important; }

html.pmb-ui .pmb-f-gear a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid var(--pmb-border);
    border-radius: 10px;
    background: #fff;
    color: var(--pmb-green);
    cursor: pointer;
}
html.pmb-ui .pmb-f-gear a:hover { background: var(--pmb-surface-alt); }

/* ---------- Table card ---------- */
html.pmb-ui #OuterContainer {
    margin: 0;
    background: var(--pmb-surface);
    border: 1px solid var(--pmb-border);
    border-top: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius-lg);
    box-shadow: none;
    overflow: hidden;
}
html.pmb-ui #OuterContainer > .box-body { padding: 0; }
html.pmb-ui #OuterContainer .table-responsive { border: 0; }

html.pmb-ui #tblAuthReport {
    width: 100%;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: collapse !important;
    font-size: 13px;
}

html.pmb-ui #tblAuthReport > thead > tr > th {
    background: var(--pmb-blue-head) !important;
    color: #fff !important;
    padding: 12px 16px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pmb-blue-head) !important;
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.3 !important;
    text-transform: uppercase;
    text-align: left !important;
    vertical-align: middle !important;
    cursor: pointer;
}
html.pmb-ui #tblAuthReport > thead > tr > th:first-child { cursor: default; padding-left: 20px !important; }
html.pmb-ui #tblAuthReport > thead > tr > th .fa-sort { margin-left: 6px; font-size: 11px; opacity: .7; }
html.pmb-ui #tblAuthReport > thead > tr > th:hover .fa-sort { opacity: 1; }

html.pmb-ui #tblAuthReport > tbody > tr > td {
    background: var(--pmb-surface) !important;
    color: var(--pmb-ink);
    padding: 14px 16px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pmb-divider) !important;
    font-size: 13px !important;
    line-height: 1.5;
    text-align: left !important;
    vertical-align: top !important;
}
html.pmb-ui #tblAuthReport > tbody > tr > td:first-child { padding-left: 20px !important; }
html.pmb-ui #tblAuthReport > tbody > tr.odd > td { background: var(--pmb-blue-row) !important; }
html.pmb-ui #tblAuthReport > tbody > tr:hover > td { background: #EEF5FB !important; color: var(--pmb-ink); }

/* patient cell (server sets an amber inline background) */
html.pmb-ui #tblAuthReport > tbody > tr > td[style*="F7BF57"] {
    background: inherit !important;
    font-weight: 600;
    color: var(--pmb-blue-dark);
}

html.pmb-ui #tblAuthReport td.td-font,
html.pmb-ui #tblAuthReport .td-font { font-size: 13px !important; color: var(--pmb-ink); }

/* expand / collapse toggle */
html.pmb-ui #tblAuthReport td.details-control { width: 58px; color: var(--pmb-blue); }
html.pmb-ui #tblAuthReport tr.shown td.details-control { color: var(--pmb-blue); }
html.pmb-ui #tblAuthReport td.details-control > i.fa {
    width: 26px;
    height: 26px;
    line-height: 24px;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    background: #fff;
    text-align: center;
    font-size: 14px;
}
html.pmb-ui #tblAuthReport td.details-control:hover > i.fa { background: var(--pmb-blue-tint); border-color: var(--pmb-blue); }

/* "No Upcoming Appt" chip (inline-styled by server) */
html.pmb-ui #tblAuthReport span[style*="fdd58b"] {
    display: inline-flex;
    padding: 3px 10px !important;
    border-radius: 6px !important;
    background: #FFF9F2 !important;
    border: 1px solid #F6E4CC;
    color: #9A5B1E;
    font-size: 12px;
    font-weight: 500;
    white-space: nowrap;
}

/* "Request New Auth" call-to-action (inline-styled by server) */
html.pmb-ui #tblAuthReport a[style*="background: green"],
html.pmb-ui .slider a[style*="background: green"] {
    display: inline-block;
    padding: 7px 14px !important;
    border-radius: var(--pmb-radius) !important;
    background: var(--pmb-green) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
}
html.pmb-ui #tblAuthReport a[style*="background: green"]:hover { background: var(--pmb-green-dark) !important; }

/* trash / delete glyphs next to statuses */
html.pmb-ui #tblAuthReport i.fa-trash { color: var(--pmb-danger); cursor: pointer; margin-left: 4px; }

/* edit-note pencil image in Client Note */
html.pmb-ui #tblAuthReport img[src*="edit.png"] { height: 14px !important; padding: 4px; border: 1px solid var(--pmb-border); border-radius: 6px; background: #fff; box-sizing: content-box; }

/* ---------- Expanded detail rows & nested tables ---------- */
html.pmb-ui #tblAuthReport > tbody > tr > td[colspan] { background: var(--pmb-surface-alt) !important; padding: 8px 20px 18px 58px !important; border-bottom: 1px solid var(--pmb-border) !important; }

html.pmb-ui #tblAuthReport td[colspan] table.table {
    margin: 8px 0 0 !important;
    width: 100% !important;
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius);
    border-collapse: separate !important;
    border-spacing: 0;
    overflow: hidden;
    background: #fff;
}

html.pmb-ui #tblAuthReport td[colspan] table.table th,
html.pmb-ui .table-thead-tr-primary2 th,
html.pmb-ui .table-thead-tr-primary3 th,
html.pmb-ui .table-thead-tr-primary4 th {
    background: var(--pmb-blue-tint) !important;
    color: var(--pmb-blue-dark) !important;
    font-size: 12px !important;
    font-weight: 600;
    letter-spacing: .04em;
    padding: 9px 12px !important;
    border: 0 !important;
    border-bottom: 1px solid #C9DCEF !important;
    line-height: 1.3 !important;
    text-transform: uppercase;
}

html.pmb-ui .table-thead-tr-primary th,
html.pmb-ui .table-thead-tr-primary5 th {
    background: var(--pmb-blue-head) !important;
    color: #fff !important;
}

html.pmb-ui #tblAuthReport td[colspan] table.table td,
html.pmb-ui #tblStatus td {
    background: #fff !important;
    padding: 9px 12px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pmb-divider) !important;
    font-size: 13px !important;
    text-align: left;
}
html.pmb-ui #tblAuthReport td[colspan] table.table tr:last-child td { border-bottom: 0 !important; }

/* dialog tables (payer configuration, logs, etc.) */
html.pmb-ui .modal .table-bordered { border: 1px solid var(--pmb-border); border-radius: var(--pmb-radius); }
html.pmb-ui .modal .table > thead > tr > th { font-size: 12px !important; font-weight: 600; vertical-align: middle; }
html.pmb-ui .modal .table-thead-tr-primary th { padding: 10px 12px !important; letter-spacing: .04em; }
html.pmb-ui .modal .table > tbody > tr > td { vertical-align: middle; border-color: var(--pmb-divider); }

/* ---------- Pagination ---------- */
html.pmb-ui #divPagging,
html.pmb-ui #divPagging2 {
    background: var(--pmb-surface-alt);
    padding: 14px 20px;
    border-top: 1px solid var(--pmb-border);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
html.pmb-ui #divPagging2 { border-top: 0; border-bottom: 1px solid var(--pmb-border); }
html.pmb-ui #divPagging:empty,
html.pmb-ui #divPagging2:empty { display: none; }

html.pmb-ui #divPagging .pull-left,
html.pmb-ui #divPagging2 .pull-left { margin: 0 !important; float: none !important; font-size: 13px; color: var(--pmb-muted); }

html.pmb-ui .pagination { margin: 0 !important; display: flex; gap: 6px; flex-wrap: wrap; float: none !important; }
html.pmb-ui .pagination > li { display: block; float: none; }
html.pmb-ui .pagination > li > a,
html.pmb-ui .pagination > li > span {
    float: none;
    margin: 0 !important;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--pmb-input-border) !important;
    border-radius: var(--pmb-radius) !important;
    background: #fff;
    color: var(--pmb-ink);
    font-size: 13px;
    line-height: 1;
    cursor: pointer;
}
html.pmb-ui .pagination > li > a:hover { background: var(--pmb-blue-tint); border-color: var(--pmb-blue) !important; color: var(--pmb-blue-dark); }
html.pmb-ui .pagination > li.active > a,
html.pmb-ui .pagination > li.active > a:hover,
html.pmb-ui .pagination > li.active > span {
    background: var(--pmb-blue);
    border-color: var(--pmb-blue) !important;
    color: #fff;
    font-weight: 600;
}
html.pmb-ui .pagination > li.disabled > a,
html.pmb-ui .pagination > li.disabled > span { color: var(--pmb-faint); background: #fff; cursor: default; }
html.pmb-ui .pageSize { height: 34px; border: 1px solid var(--pmb-input-border); border-radius: var(--pmb-radius); padding: 0 8px; }

/* ---------- Right-click context menu ---------- */
html.pmb-ui .menu {
    width: 220px !important;
    background: #fff;
    border: 1px solid var(--pmb-border);
    border-radius: 10px;
    box-shadow: 0 12px 32px rgba(26, 36, 51, .18);
    overflow: hidden;
    padding: 4px 0;
}
html.pmb-ui .menu ul li { padding: 9px 14px !important; font-size: 13px; }
html.pmb-ui .menupopup:hover { background-color: var(--pmb-blue-tint) !important; color: var(--pmb-blue-dark) !important; }

/* ---------- Modals ---------- */
html.pmb-ui .modal-content {
    border: 0;
    border-radius: var(--pmb-radius-lg);
    box-shadow: 0 24px 60px rgba(26, 36, 51, .30);
    overflow: hidden;
}

html.pmb-ui .modal .modal-header {
    padding: 0 !important;
    border-bottom: 0 !important;
}

html.pmb-ui .modal .modal-header > .col-md-12,
html.pmb-ui .modal .modal-header > div[style*="428bca"] {
    background: var(--pmb-blue) !important;
    color: #fff !important;
    height: 52px !important;
    width: 100%;
    float: none;
    border-radius: 0;
    display: flex;
    align-items: center;
}

html.pmb-ui .modal .modal-title,
html.pmb-ui .modal .modal-header .modal-title {
    position: static !important;
    top: auto !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 6px;
    font-size: 17px !important;
    font-weight: 600;
    line-height: 1.2;
    color: #fff;
}

/* headers that are plain .modal-header + .modal-title (no coloured strip) */
html.pmb-ui .modal .modal-header:not(:has(> .col-md-12)) {
    padding: 14px 20px !important;
    background: var(--pmb-blue);
}
html.pmb-ui .modal .modal-header:not(:has(> .col-md-12)) .close { color: #fff; opacity: .85; text-shadow: none; }

html.pmb-ui .modal-footer {
    background: var(--pmb-surface-alt);
    border-top: 1px solid var(--pmb-divider);
    padding: 12px 16px;
}
html.pmb-ui .modal-footer .btn { height: 38px; padding: 0 16px; font-size: 14px !important; }

html.pmb-ui .modal label { color: var(--pmb-ink-2); font-weight: 500; }
html.pmb-ui .modal .form-control,
html.pmb-ui .modal select,
html.pmb-ui .modal textarea,
html.pmb-ui .modal input[type="text"],
html.pmb-ui .modal input[type="number"],
html.pmb-ui .modal input[type="date"] {
    border-color: var(--pmb-input-border);
    border-radius: var(--pmb-radius);
    box-shadow: none;
    color: var(--pmb-ink);
}
html.pmb-ui .modal .form-control:focus,
html.pmb-ui .modal select:focus,
html.pmb-ui .modal textarea:focus,
html.pmb-ui .modal input:focus {
    border-color: var(--pmb-blue);
    box-shadow: 0 0 0 3px rgba(31, 111, 178, .15);
    outline: 0;
}
html.pmb-ui .modal input[type="checkbox"],
html.pmb-ui .modal input[type="radio"] { accent-color: var(--pmb-green); }
html.pmb-ui .modal .fa-question-circle { color: var(--pmb-green) !important; }

/* ---------- Loading dialog & alerts ---------- */
html.pmb-ui #divLoading .modal-content { border-radius: var(--pmb-radius-lg); }
html.pmb-ui #divLoading .modal-header { background: transparent; padding: 15px !important; }
html.pmb-ui #divLoading .modal-header h3 { color: var(--pmb-ink); font-size: 16px; font-weight: 600; }
html.pmb-ui #divLoading .progress { border-radius: 999px; height: 8px; box-shadow: none; }
html.pmb-ui #divLoading .progress-bar { background-color: var(--pmb-green); }

html.pmb-ui .sweet-alert { font-family: var(--pmb-font); border-radius: var(--pmb-radius-lg); }
html.pmb-ui .sweet-alert button { border-radius: var(--pmb-radius) !important; }

/* ---------- Small screens ---------- */
@media (max-width: 767px) {
    html.pmb-ui .container-fluid { padding: 16px 12px 32px; }
    html.pmb-ui .pmb-masthead [id$="lblGuidelInes"] { font-size: 24px !important; }
    html.pmb-ui .pmb-f-patient,
    html.pmb-ui .pmb-f-payer,
    html.pmb-ui .pmb-f-checks { flex-basis: 100%; }
    html.pmb-ui #btnLogs { margin-left: 0 !important; }
    html.pmb-ui #OuterContainer .table-responsive { overflow-x: auto; }
    html.pmb-ui #tblAuthReport { min-width: 1040px; }
}

/* ---------- Masthead right group: Payer rules + Last checked ---------- */
html.pmb-ui .pmb-masthead-right { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
html.pmb-ui .pmb-payer-rules {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    height: 58px;
    padding: 0 16px;
    border: 1px solid var(--pmb-border);
    border-radius: 10px;
    background: var(--pmb-surface);
    color: var(--pmb-ink);
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
    text-decoration: none;
}
html.pmb-ui .pmb-payer-rules:hover { background: var(--pmb-surface-alt); color: var(--pmb-ink); }
html.pmb-ui .pmb-payer-rules i { font-size: 16px !important; color: var(--pmb-green); }

/* ---------- Summary cards ---------- */
html.pmb-ui .pmb-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
    margin: 0 0 24px;
}
html.pmb-ui .pmb-card {
    background: var(--pmb-surface);
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius-lg);
    padding: 18px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
html.pmb-ui .pmb-card-rel { position: relative; }
html.pmb-ui .pmb-card-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
html.pmb-ui .pmb-card-label { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pmb-muted); }
html.pmb-ui .pmb-card-tools { display: flex; align-items: center; gap: 8px; }
html.pmb-ui .pmb-card-icon { width: 34px; height: 34px; border-radius: 9px; display: flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-ic-danger { background: #FCEBEA; color: #C0392B; }
html.pmb-ui .pmb-ic-warn { background: #FDF0E3; color: #B85C00; }
html.pmb-ui .pmb-ic-ok { background: #E7F4EA; color: var(--pmb-green); }
html.pmb-ui .pmb-card-value { font-size: 34px; font-weight: 600; line-height: 1; }
html.pmb-ui .pmb-v-danger { color: #C0392B; }
html.pmb-ui .pmb-v-warn { color: #B85C00; }
html.pmb-ui .pmb-v-ok { color: var(--pmb-green); }
html.pmb-ui .pmb-card-note { font-size: 13px; color: var(--pmb-muted); }

html.pmb-ui .pmb-icon-btn {
    width: 34px; height: 34px;
    display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--pmb-border);
    border-radius: 9px;
    background: #fff;
    color: var(--pmb-muted);
    cursor: pointer;
    padding: 0;
}
html.pmb-ui .pmb-icon-btn:hover,
html.pmb-ui .pmb-icon-btn[aria-expanded="true"] { background: var(--pmb-warn-bg); border-color: var(--pmb-warn-border); color: var(--pmb-warn-ink); }

/* settings popover hosting the existing expiring filter controls */
html.pmb-ui .pmb-popover {
    position: absolute;
    top: 60px;
    right: 12px;
    z-index: 20;
    width: 380px;
    max-width: calc(100vw - 48px);
    box-sizing: border-box;
    background: #fff;
    border: 1px solid var(--pmb-warn-border);
    border-radius: var(--pmb-radius);
    box-shadow: 0 12px 32px rgba(26, 36, 51, .16);
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
html.pmb-ui .pmb-popover[hidden] { display: none; }
html.pmb-ui .pmb-popover-title { font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--pmb-warn-ink); }
html.pmb-ui .pmb-popover .pmb-f-expiring {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    background: var(--pmb-warn-bg) !important;
    border: 1px solid var(--pmb-warn-border) !important;
    border-radius: var(--pmb-radius) !important;
    padding: 10px 12px !important;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
html.pmb-ui .pmb-popover label { font-size: 14px !important; color: var(--pmb-ink) !important; font-weight: 400; cursor: pointer; }
html.pmb-ui .pmb-popover br { display: none; }
html.pmb-ui .pmb-popover input[type="checkbox"] { accent-color: var(--pmb-green); margin-right: 6px; }
html.pmb-ui .pmb-popover #txtRemaining,
html.pmb-ui .pmb-popover #txtExpiring {
    width: 52px !important; height: 30px; padding: 0 4px;
    border: 1px solid var(--pmb-input-border) !important; border-radius: 6px !important;
    background: #fff; font-size: 13px; font-weight: 600; text-align: center;
}
html.pmb-ui .pmb-popover #RemaingFilterType {
    width: auto !important; height: 28px; margin: 0 0 0 24px !important; padding: 0 8px;
    border: 1px solid var(--pmb-input-border) !important; border-radius: 6px; background: #fff;
    color: var(--pmb-warn-ink); font-size: 13px; font-weight: 600;
}

/* table card sits flush under the cards */
html.pmb-ui #InfoManagement { margin: 0; }

/* ---------- Round 2: fixes from side-by-side review ---------- */
/* title is an <span> rendered by asp:Label */
html.pmb-ui .pmb-masthead [id$="lblGuidelInes"] { font-family: var(--pmb-font); }

/* Advanced Search icon, plain Clear, search icon inside patient input */
html.pmb-ui #btnAdvanceSearchModal::before { content: "\f1de"; font-family: FontAwesome; font-weight: 400; color: var(--pmb-ink); }
html.pmb-ui #btnClear > i { display: none; }
html.pmb-ui #txtPatientName {
    padding-left: 36px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238792A2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: 12px center;
}

/* help icon now lives inside the Date of service label */
html.pmb-ui .pmb-field-label .fa-question-circle { margin-left: 6px; color: var(--pmb-green) !important; font-size: 14px !important; cursor: help; }

/* Last checked: small caption over bold value */
html.pmb-ui .pmb-lastchecked { display: flex; flex-direction: column; justify-content: center; gap: 1px; min-height: 58px; }
html.pmb-ui .pmb-lc-label { font-size: 11px; font-weight: 400; letter-spacing: .08em; text-transform: uppercase; color: var(--pmb-muted); }
html.pmb-ui .pmb-lastchecked #spLastCheckedOn { font-size: 13px; font-weight: 600; color: var(--pmb-ink); }

/* pager: clearfix pseudo elements were acting as flex items */
html.pmb-ui #divPagging::before, html.pmb-ui #divPagging::after,
html.pmb-ui #divPagging2::before, html.pmb-ui #divPagging2::after { display: none !important; content: none; }
/* design has a single pager at the bottom; the top one is replaced by the heading bar */
html.pmb-ui #divPagging2 { display: none !important; }

/* patient column amber strip */
html.pmb-ui #tblAuthReport > tbody > tr > td[style*="F7BF57"] { background: transparent !important; }

/* table heading bar */
html.pmb-ui .pmb-table-head {
    display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px;
    padding: 16px 20px; border-bottom: 1px solid var(--pmb-border); background: var(--pmb-surface);
}
html.pmb-ui .pmb-table-head h2 { margin: 0; font-family: var(--pmb-font); font-size: 16px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-table-sub { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 2px; font-size: 13px; color: var(--pmb-muted); }
html.pmb-ui .pmb-chip { display: inline-flex; align-items: center; gap: 6px; padding: 2px 10px; border-radius: 999px; background: var(--pmb-blue-tint); color: var(--pmb-blue-dark); font-size: 12px; font-weight: 500; }

/* ---------- Grid cell content (design columns) ---------- */
/* expander column + patient column read as one cell */
html.pmb-ui #tblAuthReport > tbody > tr > td.details-control { padding-right: 0 !important; width: 46px; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(2),
html.pmb-ui #tblAuthReport > tbody > tr > td:nth-child(2) { padding-left: 4px !important; }

html.pmb-ui .pmb-pt-name { font-weight: 600; font-size: 14px; color: var(--pmb-ink); }
html.pmb-ui .pmb-sub { margin-top: 2px; font-size: 13px; font-weight: 400; color: var(--pmb-muted); white-space: nowrap; }

html.pmb-ui .pmb-date {
    display: inline-flex;
    padding: 3px 10px;
    border-radius: 6px;
    background: var(--pmb-blue-tint);
    color: var(--pmb-blue-dark);
    font-family: var(--pmb-mono);
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
}

/* last denials, collapsed under the status like the design's "recent denial" pill */
html.pmb-ui .pmb-denials { margin-top: 8px; }
html.pmb-ui .pmb-denials > summary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 26px;
    padding: 0 10px;
    border: 1px solid #D6E4F2;
    border-radius: 6px;
    background: #F4F8FC;
    color: var(--pmb-blue-dark);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    list-style: none;
}
html.pmb-ui .pmb-denials > summary::-webkit-details-marker { display: none; }
html.pmb-ui .pmb-denials[open] > summary { background: var(--pmb-blue-tint); }
html.pmb-ui .pmb-denials > :not(summary) { margin-top: 6px; font-size: 12px; color: var(--pmb-ink-2); }

/* ---------- Summary pills ---------- */
html.pmb-ui .pmb-sum-item { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; margin-bottom: 8px; }
html.pmb-ui .pmb-sum-item:last-child { margin-bottom: 0; }
html.pmb-ui .pmb-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 2px 9px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
}
html.pmb-ui .pmb-dot { width: 6px; height: 6px; border-radius: 50%; flex: none; background: currentColor; }
html.pmb-ui .pmb-pill-danger  { background: #FCEBEA; color: #A93226; }
html.pmb-ui .pmb-pill-danger .pmb-dot  { background: #C0392B; }
html.pmb-ui .pmb-pill-warn    { background: #FDF0E3; color: #8A4500; }
html.pmb-ui .pmb-pill-warn .pmb-dot    { background: #B85C00; }
html.pmb-ui .pmb-pill-ok      { background: #E7F4EA; color: #2E6B3A; }
html.pmb-ui .pmb-pill-ok .pmb-dot      { background: #2F7D3E; }
html.pmb-ui .pmb-pill-neutral { background: #EEF1F4; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-pill-neutral .pmb-dot { background: var(--pmb-faint); }
html.pmb-ui .pmb-sum-sub { font-size: 13px; color: var(--pmb-muted); }
html.pmb-ui .pmb-sum-raw { margin-bottom: 6px; }

/* ---------- Inline Advanced Search panel ---------- */
html.pmb-ui .pmb-adv {
    flex: none;
    width: 100%;
    margin-top: 16px;
    border: 1px solid #C9DCEF;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
}
html.pmb-ui .pmb-adv[hidden] { display: none; }
html.pmb-ui .pmb-adv-head { display: flex; justify-content: space-between; align-items: center; padding: 10px 16px; background: var(--pmb-blue-tint); border-bottom: 1px solid #C9DCEF; }
html.pmb-ui .pmb-adv-title { font-size: 14px; font-weight: 600; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-adv-x { width: 28px; height: 28px; border: 0; border-radius: 6px; background: transparent; color: var(--pmb-blue-dark); font-size: 22px; line-height: 1; cursor: pointer; }
html.pmb-ui .pmb-adv-x:hover { background: rgba(23, 79, 128, .1); }

html.pmb-ui .pmb-adv-body { display: flex; flex-wrap: wrap; gap: 24px; padding: 16px; }
html.pmb-ui .pmb-adv-col { flex: 1 1 320px; display: flex; flex-direction: column; gap: 10px; min-width: 0; }
html.pmb-ui .pmb-adv-side { flex: 0 1 280px; gap: 14px; }
html.pmb-ui .pmb-adv-cap { font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--pmb-muted); }

/* each checkbox + label on one line (the exclusions column holds bare input/label siblings) */
html.pmb-ui .pmb-adv-col > div { float: none !important; width: auto !important; padding: 0 !important; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
html.pmb-ui .pmb-adv-col > div[style*="display:none"],
html.pmb-ui .pmb-adv-col > div[style*="display: none"] { display: none; }
html.pmb-ui .pmb-adv-col br { display: none; }
html.pmb-ui .pmb-adv input[type="checkbox"] { width: 16px; height: 16px; margin: 0; flex: none; accent-color: var(--pmb-green); }
html.pmb-ui .pmb-adv label { font-size: 14px !important; font-weight: 400; color: var(--pmb-ink); margin: 0; cursor: pointer; }
html.pmb-ui .pmb-adv label .fa-question-circle { margin-left: 4px; }
html.pmb-ui .pmb-adv-col:nth-child(2) { display: grid; grid-template-columns: 16px 1fr; align-content: start; gap: 10px 8px; }
html.pmb-ui .pmb-adv-col:nth-child(2) .pmb-adv-cap { grid-column: 1 / -1; }

html.pmb-ui .pmb-adv-side #divSpeciality { display: block; font-size: 12px; font-weight: 600; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-adv-side .ms-parent { width: 100% !important; display: block; margin-top: 6px; }
html.pmb-ui .pmb-adv-loc { display: flex !important; flex-direction: column; gap: 6px; }
html.pmb-ui .pmb-adv-hint { font-weight: 400; color: var(--pmb-faint); }

html.pmb-ui .pmb-adv-foot { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 10px; padding: 12px 16px; border-top: 1px solid var(--pmb-divider); background: var(--pmb-surface-alt); }
html.pmb-ui .pmb-adv-btn { height: 38px; padding: 0 18px; font-size: 14px !important; display: inline-flex; align-items: center; }

/* ---------- Payer Rules popup (#myModal) ---------- */
html.pmb-ui .pmb-payer-rules-modal .modal-dialog {
    width: 1180px !important;
    max-width: calc(100vw - 32px);
    margin: 24px auto !important;
    left: auto !important;
}
html.pmb-ui .pmb-payer-rules-modal .modal-content { width: 100% !important; }

html.pmb-ui .pmb-payer-rules-modal .modal-header.pmb-pr-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    padding: 16px 20px !important;
    background: var(--pmb-blue);
    border: 0 !important;
}
html.pmb-ui .pmb-pr-titles { display: flex; flex-direction: column; gap: 2px; }
html.pmb-ui .pmb-payer-rules-modal .modal-title { font-size: 17px !important; font-weight: 600; color: #fff; padding: 0; }
html.pmb-ui .pmb-pr-sub { font-size: 13px; color: rgba(255, 255, 255, .85); }
html.pmb-ui .pmb-pr-x {
    flex: none;
    width: 30px; height: 30px;
    border: 0; border-radius: 6px;
    background: rgba(255, 255, 255, .18);
    color: #fff;
    font-size: 20px; line-height: 1;
    cursor: pointer;
}
html.pmb-ui .pmb-pr-x:hover { background: rgba(255, 255, 255, .3); }

html.pmb-ui .pmb-payer-rules-modal .modal-body { padding: 0 !important; float: none !important; width: 100% !important; max-height: calc(100vh - 220px) !important; }
html.pmb-ui .pmb-payer-rules-modal .modal-body div { float: none; width: auto; }

/* plain table: muted uppercase headings on white, hairline row dividers */
html.pmb-ui #tblpayers { margin: 0 !important; border: 0 !important; border-collapse: collapse !important; width: 100% !important; }
html.pmb-ui #tblpayers > thead > tr > th {
    background: #fff !important;
    color: var(--pmb-muted) !important;
    padding: 12px 12px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pmb-border) !important;
    font-size: 12px !important;
    font-weight: 600;
    letter-spacing: .04em;
    line-height: 1.3 !important;
    text-transform: uppercase;
    text-align: left !important;
    vertical-align: bottom !important;
}
html.pmb-ui #tblpayers > tbody > tr > td {
    background: #fff !important;
    padding: 12px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pmb-divider) !important;
    font-size: 14px !important;
    color: var(--pmb-ink);
    text-align: left !important;
    vertical-align: top !important;
}
html.pmb-ui #tblpayers > tbody > tr:hover > td { background: var(--pmb-surface-alt) !important; }
html.pmb-ui #tblpayers td.details-control { width: 52px; padding-left: 16px !important; color: var(--pmb-blue); }
html.pmb-ui #tblpayers td.details-control > i.fa {
    width: 26px; height: 26px; line-height: 24px;
    border: 1px solid var(--pmb-input-border); border-radius: 6px;
    background: #fff; text-align: center; font-size: 14px; cursor: pointer;
}
html.pmb-ui #tblpayers td.details-control:hover > i.fa { background: var(--pmb-blue-tint); border-color: var(--pmb-blue); }
html.pmb-ui #tblpayers a { color: var(--pmb-blue); text-decoration: underline; cursor: pointer; }

/* expanded plans (existing sub-table) */
html.pmb-ui #tblpayers td[colspan] { background: var(--pmb-surface-alt) !important; padding: 8px 20px 16px 64px !important; }

html.pmb-ui .pmb-yn { display: inline-flex; padding: 1px 10px; border-radius: 999px; font-size: 12px; font-weight: 600; line-height: 1.6; }
html.pmb-ui .pmb-yn-yes { background: #E4F2E7; color: #2E6B3A; }
html.pmb-ui .pmb-yn-no  { background: #EEF1F4; color: var(--pmb-ink-2); }

html.pmb-ui .pmb-payer-rules-modal .modal-footer.pmb-pr-foot { display: flex; justify-content: flex-end; padding: 12px 20px; }
/* page-level ".modal-body div span { float:left; width:100% }" would stretch the pills */
html.pmb-ui .pmb-payer-rules-modal .modal-body div span,
html.pmb-ui .pmb-payer-rules-modal .modal-body div p { float: none; width: auto; }

/* ---------- Expanded authorization details ---------- */
html.pmb-ui #tblAuthReport > tbody > tr > td[colspan] { padding: 0 20px 18px 58px !important; background: var(--pmb-surface-alt) !important; }

/* heading bar */
html.pmb-ui .pmb-ad-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; padding: 12px 0 10px; margin: 0 !important; }
html.pmb-ui .pmb-ad-title { font-size: 13px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-ad-limit { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ad-limit input[type="checkbox"] { margin: 0 !important; accent-color: var(--pmb-green); }
html.pmb-ui .pmb-ad-limit select { width: auto !important; height: 28px !important; margin: 0 !important; padding: 0 8px; border: 1px solid var(--pmb-input-border); border-radius: 6px; background: #fff; font-size: 13px; }

/* auth list table */
html.pmb-ui table[id^="tblAuthReportOther_"] {
    margin: 0 !important;
    width: 100% !important;
    background: #fff;
    border: 1px solid var(--pmb-border) !important;
    border-radius: var(--pmb-radius);
    border-collapse: separate !important;
    border-spacing: 0;
    overflow: hidden;
}
html.pmb-ui table[id^="tblAuthReportOther_"] > thead > tr > th,
html.pmb-ui #tblAuthReport td[colspan] .table-thead-tr-primary th,
html.pmb-ui #tblAuthReport td[colspan] .table-thead-tr-primary3 th {
    background: #EEF2F6 !important;
    color: var(--pmb-muted) !important;
    padding: 10px 12px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pmb-border) !important;
    font-size: 11.5px !important;
    font-weight: 600;
    letter-spacing: .05em;
    text-transform: uppercase;
    line-height: 1.3 !important;
    text-align: left !important;
    vertical-align: middle !important;
}
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr > td {
    background: #fff !important;
    padding: 10px 12px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pmb-divider) !important;
    font-size: 13px !important;
    text-align: left !important;
    vertical-align: middle !important;
}
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr.pmb-row-missing > td { background: #FDF3F2 !important; }
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr:hover > td { background: var(--pmb-blue-row) !important; }
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr.pmb-row-missing:hover > td { background: #FBECEA !important; }

/* numeric columns: Approved / Used / Remaining / Without auth */
html.pmb-ui table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(6),
html.pmb-ui table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(7),
html.pmb-ui table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(8),
html.pmb-ui table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(9),
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(6),
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(7),
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(8),
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(9) { text-align: right !important; font-family: var(--pmb-mono); }
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(3),
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(4) { font-family: var(--pmb-mono); }
/* "Without auth" count in red when > 0 (server wraps it in a red <p>) */
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(9) p { margin: 0; }

/* merged sub-lines (next/last appt, scheduled, initial visits, client note) */
html.pmb-ui .pmb-ad-sub { margin-top: 4px; font-size: 12px; font-weight: 400; color: var(--pmb-muted); font-family: var(--pmb-font); }
html.pmb-ui .pmb-ad-note { margin-top: 6px; padding-top: 6px; border-top: 1px dashed var(--pmb-border); font-size: 12px; color: var(--pmb-ink-2); font-family: var(--pmb-font); text-align: left; }
html.pmb-ui .pmb-ad-note img[src*="edit.png"] { height: 14px !important; padding: 4px; border: 1px solid var(--pmb-border); border-radius: 6px; background: #fff; box-sizing: content-box; cursor: pointer; }
html.pmb-ui table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(5) { text-align: left !important; }

/* nested expander (visits) */
html.pmb-ui table[id^="tblAuthReportOther_"] td.details-control2 { width: 46px; color: var(--pmb-blue); cursor: pointer; }
html.pmb-ui table[id^="tblAuthReportOther_"] td.details-control2 > i.fa {
    width: 26px; height: 26px; line-height: 24px;
    border: 1px solid var(--pmb-input-border); border-radius: 6px;
    background: #fff; text-align: center; font-size: 14px;
}
html.pmb-ui table[id^="tblAuthReportOther_"] td.details-control2:hover > i.fa { background: var(--pmb-blue-tint); border-color: var(--pmb-blue); }
html.pmb-ui table[id^="tblAuthReportOther_"] td > a { color: var(--pmb-blue); text-decoration: underline; cursor: pointer; }

/* visit lists (appointments under an auth) */
html.pmb-ui #tblAuthReport td[colspan] table#tblStatus {
    margin: 8px 0 0 !important;
    width: 100% !important;
    border: 1px solid var(--pmb-border) !important;
    border-radius: var(--pmb-radius);
    background: #fff;
}
html.pmb-ui #tblAuthReport td[colspan] table#tblStatus > thead > tr > th { font-size: 11.5px !important; }
html.pmb-ui #tblAuthReport td[colspan] table#tblStatus > tbody > tr > td { vertical-align: middle; }
html.pmb-ui #tblAuthReport td[colspan] table#tblStatus > tbody > tr:hover > td { background: var(--pmb-blue-row) !important; }
html.pmb-ui #tblAuthReport td[colspan] table#tblStatus input[type="checkbox"] { width: 16px; height: 16px; margin: 0; accent-color: var(--pmb-green); }
html.pmb-ui #tblAuthReport td[colspan] table#tblStatus .fa-trash { color: var(--pmb-danger); cursor: pointer; }

/* "Remove" button above the visit list */
html.pmb-ui .pmb-visits-head input.btn-warning {
    height: 30px; padding: 0 12px !important; border-radius: 7px; font-size: 13px; font-weight: 600;
}


/* ---------- Visit lists (design: titled panel, 9 columns) ---------- */
html.pmb-ui .pmb-visits { margin-top: 10px; }
html.pmb-ui .pmb-visits-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 0 0 8px; }
html.pmb-ui .pmb-visits-title { font-size: 13px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-visits-head input.btn-warning { margin: 0; }
html.pmb-ui .pmb-visits table#tblStatus { margin: 0 !important; width: 100% !important; }
/* DOS and Encounter ID in the monospace face */
html.pmb-ui .pmb-visits table#tblStatus > tbody > tr > td:nth-child(2),
html.pmb-ui .pmb-visits table#tblStatus > tbody > tr > td:nth-child(6) { font-family: var(--pmb-mono); }
html.pmb-ui .pmb-visits table#tblStatus > tbody > tr > td:nth-child(1) { width: 40px; color: var(--pmb-muted); }
html.pmb-ui .pmb-visits table#tblStatus a { color: var(--pmb-blue); text-decoration: none; }
html.pmb-ui .pmb-visits table#tblStatus a:hover { text-decoration: underline; }


/* =====================================================================
   Authorization Request Logs page (AuthorizationRequestLogs.aspx)
   Same tokens / components as the Authorization Management page.
   ===================================================================== */

/* title: same masthead, subtitle comes from data-sub */
html.pmb-ui .pmb-masthead .pmb-title {
    display: block;
    font-family: var(--pmb-font);
    font-size: 30px;
    line-height: 1.15;
    font-weight: 600;
    color: var(--pmb-blue-dark);
}
html.pmb-ui .pmb-masthead .pmb-title::before {
    content: "Practice Management";
    display: block;
    margin-bottom: 6px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--pmb-green);
}
html.pmb-ui .pmb-masthead .pmb-title[data-sub]::after {
    content: attr(data-sub);
    display: block;
    margin-top: 6px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    color: var(--pmb-muted);
}
html.pmb-ui .box-body.form-group-mb-10 { padding: 0; }
html.pmb-ui .box-body.form-group-mb-10 .row { margin: 0; }
html.pmb-ui .box-body.form-group-mb-10 .col-lg-12 { padding: 0; }

/* tabs -> segmented pills */
html.pmb-ui #dvTabs { margin: 0 0 16px !important; }
html.pmb-ui #dvTabs .nav-tabs { display: inline-flex; gap: 4px; padding: 4px; margin: 0 !important; background: var(--pmb-surface); border: 1px solid var(--pmb-border) !important; border-radius: 10px; }
html.pmb-ui #dvTabs .nav-tabs::before, html.pmb-ui #dvTabs .nav-tabs::after { display: none; }
html.pmb-ui #dvTabs .nav-tabs > li { float: none; margin: 0; }
html.pmb-ui #dvTabs .nav-tabs > li > a,
html.pmb-ui #dvTabs.tab1 .nav-tabs li a {
    display: block;
    padding: 7px 18px;
    margin: 0;
    border: 0 !important;
    border-radius: 7px !important;
    background: transparent;
    color: var(--pmb-ink-2);
    font-family: var(--pmb-font);
    font-size: 14px;
    font-weight: 600;
    opacity: 1;
    transition: background-color .15s, color .15s;
}
html.pmb-ui #dvTabs.tab1 .nav-tabs li a::before,
html.pmb-ui #dvTabs.tab1 .nav-tabs li a::after { display: none !important; }
html.pmb-ui #dvTabs.tab1 .nav-tabs li a:hover { background: var(--pmb-blue-tint); color: var(--pmb-blue-dark); }
html.pmb-ui #dvTabs.tab1 .nav-tabs > li.active > a,
html.pmb-ui #dvTabs.tab1 .nav-tabs > li.active > a:hover,
html.pmb-ui #dvTabs.tab1 .nav-tabs > li.active > a:focus { background: var(--pmb-blue); color: #fff; }

/* option row */
html.pmb-ui #divAuth > input.chkCheckbox { accent-color: var(--pmb-green); margin: 0 6px 0 0; }
html.pmb-ui #divAuth > label.font12 { font-size: 14px !important; font-weight: 400; color: var(--pmb-ink); cursor: pointer; margin: 0; }

/* table cards */
html.pmb-ui #divAuth, html.pmb-ui #divAppeal { font-family: var(--pmb-font); }
html.pmb-ui #divAuth .dataTables_wrapper,
html.pmb-ui #divAppeal .dataTables_wrapper {
    margin-top: 12px;
    background: var(--pmb-surface);
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius-lg);
    overflow: hidden;
}
html.pmb-ui #tblAuthRequest, html.pmb-ui #tblAppealRequest {
    margin: 0 !important;
    width: 100% !important;
    border: 0 !important;
    border-collapse: collapse !important;
    font-size: 13px;
}
html.pmb-ui #tblAuthRequest > thead > tr > th,
html.pmb-ui #tblAppealRequest > thead > tr > th {
    background: var(--pmb-blue-head) !important;
    color: #fff !important;
    padding: 12px 14px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pmb-blue-head) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: .06em;
    line-height: 1.3 !important;
    text-transform: uppercase;
    text-align: left !important;
    vertical-align: middle !important;
}
html.pmb-ui #tblAuthRequest > tbody > tr > td,
html.pmb-ui #tblAppealRequest > tbody > tr > td {
    background: var(--pmb-surface) !important;
    color: var(--pmb-ink);
    padding: 14px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pmb-divider) !important;
    font-size: 13px !important;
    line-height: 1.5;
    text-align: left !important;
    vertical-align: top !important;
}
html.pmb-ui #tblAuthRequest > tbody > tr:hover > td,
html.pmb-ui #tblAppealRequest > tbody > tr:hover > td { background: var(--pmb-blue-row) !important; }
html.pmb-ui #tblAuthRequest > tbody > tr > td.dataTables_empty,
html.pmb-ui #tblAppealRequest > tbody > tr > td.dataTables_empty { text-align: center !important; padding: 28px !important; color: var(--pmb-muted); }

/* expander */
html.pmb-ui #tblAuthRequest td.details-control, html.pmb-ui #tblAppealRequest td.details-control { width: 46px; color: var(--pmb-blue); cursor: pointer; }
html.pmb-ui #tblAuthRequest td.details-control > i.fa, html.pmb-ui #tblAppealRequest td.details-control > i.fa {
    width: 26px; height: 26px; line-height: 24px;
    border: 1px solid var(--pmb-input-border); border-radius: 6px;
    background: #fff; text-align: center; font-size: 14px;
}
html.pmb-ui #tblAuthRequest td.details-control:hover > i.fa, html.pmb-ui #tblAppealRequest td.details-control:hover > i.fa { background: var(--pmb-blue-tint); border-color: var(--pmb-blue); }

/* expanded attachment rows */
html.pmb-ui #tblAuthRequest > tbody > tr > td[colspan], html.pmb-ui #tblAppealRequest > tbody > tr > td[colspan] { background: var(--pmb-surface-alt) !important; padding: 8px 20px 16px 58px !important; }
html.pmb-ui #tblAuthRequest td[colspan] table.table, html.pmb-ui #tblAppealRequest td[colspan] table.table {
    margin: 8px 0 0 !important;
    background: #fff;
    border: 1px solid var(--pmb-border) !important;
    border-radius: var(--pmb-radius);
    border-collapse: separate !important;
    border-spacing: 0;
    overflow: hidden;
}
html.pmb-ui #tblAuthRequest td[colspan] table.table td, html.pmb-ui #tblAppealRequest td[colspan] table.table td { background: #fff !important; padding: 9px 12px !important; border: 0 !important; border-bottom: 1px solid var(--pmb-divider) !important; font-size: 13px !important; text-align: left; }
html.pmb-ui #tblAuthRequest td[colspan] a, html.pmb-ui #tblAppealRequest td[colspan] a { color: var(--pmb-blue); cursor: pointer; }

/* comment boxes (server renders a pale blue block) */
html.pmb-ui #tblAuthRequest td div[style*="background"], html.pmb-ui #tblAppealRequest td div[style*="background"] { border-radius: var(--pmb-radius); }

/* DataTables footer: "Showing x to y" + pager */
html.pmb-ui #divAuth .dataTables_info, html.pmb-ui #divAppeal .dataTables_info { float: left; padding: 14px 20px !important; font-size: 13px; color: var(--pmb-muted); }
html.pmb-ui #divAuth .dataTables_paginate, html.pmb-ui #divAppeal .dataTables_paginate { float: right; padding: 9px 16px !important; display: flex; gap: 6px; align-items: center; }
html.pmb-ui #divAuth .dataTables_wrapper::after, html.pmb-ui #divAppeal .dataTables_wrapper::after { content: ""; display: block; clear: both; }
html.pmb-ui .dataTables_wrapper .dataTables_paginate .paginate_button {
    min-width: 34px; height: 34px; padding: 0 12px !important; margin: 0 !important;
    display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--pmb-input-border) !important;
    border-radius: var(--pmb-radius) !important;
    background: #fff !important;
    color: var(--pmb-ink) !important;
    font-size: 13px;
    box-shadow: none !important;
}
html.pmb-ui .dataTables_wrapper .dataTables_paginate .paginate_button:hover { background: var(--pmb-blue-tint) !important; border-color: var(--pmb-blue) !important; color: var(--pmb-blue-dark) !important; }
html.pmb-ui .dataTables_wrapper .dataTables_paginate .paginate_button.current,
html.pmb-ui .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover { background: var(--pmb-blue) !important; border-color: var(--pmb-blue) !important; color: #fff !important; font-weight: 600; }
html.pmb-ui .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
html.pmb-ui .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover { color: var(--pmb-faint) !important; background: #fff !important; border-color: var(--pmb-border) !important; cursor: default; }

/* ---------- Advanced Search: breathing room + dropdowns that don't get clipped ---------- */
/* multi-select lists open inline (pushing the footer down) instead of floating over/under the panel edge */
html.pmb-ui .pmb-adv .ms-drop {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    margin-top: 4px;
    box-shadow: none;
    border: 1px solid var(--pmb-input-border);
    border-radius: var(--pmb-radius);
    background: #fff;
    z-index: 1;
}
html.pmb-ui .pmb-adv .ms-drop ul { max-height: 180px; overflow-y: auto; }
html.pmb-ui .pmb-adv .ms-drop input[type="checkbox"] { margin-right: 6px !important; }
html.pmb-ui .pmb-adv .ms-drop ul > li label { display: flex; align-items: center; gap: 4px; }
html.pmb-ui .pmb-adv .ms-drop ul > li label span { margin-left: 0 !important; }

html.pmb-ui .pmb-adv { margin-bottom: 8px; }
html.pmb-ui .pmb-adv-body { padding: 20px 20px 28px; }
html.pmb-ui .pmb-adv-foot { padding: 14px 20px; }
html.pmb-ui .pmb-filters:has(.pmb-adv:not([hidden])) { padding-bottom: 28px; }

/* search icon in the patient box: the page's inline padding wins, so indent the text instead */
html.pmb-ui #txtPatientName { text-indent: 26px; }

/* ---------- Round 3 fixes ---------- */
/* 1. Advanced Search panel sat on top of the filter row: the Bootstrap column was still floated */
html.pmb-ui .pmb-filters > .col-md-12 { float: none !important; }
html.pmb-ui .pmb-filters::before, html.pmb-ui .pmb-filters::after { display: table; content: " "; }
html.pmb-ui .pmb-filters::after { clear: both; }
html.pmb-ui .pmb-adv { clear: both; margin-top: 20px; }

/* 2. multi-select rows: checkbox was absolutely positioned (Bootstrap) and covered the first letters */
html.pmb-ui .pmb-adv .ms-drop input[type="checkbox"],
html.pmb-ui .pmb-adv .ms-drop input[type="radio"] {
    position: static !important;
    float: none !important;
    margin: 0 8px 0 0 !important;
    flex: none;
    width: 16px;
    height: 16px;
}
html.pmb-ui .pmb-adv .ms-drop ul { overflow-x: hidden; padding: 4px 0; }
html.pmb-ui .pmb-adv .ms-drop ul > li { padding: 4px 10px; }
html.pmb-ui .pmb-adv .ms-drop ul > li label { display: flex; align-items: center; white-space: normal; margin: 0; width: 100%; cursor: pointer; }
html.pmb-ui .pmb-adv .ms-drop ul > li label span { margin-left: 0 !important; padding: 0; }
html.pmb-ui .pmb-adv .ms-search { padding: 6px 8px; }
html.pmb-ui .pmb-adv .ms-search input { width: 100%; height: 30px; border: 1px solid var(--pmb-input-border); border-radius: 6px; padding: 0 8px; }

/* 3. "Show More" link and the "Recent denial" pill overlapped in the status column */
html.pmb-ui #tblAuthReport span[id^="spSeeMore_"] { display: block; margin-top: 6px !important; }
html.pmb-ui #tblAuthReport span[id^="spSeeMore_"] a { float: none !important; display: inline-block; }
html.pmb-ui #tblAuthReport .pmb-denials { clear: both; display: block; margin-top: 10px; }
html.pmb-ui #tblAuthReport > tbody > tr > td:nth-child(7)::after { content: ""; display: table; clear: both; }

/* Payer Rules: text under a Yes/No pill (plan note, auth form link, fax number) */
html.pmb-ui .pmb-yn-sub { margin-top: 4px; font-size: 12px; font-weight: 400; color: var(--pmb-muted); line-height: 1.5; word-break: break-word; }
html.pmb-ui .pmb-yn-sub a { color: var(--pmb-blue); text-decoration: underline; }

/* Payer Rules: expanded plan table fits the popup (was 81% wide with an 18% left margin) and loses the black row lines */
html.pmb-ui #tblpayers td[colspan] table {
    width: 100% !important;
    margin: 0 !important;
    border: 1px solid var(--pmb-border) !important;
    border-radius: var(--pmb-radius);
    border-collapse: separate !important;
    border-spacing: 0;
    background: #fff;
    overflow: hidden;
}
html.pmb-ui #tblpayers td[colspan] table th { background: var(--pmb-blue-tint) !important; color: var(--pmb-blue-dark) !important; padding: 9px 12px !important; border: 0 !important; border-bottom: 1px solid #C9DCEF !important; font-size: 12px !important; font-weight: 600; text-transform: none !important; text-align: left !important; }
html.pmb-ui #tblpayers td[colspan] table td { background: #fff !important; padding: 9px 12px !important; border: 0 !important; border-bottom: 1px solid var(--pmb-divider) !important; font-size: 13px !important; text-align: left !important; }
html.pmb-ui #tblpayers td[colspan] table tr:last-child td { border-bottom: 0 !important; }
html.pmb-ui #tblpayers td[colspan] { padding: 8px 20px 16px 64px !important; overflow-x: hidden; }

/* ---------- Filter row: one compact line, as in the design ---------- */
html.pmb-ui .pmb-filters > .col-md-12 { gap: 10px 10px; align-items: flex-end; }
html.pmb-ui .pmb-f-patient { flex: 2 1 190px; max-width: 300px; min-width: 150px; }
html.pmb-ui .pmb-f-payer   { flex: 1 1 150px; max-width: 190px; min-width: 130px; display: flex; flex-direction: column; flex-wrap: nowrap; align-items: stretch; gap: 6px; }
html.pmb-ui .pmb-f-dos     { flex: 1 1 150px; max-width: 190px; min-width: 130px; }
html.pmb-ui .pmb-f-actions { flex: 1 1 0; min-width: 0; align-self: flex-end; gap: 10px; }

/* Payer: one select-like button */
html.pmb-ui .pmb-f-payer #PayerFilter { width: 100%; justify-content: center; padding: 0 12px; }
html.pmb-ui .pmb-f-payer #PayerFilter > i { display: none; }

/* Request Logs: same outlined button, document icon, pushed to the right edge */
html.pmb-ui #btnLogs { margin-left: auto !important; }
html.pmb-ui #btnLogs > i { display: none; }
html.pmb-ui #btnLogs::before { content: "\f0f6"; font-family: FontAwesome; font-weight: 400; }

/* ---------- Expanders: chevron instead of plus / minus (design) ----------
   The page script still toggles fa-plus-square / fa-minus-square; only the glyph drawn for them changes. */
html.pmb-ui td.details-control > i.fa,
html.pmb-ui td.details-control2 > i.fa { font-size: 0; }
html.pmb-ui td.details-control > i.fa::before,
html.pmb-ui td.details-control2 > i.fa::before {
    font-family: FontAwesome;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--pmb-blue);
    content: "\f105";   /* angle-right */
}
html.pmb-ui td.details-control > i.fa.fa-minus-square::before,
html.pmb-ui td.details-control2 > i.fa.fa-minus-square::before { content: "\f107"; }  /* angle-down */

/* ---------- Request history (Auth Request Status cell) ---------- */
html.pmb-ui .pmb-hist-wrap { margin-top: 8px; }
html.pmb-ui .pmb-hist-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 28px;
    padding: 0 10px;
    border: 1px solid #D6E4F2;
    border-radius: 6px;
    background: #F4F8FC;
    color: var(--pmb-blue-dark);
    font-family: var(--pmb-font);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}
html.pmb-ui .pmb-hist-btn::before { content: "\f1da"; font-family: FontAwesome; font-weight: 400; font-size: 13px; }
html.pmb-ui .pmb-hist-btn::after { content: "\f107"; font-family: FontAwesome; font-weight: 400; font-size: 14px; }
html.pmb-ui .pmb-hist-btn[aria-expanded="true"]::after { content: "\f106"; }
html.pmb-ui .pmb-hist-btn:hover { background: var(--pmb-blue-tint); }

html.pmb-ui .pmb-hist {
    margin-top: 8px;
    padding: 10px 12px;
    background: #fff;
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius);
    font-size: 13px;
    line-height: 1.5;
    max-width: 240px;
}
html.pmb-ui .pmb-hist[hidden] { display: none; }
html.pmb-ui .pmb-hist-title { margin-bottom: 6px; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pmb-muted); }
html.pmb-ui .pmb-hist-entry { color: var(--pmb-muted); }
html.pmb-ui .pmb-hist-entry > a { text-decoration: none; cursor: pointer; }
html.pmb-ui .pmb-hist-entry > a::before { content: ""; display: inline-block; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: currentColor; vertical-align: middle; }
html.pmb-ui .pmb-hist-entry > a b { font-weight: 600; }
html.pmb-ui .pmb-hist-ref { margin: 2px 0 0 12px; font-family: var(--pmb-mono); font-size: 12px; color: var(--pmb-ink); }
html.pmb-ui .pmb-hist span[id^="spSeeMore_"] { display: block; margin-top: 8px !important; }

/* ---------- Patient cell: name block + eye button (design) ---------- */
html.pmb-ui .pmb-pt-wrap { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
html.pmb-ui .pmb-pt-main { min-width: 0; }
html.pmb-ui .pmb-eye {
    flex: none;
    width: 32px; height: 32px;
    display: inline-flex; align-items: center; justify-content: center;
    padding: 0;
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius);
    background: #fff;
    color: var(--pmb-muted);
    cursor: pointer;
}
html.pmb-ui .pmb-eye:hover { background: var(--pmb-blue-tint); border-color: var(--pmb-blue); color: var(--pmb-blue-dark); }

/* pager label "Page 1 of 6" */
html.pmb-ui #divPagging .pull-left { font-size: 13px; color: var(--pmb-muted); }

/* ---------- Filter row: compact sizing (a broader rule above had forced max-width: none on every cell) ---------- */
html.pmb-ui .pmb-filters > .col-md-12 { gap: 10px !important; align-items: flex-end !important; }
html.pmb-ui .pmb-filters > .col-md-12 > .pmb-f-patient { flex: 0 1 250px !important; max-width: 250px !important; min-width: 170px; }
html.pmb-ui .pmb-filters > .col-md-12 > .pmb-f-payer   { flex: 0 1 190px !important; max-width: 190px !important; min-width: 150px; }
html.pmb-ui .pmb-filters > .col-md-12 > .pmb-f-dos     { flex: 0 1 170px !important; max-width: 170px !important; min-width: 140px; }
html.pmb-ui .pmb-filters > .col-md-12 > .pmb-f-actions { flex: 1 1 0 !important; min-width: 0; flex-wrap: nowrap; align-self: flex-end; }

/* a little smaller than before: 38px controls */
html.pmb-ui #txtPatientName,
html.pmb-ui #MainContent_ddlDisplayDOS { height: 38px !important; font-size: 14px !important; }
html.pmb-ui .pmb-f-actions .btn,
html.pmb-ui #PayerFilter { height: 38px; padding: 0 16px; font-size: 14px !important; white-space: nowrap; }
html.pmb-ui .pmb-f-payer #PayerFilter { padding: 0 10px; font-size: 13px !important; }

/* narrow screens: let the buttons wrap under the fields */
@media (max-width: 1100px) {
    html.pmb-ui .pmb-filters > .col-md-12 > .pmb-f-actions { flex: 1 1 100% !important; flex-wrap: wrap; }
}

/* ---------- Patient Info popup (#myModalPatientClaiminfo; the tables are built by the server with inline styles) ---------- */
html.pmb-ui #myModalPatientClaiminfo .modal-dialog { width: 980px !important; max-width: calc(100vw - 32px); margin: 24px auto !important; left: auto !important; }
html.pmb-ui #myModalPatientClaiminfo .modal-body { padding: 20px 24px !important; }
html.pmb-ui #patientandClaiminfo { margin: 0; font-family: var(--pmb-font); }

/* section heading ("Patient Policy Info") */
html.pmb-ui #patientandClaiminfo table:has(td[style*="3c8dbc"]) { width: 100% !important; margin: 0 0 12px !important; border: 0 !important; background: transparent !important; }
html.pmb-ui #patientandClaiminfo td[style*="3c8dbc"] {
    background: var(--pmb-blue-tint) !important;
    color: var(--pmb-blue-dark) !important;
    padding: 10px 16px !important;
    border: 1px solid #C9DCEF !important;
    border-radius: var(--pmb-radius);
    font-size: 13px !important;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-align: left !important;
}

/* detail table: muted label column, value column, hairline dividers, rounded */
html.pmb-ui #patientandClaiminfo table.table-bordered:not(:has(td[style*="3c8dbc"])) {
    width: 100% !important;
    margin: 0 0 20px !important;
    border: 1px solid var(--pmb-border) !important;
    border-radius: var(--pmb-radius);
    border-collapse: separate !important;
    border-spacing: 0;
    overflow: hidden;
    background: #fff;
}
html.pmb-ui #patientandClaiminfo table.table-bordered:not(:has(td[style*="3c8dbc"])) td {
    padding: 11px 16px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pmb-divider) !important;
    font-size: 14px !important;
    line-height: 1.45;
    color: var(--pmb-ink);
    vertical-align: top;
}
html.pmb-ui #patientandClaiminfo table.table-bordered tr:last-child td { border-bottom: 0 !important; }
html.pmb-ui #patientandClaiminfo td[style*="F7DC6F"] {
    width: 34%;
    background: var(--pmb-surface-alt) !important;
    color: var(--pmb-muted);
    font-size: 13px !important;
    font-weight: 600;
    letter-spacing: .02em;
    border-right: 1px solid var(--pmb-divider) !important;
}
html.pmb-ui #patientandClaiminfo tr:hover > td:not([style*="F7DC6F"]) { background: var(--pmb-blue-row); }
html.pmb-ui #patientandClaiminfo a { color: var(--pmb-blue); }

/* ---------- Shared popup header (title + subtitle + round close) for any modal using .pmb-pr-head ---------- */
html.pmb-ui .modal .modal-header.pmb-pr-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    padding: 16px 20px !important;
    background: var(--pmb-blue);
    border: 0 !important;
}
html.pmb-ui .modal .pmb-pr-head .modal-title { position: static !important; width: auto !important; margin: 0 !important; padding: 0; font-size: 17px !important; font-weight: 600; line-height: 1.2; color: #fff; }
html.pmb-ui .modal .modal-footer.pmb-pr-foot { display: flex; justify-content: flex-end; padding: 12px 20px; }

/* ---------- Expanded auth table: header / value alignment and column widths ---------- */
/* numeric columns (Approved, Used, Remaining, Without auth): headers right-aligned like their values.
   Needs the #tblAuthReport prefix because the generic header rule above carries it. */
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(6),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(7),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(8),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(9),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(6),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(7),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(8),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(9) { text-align: right !important; padding-right: 20px !important; }

/* column widths (DataTables writes inline widths; these win) */
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(1) { width: 46px !important; }
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(2) { width: 20% !important; }
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(3),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(4) { width: 9% !important; }
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(5) { width: 26% !important; }
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(6),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(7),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(8),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(9) { width: 8% !important; }

/* pills inside the Auth # cell */
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > tbody > tr > td:nth-child(2) .pmb-sum-item { margin-bottom: 0; }
/* chip inside the status sub-line stays compact */
html.pmb-ui .pmb-ad-sub span[style*="fdd58b"] { padding: 1px 8px !important; font-size: 12px; }

/* =====================================================================
   Round 4 (2026-10-09)
   ===================================================================== */

/* ---- 1-3. Main grid: Summary on one line, wider Summary / Client Note, narrower expander + patient ---- */
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(1) { width: 3% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(2) { width: 11% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(3) { width: 11% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(4) { width: 28% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(5) { width: 9% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(6) { width: 10% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(7) { width: 14% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(8) { width: 14% !important; }
html.pmb-ui #tblAuthReport td.details-control { width: 36px; padding-left: 12px !important; padding-right: 0 !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(2),
html.pmb-ui #tblAuthReport > tbody > tr > td:nth-child(2) { padding-left: 2px !important; padding-right: 6px !important; }

/* each Summary entry on a single line: pill + its detail side by side */
html.pmb-ui #tblAuthReport .pmb-sum-item { flex-direction: row; align-items: center; flex-wrap: nowrap; gap: 8px; white-space: nowrap; margin-bottom: 6px; }
html.pmb-ui #tblAuthReport .pmb-sum-sub { white-space: nowrap; }

/* ---- 5. multi-select checkboxes: look (and are) enabled ---- */
html.pmb-ui .ms-drop input[type="checkbox"],
html.pmb-ui .ms-drop input[type="radio"] {
    opacity: 1 !important;
    filter: none !important;
    -webkit-appearance: checkbox !important;
    appearance: auto !important;
    accent-color: var(--pmb-green);
    cursor: pointer;
    pointer-events: auto;
    width: 16px;
    height: 16px;
    background: #fff;
}
html.pmb-ui .ms-drop input[type="radio"] { -webkit-appearance: radio !important; }
html.pmb-ui .ms-drop ul > li,
html.pmb-ui .ms-drop ul > li label,
html.pmb-ui .ms-drop ul > li label span { opacity: 1 !important; color: var(--pmb-ink) !important; cursor: pointer; }
html.pmb-ui .ms-drop ul > li.selected { background: var(--pmb-blue-tint); }
html.pmb-ui .ms-drop ul > li:hover { background: var(--pmb-blue-row); }

/* ---- 6. Payer Rules: two-line column headings on a light blue band ---- */
html.pmb-ui #tblpayers > thead > tr > th {
    background: #EEF3F9 !important;
    color: var(--pmb-blue-dark) !important;
    white-space: nowrap !important;
    line-height: 1.35 !important;
    padding: 10px 12px !important;
    border-bottom: 1px solid #C9DCEF !important;
    vertical-align: middle !important;
}

/* ---- 4. Alerts (SweetAlert) in the design style ---- */
html.pmb-ui .sweet-alert {
    width: 440px !important;
    margin-left: -220px !important;
    padding: 28px 28px 22px !important;
    border-radius: 14px !important;
    background: #fff;
    box-shadow: 0 24px 60px rgba(26, 36, 51, .30) !important;
    font-family: var(--pmb-font);
}
html.pmb-ui .sweet-overlay { background: rgba(26, 36, 51, .45) !important; }
html.pmb-ui .sweet-alert h2 { margin: 18px 0 6px !important; font-family: var(--pmb-font); font-size: 18px !important; font-weight: 600 !important; color: var(--pmb-ink) !important; }
html.pmb-ui .sweet-alert p { margin: 0 0 4px !important; font-size: 14px !important; line-height: 1.5; color: var(--pmb-muted) !important; font-weight: 400; }
html.pmb-ui .sweet-alert .sa-button-container { margin-top: 18px; }
html.pmb-ui .sweet-alert button {
    height: 38px;
    padding: 0 22px !important;
    margin: 0 4px !important;
    border-radius: var(--pmb-radius) !important;
    border: 1px solid transparent !important;
    font-family: var(--pmb-font);
    font-size: 14px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}
html.pmb-ui .sweet-alert button.confirm { background-color: var(--pmb-blue) !important; color: #fff !important; }
html.pmb-ui .sweet-alert button.confirm:hover { background-color: var(--pmb-blue-dark) !important; }
html.pmb-ui .sweet-alert button.cancel { background-color: #fff !important; border-color: var(--pmb-input-border) !important; color: var(--pmb-ink) !important; }
html.pmb-ui .sweet-alert button.cancel:hover { background-color: var(--pmb-surface-alt) !important; }
html.pmb-ui .sweet-alert .sa-icon { margin-top: 0 !important; transform: scale(.86); }

/* ---------- Validation list dialog ("Please select … / Please enter …") ---------- */
html.pmb-ui .sweet-alert.pmb-alert-validation { width: 560px !important; margin-left: -280px !important; text-align: center; }
html.pmb-ui .sweet-alert.pmb-alert-validation .sa-icon { transform: scale(.7); margin: -6px auto -8px !important; }
html.pmb-ui .sweet-alert.pmb-alert-validation p { text-align: left; }
html.pmb-ui .pmb-alert-list {
    list-style: none;
    margin: 6px 0 0;
    padding: 12px 14px;
    max-height: 340px;
    overflow-y: auto;
    text-align: left;
    background: var(--pmb-surface-alt);
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius);
}
html.pmb-ui .pmb-alert-list li {
    position: relative;
    padding: 5px 0 5px 18px;
    font-size: 14px;
    line-height: 1.45;
    color: var(--pmb-ink);
    border-bottom: 1px solid var(--pmb-divider);
    user-select: text;
}
html.pmb-ui .pmb-alert-list li:last-child { border-bottom: 0; }
html.pmb-ui .pmb-alert-list li::before { content: ""; position: absolute; left: 3px; top: 13px; width: 6px; height: 6px; border-radius: 50%; background: var(--pmb-danger); }

/* ---------- Multi-selects inside popups: look like the other form fields (they were inheriting the 40px filter-panel style) ---------- */
html.pmb-ui .modal .ms-parent .ms-choice {
    height: 31px !important;
    line-height: 29px !important;
    border: 1px solid grey !important;
    border-radius: 4px !important;
    background: #fff !important;
    color: var(--pmb-ink) !important;
    font-size: 13px !important;
    opacity: 1 !important;
}
html.pmb-ui .modal .ms-parent .ms-choice > span { top: 0 !important; padding-left: 8px; color: var(--pmb-ink) !important; opacity: 1 !important; }
html.pmb-ui .modal .ms-parent .ms-choice > span.placeholder { color: var(--pmb-ink) !important; font-weight: 400; }
html.pmb-ui .modal .ms-parent .ms-choice > div { opacity: 1 !important; }
html.pmb-ui .modal .ms-parent .ms-choice:hover,
html.pmb-ui .modal .ms-parent .ms-choice:focus { border-color: var(--pmb-blue) !important; }


/* ============================================================
   Login page (Login.aspx) — scoped to .pmb-login-page so it never
   touches the report pages that share this file.
   ============================================================ */
html.pmb-ui body.pmb-login-page {
    margin: 0;
    min-height: 100vh;
    background: #E9EDF3;
    font-family: var(--pmb-font);
    color: #1E2B3C;
    -webkit-font-smoothing: antialiased;
}
html.pmb-ui .pmb-login-page *, html.pmb-ui .pmb-login-page *::before, html.pmb-ui .pmb-login-page *::after { box-sizing: border-box; }
html.pmb-ui .pmb-login-page form { margin: 0; }

html.pmb-ui .pmb-login-wrap {
    min-height: 100vh;
    padding: 40px 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}
html.pmb-ui .pmb-login-shell {
    width: 100%;
    max-width: 1120px;
    min-height: 660px;
    display: flex;
    flex-wrap: wrap;
    border-radius: 14px;
    overflow: hidden;
    background: #F3F5F9;
    border: 1px solid #DDE3EC;
    box-shadow: 0 24px 60px rgba(20, 42, 82, .14);
}

/* ---- brand panel ---- */
html.pmb-ui .pmb-login-brand {
    position: relative;
    overflow: hidden;
    flex: 1 1 460px;
    min-height: 360px;
    padding: 64px 56px 36px;
    background: #3E6FCC;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 48px;
}
html.pmb-ui .pmb-login-watermark { position: absolute; right: -150px; bottom: -110px; width: 520px; height: 520px; opacity: .08; pointer-events: none; }
html.pmb-ui .pmb-login-brand-inner { position: relative; display: flex; flex-direction: column; gap: 44px; }
html.pmb-ui .pmb-login-logo { display: flex; align-items: center; gap: 16px; }
html.pmb-ui .pmb-login-logo img { flex: none; width: 64px; height: 63px; display: block; }
html.pmb-ui .pmb-login-logo-name { display: block; font-size: 27px; line-height: 1.1; letter-spacing: -.01em; white-space: nowrap; color: #fff; }
html.pmb-ui .pmb-login-logo-name strong { font-weight: 700; }
html.pmb-ui .pmb-login-logo-tag { display: block; margin-top: 4px; font-size: 13px; line-height: 1.3; color: #DCE7FA; }
html.pmb-ui .pmb-login-pitch { display: flex; flex-direction: column; gap: 18px; max-width: 420px; }
html.pmb-ui .pmb-login-rule { width: 44px; height: 3px; border-radius: 2px; background: #7FD69A; }
html.pmb-ui .pmb-login-eyebrow { font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: #DCE7FA; }
html.pmb-ui .pmb-login-pitch h2 { margin: 0; font-size: 38px; font-weight: 700; line-height: 1.15; letter-spacing: -.01em; color: #fff; }
html.pmb-ui .pmb-login-pitch p { margin: 0; font-size: 17px; line-height: 1.5; color: #E6EEFB; }
html.pmb-ui .pmb-login-divider { width: 196px; height: 1px; background: rgba(255, 255, 255, .25); }
html.pmb-ui .pmb-login-points { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 18px; font-size: 15px; color: #EEF3FC; }
html.pmb-ui .pmb-login-points li { display: flex; align-items: center; gap: 14px; }
html.pmb-ui .pmb-login-copy { position: relative; font-size: 12px; color: #C8D8F5; }

/* ---- form side ---- */
html.pmb-ui .pmb-login-main {
    flex: 1.25 1 420px;
    min-width: 0;
    padding: 48px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 28px;
}
html.pmb-ui .pmb-login-card {
    width: 100%;
    max-width: 376px;
    padding: 26px 26px 28px;
    background: #fff;
    border: 1px solid #E3E8EF;
    border-radius: 10px;
    box-shadow: 0 8px 28px rgba(31, 58, 104, .08);
    display: flex;
    flex-direction: column;
    gap: 22px;
}
html.pmb-ui .pmb-login-head { display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center; }
html.pmb-ui .pmb-login-lock { width: 54px; height: 54px; margin-bottom: 12px; border-radius: 10px; background: #E7F4EC; color: #2E7D4A; display: flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-login-head h1 { margin: 0; font-size: 26px; font-weight: 700; letter-spacing: -.01em; color: #142A52; }
html.pmb-ui .pmb-login-head p { margin: 0; font-size: 13px; color: #5A6778; }

html.pmb-ui .pmb-login-fields { display: flex; flex-direction: column; gap: 16px; }
html.pmb-ui .pmb-login-field { display: flex; flex-direction: column; gap: 7px; }
html.pmb-ui .pmb-login-field > label { margin: 0; font-size: 13px; font-weight: 500; color: #1E2B3C; }
html.pmb-ui .pmb-login-field input[type="text"],
html.pmb-ui .pmb-login-field input[type="password"] {
    display: block;
    width: 100%;
    height: 40px;
    padding: 0 14px;
    border: 1px solid #CBD3DE;
    border-radius: 6px;
    background: #fff;
    box-shadow: none;
    font: inherit;
    font-size: 13px;
    color: #1E2B3C;
}
html.pmb-ui .pmb-login-field input::placeholder { color: #8A97A8; }
html.pmb-ui .pmb-login-field input:focus { outline: none; border-color: #3E6FCC; box-shadow: 0 0 0 3px rgba(62, 111, 204, .2); }
html.pmb-ui .pmb-login-field.pmb-has-error input { border: 2px solid #C62828; padding: 0 13px; }
html.pmb-ui .pmb-login-field input.pmb-has-toggle { padding-right: 48px; }
html.pmb-ui .pmb-login-passwrap { position: relative; }
html.pmb-ui .pmb-login-toggle {
    position: absolute; top: 0; right: 0; width: 44px; height: 40px;
    border: 0; border-radius: 6px; background: transparent; color: #3D4A5C; cursor: pointer;
    display: flex; align-items: center; justify-content: center; padding: 0;
}
html.pmb-ui .pmb-login-toggle:hover { color: #142A52; }
html.pmb-ui .pmb-login-toggle .pmb-eye-off { display: none; }
html.pmb-ui .pmb-login-toggle.is-shown .pmb-eye-on { display: none; }
html.pmb-ui .pmb-login-toggle.is-shown .pmb-eye-off { display: block; }
html.pmb-ui .pmb-login-page button:focus-visible,
html.pmb-ui .pmb-login-page a:focus-visible { outline: 3px solid rgba(62, 111, 204, .5); outline-offset: 2px; }

html.pmb-ui .pmb-field-error { display: block; font-size: 12px; color: #A61B1B; }

html.pmb-ui .pmb-login-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
html.pmb-ui .pmb-login-check { min-height: 40px; display: flex; align-items: center; gap: 10px; }
html.pmb-ui .pmb-login-check span { display: flex; align-items: center; gap: 10px; }
html.pmb-ui .pmb-login-check input[type="checkbox"] { width: 18px; height: 18px; margin: 0; accent-color: #3E6FCC; position: static; }
html.pmb-ui .pmb-login-check label { margin: 0; font-size: 13px; font-weight: 400; color: #1E2B3C; cursor: pointer; }
html.pmb-ui .pmb-login-page a.pmb-login-link { min-height: 40px; display: inline-flex; align-items: center; font-size: 13px; color: #2F62C2; text-decoration: none; cursor: pointer; }
html.pmb-ui .pmb-login-page a.pmb-login-link:hover { color: #1F4A99; text-decoration: underline; }

html.pmb-ui .pmb-login-page a.pmb-login-submit {
    height: 46px; border: 0; border-radius: 6px; background: #2E7D4A; color: #fff;
    font: inherit; font-size: 15px; font-weight: 600; text-decoration: none; cursor: pointer;
    display: flex; align-items: center; justify-content: center; gap: 10px;
}
html.pmb-ui .pmb-login-page a.pmb-login-submit:hover { background: #266B3E; color: #fff; text-decoration: none; }
html.pmb-ui .pmb-login-page a.pmb-login-submit .pmb-spin { display: none; animation: pmbspin .9s linear infinite; }
html.pmb-ui .pmb-login-page a.pmb-login-submit.is-busy { background: #4F9468; cursor: progress; pointer-events: none; }
html.pmb-ui .pmb-login-page a.pmb-login-submit.is-busy .pmb-spin { display: block; }
html.pmb-ui .pmb-login-page a.pmb-login-submit.is-busy .pmb-arrow { display: none; }
@keyframes pmbspin { to { transform: rotate(360deg); } }

html.pmb-ui .pmb-login-alert {
    display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px;
    border-radius: 6px; background: #FDEDED; border: 1px solid #F2B8B8; color: #8A1C1C;
    font-size: 13px; line-height: 1.45;
}
html.pmb-ui .pmb-login-alert:empty { display: none; }
html.pmb-ui .pmb-login-alert svg { flex: none; margin-top: 2px; }
html.pmb-ui .pmb-login-help { margin: 0; font-size: 12px; color: #3D4A5C; }
html.pmb-ui .pmb-login-help a { color: #2F62C2; }

/* inline forgot-password panel is kept for the existing code-behind; the link goes to /ForgotPassword.aspx */
html.pmb-ui .pmb-login-forgot { display: none; }

@media (max-width: 767px) {
    html.pmb-ui .pmb-login-wrap { padding: 16px 12px; align-items: flex-start; }
    html.pmb-ui .pmb-login-brand { padding: 32px 24px 24px; gap: 28px; min-height: 0; flex-basis: auto; }
    html.pmb-ui .pmb-login-brand-inner { gap: 28px; }
    html.pmb-ui .pmb-login-pitch h2 { font-size: 28px; }
    html.pmb-ui .pmb-login-pitch p, html.pmb-ui .pmb-login-divider, html.pmb-ui .pmb-login-points { display: none; }
    html.pmb-ui .pmb-login-logo-name { font-size: 22px; white-space: normal; }
    html.pmb-ui .pmb-login-main { padding: 28px 16px; }
}
@media (prefers-reduced-motion: reduce) {
    html.pmb-ui .pmb-login-page a.pmb-login-submit .pmb-spin { animation: none; }
}

/* Forgot-password page (ForgotPassword.aspx) reuses the login shell */
html.pmb-ui .pmb-login-page button.pmb-login-submit {
    height: 46px; border: 0; border-radius: 6px; background: #2E7D4A; color: #fff; width: 100%;
    font: inherit; font-size: 15px; font-weight: 600; cursor: pointer;
    display: flex; align-items: center; justify-content: center; gap: 10px;
}
html.pmb-ui .pmb-login-page button.pmb-login-submit:hover { background: #266B3E; }
html.pmb-ui .pmb-login-page button.pmb-login-submit .pmb-spin { display: none; animation: pmbspin .9s linear infinite; }
html.pmb-ui .pmb-login-page button.pmb-login-submit.is-busy { background: #4F9468; cursor: progress; pointer-events: none; }
html.pmb-ui .pmb-login-page button.pmb-login-submit.is-busy .pmb-spin { display: block; }
html.pmb-ui .pmb-login-page button.pmb-login-submit.is-busy .pmb-arrow { display: none; }
html.pmb-ui .pmb-login-alert[hidden] { display: none; }
/* OTP step */
html.pmb-ui .pmb-otp-row { display: flex; gap: 8px; }
html.pmb-ui .pmb-login-field input.pmb-otp-box[type="text"] {
    width: 44px; height: 54px; flex: 0 1 44px; min-width: 0; padding: 0 !important; text-align: center;
    font-size: 22px; font-weight: 600; border: 1px solid #C6CFDB; border-radius: 6px; color: #1E2B3C;
}
html.pmb-ui .pmb-login-field input.pmb-otp-box[type="text"]:focus { border-color: #3E6FCC; }
html.pmb-ui .pmb-login-field.pmb-has-error input.pmb-otp-box[type="text"] { border: 2px solid #C62828; }
html.pmb-ui .pmb-otp-real { display: none !important; }
html.pmb-ui .pmb-login-fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
html.pmb-ui .pmb-login-fieldset > legend { padding: 0; margin: 0 0 8px; border: 0; width: auto; font-size: 13px; font-weight: 500; color: #1E2B3C; }
html.pmb-ui .pmb-login-resend { margin: 0; text-align: center; font-size: 14px; color: #5A6778; }
html.pmb-ui .pmb-login-page .pmb-login-resend a { font-weight: 500; color: #2F62C2; cursor: pointer; text-decoration: none; }
html.pmb-ui .pmb-login-page .pmb-login-resend a:hover { color: #1F4A99; text-decoration: underline; }
html.pmb-ui .pmb-login-hint { font-size: 12px; line-height: 1.45; color: #5A6778; }
html.pmb-ui .pmb-login-alert.is-success { background: #E7F4EC; border-color: #B5DCC3; color: #1E5A35; }
html.pmb-ui .pmb-login-lead { margin: 0; font-size: 14px; line-height: 1.55; color: #5A6778; }
html.pmb-ui .pmb-login-page a.pmb-login-back { align-self: flex-start; min-height: 32px; display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 500; color: #2F62C2; text-decoration: none; }
html.pmb-ui .pmb-login-page a.pmb-login-back:hover { color: #1F4A99; text-decoration: underline; }
html.pmb-ui .pmb-login-card.pmb-login-card-form { gap: 20px; }
html.pmb-ui .pmb-login-lock.is-blue { background: #E8EFFB; color: #2F62C2; }
html.pmb-ui .pmb-login-lock.is-amber { background: #FFF4E5; color: #A35A00; }
html.pmb-ui .pmb-login-page a.pmb-login-link.pmb-login-center { align-self: center; justify-content: center; }

/* =====================================================================
   Round 5 (2026-10-12)
   ===================================================================== */

/* Summary entries read "Auth Required - 14 visits without auth#" on one line */
html.pmb-ui #tblAuthReport .pmb-sum-item { gap: 6px; }
html.pmb-ui #tblAuthReport .pmb-sum-sub::before { content: "- "; }

/* main grid widths: Client Note wider */
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(2) { width: 11% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(3) { width: 10% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(4) { width: 26% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(5) { width: 8% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(6) { width: 9% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(7) { width: 13% !important; }
html.pmb-ui #tblAuthReport > thead > tr > th:nth-child(8) { width: 20% !important; }

/* Client Note: 100 characters + Show more */
html.pmb-ui .pmb-note-text { word-break: break-word; }
html.pmb-ui .pmb-note-toggle { margin-left: 2px; color: var(--pmb-blue) !important; font-size: 12px; font-weight: 600; text-decoration: none !important; cursor: pointer; white-space: nowrap; }
html.pmb-ui .pmb-note-toggle:hover { text-decoration: underline !important; }

/* summary cards act as filters */
html.pmb-ui .pmb-card[data-card] { cursor: pointer; transition: border-color .15s, box-shadow .15s; }
html.pmb-ui .pmb-card[data-card]:hover { border-color: #B9CFE6; box-shadow: 0 4px 14px rgba(20, 50, 70, .08); }
html.pmb-ui .pmb-card[data-card]:focus-visible { outline: 0; box-shadow: 0 0 0 3px rgba(31, 111, 178, .25); }
html.pmb-ui .pmb-card.pmb-card-active { border-color: var(--pmb-blue); box-shadow: 0 0 0 3px rgba(31, 111, 178, .15); }
html.pmb-ui .pmb-card.pmb-card-active .pmb-card-label::after { content: "  \2713  filtered"; font-weight: 600; letter-spacing: .04em; text-transform: none; color: var(--pmb-blue); }

/* Expiring Soon: the hourglass tile is the one settings button */
html.pmb-ui .pmb-icon-tile { border: 0; padding: 0; cursor: pointer; }
html.pmb-ui .pmb-icon-tile:hover { filter: brightness(.96); box-shadow: 0 0 0 2px #F3D9B8; }
html.pmb-ui .pmb-icon-tile[aria-expanded="true"] { box-shadow: 0 0 0 2px #E8C48F; }

/* nested auth table: 8 columns now */
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(2) { width: 18% !important; }
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(3),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(4) { width: 10% !important; }
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(5) { width: 28% !important; }
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(6),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(7),
html.pmb-ui #tblAuthReport table[id^="tblAuthReportOther_"] > thead > tr > th:nth-child(8) { width: 10% !important; }

/* third-level visit list: follow-up note column */
html.pmb-ui .pmb-visits table#tblStatus > tbody > tr > td { word-break: break-word; }

/* ============================================================
   Claim Scrubbing page (refreshClientDataManual2.aspx)
   Scoped to html.pmb-scrub, which that page sets. Same type scale as the
   Job Profiles page: IBM Plex Sans, 13px base, 12px table/buttons, 11px small labels.
   Layout follows the Claim Scrubbing design: one card (title band, tabs, controls),
   summary tiles, then the claims card.
   ============================================================ */
html.pmb-ui.pmb-scrub {
    --scrub-accent: #2F78D6;
    --scrub-accent-dark: #2462B4;
    --scrub-band: #4A86C4;
    --scrub-row: #F3F5F8;
}
html.pmb-ui.pmb-scrub #Divdemo,
html.pmb-ui.pmb-scrub #demomenu,
html.pmb-ui.pmb-scrub .pmb-scrub-title {
    font-family: var(--pmb-font);
    letter-spacing: 0;
}
html.pmb-ui.pmb-scrub #Divdemo label,
html.pmb-ui.pmb-scrub #Divdemo input,
html.pmb-ui.pmb-scrub #Divdemo select,
html.pmb-ui.pmb-scrub #Divdemo button,
html.pmb-ui.pmb-scrub #Divdemo table { font-family: var(--pmb-font); }

/* ---- title band ---- */
html.pmb-ui.pmb-scrub .pmb-scrub-title {
    background: var(--scrub-band) !important;
    border-radius: 8px 8px 0 0;
    color: #fff;
}
html.pmb-ui.pmb-scrub .pmb-scrub-title p { margin: 0 !important; padding: 14px 20px !important; }
html.pmb-ui.pmb-scrub #MainContent_otherlblGuidelInes,
html.pmb-ui.pmb-scrub #MainContent_demoTitle {
    padding: 0 !important;
    font-size: 18px !important;
    font-weight: 600;
    line-height: 1.15;
}

/* ---- tabs: active tab = accent text + accent underline (the page paints the active one orange inline) ---- */
html.pmb-ui.pmb-scrub #demomenu {
    background: var(--pmb-surface-alt);
    border: 1px solid var(--pmb-border);
    border-top: 0;
    border-bottom: 0;
    padding: 0 12px;
}
html.pmb-ui.pmb-scrub #demomenu button.tab {
    height: 44px;
    padding: 0 18px !important;
    border: 0 !important;
    border-bottom: 3px solid transparent !important;
    background: transparent !important;
    color: var(--pmb-ink-2);
    font: 600 13px var(--pmb-font) !important;
    float: left;
}
html.pmb-ui.pmb-scrub #demomenu button.tab[style*="range"],
html.pmb-ui.pmb-scrub #demomenu button.tab.active {
    color: var(--scrub-accent);
    border-bottom-color: var(--scrub-accent) !important;
}

/* ---- controls card ---- */
html.pmb-ui.pmb-scrub #Divdemo {
    background: var(--pmb-surface);
    border: 1px solid var(--pmb-border);
    border-top: 1px solid var(--pmb-border);
    border-radius: 0 0 var(--pmb-radius) var(--pmb-radius);
    padding: 18px 20px !important;
    font-size: 13px;
    line-height: 1.4;
    color: var(--pmb-ink);
}
html.pmb-ui.pmb-scrub #Divdemo .form-inline { margin: 0; padding: 0; }

/* row 1: client, date range, scrubbing checkboxes, action buttons (right) */
html.pmb-ui.pmb-scrub #Divdemo .row:has(> div > #MainContent_lstClients) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin: 0;
}
html.pmb-ui.pmb-scrub #Divdemo .row:has(> div > #MainContent_lstClients)::before,
html.pmb-ui.pmb-scrub #Divdemo .row:has(> div > #MainContent_lstClients)::after { display: none; }
html.pmb-ui.pmb-scrub #Divdemo .row:has(> div > #MainContent_lstClients) > div[class*="col-"] {
    float: none;
    width: auto !important;
    padding: 0 !important;
    margin: 0;
}
html.pmb-ui.pmb-scrub #Divdemo .row:has(> div > #MainContent_lstClients) > div:has(> #MainContent_btnSubmit),
html.pmb-ui.pmb-scrub #Divdemo .row:has(> div > #MainContent_lstClients) > div:has(#MainContent_btnProcess) {
    flex: 1 1 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}
html.pmb-ui.pmb-scrub #btnPayerSettings { margin-left: auto; }
html.pmb-ui.pmb-scrub #MainContent_lstClients { width: 280px !important; }
html.pmb-ui.pmb-scrub #MainContent_DdlDateFilter { width: 170px !important; }
html.pmb-ui.pmb-scrub #MainContent_lstClients,
html.pmb-ui.pmb-scrub #MainContent_DdlDateFilter {
    height: 38px;
    padding: 0 10px;
    font-size: 13px !important;
    color: var(--pmb-ink);
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    box-shadow: none;
}
html.pmb-ui.pmb-scrub #Divdemo input[type="checkbox"] { width: 16px; height: 16px; accent-color: var(--scrub-accent); }
html.pmb-ui.pmb-scrub #Divdemo .chkCheckbox label,
html.pmb-ui.pmb-scrub #Divdemo [id^="div"] > span > label { font-size: 13px !important; font-weight: 500; }

/* buttons: accent filled / white with border, 6px radius */
html.pmb-ui.pmb-scrub #Divdemo .btn {
    height: 38px;
    padding: 0 16px !important;
    font-size: 13px;
    font-weight: 600;
    border-radius: 6px;
    box-shadow: none;
}
html.pmb-ui.pmb-scrub #Divdemo .btn-primary { background: var(--scrub-accent); border: 1px solid var(--scrub-accent); color: #fff; }
html.pmb-ui.pmb-scrub #Divdemo .btn-primary:hover,
html.pmb-ui.pmb-scrub #Divdemo .btn-primary:focus { background: var(--scrub-accent-dark); border-color: var(--scrub-accent-dark); }
html.pmb-ui.pmb-scrub #MainContent_btnReset,
html.pmb-ui.pmb-scrub #btnPayerSettings,
html.pmb-ui.pmb-scrub #MainContent_btnDeleteEncounter { background: #fff; border: 1px solid #C9DDF2; color: var(--pmb-ink-2); }
html.pmb-ui.pmb-scrub #MainContent_btnDeleteEncounter { color: var(--pmb-danger); }
html.pmb-ui.pmb-scrub #MainContent_btnReset:hover,
html.pmb-ui.pmb-scrub #btnPayerSettings:hover,
html.pmb-ui.pmb-scrub #MainContent_btnDeleteEncounter:hover { background: var(--pmb-surface-alt); border-color: var(--pmb-input-border); color: var(--pmb-ink); }
html.pmb-ui.pmb-scrub #MainContent_btnAddtoQue { background: var(--pmb-green); border-color: var(--pmb-green); }
html.pmb-ui.pmb-scrub #MainContent_btnAddtoQue:hover { background: var(--pmb-green-dark); border-color: var(--pmb-green-dark); }

/* row 2: filters, separated from row 1 by a divider inside the same card */
html.pmb-ui.pmb-scrub #dvfilterstatus {
    background: transparent;
    border: 0;
    border-top: 1px solid var(--pmb-divider);
    border-radius: 0;
    margin: 16px 0 0;
    padding: 14px 0 0 !important;
}
html.pmb-ui.pmb-scrub #dvfilterstatus > span,
html.pmb-ui.pmb-scrub #dvfilterstatus #spClaimTypeFilter > span {
    margin-left: 0 !important;
    margin-right: 4px;
    font-size: 13px !important;
    font-weight: 600;
    color: var(--pmb-muted);
}
html.pmb-ui.pmb-scrub #dvfilterstatus .form-control {
    height: 36px;
    padding: 0 8px;
    font-size: 13px !important;
    color: var(--pmb-ink);
    background-color: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    box-shadow: none;
    margin-right: 10px;
}
html.pmb-ui.pmb-scrub #dvfilterstatus .ms-parent { vertical-align: middle; margin-right: 10px; }
html.pmb-ui.pmb-scrub #dvfilterstatus .btn { height: 36px; }

/* ---- summary tiles ---- */
html.pmb-ui.pmb-scrub .pmb-scrub-tiles {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 12px;
    margin: 16px 0;
}
html.pmb-ui.pmb-scrub .pmb-scrub-tile {
    background: var(--pmb-surface);
    border: 1px solid var(--pmb-border);
    border-left: 4px solid var(--scrub-accent);
    border-radius: var(--pmb-radius);
    padding: 12px 16px;
}
html.pmb-ui.pmb-scrub .pmb-scrub-tile.is-green { border-left-color: var(--pmb-green); }
html.pmb-ui.pmb-scrub .pmb-scrub-tile.is-orange { border-left-color: #B4610E; }
html.pmb-ui.pmb-scrub .pmb-scrub-tile.is-sky { border-left-color: #5B97CF; }
html.pmb-ui.pmb-scrub .pmb-scrub-tile .k { font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pmb-muted); }
html.pmb-ui.pmb-scrub .pmb-scrub-tile .v { font-size: 17px; font-weight: 600; line-height: 1.2; margin-top: 2px; }
html.pmb-ui.pmb-scrub .pmb-scrub-tile.pmb-mono .v { font-family: var(--pmb-mono); font-size: 14px; }

/* ---- claims header row (Expand All, pager, Apply Changes, Refresh) ---- */
html.pmb-ui.pmb-scrub #dvfilter2 {
    padding: 14px 0 !important;
    font-size: 13px;
}

/* ---- claims grid: restyled with CSS only, markup and ids are unchanged ---- */
html.pmb-ui.pmb-scrub #griddup,
html.pmb-ui.pmb-scrub #griddup tbody { font-size: 12px !important; }
html.pmb-ui.pmb-scrub #griddup { background: #fff; border-collapse: collapse; margin-bottom: 0; }
html.pmb-ui.pmb-scrub #griddup > thead { background: var(--scrub-accent) !important; color: #fff; }
html.pmb-ui.pmb-scrub #griddup > thead > tr > th {
    padding: 10px 8px;
    font-size: 12px;
    font-weight: 600;
    vertical-align: middle;
    border-color: var(--scrub-accent);
    background: var(--scrub-accent);
}
html.pmb-ui.pmb-scrub #griddup > tbody > tr > td {
    padding: 14px 8px;
    vertical-align: middle;
    background-color: var(--scrub-row);
    border-color: var(--pmb-border);
}
html.pmb-ui.pmb-scrub #griddup a { color: #3B7DD8; }

/* ---- latest design: zebra rows, selected-row highlight, Draft/Review toggle, CPT lines table ---- */
html.pmb-ui.pmb-scrub #griddup > tbody > tr > td { background-color: #FFFFFF; }
html.pmb-ui.pmb-scrub #griddup > tbody:nth-of-type(even) > tr:first-child > td { background-color: var(--scrub-row); }
html.pmb-ui.pmb-scrub #griddup > tbody > tr:has(> td [elm-action="scrubbing"] input:checked) > td {
    background-color: #FFF4D9 !important;
    border-bottom-color: #E8CD8A !important;
}
html.pmb-ui.pmb-scrub .pmb-scrub-bucket {
    display: inline-flex;
    margin-right: 12px;
    vertical-align: middle;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    overflow: hidden;
}
html.pmb-ui.pmb-scrub .pmb-scrub-bucket button {
    height: 34px;
    padding: 0 14px;
    border: 0;
    background: #fff;
    color: var(--pmb-ink-2);
    font: 600 13px var(--pmb-font);
    cursor: pointer;
}
html.pmb-ui.pmb-scrub .pmb-scrub-bucket button + button { border-left: 1px solid var(--pmb-input-border); }
html.pmb-ui.pmb-scrub .pmb-scrub-bucket button[aria-pressed="true"] { background: var(--scrub-accent); color: #fff; }

/* CPT lines (expanded row): light header, zebra rows, roomier cells */
html.pmb-ui.pmb-scrub #griddup table.tablebk {
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid #CDD9E8;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(28, 55, 90, .06);
    background: #fff;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk > thead > tr { background: #F4F7FB !important; color: #5B6675 !important; }
html.pmb-ui.pmb-scrub #griddup table.tablebk > thead > tr > th {
    padding: 10px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
    color: #5B6675;
    background: #F4F7FB;
    border: 0;
    border-bottom: 2px solid #D7E0EC;
    border-right: 1px solid #E7ECF2;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr > td {
    padding: 12px 10px;
    font-size: 12px;
    background: #fff;
    border: 0;
    border-bottom: 1px solid #EBEFF4;
    border-right: 1px solid #F2F5F8;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr:nth-child(even) > td { background: #FAFBFD; }
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr:hover > td { background: #EEF4FC; }

/* ---- Scrubbing Logs grid (shown below the controls): same look as the claims grid, Job Profiles type scale ---- */
html.pmb-ui.pmb-scrub #listofscrubbingstatus { padding-left: 0 !important; margin: 8px 0 10px; }
html.pmb-ui.pmb-scrub #listofscrubbingstatus .page-title {
    font-family: var(--pmb-font);
    font-size: 14px !important;
    font-weight: 600;
    line-height: 1.3;
    color: var(--pmb-ink);
}
html.pmb-ui.pmb-scrub #grid {
    width: 100%;
    font-family: var(--pmb-font);
    font-size: 13px !important;
    background: #fff;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius);
    overflow: hidden;
    margin-bottom: 16px;
}
html.pmb-ui.pmb-scrub #grid thead,
html.pmb-ui.pmb-scrub #grid thead tr { background: var(--scrub-accent) !important; color: #fff; }
html.pmb-ui.pmb-scrub #grid > thead > tr > th {
    padding: 10px 12px;
    font-size: 12px;
    font-weight: 600;
    vertical-align: middle;
    color: #fff;
    background: var(--scrub-accent);
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, .18);
}
html.pmb-ui.pmb-scrub #grid > thead > tr > th:last-child { border-right: 0; }
html.pmb-ui.pmb-scrub #grid > tbody > tr > td {
    padding: 10px 12px;
    font-size: 13px;
    vertical-align: middle;
    color: var(--pmb-ink);
    background: #fff;
    border: 0;
    border-bottom: 1px solid var(--pmb-border);
    border-right: 1px solid #E3E8EF;
}
html.pmb-ui.pmb-scrub #grid > tbody > tr > td:last-child { border-right: 0; }
html.pmb-ui.pmb-scrub #grid > tbody:nth-of-type(even) > tr > td { background: var(--scrub-row); }
html.pmb-ui.pmb-scrub #grid > tbody:last-child > tr > td { border-bottom: 0; }
html.pmb-ui.pmb-scrub #grid > tbody > tr:hover > td { background: var(--pmb-blue-row); }

/* ---- filter row as one tidy line: multi-selects first, then the single-select filters, then search ---- */
html.pmb-ui.pmb-scrub #dvfilterstatus:not([style*="none"]) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 6px;
}
html.pmb-ui.pmb-scrub #dvfilterstatus > span:has(#MainContent_txtCommonSearch) {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: 0 !important;
}
html.pmb-ui.pmb-scrub #dvfilterstatus > span:has(#MainContent_txtCommonSearch) .form-control { margin-right: 0; }
html.pmb-ui.pmb-scrub #dvfilterstatus #MainContent_txtCommonSearch { width: 220px !important; }
html.pmb-ui.pmb-scrub #dvfilterstatus #spClaimTypeFilter { display: inline-flex; align-items: center; gap: 6px; }

/* ---- Draft / Review / Approved / Rejected toggle and the Move to Review / Delete buttons ---- */
html.pmb-ui.pmb-scrub #MainContent_btnReviewEncounter,
html.pmb-ui.pmb-scrub #MainContent_btnDeleteEncounter { display: none !important; }
html.pmb-ui.pmb-scrub .pmb-scrub-actions { display: inline-flex; gap: 8px; margin-right: 8px; vertical-align: middle; }
html.pmb-ui.pmb-scrub .pmb-scrub-act {
    height: 36px;
    padding: 0 14px;
    border-radius: 6px;
    font: 600 13px var(--pmb-font);
    cursor: pointer;
}
html.pmb-ui.pmb-scrub .pmb-scrub-act.is-primary { background: var(--scrub-accent); border: 1px solid var(--scrub-accent); color: #fff; }
html.pmb-ui.pmb-scrub .pmb-scrub-act.is-primary:hover { background: var(--scrub-accent-dark); border-color: var(--scrub-accent-dark); }
html.pmb-ui.pmb-scrub .pmb-scrub-act.is-danger { background: #fff; border: 1px solid #F5D6D2; color: var(--pmb-danger); }
html.pmb-ui.pmb-scrub .pmb-scrub-act.is-danger:hover { background: var(--pmb-danger-bg); }

/* ---- row expander: the design's bordered chevron button instead of the old plus/minus image ---- */
html.pmb-ui.pmb-scrub #Divdemo img[src$="plus.png"],
html.pmb-ui.pmb-scrub #Divdemo img[src$="minus.png"] {
    box-sizing: border-box;
    width: 26px;
    height: 26px;
    padding: 6px;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    background: #fff;
    cursor: pointer;
    vertical-align: middle;
    object-fit: contain;
}
html.pmb-ui.pmb-scrub #Divdemo img[src$="plus.png"] {
    content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%232F78D6' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>");
}
html.pmb-ui.pmb-scrub #Divdemo img[src$="minus.png"] {
    content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%232F78D6' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M6 15l6-6 6 6'/></svg>");
}
html.pmb-ui.pmb-scrub #Divdemo img[src$="plus.png"]:hover,
html.pmb-ui.pmb-scrub #Divdemo img[src$="minus.png"]:hover { background: var(--pmb-blue-tint); }

/* ---- Status / Queue Status cells: plain cell with a pill (the page paints them green / red with white text) ---- */
html.pmb-ui.pmb-scrub #griddup > tbody > tr > td.btn-success,
html.pmb-ui.pmb-scrub #griddup > tbody > tr > td.clsIncomplete {
    color: var(--pmb-ink) !important;
    font-weight: 400;
    text-align: left;
}
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-pill {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.3;
    white-space: nowrap;
    background: #E8F1FA;
    color: var(--scrub-accent);
}
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-pill.is-amber { background: #FFF1E0; color: #8A4B0F; }
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-pill.is-green { background: #E7F4EA; color: #22602F; }
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-pill.is-red { background: #FCEBEA; color: #A93226; }

/* ============================================================
   Check Eligibility tab (Eligibility / Authorization / Prescrubbing)
   Same look as the Claim Scrubbing tab: tab strip, controls, accent-header grid, chevron expanders.
   ============================================================ */
html.pmb-ui.pmb-scrub #divEligibilityMenu {
    margin: 0 !important;
    padding: 0 12px;
    background: var(--pmb-surface-alt);
    border: 1px solid var(--pmb-border);
    border-top: 0;
    overflow: hidden;
}
html.pmb-ui.pmb-scrub #divEligibilityMenu button.tab {
    height: 40px;
    padding: 0 18px !important;
    border: 0 !important;
    border-bottom: 3px solid transparent !important;
    background: transparent !important;
    color: var(--pmb-ink-2);
    font: 600 13px var(--pmb-font) !important;
    float: left;
}
html.pmb-ui.pmb-scrub #divEligibilityMenu button.tab[style*="range"] {
    color: var(--scrub-accent);
    border-bottom-color: var(--scrub-accent) !important;
}

/* date range controls */
html.pmb-ui.pmb-scrub #selectDateRange,
html.pmb-ui.pmb-scrub #txtFromDate,
html.pmb-ui.pmb-scrub #txtToDate {
    height: 36px;
    padding: 0 10px;
    font: 400 13px var(--pmb-font) !important;
    color: var(--pmb-ink);
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    box-shadow: none;
}
html.pmb-ui.pmb-scrub #spDateRange { font-size: 13px !important; font-weight: 600; color: var(--pmb-muted); }
html.pmb-ui.pmb-scrub #btnSearchEligibility {
    height: 36px;
    padding: 0 16px;
    font: 600 13px var(--pmb-font);
    background: var(--scrub-accent);
    border: 1px solid var(--scrub-accent);
    border-radius: 6px;
    color: #fff;
}

/* grids */
html.pmb-ui.pmb-scrub #tblEligibility,
html.pmb-ui.pmb-scrub #tblAuthorization,
html.pmb-ui.pmb-scrub #tblPrescrubbing {
    width: 100%;
    font-family: var(--pmb-font);
    font-size: 13px !important;
    background: #fff;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius);
}
html.pmb-ui.pmb-scrub #tblEligibility > thead > tr > th,
html.pmb-ui.pmb-scrub #tblAuthorization > thead > tr > th,
html.pmb-ui.pmb-scrub #tblPrescrubbing > thead > tr > th {
    padding: 10px 12px;
    font-size: 12px;
    font-weight: 600;
    vertical-align: middle;
    color: #fff;
    background: var(--scrub-accent) !important;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, .18);
}
html.pmb-ui.pmb-scrub #tblEligibility > tbody > tr > td,
html.pmb-ui.pmb-scrub #tblAuthorization > tbody > tr > td,
html.pmb-ui.pmb-scrub #tblPrescrubbing > tbody > tr > td {
    padding: 10px 12px;
    font-size: 13px;
    vertical-align: middle;
    color: var(--pmb-ink);
    border: 0;
    border-bottom: 1px solid var(--pmb-border);
    border-right: 1px solid #E3E8EF;
}

/* expander: bordered chevron button (the grids render a Font Awesome plus-square) */
html.pmb-ui.pmb-scrub #tblEligibility td.details-control > i.fa,
html.pmb-ui.pmb-scrub #tblAuthorization td.details-control > i.fa,
html.pmb-ui.pmb-scrub #tblPrescrubbing td.details-control > i.fa {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    background: #fff;
    color: var(--scrub-accent);
    font-size: 0 !important;
}
html.pmb-ui.pmb-scrub #tblEligibility td.details-control > i.fa::before,
html.pmb-ui.pmb-scrub #tblAuthorization td.details-control > i.fa::before,
html.pmb-ui.pmb-scrub #tblPrescrubbing td.details-control > i.fa::before {
    content: "\f107" !important;
    font-family: FontAwesome;
    font-size: 16px;
    line-height: 1;
}
html.pmb-ui.pmb-scrub #tblEligibility tr.shown td.details-control > i.fa::before,
html.pmb-ui.pmb-scrub #tblAuthorization tr.shown td.details-control > i.fa::before,
html.pmb-ui.pmb-scrub #tblPrescrubbing tr.shown td.details-control > i.fa::before { content: "\f106" !important; }
html.pmb-ui.pmb-scrub #tblEligibility td.details-control:hover > i.fa,
html.pmb-ui.pmb-scrub #tblAuthorization td.details-control:hover > i.fa,
html.pmb-ui.pmb-scrub #tblPrescrubbing td.details-control:hover > i.fa { background: var(--pmb-blue-tint); border-color: var(--scrub-accent); }

/* ---- search box, Records dropdown in the claims header, loader ---- */
html.pmb-ui.pmb-scrub #dvfilterstatus #MainContent_DdlTypeFilter { width: 150px !important; }
html.pmb-ui.pmb-scrub #dvfilterstatus #MainContent_txtCommonSearch { width: 220px !important; }
html.pmb-ui.pmb-scrub #dvfilter2 > span { font-size: 13px !important; }
html.pmb-ui.pmb-scrub #dvfilter2 .form-control {
    display: inline-block;
    height: 36px;
    padding: 0 8px;
    font-size: 13px !important;
    vertical-align: middle;
    background-color: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    box-shadow: none;
}

html.pmb-ui.pmb-scrub .pmb-scrub-loader {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, .6);
    cursor: progress;
}
html.pmb-ui.pmb-scrub .pmb-scrub-loader-box {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 22px;
    background: #fff;
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .12);
    font: 600 13px var(--pmb-font);
    color: var(--pmb-ink-2);
}
html.pmb-ui.pmb-scrub .pmb-scrub-spinner {
    width: 18px;
    height: 18px;
    border: 3px solid var(--pmb-blue-tint);
    border-top-color: var(--scrub-accent);
    border-radius: 50%;
    animation: pmb-scrub-spin .8s linear infinite;
}
@keyframes pmb-scrub-spin { to { transform: rotate(360deg); } }

/* ---- grid headers: IBM Plex Sans 13px / 600 (same family as the cells, never smaller than them) ---- */
html.pmb-ui.pmb-scrub #grid > thead > tr > th,
html.pmb-ui.pmb-scrub #griddup > thead > tr > th,
html.pmb-ui.pmb-scrub #tblEligibility > thead > tr > th,
html.pmb-ui.pmb-scrub #tblAuthorization > thead > tr > th,
html.pmb-ui.pmb-scrub #tblPrescrubbing > thead > tr > th {
    font-family: var(--pmb-font) !important;
    font-size: 13px !important;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.3;
}

/* ---- claims header: one tidy flex row; bot last run moves to the title band; Refresh sits after Reset ---- */
html.pmb-ui.pmb-scrub .pmb-scrub-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-right: 20px; }
html.pmb-ui.pmb-scrub .pmb-scrub-botrun {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    background: rgba(255, 255, 255, .16);
    border-radius: 6px;
    color: #fff;
    white-space: nowrap;
}
html.pmb-ui.pmb-scrub .pmb-scrub-botrun .k { font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; opacity: .85; }
html.pmb-ui.pmb-scrub .pmb-scrub-botrun .v { font: 600 13px var(--pmb-mono); }

html.pmb-ui.pmb-scrub #dvfilter2:not([style*="none"]) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
}
html.pmb-ui.pmb-scrub #dvfilter2 > span[style*="float:right"] {
    float: none !important;
    margin-left: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}
html.pmb-ui.pmb-scrub #btnRefresh { background: #fff; border: 1px solid var(--pmb-input-border); color: var(--pmb-ink-2); }
html.pmb-ui.pmb-scrub #btnRefresh:hover { background: var(--pmb-surface-alt); color: var(--pmb-ink); }

/* ============================================================
   Prescrubbing Submission Status page (PreScrubbingSubmissionStatus.aspx), same design
   ============================================================ */
html.pmb-ui.pmb-scrub #botStatusTitle {
    background: var(--scrub-band) !important;
    border-radius: 8px 8px 0 0;
    color: #fff;
    font-family: var(--pmb-font);
}
html.pmb-ui.pmb-scrub #botStatusTitle p {
    margin: 0;
    padding: 14px 20px !important;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.15;
}
html.pmb-ui.pmb-scrub #botStatusFilters {
    margin: 0 0 16px !important;
    padding: 16px 20px !important;
    background: var(--pmb-surface);
    border: 1px solid var(--pmb-border);
    border-top: 0;
    border-radius: 0 0 var(--pmb-radius) var(--pmb-radius);
    font: 600 13px var(--pmb-font) !important;
    color: var(--pmb-muted);
}
html.pmb-ui.pmb-scrub #botStatusFilters #ddlStatus {
    height: 36px !important;
    padding: 0 8px;
    font: 400 13px var(--pmb-font) !important;
    color: var(--pmb-ink);
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
}
html.pmb-ui.pmb-scrub #botStatusFilters .ms-parent { vertical-align: middle; }
html.pmb-ui.pmb-scrub #botStatusFilters #btnSearch {
    height: 36px;
    padding: 0 16px;
    font: 600 13px var(--pmb-font);
    background: var(--scrub-accent);
    border: 1px solid var(--scrub-accent);
    border-radius: 6px;
    color: #fff;
}
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus {
    width: 100%;
    font-family: var(--pmb-font);
    font-size: 13px !important;
    background: #fff;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--pmb-border);
    border-radius: var(--pmb-radius);
}
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus > thead > tr > th {
    padding: 10px 12px;
    font: 600 13px var(--pmb-font) !important;
    line-height: 1.3;
    vertical-align: middle;
    color: #fff;
    background: var(--scrub-accent) !important;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, .18);
}
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus > tbody > tr > td {
    padding: 10px 12px;
    font-size: 13px !important;
    vertical-align: middle;
    color: var(--pmb-ink);
    border: 0;
    border-bottom: 1px solid var(--pmb-border);
    border-right: 1px solid #E3E8EF;
}
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus td.details-control > i.fa {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    background: #fff;
    color: var(--scrub-accent);
    font-size: 0 !important;
}
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus td.details-control > i.fa::before {
    content: "\f107" !important;
    font-family: FontAwesome;
    font-size: 16px;
    line-height: 1;
}
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus tr.shown td.details-control > i.fa::before { content: "\f106" !important; }

/* ---- paging footer (Rows per page / Showing a-b of n / Previous - Page X of Y - Next), from the design ---- */
html.pmb-ui.pmb-scrub #dvfilter2 > span:has(#MainContent_lblRecordCount),
html.pmb-ui.pmb-scrub #dvfilter2 > span:has([id*="rptPagertop"]) { display: none; }
html.pmb-ui.pmb-scrub .pmb-scrub-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 20px;
    margin: 0 0 16px;
    background: var(--pmb-surface-alt);
    border: 1px solid var(--pmb-border);
    border-radius: 0 0 var(--pmb-radius) var(--pmb-radius);
    font: 400 13px var(--pmb-font);
}
html.pmb-ui.pmb-scrub .pmb-scrub-footer-left,
html.pmb-ui.pmb-scrub .pmb-scrub-footer-right { display: flex; align-items: center; gap: 10px; }
html.pmb-ui.pmb-scrub .pmb-scrub-footer label { margin: 0; font-weight: 600; color: var(--pmb-ink-2); }
html.pmb-ui.pmb-scrub .pmb-scrub-footer .form-control {
    display: inline-block;
    width: 90px !important;
    height: 34px;
    padding: 0 8px;
    font-size: 13px !important;
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    box-shadow: none;
}
html.pmb-ui.pmb-scrub .pmb-scrub-showing { color: var(--pmb-muted); }
html.pmb-ui.pmb-scrub .pmb-scrub-footer-right a.page_enabled,
html.pmb-ui.pmb-scrub .pmb-scrub-footer-right a.page_disabled,
html.pmb-ui.pmb-scrub .pmb-scrub-footer-right a.page_label {
    display: inline-block;
    min-width: 0;
    height: 34px;
    padding: 0 12px;
    line-height: 32px;
    font: 600 13px var(--pmb-font);
    text-decoration: none;
    border-radius: 6px;
}
html.pmb-ui.pmb-scrub .pmb-scrub-footer-right a.page_enabled { background: #fff; color: var(--pmb-ink-2) !important; border: 1px solid var(--pmb-input-border); }
html.pmb-ui.pmb-scrub .pmb-scrub-footer-right a.page_enabled:hover { background: var(--pmb-blue-tint); }
html.pmb-ui.pmb-scrub .pmb-scrub-footer-right a.page_disabled { background: #fff; color: var(--pmb-faint) !important; border: 1px solid var(--pmb-input-border); cursor: not-allowed; }
html.pmb-ui.pmb-scrub .pmb-scrub-footer-right a.page_label { padding: 0; line-height: 34px; color: var(--pmb-ink) !important; border: 0; background: transparent; cursor: default; }

/* ---- expanded claim: Move to Review / Delete live in the claims header only (as in the design) ---- */
/* per-claim buttons inside the expanded row stay available (they act on that one claim) */
html.pmb-ui.pmb-scrub #btnReviewst,
html.pmb-ui.pmb-scrub #btnDeletest { height: 34px; padding: 0 14px !important; margin-right: 8px; font: 600 13px var(--pmb-font); border-radius: 6px; }
html.pmb-ui.pmb-scrub #btnReviewst { background: var(--scrub-accent); border: 1px solid var(--scrub-accent); color: #fff; }
html.pmb-ui.pmb-scrub #btnDeletest { background: #fff; border: 1px solid #F5D6D2; color: var(--pmb-danger); }
html.pmb-ui.pmb-scrub #btnDeletest:hover { background: var(--pmb-danger-bg); }

/* edit / delete line icons as tinted buttons */
html.pmb-ui.pmb-scrub #griddup img[src$="editico.png"],
html.pmb-ui.pmb-scrub #griddup img[src$="deleteico.png"],
html.pmb-ui.pmb-scrub #griddup img[src$="Saveico.png"] {
    box-sizing: content-box;
    padding: 6px;
    border-radius: 6px;
    vertical-align: middle;
}
html.pmb-ui.pmb-scrub #griddup img[src$="editico.png"],
html.pmb-ui.pmb-scrub #griddup img[src$="Saveico.png"] { background: #EEF5FD; border: 1px solid #CFE0F5; }
html.pmb-ui.pmb-scrub #griddup img[src$="deleteico.png"] { background: #FCEFED; border: 1px solid #F5D6D2; }

/* ---- button colours per the design (specificity raised: #Divdemo .btn-primary was winning) ----
   accent filled: Submit, Search, Move to Review | white: Reset, Refresh, Payer Setting, Expand All | green: Apply Changes and Approve | red text: Delete */
html.pmb-ui.pmb-scrub #Divdemo #MainContent_btnReset,
html.pmb-ui.pmb-scrub #Divdemo #btnRefresh,
html.pmb-ui.pmb-scrub #Divdemo #btnPayerSettings,
html.pmb-ui.pmb-scrub #Divdemo #btnExpandAll {
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    color: var(--pmb-ink-2);
}
html.pmb-ui.pmb-scrub #Divdemo #btnPayerSettings { border-color: #C9DDF2; }
html.pmb-ui.pmb-scrub #Divdemo #MainContent_btnReset:hover,
html.pmb-ui.pmb-scrub #Divdemo #btnRefresh:hover,
html.pmb-ui.pmb-scrub #Divdemo #btnPayerSettings:hover,
html.pmb-ui.pmb-scrub #Divdemo #btnExpandAll:hover {
    background: var(--pmb-surface-alt);
    border-color: var(--pmb-faint);
    color: var(--pmb-ink);
}
html.pmb-ui.pmb-scrub #Divdemo #MainContent_btnAddtoQue {
    background: var(--pmb-green);
    border: 1px solid var(--pmb-green);
    color: #fff;
}
html.pmb-ui.pmb-scrub #Divdemo #MainContent_btnAddtoQue:hover { background: var(--pmb-green-dark); border-color: var(--pmb-green-dark); }

/* ============================================================
   One dropdown style for every select / multi-select on these pages (Claim Scrubbing, Check Eligibility, bot status):
   white, 1px #CDD5DF border, 6px radius, 13px ink text, the same chevron.
   ============================================================ */
html.pmb-ui.pmb-scrub #Divdemo select,
html.pmb-ui.pmb-scrub #selectDateRange,
html.pmb-ui.pmb-scrub #botStatusFilters #ddlStatus {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0 30px 0 10px;
    font: 400 13px var(--pmb-font) !important;
    color: var(--pmb-ink);
    background: #fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235B6675' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>") no-repeat right 10px center / 12px 12px;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    box-shadow: none;
}
html.pmb-ui.pmb-scrub #Divdemo select:hover,
html.pmb-ui.pmb-scrub #selectDateRange:hover,
html.pmb-ui.pmb-scrub #botStatusFilters #ddlStatus:hover { border-color: var(--pmb-faint); }
html.pmb-ui.pmb-scrub #Divdemo select:focus,
html.pmb-ui.pmb-scrub #selectDateRange:focus,
html.pmb-ui.pmb-scrub #botStatusFilters #ddlStatus:focus {
    outline: 0;
    border-color: var(--scrub-accent);
    box-shadow: 0 0 0 3px rgba(47, 120, 214, .18);
}

/* multi-selects (Provider / Payer / Patient, bot status Client / User) match the selects above */
html.pmb-ui.pmb-scrub .ms-choice {
    height: 36px !important;
    line-height: 34px !important;
    padding: 0 !important;
    background: #fff !important;
    border: 1px solid var(--pmb-input-border) !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    color: var(--pmb-ink) !important;
}
html.pmb-ui.pmb-scrub .ms-choice:hover { border-color: var(--pmb-faint) !important; }
html.pmb-ui.pmb-scrub .ms-choice > span {
    top: 0 !important;
    padding: 0 30px 0 10px !important;
    font: 400 13px var(--pmb-font) !important;
    color: var(--pmb-ink) !important;
}
html.pmb-ui.pmb-scrub .ms-choice > span.placeholder { color: var(--pmb-ink) !important; }
html.pmb-ui.pmb-scrub .ms-choice > div {
    position: absolute !important;
    top: 0 !important;
    right: 4px !important;
    width: 24px !important;
    height: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235B6675' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>") no-repeat center / 12px 12px !important;
}
html.pmb-ui.pmb-scrub .ms-drop {
    border: 1px solid var(--pmb-input-border) !important;
    border-radius: 6px !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .12) !important;
    font: 400 13px var(--pmb-font);
    color: var(--pmb-ink);
}

/* title band: status link top right */
html.pmb-ui.pmb-scrub .pmb-scrub-title a.pmb-scrub-statuslink {
    color: #fff !important;
    font: 500 13px var(--pmb-font);
    text-decoration: underline;
    white-space: nowrap;
}
html.pmb-ui.pmb-scrub .pmb-scrub-title a.pmb-scrub-statuslink:hover { opacity: .85; }

/* ---- same control height everywhere (36px) and text vertically centred ---- */
html.pmb-ui.pmb-scrub #Divdemo select,
html.pmb-ui.pmb-scrub #Divdemo input.form-control,
html.pmb-ui.pmb-scrub #Divdemo .ms-choice,
html.pmb-ui.pmb-scrub #selectDateRange,
html.pmb-ui.pmb-scrub #txtFromDate,
html.pmb-ui.pmb-scrub #txtToDate,
html.pmb-ui.pmb-scrub #botStatusFilters #ddlStatus,
html.pmb-ui.pmb-scrub #botStatusFilters .ms-choice {
    height: 36px !important;
    min-height: 36px;
    box-sizing: border-box !important;
}
html.pmb-ui.pmb-scrub #Divdemo select,
html.pmb-ui.pmb-scrub #selectDateRange,
html.pmb-ui.pmb-scrub #botStatusFilters #ddlStatus { line-height: normal; padding-top: 0; padding-bottom: 0; }
html.pmb-ui.pmb-scrub #Divdemo input.form-control { line-height: normal; padding-top: 0; padding-bottom: 0; }
html.pmb-ui.pmb-scrub #Divdemo .btn { height: 36px !important; }
html.pmb-ui.pmb-scrub .ms-parent { height: 36px; }
html.pmb-ui.pmb-scrub .ms-choice > span {
    height: 34px !important;
    line-height: 34px !important;
    display: block;
}
html.pmb-ui.pmb-scrub .ms-choice > div { height: 34px !important; }

/* ---- latest design: selected row = blue tint, roomier rows, stronger CPT grid lines, bucket counts ---- */
html.pmb-ui.pmb-scrub #griddup > tbody > tr > td { padding-top: 16px; padding-bottom: 16px; }
html.pmb-ui.pmb-scrub #griddup > tbody > tr:has(> td [elm-action="scrubbing"] input:checked) > td {
    background-color: #EEF5FD !important;
    border-bottom-color: #C7DCF0 !important;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk {
    border: 2px solid #C9D4E2;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk > thead > tr > th {
    border-bottom: 3px solid #AFC0D6;
    border-right: 2px solid #C9D4E2;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr > td {
    border-bottom: 2px solid #C9D4E2;
    border-right: 2px solid #C9D4E2;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk > thead > tr > th:last-child,
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr > td:last-child { border-right: 0; }
html.pmb-ui.pmb-scrub .pmb-scrub-bucket .pmb-scrub-count { opacity: .85; font-weight: 500; }

/* ---- latest design polish: softer cards with a hairline shadow, hover rows, link style, pill size, focus rings ---- */
html.pmb-ui.pmb-scrub body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
html.pmb-ui.pmb-scrub #Divdemo,
html.pmb-ui.pmb-scrub #botStatusFilters {
    border-color: #E3E8EF;
    border-radius: 0 0 10px 10px;
    box-shadow: 0 1px 2px rgba(16, 34, 64, .05);
}
html.pmb-ui.pmb-scrub .pmb-scrub-title,
html.pmb-ui.pmb-scrub #botStatusTitle { border-radius: 10px 10px 0 0; }
html.pmb-ui.pmb-scrub .pmb-scrub-tile {
    border-color: #E3E8EF;
    border-radius: 10px;
    box-shadow: 0 1px 2px rgba(16, 34, 64, .05);
}
html.pmb-ui.pmb-scrub .pmb-scrub-footer { border-color: #E3E8EF; border-radius: 0 0 10px 10px; }

/* controls: hairline shadow, quick colour transitions, visible keyboard focus */
html.pmb-ui.pmb-scrub #Divdemo select,
html.pmb-ui.pmb-scrub #Divdemo input.form-control,
html.pmb-ui.pmb-scrub .ms-choice { box-shadow: 0 1px 1px rgba(16, 34, 64, .04) !important; }
html.pmb-ui.pmb-scrub button,
html.pmb-ui.pmb-scrub .btn,
html.pmb-ui.pmb-scrub select,
html.pmb-ui.pmb-scrub .ms-choice { transition: background-color .12s ease, border-color .12s ease, box-shadow .12s ease; }
html.pmb-ui.pmb-scrub button:focus-visible,
html.pmb-ui.pmb-scrub .btn:focus-visible,
html.pmb-ui.pmb-scrub input:focus-visible,
html.pmb-ui.pmb-scrub select:focus-visible,
html.pmb-ui.pmb-scrub summary:focus-visible { outline: 2px solid var(--scrub-accent); outline-offset: 1px; }

/* claims grid: tabular numbers, row hover, quieter links */
html.pmb-ui.pmb-scrub #griddup,
html.pmb-ui.pmb-scrub #grid,
html.pmb-ui.pmb-scrub #tblEligibility,
html.pmb-ui.pmb-scrub #tblAuthorization,
html.pmb-ui.pmb-scrub #tblPrescrubbing,
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus { font-variant-numeric: tabular-nums; }
html.pmb-ui.pmb-scrub #griddup > tbody > tr:not([id^="subtr_"]):not(:has(> td[colspan])):hover > td { background-color: #F2F7FD; }
html.pmb-ui.pmb-scrub #griddup td a:not(:has(img)):not(.pmb-scrub-pill) {
    color: #2B6CB8;
    text-decoration: none;
    border-bottom: 1px solid rgba(43, 108, 184, .28);
}
html.pmb-ui.pmb-scrub #griddup td a:not(:has(img)):hover { color: #1B4F8C; border-bottom-color: #1B4F8C; }

/* status / queue pills: 11px with a faint outline */
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-pill {
    font-size: 11px;
    letter-spacing: .02em;
    line-height: 1.5;
    border: 1px solid rgba(26, 36, 51, .08);
}

/* ---- action badges (Rules / Action column) ---- */
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-ab {
    display: inline-block;
    margin: 0 0 5px;
    padding: 3px 10px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.5;
}
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-ab.is-bad { background: #FDECEA; color: #A32E22 !important; border-color: #F3C9C3; }
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-ab.is-info { background: #EEF4FB; color: #2B5F96 !important; border-color: #CFE0F2; }
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-ab a { color: inherit !important; border-bottom: 0; }

/* ---- CPT lines: Edit / Save / Delete as text buttons (the icon links keep their onclick; the image is replaced by a label) ---- */
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="editico.png"]),
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="Saveico.png"]),
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="deleteico.png"]) {
    display: inline-block;
    padding: 5px 10px;
    border: 1px solid #CFE0F5;
    border-radius: 5px;
    background: #EEF5FD;
    color: var(--scrub-accent);
    font: 600 12px var(--pmb-font);
    line-height: 1.3;
    text-decoration: none;
}
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="deleteico.png"]) { background: #FCEFED; border-color: #F5D6D2; color: #A93226; margin-left: 8px; }
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="editico.png"]):hover,
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="Saveico.png"]):hover { background: #DCEBFA; }
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="deleteico.png"]):hover { background: #F8DDD9; }
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="editico.png"]) > img,
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="Saveico.png"]) > img,
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="deleteico.png"]) > img { display: none; }
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="editico.png"])::after { content: "Edit"; }
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="Saveico.png"])::after { content: "Save"; }
html.pmb-ui.pmb-scrub #griddup a:has(> img[src$="deleteico.png"])::after { content: "Delete"; }

/* ---- latest design (v5): expanded claim = blue row with an accent bar, white CPT detail, lighter CPT table ---- */
html.pmb-ui.pmb-scrub #griddup > thead > tr > th:first-child,
html.pmb-ui.pmb-scrub #griddup > tbody > tr > td:first-child { padding-left: 10px; padding-right: 4px; }

html.pmb-ui.pmb-scrub #griddup > tbody > tr:has(> td:first-child img[src$="minus.png"]) > td {
    background-color: #DCE9F7 !important;
    border-bottom-color: #DCE9F7 !important;
    font-weight: 600;
}
html.pmb-ui.pmb-scrub #griddup > tbody > tr:has(> td:first-child img[src$="minus.png"]) > td:first-child {
    box-shadow: inset 4px 0 0 var(--scrub-accent);
}
html.pmb-ui.pmb-scrub #griddup > tbody > tr:has(> td:first-child img[src$="minus.png"]) + tr > td {
    padding: 0 16px 16px 34px;
    background: #fff !important;
    border-bottom: 1px solid #D5DBE3;
    box-shadow: inset 4px 0 0 var(--scrub-accent);
}

/* CPT lines table: no outer frame, small grey headers, hairline rows */
html.pmb-ui.pmb-scrub #griddup table.tablebk {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: #fff;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk > thead > tr { background: transparent !important; color: #8A94A3 !important; }
html.pmb-ui.pmb-scrub #griddup table.tablebk > thead > tr > th {
    padding: 6px 10px;
    font-size: 10px !important;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #8A94A3;
    background: transparent;
    border: 0;
    border-bottom: 1px solid #D5DBE3;
    border-right: 1px solid #EDF1F5;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr > td {
    padding: 8px 10px;
    border: 0;
    border-bottom: 1px solid #E7ECF2;
    border-right: 1px solid #EDF1F5;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk > thead > tr > th:last-child,
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr > td:last-child { border-right: 0; white-space: nowrap; }
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr:last-child > td { border-bottom: 0; }

/* badges: 10-11px as in the design */
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-ab { padding: 2px 8px; font-size: 10px; white-space: nowrap; }

/* ---- claims grid: header and values 12px like the design; drill-down row tidied ---- */
html.pmb-ui.pmb-scrub #griddup > thead > tr > th {
    font-size: 12px !important;
    font-weight: 600;
    letter-spacing: 0;
}
html.pmb-ui.pmb-scrub #griddup > tbody > tr:first-child > td { font-size: 12px; }

/* drill-down row (built by the page script: buttons strip, note/diagnosis block, CPT table) */
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td { padding: 6px 16px 12px 34px; }
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > div:first-child:not(:has(button, input, a:not([style*="display:none"]))):not(:has([style*="428bca"])) { display: none !important; }
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > div:nth-child(2) > div > br { display: none; }
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > br { display: none; }
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] table.tablebk { width: 100%; margin: 0 !important; }

html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > div { padding-top: 0 !important; padding-bottom: 0 !important; }
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > div:nth-child(2) > div:first-child:empty { display: none; }

/* ---- drill-down: CPT table sits right under the claim row; columns styled like the design ---- */
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td { padding-top: 0; }
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > div:nth-child(2):has(> div[id^="dvnotesc_"][style*="height: 0px"]):not(:has(table)) { display: none !important; }

html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] table.tablebk > tbody > tr > td:nth-child(4) {
    font-family: var(--pmb-mono);
    font-weight: 600;
    color: #1F4E8C;
}
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] table.tablebk > thead > tr > th:nth-child(10),
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] table.tablebk > thead > tr > th:nth-child(11),
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] table.tablebk > tbody > tr > td:nth-child(10),
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] table.tablebk > tbody > tr > td:nth-child(11) { text-align: right; }
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] table.tablebk > tbody > tr > td:nth-child(10),
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] table.tablebk > tbody > tr > td:nth-child(11) { font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td { vertical-align: top; }

/* drill-down action strip: Move to Review / Delete on the left, screenshot link after them (the page sets display:table inline) */
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > div:first-child:not(:has([style*="428bca"])) {
    display: flex !important;
    align-items: center;
    gap: 12px;
    width: auto !important;
    padding: 10px 0 12px !important;
}
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > div:first-child:not(:has([style*="428bca"])) > div {
    display: block !important;
    width: auto !important;
    padding: 0 !important;
}
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > div:first-child:not(:has([style*="428bca"])) > div:nth-child(2) { order: -1; }

/* action strip: screenshot link on the left, Move to Review / Delete pushed to the right */
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > div:first-child:not(:has([style*="428bca"])) > div:nth-child(2) { order: 0; margin-left: auto; }
html.pmb-ui.pmb-scrub #griddup tr[id^="subtr_"] > td > div:first-child:not(:has([style*="428bca"])) > div:first-child { padding: 0 !important; }

/* Encounter Screenshot link: only present when the claim has a screenshot (the page hides it inline otherwise) */
html.pmb-ui.pmb-scrub #griddup a[id^="dvScreenshot_"] {
    font: 500 13px var(--pmb-font) !important;
    color: #2B6CB8;
    text-decoration: underline;
    cursor: pointer;
}

/* ---- changed values and action note, as in the design ---- */
/* cells the scrub changed (the page paints them with a solid red and white text) -> soft pink with bold red text */
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr > td[style*="background-color"] {
    background-color: #FBE3E1 !important;
    color: #B02A1E !important;
    font-weight: 600;
}
/* rows added by the scrub (whole row coloured) -> pale tint with normal text */
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr[style*="background-color"]:not(:has(> th)) { background-color: #FDEFED !important; color: var(--pmb-ink) !important; }
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr[style*="background-color"]:not(:has(> th)) > td:not([style*="background-color"]) { background-color: #FDEFED !important; }

/* action note: compact beige box */
html.pmb-ui.pmb-scrub #griddup .Action-box {
    width: auto;
    max-width: 100%;
    max-height: none;
    padding: 8px 10px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    color: #4A3F24;
    background-color: #EFE2C6;
    border: 1px solid #DCCFAF;
    border-radius: 6px;
}

/* ---- Post-Scrubbing: its nested table has no thead (header row sits in the tbody) - same look as the Pre-Scrubbing CPT table ---- */
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr:has(> th) { background: transparent !important; color: #8A94A3 !important; }
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr > th {
    padding: 6px 10px;
    font-size: 10px !important;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #8A94A3;
    background: transparent;
    border: 0;
    border-bottom: 1px solid #D5DBE3;
    border-right: 1px solid #EDF1F5;
}
html.pmb-ui.pmb-scrub #griddup table.tablebk > tbody > tr > th:last-child { border-right: 0; }
html.pmb-ui.pmb-scrub #griddup > tbody > tr:not([id^="subtr_"]) > td[colspan] table.tablebk > tbody > tr > td:nth-child(2) {
    font-family: var(--pmb-mono);
    font-weight: 600;
    color: #1F4E8C;
}

/* ---- Post-Scrubbing / Codify: no summary tiles; the accent bar marks only the claim row, not its drill-down ---- */
html.pmb-ui.pmb-scrub body:has(#MainContent_chkPMb:checked) #pmbScrubTiles,
html.pmb-ui.pmb-scrub body:has(#MainContent_chkcodify:checked) #pmbScrubTiles { display: none; }
html.pmb-ui.pmb-scrub #griddup > tbody > tr:has(> td:first-child img[src$="minus.png"]) + tr:not([id^="subtr_"]) > td { box-shadow: none; padding-left: 16px; }

/* ---- Pre-Scrubbing too: no summary tiles, and the accent bar marks only the claim row (not its drill-down) ---- */
/* summary tiles are shown for Pre-Scrubbing; the Post-Scrubbing / Codify rule above hides them there */
html.pmb-ui.pmb-scrub #griddup > tbody > tr:has(> td:first-child img[src$="minus.png"]) + tr > td {
    box-shadow: none;
    padding-left: 16px;
}

/* ---- CPT line action note: colour-coded pill instead of the beige box ---- */
html.pmb-ui.pmb-scrub #griddup .Action-box {
    display: inline-block;
    width: auto;
    max-width: 100%;
    max-height: none;
    padding: 3px 10px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.5;
    border-radius: 999px;
    color: #8A5A12;
    background-color: #FDF3E3;
    border: 1px solid #F0DCB6;
}
html.pmb-ui.pmb-scrub #griddup .Action-box.is-bad { color: #A32E22; background-color: #FDECEA; border-color: #F3C9C3; }
html.pmb-ui.pmb-scrub #griddup .Action-box.is-good { color: #1E6B34; background-color: #E7F4EA; border-color: #C3E2CD; }
html.pmb-ui.pmb-scrub #griddup .Action-box.is-warn { color: #8A5A12; background-color: #FDF3E3; border-color: #F0DCB6; }
html.pmb-ui.pmb-scrub #griddup .Action-box > div { white-space: normal !important; }

/* action note pill: rounded rectangle that wraps long text without clipping */
html.pmb-ui.pmb-scrub #griddup .Action-box {
    border-radius: 12px;
    overflow: visible !important;
    padding: 4px 12px;
    text-align: left;
    white-space: normal;
}

/* ---- Check Eligibility drill-down paging: "(Showing a to b of n records)" on the left, page buttons on the right ---- */
html.pmb-ui.pmb-scrub #Divdemo .box-footer.clearfix {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 4px;
    background: transparent;
    border: 0;
}
html.pmb-ui.pmb-scrub #Divdemo .box-footer.clearfix::before,
html.pmb-ui.pmb-scrub #Divdemo .box-footer.clearfix::after { display: none; }
html.pmb-ui.pmb-scrub #Divdemo .box-footer.clearfix > span {
    position: static !important;
    margin: 0 !important;
    font: 400 13px var(--pmb-font) !important;
    color: var(--pmb-muted);
}
html.pmb-ui.pmb-scrub #Divdemo .box-footer .pagination {
    display: flex;
    gap: 6px;
    float: none !important;
    margin: 0 0 0 auto !important;
    padding: 0;
}
html.pmb-ui.pmb-scrub #Divdemo .box-footer .pagination > li { display: block; }
html.pmb-ui.pmb-scrub #Divdemo .box-footer .pagination > li > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    float: none;
    min-width: 34px;
    height: 34px;
    margin: 0;
    padding: 0 12px;
    font: 600 13px var(--pmb-font);
    color: var(--pmb-ink-2);
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    text-decoration: none;
}
html.pmb-ui.pmb-scrub #Divdemo .box-footer .pagination > li > a:hover { background: var(--pmb-blue-tint); }
html.pmb-ui.pmb-scrub #Divdemo .box-footer .pagination > li.active > a { background: var(--scrub-accent); border-color: var(--scrub-accent); color: #fff; }
html.pmb-ui.pmb-scrub #Divdemo .box-footer .pagination > li.disabled > a { color: var(--pmb-faint); background: #fff; cursor: not-allowed; }

/* ---- last-synced tile: "2 hr 24 min ago" with the exact time underneath ---- */
html.pmb-ui.pmb-scrub .pmb-scrub-tile .sub { margin-top: 2px; font: 500 11px var(--pmb-mono); color: var(--pmb-muted); }
html.pmb-ui.pmb-scrub #pmbScrubTotalSub { font: 600 11px var(--pmb-font); color: #B54708; }
html.pmb-ui.pmb-scrub .pmb-scrub-tile[title] { cursor: help; }
html.pmb-ui.pmb-scrub .pmb-scrub-tile.is-orange .v { font: 600 17px var(--pmb-font); }

/* ============================================================
   Detail views open as a right-hand drawer on the same screen (like the Job Profiles resume drawer)
   instead of a centred pop-up: screenshots, authorization details, patient info, coding errors, notes.
   ============================================================ */
html.pmb-ui.pmb-scrub :is(#mdlscreenshot, #mdlscreenshotEMR, #modalAuthPreScrubbingData, #modalAuthData, #modalAuthDetails, #myModalPatientClaiminfo, #modalCodingErrorDetails, #modalMisMatchDetails, #ModalNote, #codifyErrorsModal, #modalBotStatus).modal {
    overflow: hidden !important;
}
html.pmb-ui.pmb-scrub :is(#mdlscreenshot, #mdlscreenshotEMR, #modalAuthPreScrubbingData, #modalAuthData, #modalAuthDetails, #myModalPatientClaiminfo, #modalCodingErrorDetails, #modalMisMatchDetails, #ModalNote, #codifyErrorsModal, #modalBotStatus) .modal-dialog {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: 780px !important;
    max-width: 100vw !important;
    height: 100% !important;
    margin: 0 !important;
    transform: translateX(100%) !important;
    transition: transform .25s ease !important;
}
html.pmb-ui.pmb-scrub :is(#mdlscreenshot, #mdlscreenshotEMR, #modalAuthPreScrubbingData, #modalAuthData, #modalAuthDetails, #myModalPatientClaiminfo, #modalCodingErrorDetails, #modalMisMatchDetails, #ModalNote, #codifyErrorsModal, #modalBotStatus).in .modal-dialog,
html.pmb-ui.pmb-scrub :is(#mdlscreenshot, #mdlscreenshotEMR, #modalAuthPreScrubbingData, #modalAuthData, #modalAuthDetails, #myModalPatientClaiminfo, #modalCodingErrorDetails, #modalMisMatchDetails, #ModalNote, #codifyErrorsModal, #modalBotStatus).show .modal-dialog {
    transform: translateX(0) !important;
}
html.pmb-ui.pmb-scrub :is(#mdlscreenshot, #mdlscreenshotEMR, #modalAuthPreScrubbingData, #modalAuthData, #modalAuthDetails, #myModalPatientClaiminfo, #modalCodingErrorDetails, #modalMisMatchDetails, #ModalNote, #codifyErrorsModal, #modalBotStatus) .modal-content {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100% !important;
    border: 0;
    border-radius: 0 !important;
    background: var(--pmb-bg);
    box-shadow: -8px 0 32px rgba(26, 36, 51, .18);
    overflow: hidden;
}
html.pmb-ui.pmb-scrub :is(#mdlscreenshot, #mdlscreenshotEMR, #modalAuthPreScrubbingData, #modalAuthData, #modalAuthDetails, #myModalPatientClaiminfo, #modalCodingErrorDetails, #modalMisMatchDetails, #ModalNote, #codifyErrorsModal, #modalBotStatus) .modal-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    max-height: none !important;
}

/* ============================================================
   One type scale for every grid: headers 12px / 600, cells 12px / 400, bold labels 600, badges and pills 11px,
   CPT drill-down headers 10px (as in the design).
   ============================================================ */
html.pmb-ui.pmb-scrub #grid > thead > tr > th,
html.pmb-ui.pmb-scrub #griddup > thead > tr > th,
html.pmb-ui.pmb-scrub #tblEligibility > thead > tr > th,
html.pmb-ui.pmb-scrub #tblAuthorization > thead > tr > th,
html.pmb-ui.pmb-scrub #tblPrescrubbing > thead > tr > th,
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus > thead > tr > th {
    font-family: var(--pmb-font) !important;
    font-size: 12px !important;
    font-weight: 600;
}
html.pmb-ui.pmb-scrub #grid > tbody > tr > td,
html.pmb-ui.pmb-scrub #tblEligibility > tbody > tr > td,
html.pmb-ui.pmb-scrub #tblAuthorization > tbody > tr > td,
html.pmb-ui.pmb-scrub #tblPrescrubbing > tbody > tr > td,
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus > tbody > tr > td {
    font-size: 12px !important;
    font-weight: 400;
}
html.pmb-ui.pmb-scrub #griddup b,
html.pmb-ui.pmb-scrub #griddup strong { font-weight: 600; }
html.pmb-ui.pmb-scrub #griddup .pmb-scrub-ab { font-size: 11px; }
/* bot status page: the batch drill-down table (built by the page script) */
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus table > thead > tr > th {
    font: 600 12px var(--pmb-font) !important;
    color: #fff;
    background: var(--scrub-accent) !important;
    padding: 8px 10px !important;
}
html.pmb-ui.pmb-scrub #tblPrescrubbingStatus table > tbody > tr > td { font-size: 12px !important; font-weight: 400; }

/* ---- Prescrubbing Submission Status: how each claim was approved ---- */
html.pmb-ui.pmb-scrub .pmb-approval {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    border: 1px solid rgba(26, 36, 51, .08);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.5;
    white-space: nowrap;
}
html.pmb-ui.pmb-scrub .pmb-approval.is-direct { background: #E8F1FA; color: #2B5F96; border-color: #CFE0F2; }
html.pmb-ui.pmb-scrub .pmb-approval.is-changes { background: #FDF3E3; color: #8A5A12; border-color: #F0DCB6; }
html.pmb-ui.pmb-scrub .pmb-approval.is-nochange { background: #E7F4EA; color: #1E6B34; border-color: #C3E2CD; }
html.pmb-ui.pmb-scrub .pmb-approval.is-pending { background: #EEF1F4; color: #5B6675; border-color: #D5DBE3; }
html.pmb-ui.pmb-scrub .pmb-approval.is-review { background: #F1ECFA; color: #5B3E96; border-color: #DDD2F0; }

/* ============================================================
   Pre-Scrubbing email: composer + history in a right-hand drawer (same pattern as the Job Profiles resume drawer)
   ============================================================ */
html.pmb-ui.pmb-scrub .pmb-dr-overlay {
    position: fixed;
    inset: 0;
    z-index: 2100;
    display: flex;
    justify-content: flex-end;
    background: rgba(26, 36, 51, .45);
    font-family: var(--pmb-font);
}
html.pmb-ui.pmb-scrub .pmb-dr {
    display: flex;
    flex-direction: column;
    width: 780px;
    max-width: 100%;
    height: 100%;
    background: var(--pmb-bg);
    color: var(--pmb-ink);
    box-shadow: -8px 0 32px rgba(26, 36, 51, .18);
    font-size: 13px;
}
html.pmb-ui.pmb-scrub .pmb-dr-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 20px;
    background: #fff;
    border-bottom: 1px solid var(--pmb-border);
}
html.pmb-ui.pmb-scrub .pmb-dr-head .t { font-size: 16px; font-weight: 600; }
html.pmb-ui.pmb-scrub .pmb-dr-head .s { margin-top: 2px; font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui.pmb-scrub .pmb-dr-x { border: 0; background: transparent; font-size: 24px; line-height: 1; color: var(--pmb-muted); cursor: pointer; }
/* link viewer: zoom controls and a Close button instead of the x */
html.pmb-ui.pmb-scrub .pmb-dr-tools { display: flex; align-items: center; gap: 6px; flex-shrink: 0; }
html.pmb-ui.pmb-scrub .pmb-dr-zv { min-width: 44px; text-align: center; font: 600 12px var(--pmb-font); color: var(--pmb-ink-2); }
html.pmb-ui.pmb-scrub .pmb-dr-zbtn,
html.pmb-ui.pmb-scrub .pmb-dr-close {
    height: 34px;
    min-width: 34px;
    padding: 0 12px;
    font: 600 13px var(--pmb-font);
    color: var(--pmb-ink-2);
    background: #fff;
    border: 1px solid #C9DDF2;
    border-radius: 6px;
    cursor: pointer;
}
html.pmb-ui.pmb-scrub .pmb-dr-zbtn:not(.is-text) { font-size: 18px; line-height: 1; padding: 0; }
html.pmb-ui.pmb-scrub .pmb-dr-zbtn:hover,
html.pmb-ui.pmb-scrub .pmb-dr-close:hover { background: var(--pmb-surface-alt); border-color: var(--pmb-faint); color: var(--pmb-ink); }
html.pmb-ui.pmb-scrub .pmb-dr-close { margin-left: 6px; }
html.pmb-ui.pmb-scrub .pmb-dr-body { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 20px; }
html.pmb-ui.pmb-scrub .pmb-dr-foot {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 20px;
    background: #fff;
    border-top: 1px solid var(--pmb-border);
}
html.pmb-ui.pmb-scrub .pmb-dr-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 14px; }
html.pmb-ui.pmb-scrub .pmb-dr-field > label { margin: 0; font-size: 12px; font-weight: 600; color: var(--pmb-ink-2); }
html.pmb-ui.pmb-scrub .pmb-dr-field .hint { font-weight: 400; color: var(--pmb-muted); }
html.pmb-ui.pmb-scrub .pmb-dr-field input[type="text"] {
    height: 36px;
    padding: 0 10px;
    font: 400 13px var(--pmb-font);
    color: var(--pmb-ink);
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
}
html.pmb-ui.pmb-scrub .pmb-dr-static { padding: 8px 10px; background: #fff; border: 1px solid var(--pmb-border); border-radius: 6px; color: var(--pmb-ink-2); }
html.pmb-ui.pmb-scrub .pmb-dr-chips { display: flex; flex-wrap: wrap; gap: 6px; }
html.pmb-ui.pmb-scrub .pmb-dr-chip { padding: 3px 10px; font-size: 12px; font-weight: 600; color: #2B5F96; background: #EEF4FB; border: 1px solid #CFE0F2; border-radius: 999px; }
html.pmb-ui.pmb-scrub .pmb-dr-btn {
    height: 36px;
    padding: 0 16px;
    font: 600 13px var(--pmb-font);
    color: var(--pmb-ink-2);
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    cursor: pointer;
}
html.pmb-ui.pmb-scrub .pmb-dr-btn.sm { height: 30px; padding: 0 12px; font-size: 12px; }
html.pmb-ui.pmb-scrub .pmb-dr-btn.is-primary { color: #fff; background: var(--scrub-accent); border-color: var(--scrub-accent); }
html.pmb-ui.pmb-scrub .pmb-dr-btn.is-primary:hover { background: var(--scrub-accent-dark); border-color: var(--scrub-accent-dark); }
html.pmb-ui.pmb-scrub .pmb-dr-btn:disabled { opacity: .6; cursor: not-allowed; }
html.pmb-ui.pmb-scrub .pmb-dr-loading,
html.pmb-ui.pmb-scrub .pmb-dr-empty { padding: 28px 8px; text-align: center; color: var(--pmb-muted); }
html.pmb-ui.pmb-scrub .pmb-dr-error { padding: 10px 12px; color: #A32E22; background: #FDECEA; border: 1px solid #F3C9C3; border-radius: 6px; }

html.pmb-ui.pmb-scrub .pmb-dr-card { margin-bottom: 12px; padding: 14px 16px; background: #fff; border: 1px solid #E3E8EF; border-radius: 10px; box-shadow: 0 1px 2px rgba(16, 34, 64, .05); }
html.pmb-ui.pmb-scrub .pmb-dr-card .top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
html.pmb-ui.pmb-scrub .pmb-dr-card .subj { font-weight: 600; }
html.pmb-ui.pmb-scrub .pmb-dr-card .meta { margin-top: 4px; font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui.pmb-scrub .pmb-dr-card .issue { margin-top: 8px; padding: 6px 10px; font-size: 12px; background: var(--pmb-surface-alt); border-radius: 6px; }
html.pmb-ui.pmb-scrub .pmb-dr-card .acts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
html.pmb-ui.pmb-scrub .pmb-dr-card .view { margin-top: 10px; }
html.pmb-ui.pmb-scrub .pmb-dr-frame { width: 100%; height: 320px; background: #fff; border: 1px solid var(--pmb-border); border-radius: 6px; }
html.pmb-ui.pmb-scrub .pmb-dr-pill { display: inline-block; padding: 2px 10px; font-size: 11px; font-weight: 600; white-space: nowrap; border-radius: 999px; border: 1px solid transparent; }
html.pmb-ui.pmb-scrub .pmb-dr-pill.is-blue { color: #2B5F96; background: #EEF4FB; border-color: #CFE0F2; }
html.pmb-ui.pmb-scrub .pmb-dr-pill.is-green { color: #1E6B34; background: #E7F4EA; border-color: #C3E2CD; }
html.pmb-ui.pmb-scrub .pmb-dr-pill.is-red { color: #A32E22; background: #FDECEA; border-color: #F3C9C3; }
html.pmb-ui.pmb-scrub .pmb-dr-pill.is-grey { color: #5B6675; background: #EEF1F4; border-color: #D5DBE3; }
html.pmb-ui.pmb-scrub .pmb-dr-toast {
    position: fixed;
    left: 50%;
    bottom: 24px;
    z-index: 3000;
    transform: translateX(-50%);
    padding: 10px 18px;
    font: 500 13px var(--pmb-font);
    color: #fff;
    background: var(--pmb-ink);
    border-radius: 8px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, .25);
}
html.pmb-ui.pmb-scrub .pmb-dr-toast.is-bad { background: #A32E22; }

/* "Emailed" / "Client replied" pill on a claim row, and the Email buttons */
html.pmb-ui.pmb-scrub #griddup .pmb-email-pill {
    display: inline-block;
    margin-top: 6px;
    padding: 2px 10px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .02em;
    text-decoration: none;
    border: 1px solid transparent;
    border-radius: 999px;
    cursor: pointer;
}
html.pmb-ui.pmb-scrub #griddup .pmb-email-pill.is-sent { color: #2B5F96 !important; background: #EEF4FB; border-color: #CFE0F2; }
html.pmb-ui.pmb-scrub #griddup .pmb-email-pill.is-replied { color: #1E6B34 !important; background: #E7F4EA; border-color: #C3E2CD; }
html.pmb-ui.pmb-scrub .pmb-scrub-act.is-secondary { background: #fff; border: 1px solid var(--scrub-accent); color: var(--scrub-accent); }
html.pmb-ui.pmb-scrub .pmb-scrub-act.is-secondary:hover { background: var(--pmb-blue-tint); }
html.pmb-ui.pmb-scrub #griddup .pmb-drill-email {
    height: 34px;
    margin-right: 8px;
    padding: 0 14px !important;
    font: 600 13px var(--pmb-font);
    border-radius: 6px;
}
html.pmb-ui.pmb-scrub #griddup .pmb-drill-secondary { color: var(--scrub-accent); background: #fff; border: 1px solid var(--scrub-accent); }
html.pmb-ui.pmb-scrub #griddup .pmb-drill-secondary:hover { background: var(--pmb-blue-tint); }

/* email composer: template row, plain-text box, recipients note */
html.pmb-ui.pmb-scrub .pmb-dr-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
html.pmb-ui.pmb-scrub .pmb-dr-row select {
    flex: 1 1 220px;
    height: 36px;
    padding: 0 10px;
    font: 400 13px var(--pmb-font);
    color: var(--pmb-ink);
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
}
html.pmb-ui.pmb-scrub .pmb-dr-tplform {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    padding: 10px 12px;
    background: #fff;
    border: 1px solid var(--pmb-border);
    border-radius: 8px;
}
html.pmb-ui.pmb-scrub .pmb-dr-tplform input[type="text"] { flex: 1 1 200px; }
html.pmb-ui.pmb-scrub .pmb-dr-check { display: inline-flex; align-items: center; gap: 6px; margin: 0; font-size: 12px; font-weight: 500; color: var(--pmb-ink-2); }
html.pmb-ui.pmb-scrub .pmb-dr-note { flex: 1 1 100%; font-size: 11px; color: var(--pmb-muted); }
html.pmb-ui.pmb-scrub .pmb-dr-static.is-warn { color: #8A5A12; background: #FDF3E3; border-color: #F0DCB6; }
html.pmb-ui.pmb-scrub .pmb-dr-btn.is-danger { color: var(--pmb-danger); border-color: #F5D6D2; }
html.pmb-ui.pmb-scrub .pmb-dr-field textarea {
    min-height: 260px;
    padding: 10px 12px;
    font: 400 13px/1.5 var(--pmb-font);
    color: var(--pmb-ink);
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 6px;
    resize: vertical;
}

/* viewer drawer (screenshots, eligibility files, denial details): wide, framed content */
html.pmb-ui.pmb-scrub .pmb-dr.is-wide { width: min(1100px, 94vw); }
html.pmb-ui.pmb-scrub .pmb-dr-body.is-frame { padding: 0; overflow: hidden; position: relative; background: #fff; }
html.pmb-ui.pmb-scrub .pmb-dr-view { display: block; width: 100%; height: 100%; border: 0; background: #fff; }
html.pmb-ui.pmb-scrub .pmb-dr-body.is-frame .pmb-dr-loading { position: absolute; inset: 0; z-index: 1; padding-top: 40px; background: #fff; pointer-events: none; }
html.pmb-ui.pmb-scrub .pmb-dr-newtab { font-size: 12px; color: var(--pmb-blue); }

/* template editor inside the composer */
html.pmb-ui.pmb-scrub .pmb-dr-tplform { flex-direction: column; align-items: stretch; }
html.pmb-ui.pmb-scrub .pmb-dr-tplform input[type="text"] { flex: 0 0 auto; height: 36px; padding: 0 10px; font: 400 13px var(--pmb-font); color: var(--pmb-ink); background: #fff; border: 1px solid var(--pmb-input-border); border-radius: 6px; }
html.pmb-ui.pmb-scrub .pmb-dr-tplform textarea { min-height: 150px; padding: 10px 12px; font: 400 13px/1.5 var(--pmb-font); color: var(--pmb-ink); background: #fff; border: 1px solid var(--pmb-input-border); border-radius: 6px; resize: vertical; }
html.pmb-ui.pmb-scrub .pmb-dr-tplhead { font-size: 13px; font-weight: 600; }
html.pmb-ui.pmb-scrub .pmb-dr-tplfoot { display: flex; align-items: center; gap: 8px; }
html.pmb-ui.pmb-scrub .pmb-dr-tplfoot .grow { flex: 1 1 auto; }

html.pmb-ui.pmb-scrub .pmb-dr-body.is-frame:has(.pmb-dr-imgwrap) { overflow: auto; background: var(--pmb-bg); }
html.pmb-ui.pmb-scrub .pmb-dr-imgwrap { padding: 16px; }
html.pmb-ui.pmb-scrub .pmb-dr-img { display: block; max-width: 100%; height: auto; background: #fff; border: 1px solid var(--pmb-border); border-radius: 6px; }

/* Prescrubbing Submission Status: claims grouped by bot machine (summary chips that also filter the table) */
html.pmb-ui.pmb-scrub [id^="tblPrescrubbingStatus"][id$="_filter"] { display: none; }
html.pmb-ui.pmb-scrub .pmb-machine-chips { display: flex; flex-wrap: wrap; gap: 8px; padding: 10px 0; }
/* "Changes Made" pills in an expanded batch */
html.pmb-ui.pmb-scrub .pmb-chg {
    display: inline-block;
    margin: 2px 4px 2px 0;
    padding: 2px 9px;
    font: 600 11px var(--pmb-font);
    border-radius: 999px;
    border: 1px solid transparent;
    white-space: normal;
}
html.pmb-ui.pmb-scrub .pmb-chg.is-bad { color: #B42318; background: #FEF3F2; border-color: #FDA29B; }
html.pmb-ui.pmb-scrub .pmb-chg.is-good { color: #067647; background: #ECFDF3; border-color: #ABEFC6; }
html.pmb-ui.pmb-scrub .pmb-chg.is-warn { color: #B54708; background: #FFFAEB; border-color: #FEDF89; }
/* search box inside an expanded batch (Prescrubbing Submission Status) */
html.pmb-ui.pmb-scrub .pmb-machine-chips .pmb-batch-search {
    margin-left: auto;
    width: 280px;
    max-width: 100%;
    height: 34px;
    padding: 0 12px;
    font: 400 13px var(--pmb-font);
    color: var(--pmb-ink);
    background: #fff;
    border: 1px solid var(--pmb-border);
    border-radius: 8px;
    outline: none;
}
html.pmb-ui.pmb-scrub .pmb-machine-chips .pmb-batch-search:focus { border-color: var(--pmb-blue); }
/* search box above a drill-down table (Prescrubbing Data Collection Log) */
html.pmb-ui.pmb-scrub .pmb-dc-search { padding: 10px 0; }
html.pmb-ui.pmb-scrub .pmb-dc-search input {
    width: 280px;
    max-width: 100%;
    height: 34px;
    padding: 0 12px;
    font: 400 13px var(--pmb-font);
    color: var(--pmb-ink);
    background: #fff;
    border: 1px solid var(--pmb-border);
    border-radius: 8px;
    outline: none;
}
html.pmb-ui.pmb-scrub .pmb-dc-search input:focus { border-color: var(--pmb-blue); }
html.pmb-ui.pmb-scrub tr.pmb-dc-sub > td { background: #fff; }
html.pmb-ui.pmb-scrub #dcCustomRange input { border: 1px solid var(--pmb-border); border-radius: 8px; padding: 0 8px; }
html.pmb-ui.pmb-scrub .pmb-machine-chips button {
    height: 30px;
    padding: 0 12px;
    font: 600 12px var(--pmb-font);
    color: var(--pmb-ink-2);
    background: #fff;
    border: 1px solid var(--pmb-input-border);
    border-radius: 999px;
    cursor: pointer;
}
html.pmb-ui.pmb-scrub .pmb-machine-chips button:hover { background: var(--pmb-blue-tint); }
html.pmb-ui.pmb-scrub .pmb-machine-chips button.is-active { color: #fff; background: var(--scrub-accent); border-color: var(--scrub-accent); }

/* ============================================================
   Page header and tabs like the Job Profiles page; spacing like the Authorization page
   (24px between sections, 12px card radius, 12px/600 field labels, 13px text)
   ============================================================ */
html.pmb-ui.pmb-scrub #pmbJpHead {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
    margin: 0 0 24px;
    padding: 8px 0 0;
}
html.pmb-ui.pmb-scrub #pmbJpHead .pmb-scrub-title {
    display: block;
    padding: 0;
    background: transparent !important;
    border-radius: 0;
    color: var(--pmb-ink);
}
html.pmb-ui.pmb-scrub #pmbJpHead .pmb-scrub-title::before {
    content: "OPERATIONS";
    display: block;
    font: 600 11px var(--pmb-font);
    letter-spacing: .14em;
    color: #2F7D3E;
}
html.pmb-ui.pmb-scrub #pmbJpHead .pmb-scrub-title p { margin: 6px 0 0 !important; padding: 0 !important; }
html.pmb-ui.pmb-scrub #pmbJpHead #MainContent_otherlblGuidelInes,
html.pmb-ui.pmb-scrub #pmbJpHead #MainContent_demoTitle {
    padding: 0 !important;
    font-size: 18px !important;
    font-weight: 600;
    line-height: 1.15;
    color: #174F80 !important;
}
html.pmb-ui.pmb-scrub #pmbJpHead > .pmb-head-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    margin: 0 0 0 auto;
}
/* the two log links look like the Payer Setting button */
html.pmb-ui.pmb-scrub #pmbJpHead .pmb-head-links a.pmb-scrub-statuslink {
    display: inline-flex;
    align-items: center;
    height: 38px;
    margin: 0;
    padding: 0 16px;
    font: 600 13px var(--pmb-font);
    color: var(--pmb-ink-2) !important;
    background: #fff;
    border: 1px solid #C9DDF2;
    border-radius: 6px;
    text-decoration: none;
    white-space: nowrap;
}
html.pmb-ui.pmb-scrub #pmbJpHead .pmb-head-links a.pmb-scrub-statuslink:hover {
    color: var(--pmb-ink) !important;
    background: var(--pmb-surface-alt);
    border-color: var(--pmb-faint);
    text-decoration: none;
}
/* title on its own row, tabs on the left, link on the right */
html.pmb-ui.pmb-scrub #pmbJpHead { justify-content: flex-start; align-items: center; }
html.pmb-ui.pmb-scrub #pmbJpHead .pmb-scrub-title { flex: 0 0 100%; }

/* segmented tabs (Claim Scrubbing | Check Eligibility) */
html.pmb-ui.pmb-scrub #pmbJpHead #demomenu {
    display: flex;
    gap: 4px;
    width: auto;
    margin: 0;
    padding: 4px;
    overflow: visible;
    background: #fff;
    border: 1px solid var(--pmb-border) !important;
    border-radius: 10px;
}
html.pmb-ui.pmb-scrub #pmbJpHead #demomenu > div { float: none; width: auto; padding: 0 !important; margin: 0 !important; }
html.pmb-ui.pmb-scrub #pmbJpHead #demomenu > div:not(:has(button)) { display: none; }
html.pmb-ui.pmb-scrub #pmbJpHead #demomenu button.tab {
    float: none;
    height: 36px;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 7px !important;
    background: transparent !important;
    color: var(--pmb-ink-2);
    font: 600 13px var(--pmb-font) !important;
}
html.pmb-ui.pmb-scrub #pmbJpHead #demomenu button.tab[style*="range"],
html.pmb-ui.pmb-scrub #pmbJpHead #demomenu button.tab.active {
    background: #2F7D3E !important;
    color: #fff !important;
}

/* the controls area is now a full card, with 24px between the sections */
html.pmb-ui.pmb-scrub #Divdemo {
    border-radius: 12px;
    border-top: 1px solid #E3E8EF;
    margin-top: 0;
}
html.pmb-ui.pmb-scrub .pmb-scrub-tiles { margin: 24px 0; }
html.pmb-ui.pmb-scrub #dvfilter2 { padding: 0 0 16px !important; }
html.pmb-ui.pmb-scrub #dvfilterstatus { margin-top: 16px; padding-top: 16px !important; }
html.pmb-ui.pmb-scrub #divEligibilityMenu {
    display: inline-flex;
    gap: 4px;
    margin: 0 0 16px !important;
    padding: 4px;
    background: #fff;
    border: 1px solid var(--pmb-border) !important;
    border-radius: 10px;
}
html.pmb-ui.pmb-scrub #divEligibilityMenu button.tab { height: 32px; border-radius: 7px !important; }
html.pmb-ui.pmb-scrub #divEligibilityMenu button.tab[style*="range"] { background: #2F7D3E !important; color: #fff !important; border-bottom-color: transparent !important; }

/* Prescrubbing Submission Status: same header */
html.pmb-ui.pmb-scrub #botStatusTitle {
    margin: 0 0 24px;
    padding: 8px 0 0;
    background: transparent !important;
    border-radius: 0;
    color: var(--pmb-ink);
}
html.pmb-ui.pmb-scrub #botStatusTitle::before {
    content: "OPERATIONS";
    display: block;
    font: 600 11px var(--pmb-font);
    letter-spacing: .14em;
    color: #2F7D3E;
}
html.pmb-ui.pmb-scrub #botStatusTitle p { margin: 6px 0 0; padding: 0 !important; font-size: 18px; font-weight: 600; line-height: 1.15; color: #174F80; }
html.pmb-ui.pmb-scrub #botStatusFilters { border-top: 1px solid #E3E8EF; border-radius: 12px; }

/* link viewer (eligibility / authorization screenshots, denial details) opens on the LEFT; the email drawers stay on the right */
html.pmb-ui.pmb-scrub #pmbViewDrawer.pmb-dr-overlay { justify-content: flex-start; }
html.pmb-ui.pmb-scrub #pmbViewDrawer .pmb-dr { box-shadow: 8px 0 32px rgba(26, 36, 51, .18); }


/* ============================================================
   Client Invoices page (InternalReports/ClientInvoices.aspx)
   Everything is scoped under .pmb-ci (the page's root element), so no other page is affected.
   Values follow the Claude Design "Client Invoices"; colours use the tokens above where one exists.
   ============================================================ */
html.pmb-ui .pmb-ci { display: block; width: 100%; clear: both; font-family: var(--pmb-font); color: var(--pmb-ink); font-size: 13px; line-height: 1.4; }
/* the top bar's right-hand group (ul.navbar-right) is floated and its .navbar margin-bottom hangs below the bar;
   a flex column next to a float narrows to avoid it, which pushed the centred column to the left. This page only. */
html.pmb-ui body:has(.pmb-ci) #topbar ul.navbar-top-links.navbar-right { margin-bottom: 0; }
html.pmb-ui .pmb-ci *, html.pmb-ui .pmb-ci *::before, html.pmb-ui .pmb-ci *::after { box-sizing: border-box; }
html.pmb-ui .pmb-ci button, html.pmb-ui .pmb-ci input, html.pmb-ui .pmb-ci select, html.pmb-ui .pmb-ci textarea { font-family: var(--pmb-font); }
html.pmb-ui .pmb-ci button { cursor: pointer; }
html.pmb-ui .pmb-ci button:disabled { cursor: default; opacity: .6; }
html.pmb-ui .pmb-ci h1, html.pmb-ui .pmb-ci p { margin: 0; }
html.pmb-ui .pmb-ci .ci-page { width: 100%; background: var(--pmb-bg); min-height: 900px; padding: 20px 24px 40px; }
html.pmb-ui .pmb-ci .ci-wrap { width: 100%; margin: 0 auto; display: flex; flex-direction: column; gap: 20px; }
html.pmb-ui .pmb-ci #ciAlerts { display: flex; flex-direction: column; gap: 20px; }
html.pmb-ui .pmb-ci #ciAlerts:empty { display: none; }
html.pmb-ui .pmb-ci .ci-stack { display: flex; flex-direction: column; gap: 20px; }
html.pmb-ui .pmb-ci .ci-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* segmented tabs (sections, invoice detail) */
html.pmb-ui .pmb-ci .ci-seg { display: flex; gap: 4px; padding: 4px; background: var(--pmb-surface); border: 1px solid var(--pmb-border); border-radius: 10px; align-self: flex-start; }
html.pmb-ui .pmb-ci .ci-seg > button { height: 36px; padding: 0 18px; border: none; border-radius: 7px; font-size: 13px; font-weight: 600; background: transparent; color: var(--pmb-muted); display: flex; align-items: center; gap: 8px; }
html.pmb-ui .pmb-ci .ci-seg > button[aria-selected="true"] { background: var(--pmb-blue-dark); color: #fff; }
html.pmb-ui .pmb-ci .ci-seg-sm { background: var(--pmb-bg); border: none; }
html.pmb-ui .pmb-ci .ci-seg-sm > button { height: 34px; padding: 0 16px; }
html.pmb-ui .pmb-ci .ci-seg-sm > button[aria-selected="true"] { background: #fff; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-ci .ci-badge { min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: #B4610E; color: #fff; font-size: 11px; display: flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-ci .ci-badge[hidden] { display: none; }

/* notes, overdue alert, toast */
html.pmb-ui .pmb-ci .ci-note { padding: 10px 14px; border-radius: 10px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-note-info { background: var(--pmb-blue-tint); border: 1px solid #C9DCEF; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-ci .ci-note-err { background: var(--pmb-danger-bg); border: 1px solid #F0C9C5; color: #A93226; }
html.pmb-ui .pmb-ci .ci-overdue { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; background: var(--pmb-danger-bg); border: 1px solid #F0C9C5; border-left: 4px solid var(--pmb-danger); border-radius: 10px; color: #7A2018; }
html.pmb-ui .pmb-ci .ci-overdue-main { display: flex; align-items: flex-start; gap: 10px; min-width: 0; flex: 1 1 420px; }
html.pmb-ui .pmb-ci .ci-alert-ic { flex: none; margin-top: 1px; }
html.pmb-ui .pmb-ci .ci-overdue-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
html.pmb-ui .pmb-ci .ci-overdue-text strong { font-size: 13px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-overdue-text span { font-size: 12px; color: #8E2A20; }
html.pmb-ui .pmb-ci .ci-overdue-actions { display: flex; gap: 6px; }
html.pmb-ui .pmb-ci .ci-toast { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px; background: #E7F4EA; border: 1px solid #BFE0C7; border-radius: 10px; font-size: 13px; color: #22602F; }
html.pmb-ui .pmb-ci .ci-toast > span { display: flex; align-items: center; gap: 8px; }
/* pinned to the top of the screen so it is seen when scrolled down (above dialogs too) */
html.pmb-ui .pmb-ci .ci-toast { position: fixed; top: 16px; left: 50%; transform: translateX(-50%); z-index: 1070; width: calc(100% - 32px); max-width: 720px; box-shadow: 0 8px 24px rgba(26,36,51,0.18); }
html.pmb-ui .pmb-ci .ci-x { border: none; background: transparent; display: flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-ci .ci-x-danger { width: 36px; height: 36px; border-radius: 7px; color: #7A2018; }
html.pmb-ui .pmb-ci .ci-x-ok { width: 32px; height: 32px; border-radius: 6px; color: #22602F; }
html.pmb-ui .pmb-ci .ci-x-36 { width: 36px; height: 36px; flex: none; border-radius: 8px; color: var(--pmb-ink-2); }

/* page header */
html.pmb-ui .pmb-ci .ci-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px; }
html.pmb-ui .pmb-ci .ci-head-text { display: flex; flex-direction: column; gap: 6px; }
html.pmb-ui .pmb-ci .ci-eyebrow { font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--pmb-green); }
html.pmb-ui .pmb-ci .ci-head h1 { font-size: 18px; line-height: 1.15; font-weight: 600; color: var(--pmb-blue-dark); font-family: var(--pmb-font); }
html.pmb-ui .pmb-ci .ci-head p { font-size: 13px; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-head-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
html.pmb-ui .pmb-ci .ci-monthnav { display: flex; align-items: center; gap: 2px; padding: 4px; background: #fff; border: 1px solid var(--pmb-border); border-radius: 10px; }
html.pmb-ui .pmb-ci .ci-iconbtn { width: 36px; height: 36px; border: none; border-radius: 7px; background: transparent; color: var(--pmb-ink-2); display: flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-ci .ci-month { min-width: 104px; text-align: center; font-size: 14px; font-weight: 600; color: var(--pmb-blue-dark); }

/* buttons */
html.pmb-ui .pmb-ci .ci-btn-primary { height: 44px; padding: 0 18px; border: 1px solid var(--pmb-blue-dark); border-radius: 8px; background: var(--pmb-blue-dark); color: #fff; font-size: 13px; font-weight: 600; display: flex; align-items: center; justify-content: center; gap: 8px; }
html.pmb-ui .pmb-ci .ci-btn-block { width: 100%; }
html.pmb-ui .pmb-ci .ci-btn-danger { height: 36px; padding: 0 14px; border: 1px solid var(--pmb-danger); border-radius: 7px; background: var(--pmb-danger); color: #fff; font-size: 12px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-ci .ci-btn-sm { height: 34px; padding: 0 12px; border-radius: 7px; font-size: 12px; font-weight: 600; white-space: nowrap; display: flex; align-items: center; gap: 4px; }
html.pmb-ui .pmb-ci .ci-btn-sm.ci-btn-danger { height: 34px; padding: 0 12px; }
html.pmb-ui .pmb-ci .ci-btn-go { border: 1px solid var(--pmb-green); background: var(--pmb-green); color: #fff; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-btn-pay { border: 1px solid var(--pmb-green); background: #fff; color: #22602F; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-btn-paid { border: 1px solid var(--pmb-border); background: #F1F3F6; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-btn-danger-o { border: 1px solid var(--pmb-danger); background: #fff; color: #A93226; }
html.pmb-ui .pmb-ci .ci-btn-view { padding: 0 10px; border: 1px solid var(--pmb-input-border); background: #fff; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-ci .ci-btn-view.is-open .ci-chev { transform: rotate(90deg); }
html.pmb-ui .pmb-ci .ci-btn-dashed { border: 1px dashed var(--pmb-faint); background: #fff; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ci .ci-btn-soft { height: 34px; padding: 0 12px; border: 1px solid var(--pmb-blue); border-radius: 7px; background: #fff; color: var(--pmb-blue-dark); font-size: 12px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-btn-xs { height: 32px; padding: 0 10px; border-radius: 7px; font-size: 12px; font-weight: 600; display: flex; align-items: center; gap: 4px; }
html.pmb-ui .pmb-ci .ci-btn-out { height: 40px; border: 1px solid var(--pmb-input-border); border-radius: 8px; background: #fff; color: var(--pmb-blue-dark); font-size: 12px; font-weight: 600; padding: 0 16px; }
html.pmb-ui .pmb-ci .ci-btn-ghost { height: 40px; padding: 0 16px; border: none; border-radius: 8px; background: transparent; color: var(--pmb-ink-2); font-size: 13px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-btn-md { height: 40px; padding: 0 18px; border-radius: 8px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-btn-44 { height: 44px; border-radius: 8px; font-size: 13px; font-weight: 600; padding: 0 16px; display: flex; align-items: center; gap: 8px; }
html.pmb-ui .pmb-ci .ci-btn-go.ci-btn-44 { padding: 0 18px; }
html.pmb-ui .pmb-ci .ci-btn-remind { height: 40px; border: 1px solid var(--pmb-danger); border-radius: 8px; background: #fff; color: #A93226; font-size: 13px; font-weight: 600; display: flex; align-items: center; justify-content: center; gap: 8px; }
html.pmb-ui .pmb-ci .ci-btn-remind.is-due { background: var(--pmb-danger); color: #fff; }
html.pmb-ui .pmb-ci .ci-btn-add { height: 38px; padding: 0 14px; border: 1px solid var(--pmb-blue); border-radius: 7px; background: #fff; color: var(--pmb-blue-dark); font-size: 12px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-btn-add-grey { border-color: var(--pmb-input-border); }
html.pmb-ui .pmb-ci .ci-link { padding: 0; border: none; background: transparent; color: var(--pmb-blue-dark); font-size: 12px; text-decoration: underline; }
html.pmb-ui .pmb-ci .ci-selbar .ci-link { height: 34px; padding: 0 10px; }
html.pmb-ui .pmb-ci .ci-link-strong { font-size: 13px; font-weight: 600; justify-self: start; }
html.pmb-ui .pmb-ci .ci-link-danger { height: 36px; color: #A93226; }

/* summary tiles */
html.pmb-ui .pmb-ci .ci-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 14px; }
html.pmb-ui .pmb-ci .ci-kpi { background: #fff; border: 1px solid var(--pmb-border); border-radius: var(--pmb-radius-lg); padding: 16px 18px; display: flex; flex-direction: column; gap: 6px; }
html.pmb-ui .pmb-ci .ci-kpi-label { font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-kpi-value { font-size: 24px; line-height: 1.1; font-weight: 600; color: var(--pmb-ink); font-variant-numeric: tabular-nums; }
html.pmb-ui .pmb-ci .ci-kpi-sub { font-size: 12px; color: var(--pmb-muted); }

/* cards, chips, search */
html.pmb-ui .pmb-ci .ci-card { background: #fff; border: 1px solid var(--pmb-border); border-radius: var(--pmb-radius-lg); overflow: hidden; }
html.pmb-ui .pmb-ci .ci-card-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; border-bottom: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-ci .ci-card-title { padding: 14px 18px; border-bottom: 1px solid var(--pmb-border); display: flex; flex-direction: column; gap: 2px; }
html.pmb-ui .pmb-ci .ci-card-title > span:first-child, html.pmb-ui .pmb-ci .ci-card-name { font-size: 14px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-ci .ci-bar-left { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
html.pmb-ui .pmb-ci .ci-chips { display: flex; flex-wrap: wrap; gap: 6px; }
html.pmb-ui .pmb-ci .ci-chip { height: 34px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--pmb-input-border); background: #fff; color: var(--pmb-ink-2); font-size: 12px; font-weight: 600; display: flex; align-items: center; gap: 6px; }
html.pmb-ui .pmb-ci .ci-chip.is-on { background: var(--pmb-blue-dark); border-color: var(--pmb-blue-dark); color: #fff; }
html.pmb-ui .pmb-ci .ci-chip-count { min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: var(--pmb-divider); font-size: 11px; display: flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-ci .ci-chip.is-on .ci-chip-count { background: rgba(255,255,255,0.22); }
html.pmb-ui .pmb-ci .ci-search { position: relative; display: flex; align-items: center; gap: 8px; height: 36px; padding: 0 10px; border: 1px solid var(--pmb-input-border); border-radius: 8px; background: #fff; color: var(--pmb-muted); margin: 0; font-weight: 400; }
html.pmb-ui .pmb-ci .ci-search input { flex: 1 1 auto; border: none; outline: none; font-size: 13px; color: var(--pmb-ink); background: transparent; min-width: 0; height: 100%; padding: 0; box-shadow: none; }
html.pmb-ui .pmb-ci .ci-selbar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 10px 18px; background: var(--pmb-blue-tint); border-bottom: 1px solid #C9DCEF; font-size: 13px; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-ci .ci-selbar strong { font-weight: 600; }
html.pmb-ui .pmb-ci .ci-empty { padding: 56px 24px; display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
html.pmb-ui .pmb-ci .ci-empty-title { font-size: 15px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-ci .ci-empty-text { font-size: 13px; color: var(--pmb-muted); max-width: 420px; }
html.pmb-ui .pmb-ci .ci-norows { padding: 28px 18px; font-size: 13px; color: var(--pmb-muted); text-align: center; }
html.pmb-ui .pmb-ci .ci-norows.ci-l { padding: 24px 18px; text-align: left; }
html.pmb-ui .pmb-ci .ci-foot { font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-more { padding: 10px 18px; background: var(--pmb-surface-alt); }

/* grids */
html.pmb-ui .pmb-ci .ci-scroll { overflow-x: auto; }
html.pmb-ui .pmb-ci .ci-grid { display: grid; gap: 12px; align-items: center; }
html.pmb-ui .pmb-ci .ci-inv-grid { grid-template-columns: 28px 36px minmax(220px, 1.5fr) 150px 116px 96px minmax(150px, 1fr) 110px 160px 130px 180px; }
html.pmb-ui .pmb-ci .ci-notecol { min-width: 0; font-size: 12px; }
html.pmb-ui .pmb-ci .ci-note-btn { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; max-width: 100%; padding: 4px 8px; border: 1px solid #F3D3A8; border-radius: 6px; background: #FFF9F0; color: #6B4A12; font: inherit; font-size: 12px; line-height: 1.35; text-align: left; cursor: pointer; }
html.pmb-ui .pmb-ci .ci-rownum { text-align: right; font-size: 12px; font-weight: 600; color: var(--pmb-muted); font-variant-numeric: tabular-nums; }
html.pmb-ui .pmb-ci .ci-mark-id { width: auto; min-width: 44px; height: 36px; padding: 0 6px; box-sizing: border-box; flex: none; border-radius: 8px; display: flex; align-items: center; justify-content: center; white-space: nowrap; font-family: 'IBM Plex Mono', ui-monospace, monospace; font-size: 12px; font-weight: 500; }
html.pmb-ui .pmb-ci .ci-inv-id { font-size: 12px; color: var(--pmb-ink-2); overflow-wrap: anywhere; }
html.pmb-ui .pmb-ci .ci-sentcol { display: flex; flex-direction: column; gap: 1px; font-variant-numeric: tabular-nums; }
html.pmb-ui .pmb-ci .ci-sent-sub { font-size: 11px; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-sent-sub.is-overdue { color: #A93226; }
html.pmb-ui .pmb-ci .ci-ratecol { white-space: nowrap; }
html.pmb-ui .pmb-ci .ci-rate-split { display: flex; flex-direction: column; align-items: flex-end; gap: 1px; }
/* payments on an invoice: write off / restore / edit (draft invoices) */
html.pmb-ui .pmb-ci .ci-pl-grid { display: grid; grid-template-columns: minmax(180px, 1.6fr) 96px 92px minmax(100px, 1fr) minmax(110px, 1fr) 120px 170px; gap: 12px; align-items: center; padding: 9px 18px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-pl-row { border-top: 1px solid var(--pmb-divider); }
html.pmb-ui .pmb-ci .ci-pl-row.is-off { background: #FAF6F2; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-pl-row.is-off .ci-num, html.pmb-ui .pmb-ci .ci-pl-row.is-off .ci-ellipsis:first-child { text-decoration: line-through; }
html.pmb-ui .pmb-ci .ci-pl-row.is-off .ci-tag-off { text-decoration: none; }
html.pmb-ui .pmb-ci .ci-tag-off { display: inline-block; margin-left: 6px; padding: 1px 8px; border-radius: 999px; background: #FFF4E5; color: #8A4B0F; font-size: 11px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-orig { display: block; }
html.pmb-ui .pmb-ci .ci-paylist { margin-top: 14px; }
/* rate history popup */
html.pmb-ui .pmb-ci .ci-rl-grid { display: grid; grid-template-columns: 150px minmax(110px, 1fr) 100px 120px 120px; gap: 12px; align-items: center; padding: 9px 4px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-rl-row { border-top: 1px solid var(--pmb-divider); }
html.pmb-ui .pmb-ci .ci-set-grid { grid-template-columns: 56px minmax(220px, 1.3fr) minmax(256px, 1.7fr) 88px 140px 90px; }
html.pmb-ui .pmb-ci .ci-rate2 { display: inline-flex; flex-direction: column; align-items: flex-end; gap: 1px; line-height: 1.3; white-space: nowrap; }
html.pmb-ui .pmb-ci .ci-rate-lbl { font-size: 11px; color: var(--pmb-muted, #5B6675); }
html.pmb-ui .pmb-ci .ci-month-grid { grid-template-columns: 100px minmax(160px, 1fr) 120px 120px 120px 110px; }
html.pmb-ui .pmb-ci .ci-owe-grid { grid-template-columns: minmax(220px, 1.6fr) 80px 100px 100px 110px 290px; }
html.pmb-ui .pmb-ci .ci-log-grid { grid-template-columns: 110px minmax(200px, 1.4fr) 80px 150px 120px 110px 84px; }
html.pmb-ui .pmb-ci .ci-thead { padding: 10px 18px; background: var(--pmb-surface-alt); border-bottom: 1px solid var(--pmb-border); font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-thead-tight { padding: 9px 18px; }
html.pmb-ui .pmb-ci .ci-tr { padding: 12px 18px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-tr-tight { padding: 10px 18px; border-bottom: 1px solid var(--pmb-divider); }
html.pmb-ui .pmb-ci .ci-tr-log { padding: 9px 18px; border-bottom: 1px solid var(--pmb-divider); align-items: start; }
html.pmb-ui .pmb-ci .ci-row .ci-tr-tight { border-bottom: none; }
html.pmb-ui .pmb-ci .ci-ttotal { padding: 12px 18px; background: var(--pmb-surface-alt); font-size: 13px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-row { border-bottom: 1px solid var(--pmb-divider); }
html.pmb-ui .pmb-ci .ci-r { text-align: right; }
html.pmb-ui .pmb-ci .ci-num { font-variant-numeric: tabular-nums; }
html.pmb-ui .pmb-ci .ci-check { width: 18px; height: 18px; margin: 0; cursor: pointer; accent-color: var(--pmb-green); }
html.pmb-ui .pmb-ci .ci-client { display: flex; align-items: center; gap: 12px; min-width: 0; }
html.pmb-ui .pmb-ci .ci-mark { width: 36px; height: 36px; flex: none; border-radius: 8px; font-size: 12px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-ci .ci-client-text, html.pmb-ui .pmb-ci .ci-col2 { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
html.pmb-ui .pmb-ci .ci-name { align-self: flex-start; max-width: 100%; padding: 0; border: none; background: transparent; font-size: 13px; font-weight: 600; color: var(--pmb-blue-dark); text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html.pmb-ui .pmb-ci .ci-meta { font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-mono { font-family: var(--pmb-mono); font-size: 12px; }
html.pmb-ui .pmb-ci .ci-meta .ci-mono, html.pmb-ui .pmb-ci .ci-mono11 { font-size: 11px; }
html.pmb-ui .pmb-ci .ci-meta .ci-mono { color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ci .ci-overdue-line { font-size: 12px; font-weight: 600; color: #A93226; }
html.pmb-ui .pmb-ci .ci-fixemail { align-self: flex-start; padding: 0; border: none; background: transparent; font-size: 12px; font-weight: 600; color: var(--pmb-warn-ink); text-decoration: underline; }
html.pmb-ui .pmb-ci .ci-received { display: flex; flex-direction: column; align-items: flex-end; gap: 1px; font-variant-numeric: tabular-nums; }
html.pmb-ui .pmb-ci .ci-received-sub { font-size: 11px; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-amt { font-weight: 600; }
html.pmb-ui .pmb-ci .ci-status { display: inline-flex; align-items: center; gap: 6px; height: 24px; padding: 0 10px; border-radius: 999px; font-size: 12px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-ci .ci-dot { width: 7px; height: 7px; border-radius: 50%; }
html.pmb-ui .pmb-ci .ci-actions { display: flex; justify-content: flex-end; gap: 6px; }
html.pmb-ui .pmb-ci .ci-ink2 { color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ci .ci-muted { color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-strong { font-weight: 600; }
html.pmb-ui .pmb-ci .ci-blue { color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-ci .ci-red { color: #A93226; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-green { color: #22602F; }
html.pmb-ui .pmb-ci .ci-warn { color: var(--pmb-warn-ink); }
html.pmb-ui .pmb-ci .ci-sub11 { font-size: 11px; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-sub12 { font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-pre { white-space: pre-line; }
html.pmb-ui .pmb-ci .ci-min0 { min-width: 0; }
html.pmb-ui .pmb-ci .ci-ellipsis { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html.pmb-ui .pmb-ci .ci-src { display: inline-flex; height: 22px; align-items: center; padding: 0 8px; border-radius: 999px; font-size: 11px; font-weight: 600; }

/* expanded invoice */
html.pmb-ui .pmb-ci .ci-detail { padding: 4px 18px 20px 66px; display: flex; flex-direction: column; gap: 14px; }
html.pmb-ui .pmb-ci .ci-split { display: flex; flex-wrap: wrap; gap: 18px; align-items: flex-start; }
html.pmb-ui .pmb-ci .ci-paper { flex: 1 1 480px; min-width: 0; background: #fff; border: 1px solid var(--pmb-border); border-radius: 10px; box-shadow: 0 1px 3px rgba(26,36,51,0.06); padding: 28px 32px; display: flex; flex-direction: column; gap: 22px; }
html.pmb-ui .pmb-ci .ci-paper-top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; padding-bottom: 22px; border-bottom: 1px solid #DDE2E8; }
html.pmb-ui .pmb-ci .ci-paper-logo { display: block; height: 56px; width: auto; max-width: 100%; }
html.pmb-ui .pmb-ci .ci-paper-period { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; }
html.pmb-ui .pmb-ci .ci-paper-kind { font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: #2E6B3A; }
html.pmb-ui .pmb-ci .ci-paper-big { font-size: 26px; font-weight: 600; letter-spacing: .02em; color: #1C4A68; }
html.pmb-ui .pmb-ci .ci-hero { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: 20px; font-size: 13px; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ci .ci-hero .ci-col2 { flex: 1 1 220px; gap: 4px; }
html.pmb-ui .pmb-ci .ci-billed { font-size: 20px; font-weight: 500; line-height: 1.3; color: #1C4A68; max-width: 260px; margin-top: 6px; }
html.pmb-ui .pmb-ci .ci-due { flex: 0 1 360px; min-width: 240px; background: #1C4A68; border-radius: 8px; padding: 22px 26px; display: flex; flex-direction: column; gap: 6px; }
html.pmb-ui .pmb-ci .ci-due-cap { font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: #A9D9B4; }
html.pmb-ui .pmb-ci .ci-due-amt { font-size: 28px; font-weight: 600; color: #fff; }
html.pmb-ui .pmb-ci .ci-due-sub { font-size: 13px; color: #DCE6EE; }
html.pmb-ui .pmb-ci .ci-strip { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); background: #F1F5F8; border-top: 3px solid #2E6B3A; padding: 16px 0; }
html.pmb-ui .pmb-ci .ci-strip > div { display: flex; flex-direction: column; gap: 6px; padding: 0 20px; font-size: 14px; font-weight: 500; color: var(--pmb-ink); overflow-wrap: anywhere; }
html.pmb-ui .pmb-ci .ci-strip > div + div { border-left: 1px solid #D3DAE2; }
html.pmb-ui .pmb-ci .ci-cap { font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-lines { font-size: 14px; }
html.pmb-ui .pmb-ci .ci-lines-grid { display: grid; grid-template-columns: 70px 1fr 130px; gap: 12px; }
html.pmb-ui .pmb-ci .ci-lines-head { padding: 0 14px 10px; border-bottom: 2px solid #1C4A68; font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: #1C4A68; }
html.pmb-ui .pmb-ci .ci-lines-row { padding: 16px 14px 4px; }
html.pmb-ui .pmb-ci .ci-lines-note { padding: 10px 14px 40px; border-bottom: 1px solid #DDE2E8; color: var(--pmb-muted); font-size: 12px; }
html.pmb-ui .pmb-ci .ci-lines-total { display: flex; justify-content: flex-end; align-items: baseline; gap: 40px; padding: 22px 14px 0; font-size: 15px; font-weight: 600; color: #1C4A68; }
html.pmb-ui .pmb-ci .ci-lines-total .ci-num { min-width: 130px; text-align: right; font-size: 20px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-pay { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; font-size: 13px; line-height: 1.55; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ci .ci-paycard { border: 1px solid #D3DAE2; background: #fff; border-radius: 8px; padding: 20px 22px; display: flex; flex-direction: column; gap: 8px; }
html.pmb-ui .pmb-ci .ci-paycard-green { border-color: #2E6B3A; background: #F1F7F2; }
html.pmb-ui .pmb-ci .ci-paycap { font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: #1C4A68; margin-bottom: 2px; }
html.pmb-ui .pmb-ci .ci-paycard-green .ci-paycap { color: #2E6B3A; }
html.pmb-ui .pmb-ci .ci-zrow { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 14px 18px; }
html.pmb-ui .pmb-ci .ci-zmain { flex: 1 1 170px; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
html.pmb-ui .pmb-ci .ci-zmail { overflow-wrap: anywhere; }
html.pmb-ui .pmb-ci .ci-zqr { margin: 0; flex: none; display: flex; flex-direction: column; align-items: center; gap: 4px; }
html.pmb-ui .pmb-ci .ci-zqr img { display: block; width: 104px; height: 104px; background: #fff; border: 1px solid #D3DAE2; border-radius: 6px; image-rendering: pixelated; }
html.pmb-ui .pmb-ci .ci-zqr figcaption { font-size: 11px; color: #5B6675; }
html.pmb-ui .pmb-ci .ci-due-sub strong { color: #fff; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-zelle { display: grid; grid-template-columns: 92px 1fr; gap: 4px 10px; }
html.pmb-ui .pmb-ci .ci-zelle > span:last-child { overflow-wrap: anywhere; }
html.pmb-ui .pmb-ci .ci-maillink { color: #174F80; font-weight: 600; text-decoration: underline; overflow-wrap: anywhere; }
html.pmb-ui .pmb-ci .ci-muted { color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-paper-end { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 12px; padding-top: 22px; border-top: 1px solid #DDE2E8; font-size: 13px; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ci .ci-thanks { font-size: 14px; font-weight: 600; color: #2E6B3A; }
html.pmb-ui .pmb-ci .ci-side { flex: 1 1 300px; max-width: 380px; display: flex; flex-direction: column; gap: 14px; }
html.pmb-ui .pmb-ci .ci-side-grow { max-width: none; min-width: 0; }
html.pmb-ui .pmb-ci .ci-grow2 { flex: 2 1 480px; min-width: 0; }
html.pmb-ui .pmb-ci .ci-panel { background: #fff; border: 1px solid var(--pmb-border); border-radius: 10px; padding: 16px; display: flex; flex-direction: column; gap: 12px; }
html.pmb-ui .pmb-ci .ci-panel-tight { gap: 10px; }
html.pmb-ui .pmb-ci .ci-panel-flush { padding: 0; gap: 0; overflow: hidden; }
html.pmb-ui .pmb-ci .ci-panel-title { font-size: 13px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-ci .ci-panel-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
html.pmb-ui .pmb-ci .ci-panel-head.ci-baseline { align-items: baseline; }
html.pmb-ui .pmb-ci .ci-panel-bar { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 14px 16px; border-bottom: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-ci .ci-panel-foot { padding: 10px 16px; font-size: 12px; color: var(--pmb-muted); background: var(--pmb-surface-alt); }
html.pmb-ui .pmb-ci .ci-kv { display: flex; justify-content: space-between; gap: 8px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-panel .ci-kv > span:first-child, html.pmb-ui .pmb-ci .ci-kv-input label { color: var(--pmb-muted); font-weight: 400; margin: 0; }
html.pmb-ui .pmb-ci .ci-kv-input { align-items: center; gap: 12px; }
html.pmb-ui .pmb-ci .ci-kv-input input { width: 80px; height: 32px; border: 1px solid var(--pmb-input-border); border-radius: 6px; padding: 0 8px; font-size: 13px; text-align: right; }
html.pmb-ui .pmb-ci .ci-kv-total { padding-top: 10px; border-top: 1px solid var(--pmb-divider); font-size: 14px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-panel .ci-kv-total > span:first-child { color: var(--pmb-ink); }
html.pmb-ui .pmb-ci .ci-kv-rule { padding-top: 8px; border-top: 1px solid var(--pmb-divider); }
html.pmb-ui .pmb-ci .ci-kv-rule + .ci-kv-total { padding-top: 0; border-top: none; }
html.pmb-ui .pmb-ci .ci-payitem { display: flex; flex-direction: column; gap: 3px; padding: 10px 12px; background: var(--pmb-surface-alt); border: 1px solid var(--pmb-divider); border-radius: 8px; font-size: 12px; }
html.pmb-ui .pmb-ci .ci-payitem-top { display: flex; justify-content: space-between; gap: 8px; }
html.pmb-ui .pmb-ci .ci-payamt { font-size: 13px; font-weight: 600; color: #22602F; }
html.pmb-ui .pmb-ci .ci-remline { display: flex; justify-content: space-between; gap: 8px; font-size: 12px; }
html.pmb-ui .pmb-ci .ci-remline > span:first-child { display: flex; align-items: center; gap: 6px; color: var(--pmb-ink); }
html.pmb-ui .pmb-ci .ci-step { display: flex; align-items: center; gap: 10px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-step-dot { width: 22px; height: 22px; flex: none; border-radius: 50%; background: #fff; border: 2px solid var(--pmb-input-border); color: #fff; display: flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-ci .ci-step.is-done .ci-step-dot { background: var(--pmb-green); border-color: var(--pmb-green); }
html.pmb-ui .pmb-ci .ci-step-label { flex: 1 1 auto; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-step.is-done .ci-step-label { color: var(--pmb-ink); font-weight: 600; }
html.pmb-ui .pmb-ci .ci-side-actions { display: flex; flex-direction: column; gap: 8px; }
html.pmb-ui .pmb-ci .ci-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
html.pmb-ui .pmb-ci .ci-two .ci-btn-out { padding: 0; }

/* payment breakdown */
html.pmb-ui .pmb-ci .ci-payer-grid { display: grid; grid-template-columns: minmax(0, 1fr) 60px 110px 120px; gap: 12px; align-items: center; }
html.pmb-ui .pmb-ci .ci-payer-grid.ci-thead { padding: 8px 16px; }
html.pmb-ui .pmb-ci .ci-payer-row { padding: 8px 16px; border-bottom: 1px solid var(--pmb-divider); font-size: 12px; }
html.pmb-ui .pmb-ci .ci-share { display: flex; align-items: center; gap: 8px; }
html.pmb-ui .pmb-ci .ci-bar { flex: 1 1 auto; display: block; height: 6px; border-radius: 3px; background: var(--pmb-divider); overflow: hidden; }
html.pmb-ui .pmb-ci .ci-bar > span { display: block; height: 6px; }
html.pmb-ui .pmb-ci .ci-share-pct { width: 38px; text-align: right; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-method { display: flex; flex-direction: column; gap: 4px; font-size: 12px; }
html.pmb-ui .pmb-ci .ci-method .ci-kv { font-size: 12px; }
html.pmb-ui .pmb-ci .ci-days { display: flex; align-items: flex-end; gap: 3px; height: 110px; padding-top: 4px; border-bottom: 1px solid var(--pmb-input-border); }
html.pmb-ui .pmb-ci .ci-days > span { flex: 1 1 0; min-height: 2px; border-radius: 2px 2px 0 0; }
html.pmb-ui .pmb-ci .ci-days-axis { display: flex; justify-content: space-between; font-size: 11px; color: var(--pmb-muted); }

/* client settings */
html.pmb-ui .pmb-ci .ci-defaults { display: flex; flex-wrap: wrap; gap: 20px; padding: 18px; }
html.pmb-ui .pmb-ci .ci-defaults-left { flex: 1 1 320px; display: flex; flex-direction: column; gap: 14px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-defaults-right { flex: 1.4 1 380px; display: flex; flex-direction: column; gap: 6px; }
html.pmb-ui .pmb-ci .ci-field { display: flex; flex-direction: column; gap: 6px; margin: 0; font-weight: 400; }
html.pmb-ui .pmb-ci .ci-flabel { font-size: 12px; font-weight: 600; color: var(--pmb-muted); padding: 0; margin: 0; border: none; width: auto; }
html.pmb-ui .pmb-ci .ci-fieldset { margin: 0; padding: 0; border: none; display: flex; flex-direction: column; gap: 8px; min-width: 0; }
html.pmb-ui .pmb-ci .ci-fieldset legend { margin-bottom: 6px; }
html.pmb-ui .pmb-ci .ci-readonly { height: 38px; display: flex; align-items: center; gap: 8px; padding: 0 10px; border: 1px solid var(--pmb-border); border-radius: 7px; background: var(--pmb-surface-alt); color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ci .ci-input { height: 38px; width: 100%; border: 1px solid var(--pmb-input-border); border-radius: 7px; padding: 0 10px; font-size: 13px; color: var(--pmb-ink); background: #fff; min-width: 0; box-shadow: none; }
html.pmb-ui .pmb-ci .ci-input:disabled { background: var(--pmb-surface-alt); color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-input-40 { height: 40px; }
html.pmb-ui .pmb-ci .ci-14 { font-size: 14px; }
html.pmb-ui .pmb-ci .ci-textarea { height: auto; padding: 10px 12px; line-height: 1.5; resize: vertical; }
html.pmb-ui .pmb-ci .ci-textarea-sm { font-size: 12px; }
html.pmb-ui .pmb-ci .ci-checkline { display: flex; align-items: center; gap: 8px; min-height: 28px; cursor: pointer; margin: 0; font-weight: 400; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-tpls { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; padding: 18px; }
html.pmb-ui .pmb-ci .ci-tpl { display: flex; flex-direction: column; gap: 10px; padding: 14px; border: 1px solid var(--pmb-border); border-radius: 10px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-tpl-head { display: flex; align-items: center; gap: 8px; }
html.pmb-ui .pmb-ci .ci-tpl-n { width: 26px; height: 26px; border-radius: 50%; font-size: 12px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-ci .ci-recips { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-width: 0; }
html.pmb-ui .pmb-ci .ci-echip { display: inline-flex; align-items: center; max-width: 100%; height: 26px; padding: 0 9px; border-radius: 6px; background: var(--pmb-blue-tint); color: var(--pmb-blue-dark); font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html.pmb-ui .pmb-ci .ci-echips .ci-echip { gap: 2px; height: 30px; padding: 0 4px 0 10px; }
html.pmb-ui .pmb-ci .ci-echip-grey { background: #F1F3F6; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ci .ci-echip-x { width: 26px; height: 26px; border: none; border-radius: 5px; background: transparent; color: inherit; display: flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-ci .ci-nomail { display: inline-flex; align-items: center; height: 26px; padding: 0 9px; border-radius: 6px; background: #FFF1E0; color: var(--pmb-warn-ink); font-size: 12px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-verify { display: inline-flex; align-items: center; height: 22px; padding: 0 7px; border-radius: 999px; border: 1px solid #F3D3A8; color: var(--pmb-warn-ink); font-size: 11px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-edit { padding: 6px 18px 20px 86px; }
html.pmb-ui .pmb-ci .ci-edit-card { background: #fff; border: 1px solid #C9DCEF; border-radius: 10px; padding: 18px; display: flex; flex-direction: column; gap: 16px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-edit-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; }
html.pmb-ui .pmb-ci .ci-prefix { display: grid; grid-template-columns: minmax(0, 1fr) 90px; gap: 8px; }
html.pmb-ui .pmb-ci .ci-edit-mail { display: flex; flex-wrap: wrap; gap: 16px; }
html.pmb-ui .pmb-ci .ci-edit-to { flex: 1 1 320px; display: flex; flex-direction: column; gap: 8px; }
html.pmb-ui .pmb-ci .ci-edit-cc { flex: 1 1 280px; display: flex; flex-direction: column; gap: 8px; }
html.pmb-ui .pmb-ci .ci-echips { display: flex; flex-wrap: wrap; gap: 6px; }
html.pmb-ui .pmb-ci .ci-addrow { display: flex; gap: 8px; }
html.pmb-ui .pmb-ci .ci-addrow .ci-input { flex: 1 1 auto; }
html.pmb-ui .pmb-ci .ci-err { font-size: 12px; color: #A93226; }
html.pmb-ui .pmb-ci .ci-edit-foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; padding-top: 12px; border-top: 1px solid var(--pmb-divider); }
html.pmb-ui .pmb-ci .ci-edit-foot .ci-checkline { min-height: 36px; }
html.pmb-ui .pmb-ci .ci-btnrow { display: flex; gap: 8px; }

/* payments */
html.pmb-ui .pmb-ci .ci-legend { display: flex; align-items: center; gap: 14px; font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui .pmb-ci .ci-legend > span { display: flex; align-items: center; gap: 6px; }
html.pmb-ui .pmb-ci .ci-sw { width: 10px; height: 10px; border-radius: 2px; }
html.pmb-ui .pmb-ci .ci-mbar { position: relative; height: 10px; border-radius: 5px; background: #F1F3F6; }
html.pmb-ui .pmb-ci .ci-mbar > span { position: absolute; left: 0; top: 0; height: 10px; border-radius: 5px; }

/* dialogs */
html.pmb-ui .pmb-ci .ci-overlay { position: fixed; inset: 0; top: 0; right: 0; bottom: 0; left: 0; z-index: 1060; background: rgba(26,36,51,0.45); display: flex; align-items: flex-start; justify-content: center; padding: 60px 16px 16px; overflow-y: auto; }
html.pmb-ui .pmb-ci .ci-dialog { max-width: 100%; background: #fff; border-radius: 12px; box-shadow: 0 16px 48px rgba(26,36,51,0.25); overflow: hidden; }
html.pmb-ui .pmb-ci .ci-dialog-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 16px 20px; border-bottom: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-ci .ci-dialog-title { font-size: 15px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-ci .ci-dialog-body { padding: 18px 20px; font-size: 13px; }
html.pmb-ui .pmb-ci .ci-pay-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
html.pmb-ui .pmb-ci .ci-full { grid-column: 1 / -1; }
html.pmb-ui .pmb-ci .ci-compose { padding: 16px 20px; display: flex; flex-direction: column; gap: 12px; }
html.pmb-ui .pmb-ci .ci-crow { display: grid; grid-template-columns: 64px 1fr; align-items: center; gap: 10px; margin: 0; }
html.pmb-ui .pmb-ci .ci-crow > span { color: var(--pmb-muted); font-weight: 600; }
html.pmb-ui .pmb-ci .ci-indent { margin-left: 74px; }
html.pmb-ui .pmb-ci .ci-attach { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
html.pmb-ui .pmb-ci .ci-file { display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 10px; border: 1px solid var(--pmb-border); border-radius: 6px; background: var(--pmb-surface-alt); font-size: 12px; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ci .ci-dialog-foot { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; padding: 14px 20px; border-top: 1px solid var(--pmb-border); background: var(--pmb-surface-alt); }
html.pmb-ui .pmb-ci .ci-card-foot { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; padding: 14px 18px; border-top: 1px solid var(--pmb-border); background: var(--pmb-surface-alt); }
/* busy spinner inside a button (Sending… / Saving…) */
html.pmb-ui .pmb-ci .ci-spin { display: inline-block; width: 14px; height: 14px; flex: none; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: pmbspin .8s linear infinite; }
@media (prefers-reduced-motion: reduce) { html.pmb-ui .pmb-ci .ci-spin { animation: none; } }

/* keyboard focus */
html.pmb-ui .pmb-ci button:focus-visible, html.pmb-ui .pmb-ci input:focus-visible, html.pmb-ui .pmb-ci select:focus-visible, html.pmb-ui .pmb-ci textarea:focus-visible { outline: 2px solid var(--pmb-blue); outline-offset: 1px; }

/* Client Invoices: editable invoice lines on a Draft (Qty / Service description / Amount, Add line, remove) */
html.pmb-ui .pmb-ci .ci-line-edit { align-items: start; padding: 8px 14px; }
html.pmb-ui .pmb-ci .ci-line-in { width: 100%; height: 32px; border: 1px solid var(--pmb-input-border); border-radius: 6px; padding: 0 8px; font-size: 13px; color: var(--pmb-ink); background: #fff; min-width: 0; box-shadow: none; }
html.pmb-ui .pmb-ci .ci-line-in.ci-r { text-align: right; }
html.pmb-ui .pmb-ci .ci-line-edit .ci-col2 { gap: 4px; }
html.pmb-ui .pmb-ci .ci-line-amt { display: flex; align-items: center; gap: 4px; min-width: 0; }
html.pmb-ui .pmb-ci .ci-line-x { width: 24px; height: 24px; flex: none; border: none; border-radius: 5px; background: transparent; color: var(--pmb-faint); display: flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-ci .ci-line-x:hover { color: #A93226; background: var(--pmb-danger-bg); }
html.pmb-ui .pmb-ci .ci-lines-add { padding: 8px 14px; border-bottom: 1px solid var(--pmb-divider); display: flex; flex-wrap: wrap; gap: 16px; }
/* Client Invoices: refund credit line, Refund to client, refund rows */
html.pmb-ui .pmb-ci .ci-line-refund { align-items: start; padding: 8px 14px; }
html.pmb-ui .pmb-ci .ci-line-refund .ci-line-amt { justify-content: flex-end; }
html.pmb-ui .pmb-ci .ci-panel-btns { display: flex; gap: 6px; }
html.pmb-ui .pmb-ci .ci-btn-refund { border: 1px solid #E3B5B0; background: #fff; color: #A93226; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-btn-refund:hover { background: var(--pmb-danger-bg); }
html.pmb-ui .pmb-ci .ci-payitem.is-refund { background: var(--pmb-danger-bg); border-color: #F0C9C5; }
html.pmb-ui .pmb-ci .ci-payitem.is-refund .ci-payamt { color: #A93226; }
html.pmb-ui .pmb-ci .ci-link-inline { font-size: 12px; }
html.pmb-ui .pmb-ci .ci-credit-preview { display: grid; grid-template-columns: auto 1fr auto; gap: 10px; align-items: baseline; padding: 10px 12px; background: var(--pmb-surface-alt); border: 1px solid var(--pmb-divider); border-radius: 8px; font-size: 13px; }
/* Client Invoices: e-mail history (versions) and the read-only e-mail view */
html.pmb-ui .pmb-ci .ci-hist { display: flex; flex-direction: column; gap: 3px; padding: 10px 12px; background: var(--pmb-surface-alt); border: 1px solid var(--pmb-divider); border-radius: 8px; font-size: 12px; min-width: 0; }
html.pmb-ui .pmb-ci .ci-hist.is-failed { background: var(--pmb-danger-bg); border-color: #F0C9C5; }
html.pmb-ui .pmb-ci .ci-hist-top { display: flex; align-items: center; gap: 8px; min-width: 0; }
html.pmb-ui .pmb-ci .ci-hist-v { flex: none; min-width: 28px; height: 22px; padding: 0 6px; border-radius: 5px; background: #1F3A5F; color: #fff; font-size: 11px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-ci .ci-hist-when { font-size: 13px; font-weight: 700; color: var(--pmb-ink); white-space: nowrap; }
html.pmb-ui .pmb-ci .ci-hist-latest { flex: none; padding: 1px 8px; border-radius: 999px; background: #E6F2E8; color: var(--pmb-green); font-size: 11px; font-weight: 600; }
html.pmb-ui .pmb-ci .ci-hist-amt { margin-left: auto; font-size: 13px; font-weight: 600; color: var(--pmb-ink); white-space: nowrap; }
html.pmb-ui .pmb-ci .ci-hist-kind { font-size: 12px; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-ci .ci-hist-links { display: flex; flex-wrap: wrap; gap: 12px; padding-top: 2px; }
html.pmb-ui .pmb-ci .ci-hist-body { white-space: pre-line; font-size: 13px; line-height: 1.5; color: var(--pmb-ink); padding: 10px 12px; border: 1px solid var(--pmb-border); border-radius: 7px; background: var(--pmb-surface-alt); max-height: 320px; overflow-y: auto; }
html.pmb-ui .pmb-ci button.ci-file { cursor: pointer; }
/* ============================================================
   jQuery UI message dialogs on the scrubbing pages (Failure / Success / Modifier ...): same look as the rest of the design
   ============================================================ */
html.pmb-ui.pmb-scrub .ui-widget-overlay { background: #0F1B2D !important; opacity: .45 !important; }
html.pmb-ui.pmb-scrub .ui-dialog {
    min-width: 380px;
    max-width: 92vw;
    padding: 0 !important;
    font-family: var(--pmb-font);
    color: var(--pmb-ink);
    background: #fff;
    border: 1px solid #E3E8EF !important;
    border-radius: 12px !important;
    box-shadow: 0 20px 50px rgba(15, 27, 45, .28) !important;
    overflow: hidden;
}
html.pmb-ui.pmb-scrub .ui-dialog .ui-dialog-titlebar {
    margin: 0;
    padding: 16px 20px !important;
    color: var(--pmb-ink) !important;
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #E3E8EF !important;
    border-radius: 0 !important;
}
html.pmb-ui.pmb-scrub .ui-dialog .ui-dialog-title { margin: 0; font: 600 16px var(--pmb-font); color: var(--pmb-ink); }
html.pmb-ui.pmb-scrub .ui-dialog .ui-dialog-content {
    padding: 18px 20px !important;
    font-size: 13px;
    line-height: 1.5;
    color: var(--pmb-ink-2);
    background: #fff !important;
}
html.pmb-ui.pmb-scrub .ui-dialog .ui-dialog-content p { margin: 0; }
html.pmb-ui.pmb-scrub .ui-dialog .ui-dialog-content .ui-state-default { background: none !important; border: 0 !important; }
html.pmb-ui.pmb-scrub .ui-dialog .ui-dialog-buttonpane {
    margin: 0 !important;
    padding: 12px 20px !important;
    text-align: right;
    background: #fff !important;
    border: 0 !important;
    border-top: 1px solid #E3E8EF !important;
}
html.pmb-ui.pmb-scrub .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: none; }
html.pmb-ui.pmb-scrub .ui-dialog .ui-dialog-buttonpane button {
    height: 36px;
    margin: 0 0 0 8px !important;
    padding: 0 18px !important;
    font: 600 13px var(--pmb-font) !important;
    color: #fff !important;
    background: var(--scrub-accent) !important;
    border: 1px solid var(--scrub-accent) !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    cursor: pointer;
}
html.pmb-ui.pmb-scrub .ui-dialog .ui-dialog-buttonpane button:hover { background: var(--scrub-accent-dark) !important; border-color: var(--scrub-accent-dark) !important; }

/* ============================================================
   New Client Onboarding page (Operations/ClientOnboarding.aspx)
   Everything is scoped under .pmb-co (the page's root element), so no other page is affected.
   Values follow the Claude Design "New Client Onboarding"; stage / status colours come from the page script.
   ============================================================ */
html.pmb-ui .pmb-co { display: block; width: 100%; clear: both; font-family: var(--pmb-font); color: var(--pmb-ink); font-size: 12px; line-height: 1.4; }
html.pmb-ui body:has(.pmb-co) #topbar ul.navbar-top-links.navbar-right { margin-bottom: 0; }
html.pmb-ui .pmb-co *, html.pmb-ui .pmb-co *::before, html.pmb-ui .pmb-co *::after { box-sizing: border-box; }
html.pmb-ui .pmb-co button, html.pmb-ui .pmb-co input, html.pmb-ui .pmb-co select, html.pmb-ui .pmb-co textarea { font-family: var(--pmb-font); }
html.pmb-ui .pmb-co button { cursor: pointer; }
html.pmb-ui .pmb-co button:disabled { cursor: default; opacity: .6; }
html.pmb-ui .pmb-co h1, html.pmb-ui .pmb-co p { margin: 0; }
html.pmb-ui .pmb-co input[type=text], html.pmb-ui .pmb-co input[type=email], html.pmb-ui .pmb-co input[type=tel], html.pmb-ui .pmb-co input[type=url],
html.pmb-ui .pmb-co input[type=number], html.pmb-ui .pmb-co input[type=date], html.pmb-ui .pmb-co input[type=password], html.pmb-ui .pmb-co input[type=search],
html.pmb-ui .pmb-co select, html.pmb-ui .pmb-co textarea { box-shadow: none; margin: 0; }
html.pmb-ui .pmb-co .co-page { width: 100%; background: var(--pmb-bg); min-height: 900px; padding: 20px 24px 40px; }
html.pmb-ui .pmb-co .co-wrap { margin: 0 auto; display: flex; flex-direction: column; gap: 20px; }
html.pmb-ui .pmb-co .co-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
html.pmb-ui .pmb-co #coAlerts { display: flex; flex-direction: column; gap: 12px; }
html.pmb-ui .pmb-co #coAlerts:empty { display: none; }

/* layout helpers */
html.pmb-ui .pmb-co .co-col { display: flex; flex-direction: column; gap: 4px; }
html.pmb-ui .pmb-co .co-gap1 { gap: 1px; } html.pmb-ui .pmb-co .co-gap2 { gap: 2px; } html.pmb-ui .pmb-co .co-gap3 { gap: 3px; }
html.pmb-ui .pmb-co .co-gap4 { gap: 4px; } html.pmb-ui .pmb-co .co-gap5 { gap: 5px; } html.pmb-ui .pmb-co .co-gap10 { gap: 10px; } html.pmb-ui .pmb-co .co-gap14 { gap: 14px; }
html.pmb-ui .pmb-co .co-start { align-items: flex-start; }
html.pmb-ui .pmb-co .co-min0 { min-width: 0; }
html.pmb-ui .pmb-co .co-mt14 { margin-top: 14px; }
html.pmb-ui .pmb-co .co-full { grid-column: 1 / -1; }
html.pmb-ui .pmb-co .co-r { text-align: right; }
html.pmb-ui .pmb-co .co-row-gap8 { display: flex; gap: 8px; }
html.pmb-ui .pmb-co .co-row-gap6 { display: inline-flex; align-items: center; gap: 6px; }
html.pmb-ui .pmb-co .co-small { font-size: 11px; color: var(--pmb-muted); }
html.pmb-ui .pmb-co .co-strong { font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-co .co-kicker { font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--pmb-muted); }
html.pmb-ui .pmb-co .co-dot { width: 8px; height: 8px; border-radius: 50%; flex: none; display: inline-block; }
html.pmb-ui .pmb-co .co-err { font-size: 12px; color: #A93226; }

/* header */
html.pmb-ui .pmb-co .co-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px; }
html.pmb-ui .pmb-co .co-titles { display: flex; flex-direction: column; gap: 6px; }
html.pmb-ui .pmb-co .co-eyebrow { font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--pmb-green); }
html.pmb-ui .pmb-co .co-eyebrow-sm { letter-spacing: .1em; }
html.pmb-ui .pmb-co .co-head h1 { font-size: 18px; line-height: 1.15; font-weight: 600; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-co .co-head p { font-size: 13px; color: var(--pmb-muted); }
html.pmb-ui .pmb-co .co-head-actions { display: flex; flex-wrap: wrap; gap: 10px; }

/* buttons */
html.pmb-ui .pmb-co .co-btn-out { height: 34px; padding: 0 14px; border: 1px solid var(--pmb-input-border); border-radius: 8px; background: #fff; color: var(--pmb-ink); font-size: 12px; font-weight: 500; display: inline-flex; align-items: center; gap: 8px; }
html.pmb-ui .pmb-co .co-btn-out:hover { background: var(--pmb-surface-alt); }
html.pmb-ui .pmb-co .co-btn-600 { font-weight: 600; }
html.pmb-ui .pmb-co .co-btn-primary { height: 34px; padding: 0 16px; border: none; border-radius: 8px; background: var(--pmb-green); color: #fff; font-size: 12px; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
html.pmb-ui .pmb-co .co-btn-primary:hover:not(:disabled) { background: var(--pmb-green-dark); }
html.pmb-ui .pmb-co .co-btn-32 { height: 32px; padding: 0 12px; }
html.pmb-ui .pmb-co .co-btn-line { height: 28px; padding: 0 10px; border: 1px solid var(--pmb-blue); border-radius: 7px; background: #fff; color: var(--pmb-blue); font-size: 11px; font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; gap: 5px; }
html.pmb-ui .pmb-co .co-btn-line:hover { background: var(--pmb-blue-tint); }
html.pmb-ui .pmb-co .co-btn-xs { height: 28px; padding: 0 10px; border: 1px solid var(--pmb-input-border); border-radius: 7px; background: #fff; color: var(--pmb-blue); font-size: 11px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-co .co-btn-xs:hover:not(:disabled) { background: var(--pmb-blue-tint); }
html.pmb-ui .pmb-co .co-btn-xs.co-btn-danger { border-color: #F0C9C5; color: #A93226; }
html.pmb-ui .pmb-co .co-btn-xs.co-btn-danger:hover { background: var(--pmb-danger-bg); }
html.pmb-ui .pmb-co .co-btn-dashed { align-self: flex-start; height: 32px; padding: 0 12px; border: 1px dashed var(--pmb-blue); border-radius: 8px; background: #fff; color: var(--pmb-blue); font-size: 12px; font-weight: 600; }
html.pmb-ui .pmb-co .co-btn-dashed:hover { background: var(--pmb-blue-tint); }
html.pmb-ui .pmb-co .co-iconbtn { width: 34px; height: 34px; border: none; border-radius: 8px; background: transparent; color: #3A4554; display: inline-flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-co .co-iconbtn:hover { background: var(--pmb-bg); }
html.pmb-ui .pmb-co .co-x { width: 26px; height: 26px; flex: none; border: none; border-radius: 6px; background: transparent; color: inherit; display: inline-flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-co .co-del { width: 30px; height: 30px; border: 1px solid #F0C9C5; border-radius: 7px; background: #fff; color: #A93226; display: inline-flex; align-items: center; justify-content: center; padding: 0; flex: none; }
html.pmb-ui .pmb-co .co-del:hover { background: var(--pmb-danger-bg); }
html.pmb-ui .pmb-co .co-del-sm { height: 34px; width: 34px; }

/* alerts */
html.pmb-ui .pmb-co .co-info { padding: 10px 14px; border: 1px solid var(--pmb-border); border-radius: 10px; background: #fff; font-size: 13px; color: var(--pmb-muted); }
html.pmb-ui .pmb-co .co-alert { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px; background: var(--pmb-danger-bg); border: 1px solid #F0C9C5; border-radius: 10px; font-size: 13px; color: #A93226; }
html.pmb-ui .pmb-co .co-toast { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px; background: #E7F4EA; border: 1px solid #BFE0C7; border-radius: 10px; font-size: 13px; color: #22602F; }
html.pmb-ui .pmb-co .co-toast.is-err { background: var(--pmb-danger-bg); border-color: #F0C9C5; color: #A93226; }

/* list card + pipeline */
html.pmb-ui .pmb-co .co-card { background: #fff; border: 1px solid var(--pmb-border); border-radius: 12px; overflow: hidden; }
html.pmb-ui .pmb-co .co-pipe { display: flex; flex-wrap: wrap; gap: 10px; padding: 16px 20px; border-bottom: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-co .co-pipe-box { flex: 1 1 100%; display: flex; flex-wrap: wrap; align-items: stretch; gap: 16px; padding: 14px 16px; border: 1px solid var(--pmb-border); border-radius: 10px; background: var(--pmb-surface-alt); }
html.pmb-ui .pmb-co .co-active { flex: 0 1 220px; display: flex; align-items: center; gap: 12px; padding: 4px 16px 4px 4px; border: none; border-right: 1px solid var(--pmb-border); background: transparent; text-align: left; border-radius: 0; }
html.pmb-ui .pmb-co .co-active-ic { width: 40px; height: 40px; flex: none; border-radius: 10px; background: var(--pmb-blue-tint); color: var(--pmb-blue-dark); display: flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-co .co-active-txt { display: flex; flex-direction: column; gap: 2px; }
html.pmb-ui .pmb-co .co-active-val { font-size: 22px; font-weight: 700; line-height: 1.1; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-co .co-active-sub { font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui .pmb-co .co-stages { flex: 999 1 420px; min-width: 0; display: flex; flex-direction: column; justify-content: center; gap: 10px; }
html.pmb-ui .pmb-co .co-bar { display: flex; height: 8px; border-radius: 999px; overflow: hidden; background: var(--pmb-border); }
html.pmb-ui .pmb-co .co-bar > span { height: 100%; }
html.pmb-ui .pmb-co .co-stage-chips { display: flex; flex-wrap: wrap; gap: 8px; }
html.pmb-ui .pmb-co .co-stage { display: inline-flex; align-items: center; gap: 8px; height: 34px; padding: 0 12px; border-radius: 8px; font-size: 12px; font-weight: 600; background: var(--pmb-surface-alt); border: 1px solid var(--pmb-border); color: var(--pmb-ink); }
html.pmb-ui .pmb-co .co-stage.is-on { background: #fff; border-color: var(--line); }
html.pmb-ui .pmb-co .co-stage-n { font-size: 13px; font-weight: 700; }
html.pmb-ui .pmb-co .co-filters { flex: 1 1 100%; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-top: 10px; margin-top: 2px; border-top: 1px dashed var(--pmb-border); }
html.pmb-ui .pmb-co .co-filters > .co-kicker { margin-right: 2px; }
html.pmb-ui .pmb-co .co-chip { height: 32px; padding: 0 6px 0 12px; border-radius: 999px; font-size: 12px; font-weight: 600; display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; background: #fff; color: var(--pmb-ink); border: 1px solid var(--pmb-input-border); }
html.pmb-ui .pmb-co .co-chip-n { min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; background: var(--pmb-divider); color: #3A4554; }
html.pmb-ui .pmb-co .co-chip.is-on { background: var(--pmb-blue-dark); color: #fff; border-color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-co .co-chip.is-on .co-chip-n { background: rgba(255,255,255,0.22); color: #fff; }
html.pmb-ui .pmb-co .co-search { margin-left: auto; position: relative; flex: 0 1 280px; min-width: 200px; }
html.pmb-ui .pmb-co .co-search-ic { position: absolute; left: 11px; top: 9px; }
html.pmb-ui .pmb-co .co-search input { width: 100%; height: 34px; border: 1px solid var(--pmb-input-border); border-radius: 8px; padding: 0 12px 0 34px; font-size: 12px; color: var(--pmb-ink); background: #fff; }

/* clients table */
html.pmb-ui .pmb-co .co-scroll { overflow-x: auto; }
html.pmb-ui .pmb-co .co-table { width: 100%; min-width: 1240px; border-collapse: collapse; font-size: 12px; }
html.pmb-ui .pmb-co .co-table thead tr { background: #5B97CF; }
html.pmb-ui .pmb-co .co-table th { text-align: left; padding: 12px; border-bottom: 1px solid #5B97CF; white-space: nowrap; }
html.pmb-ui .pmb-co .co-table th.co-th-exp { width: 26px; padding: 12px 4px 12px 20px; }
html.pmb-ui .pmb-co .co-sort { display: inline-flex; align-items: center; gap: 4px; padding: 4px 6px; margin: -4px -6px; border: none; border-radius: 6px; background: transparent; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; color: #fff; }
html.pmb-ui .pmb-co .co-sort:hover { background: rgba(255,255,255,0.15); }
html.pmb-ui .pmb-co .co-table td { padding: 12px; border-bottom: 1px solid var(--pmb-divider); vertical-align: top; }
html.pmb-ui .pmb-co .co-row { background: #fff; }
html.pmb-ui .pmb-co .co-row.is-alt { background: #F0F5FA; }
html.pmb-ui .pmb-co .co-row.is-exp { background: #E3EDF7; }
html.pmb-ui .pmb-co .co-table td.co-td-exp { padding: 12px 4px 12px 20px; }
html.pmb-ui .pmb-co .co-exp { width: 26px; height: 26px; border: 1px solid var(--pmb-input-border); border-radius: 6px; background: #fff; color: var(--pmb-blue); display: inline-flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-co .co-chev { transition: transform .15s; }
html.pmb-ui .pmb-co .co-exp[aria-expanded="true"] .co-chev { transform: rotate(90deg); }
html.pmb-ui .pmb-co .co-td-name { min-width: 220px; }
html.pmb-ui .pmb-co .co-name { padding: 0; border: none; background: transparent; font-size: 13px; font-weight: 600; color: var(--pmb-blue); text-align: left; text-decoration: underline; text-decoration-color: #A9C6E3; text-underline-offset: 3px; }
html.pmb-ui .pmb-co .co-name:hover { color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-co .co-city { align-self: flex-start; display: inline-flex; align-items: center; gap: 4px; padding: 1px 8px 1px 6px; border-radius: 999px; background: #FFF1E0; color: #8A4B0F; font-size: 11px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-co .co-pill { display: inline-flex; align-items: center; gap: 6px; padding: 2px 9px; border-radius: 999px; font-size: 11px; font-weight: 600; white-space: nowrap; background: var(--bg); color: var(--fg); border: 1px solid var(--dot); }
html.pmb-ui .pmb-co .co-pill .co-dot { width: 6px; height: 6px; background: var(--dot); }
html.pmb-ui .pmb-co .co-pill-plain { padding: 1px 8px; border: none; }
html.pmb-ui .pmb-co .co-td-prog { min-width: 150px; }
html.pmb-ui .pmb-co .co-prog { height: 8px; border-radius: 999px; background: var(--pmb-border); overflow: hidden; }
html.pmb-ui .pmb-co .co-prog > div { height: 100%; border-radius: 999px; }
html.pmb-ui .pmb-co .co-td-intake { min-width: 130px; }
html.pmb-ui .pmb-co .co-intake { font-size: 12px; font-weight: 600; }
html.pmb-ui .pmb-co .co-spec { display: inline-flex; padding: 1px 8px; border-radius: 6px; background: #F1ECFA; color: #4B2E83; font-size: 11px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-co .co-td-num { font-size: 13px; color: var(--pmb-ink); }
html.pmb-ui .pmb-co .co-owner { display: flex; align-items: center; gap: 8px; font-size: 12px; white-space: nowrap; }
html.pmb-ui .pmb-co .co-avatar { width: 26px; height: 26px; border-radius: 50%; background: var(--pmb-blue-tint); color: var(--pmb-blue-dark); font-size: 11px; font-weight: 700; display: flex; align-items: center; justify-content: center; flex: none; }
html.pmb-ui .pmb-co .co-golive { font-size: 12px; font-weight: 600; color: var(--pmb-ink); white-space: nowrap; }
html.pmb-ui .pmb-co .co-due { align-self: flex-start; display: inline-flex; padding: 1px 7px; border-radius: 999px; font-size: 11px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-co .co-table td.co-td-next { padding: 12px 20px 12px 12px; min-width: 190px; }
html.pmb-ui .pmb-co .co-next { display: flex; align-items: flex-start; gap: 6px; font-size: 12px; color: var(--pmb-ink); }
html.pmb-ui .pmb-co .co-next-ic { flex: none; margin-top: 1px; color: var(--ic); }
html.pmb-ui .pmb-co .co-table td.co-empty { padding: 40px 20px; text-align: center; font-size: 13px; color: var(--pmb-muted); }
html.pmb-ui .pmb-co .co-foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 20px; font-size: 12px; color: var(--pmb-muted); }

/* expanded row */
html.pmb-ui .pmb-co .co-table .co-detail > td { padding: 4px 20px 20px 58px; background: var(--pmb-surface-alt); border-bottom: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-co .co-groups { display: flex; flex-wrap: wrap; gap: 14px; padding-top: 12px; }
html.pmb-ui .pmb-co .co-groups.co-mt14 { padding-top: 0; }
html.pmb-ui .pmb-co .co-group { flex: 1 1 220px; background: #fff; border: 1px solid var(--pmb-border); border-radius: 10px; padding: 12px 14px; display: flex; flex-direction: column; gap: 8px; }
html.pmb-ui .pmb-co .co-group.co-wide { flex-basis: 300px; }
html.pmb-ui .pmb-co .co-group-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
html.pmb-ui .pmb-co .co-badge { display: inline-flex; font-size: 11px; font-weight: 600; padding: 1px 7px; border-radius: 999px; white-space: nowrap; }
html.pmb-ui .pmb-co .co-badge-blue { padding: 1px 8px; background: var(--pmb-blue-tint); color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-co .co-task { display: flex; align-items: flex-start; gap: 8px; min-height: 28px; margin: 0; font-size: 12px; font-weight: 400; line-height: 1.4; cursor: pointer; color: var(--pmb-ink); }
html.pmb-ui .pmb-co .co-task.is-done { color: var(--pmb-muted); text-decoration: line-through; }
html.pmb-ui .pmb-co .co-task input { width: 16px; height: 16px; margin: 1px 0 0; flex: none; cursor: pointer; accent-color: var(--pmb-green); }
html.pmb-ui .pmb-co .co-payers { display: flex; flex-wrap: wrap; gap: 6px; }
html.pmb-ui .pmb-co .co-payer { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 999px; font-size: 11px; font-weight: 600; }
html.pmb-ui .pmb-co .co-payer .co-dot { width: 6px; height: 6px; }
html.pmb-ui .pmb-co .co-note { display: flex; flex-direction: column; gap: 2px; padding: 6px 10px; border-radius: 8px; background: var(--pmb-bg); }
html.pmb-ui .pmb-co .co-note-text { font-size: 12px; color: var(--pmb-ink); white-space: pre-line; }
html.pmb-ui .pmb-co .co-note-add { display: flex; gap: 8px; align-items: flex-start; }
html.pmb-ui .pmb-co .co-note-add textarea { flex: 1 1 auto; min-width: 0; border: 1px solid var(--pmb-input-border); border-radius: 8px; padding: 6px 10px; font-size: 12px; color: var(--pmb-ink); resize: vertical; }

/* overlays: add-client dialog and intake side panel */
html.pmb-ui .pmb-co .co-overlay { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1060; background: rgba(26,36,51,0.45); display: flex; align-items: flex-start; justify-content: center; padding: 80px 16px 16px; overflow-y: auto; }
html.pmb-ui .pmb-co .co-overlay-side { justify-content: flex-end; align-items: stretch; padding: 0; overflow: hidden; z-index: 1050; }
html.pmb-ui .pmb-co .co-dialog { width: 560px; max-width: 100%; background: #fff; border-radius: 12px; box-shadow: 0 16px 48px rgba(26,36,51,0.25); overflow: hidden; }
html.pmb-ui .pmb-co .co-dialog-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 16px 20px; border-bottom: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-co .co-dialog-title { font-size: 15px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-co .co-sub { font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui .pmb-co .co-dialog-body { padding: 18px 20px; }
html.pmb-ui .pmb-co .co-dialog-foot { display: flex; justify-content: flex-end; gap: 8px; padding: 14px 20px; background: var(--pmb-surface-alt); border-top: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-co .co-side { width: 860px; max-width: 100%; height: 100%; background: var(--pmb-bg); display: flex; flex-direction: column; box-shadow: -8px 0 32px rgba(26,36,51,0.18); }
html.pmb-ui .pmb-co .co-side-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 20px; background: #fff; border-bottom: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-co .co-side-name { font-size: 16px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-co .co-side-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui .pmb-co .co-side-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
html.pmb-ui .pmb-co .co-tabs { display: flex; flex-wrap: wrap; gap: 4px; padding: 0 20px; background: #fff; border-bottom: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-co .co-tab { height: 42px; padding: 0 12px; border: none; background: transparent; font-size: 12px; font-weight: 600; display: flex; align-items: center; gap: 8px; color: var(--pmb-muted); box-shadow: inset 0 -3px 0 transparent; border-radius: 0; }
html.pmb-ui .pmb-co .co-tab.is-on { color: var(--pmb-blue-dark); box-shadow: inset 0 -3px 0 var(--pmb-blue); }
html.pmb-ui .pmb-co .co-tab-n { width: 20px; height: 20px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 700; background: var(--pmb-divider); color: #3A4554; }
html.pmb-ui .pmb-co .co-tab.is-on .co-tab-n { background: var(--pmb-blue); color: #fff; }
html.pmb-ui .pmb-co .co-side-body { flex: 1 1 auto; overflow-y: auto; padding: 18px 20px 32px; display: flex; flex-direction: column; gap: 14px; }
html.pmb-ui .pmb-co .co-side-foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; padding: 12px 20px; background: #fff; border-top: 1px solid var(--pmb-border); }

/* intake sections */
html.pmb-ui .pmb-co .co-box { background: #fff; border: 1px solid var(--pmb-border); border-radius: 10px; padding: 16px 18px; display: flex; flex-direction: column; gap: 12px; flex: none; }
html.pmb-ui .pmb-co .co-box.co-gap10 { gap: 10px; }
html.pmb-ui .pmb-co .co-box-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
html.pmb-ui .pmb-co .co-box-title { font-size: 13px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-co .co-title-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
html.pmb-ui .pmb-co .co-enc { display: inline-flex; align-items: center; gap: 5px; padding: 1px 8px; border-radius: 999px; background: #FFF1E0; color: #8A4B0F; font-size: 11px; font-weight: 600; }
html.pmb-ui .pmb-co .co-doc { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 10px; border-radius: 8px; background: var(--pmb-surface-alt); border: 1px solid var(--pmb-divider); }
html.pmb-ui .pmb-co .co-doc-name { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--pmb-ink); }
html.pmb-ui .pmb-co .co-doc-right { display: flex; align-items: center; gap: 8px; }
html.pmb-ui .pmb-co .co-doc-right .co-badge { padding: 1px 8px; }
html.pmb-ui .pmb-co .co-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
html.pmb-ui .pmb-co .co-grid2.co-gap10 { gap: 10px; } html.pmb-ui .pmb-co .co-grid2.co-gap14 { gap: 14px; }
html.pmb-ui .pmb-co .co-field { display: flex; flex-direction: column; gap: 5px; margin: 0; font-size: 11px; font-weight: 600; color: #3A4554; min-width: 0; }
html.pmb-ui .pmb-co .co-field input, html.pmb-ui .pmb-co .co-field select { width: 100%; height: 34px; border: 1px solid var(--pmb-input-border); border-radius: 8px; padding: 0 10px; font-size: 12px; font-weight: 400; color: var(--pmb-ink); background: #fff; }
html.pmb-ui .pmb-co .co-field select { padding: 0 8px; }
html.pmb-ui .pmb-co .co-field-lg { gap: 6px; font-size: 12px; }
html.pmb-ui .pmb-co .co-field-lg input, html.pmb-ui .pmb-co .co-field-lg select { height: 36px; font-size: 13px; }
html.pmb-ui .pmb-co .co-secret { display: flex; align-items: center; gap: 6px; min-width: 0; }
html.pmb-ui .pmb-co .co-secret input { flex: 1 1 auto; min-width: 0; }
html.pmb-ui .pmb-co .co-reveal { width: 30px; height: 30px; flex: none; border: 1px solid var(--pmb-input-border); border-radius: 7px; background: #fff; color: var(--pmb-blue); display: inline-flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-co .co-radios { margin: 0; padding: 0; border: none; display: flex; flex-wrap: wrap; align-items: center; gap: 14px; font-size: 12px; color: var(--pmb-ink); }
html.pmb-ui .pmb-co .co-radios legend { float: left; width: auto; margin: 0 6px 0 0; padding: 0; border: none; font-size: 11px; font-weight: 600; color: #3A4554; }
html.pmb-ui .pmb-co .co-radios label { display: flex; align-items: center; gap: 6px; margin: 0; font-weight: 400; cursor: pointer; }
html.pmb-ui .pmb-co .co-radios input { margin: 0; accent-color: var(--pmb-green); }
html.pmb-ui .pmb-co .co-loc { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 10px; border-radius: 8px; background: var(--pmb-surface-alt); border: 1px solid var(--pmb-divider); }
html.pmb-ui .pmb-co .co-span2 { grid-column: span 2; }
html.pmb-ui .pmb-co .co-mini { width: 100%; border-collapse: collapse; font-size: 12px; }
html.pmb-ui .pmb-co .co-min600 { min-width: 600px; } html.pmb-ui .pmb-co .co-min720 { min-width: 720px; } html.pmb-ui .pmb-co .co-min760 { min-width: 760px; }
html.pmb-ui .pmb-co .co-mini thead tr { background: #5B97CF; }
html.pmb-ui .pmb-co .co-mini th { text-align: left; padding: 8px 10px; font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #fff; white-space: nowrap; }
html.pmb-ui .pmb-co .co-mini th.co-r { text-align: right; }
html.pmb-ui .pmb-co .co-th-opt { font-weight: 500; text-transform: none; letter-spacing: 0; }
html.pmb-ui .pmb-co .co-mini td { padding: 6px 10px; border-bottom: 1px solid var(--pmb-divider); vertical-align: middle; }
html.pmb-ui .pmb-co .co-mini.co-min600 td { padding: 8px 10px; }
html.pmb-ui .pmb-co .co-mini-name { font-weight: 600; color: var(--pmb-ink); white-space: nowrap; }
html.pmb-ui .pmb-co .co-mini td.co-mini-empty { padding: 14px 10px; text-align: center; }
html.pmb-ui .pmb-co .co-in-sm { width: 100%; height: 30px; border: 1px solid var(--pmb-input-border); border-radius: 6px; padding: 0 8px; font-size: 12px; color: var(--pmb-ink); background: #fff; }
html.pmb-ui .pmb-co .co-in-sm.co-sel { width: auto; padding: 0 6px; }
html.pmb-ui .pmb-co .co-in-sm.co-w120 { width: 120px; } html.pmb-ui .pmb-co .co-in-sm.co-w140 { width: 140px; }
html.pmb-ui .pmb-co .co-role { padding: 10px 12px; border-radius: 8px; background: var(--pmb-surface-alt); border: 1px solid var(--pmb-divider); display: flex; flex-direction: column; gap: 3px; }
html.pmb-ui .pmb-co .co-role-name { display: flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; }
html.pmb-ui .pmb-co .co-role-desc { font-size: 11px; line-height: 1.45; color: #3A4554; }
html.pmb-ui .pmb-co .co-invite { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px; padding: 12px; border-radius: 8px; border: 1px dashed var(--pmb-input-border); }
html.pmb-ui .pmb-co .co-f160 { flex: 1 1 160px; } html.pmb-ui .pmb-co .co-f170 { flex: 1 1 170px; } html.pmb-ui .pmb-co .co-f180 { flex: 1 1 180px; }

/* keyboard focus */
html.pmb-ui .pmb-co button:focus-visible, html.pmb-ui .pmb-co input:focus-visible, html.pmb-ui .pmb-co select:focus-visible, html.pmb-ui .pmb-co textarea:focus-visible { outline: 2px solid var(--pmb-blue); outline-offset: 1px; }

@media (max-width: 720px) {
    html.pmb-ui .pmb-co .co-page { padding: 16px; }
    html.pmb-ui .pmb-co .co-grid2, html.pmb-ui .pmb-co .co-loc { grid-template-columns: minmax(0, 1fr); }
    html.pmb-ui .pmb-co .co-span2 { grid-column: auto; }
    html.pmb-ui .pmb-co .co-active { border-right: none; }
    html.pmb-ui .pmb-co .co-search { margin-left: 0; flex: 1 1 100%; }
}

/* ============================================================
   Credentialing page (Operations/Credentialing.aspx) - redesign phase 1
   Everything is scoped under .pmb-cr (the page's root element), so no other page is affected.
   Values follow the Claude Design "Credentialing". The Fee Negotiation grid and the e-mail / note modals are the
   page's existing markup; only their look is adjusted here.
   ============================================================ */
html.pmb-ui .pmb-cr { display: block; width: 100%; clear: both; font-family: var(--pmb-font); color: var(--pmb-ink); font-size: 13px; line-height: 1.45; }
html.pmb-ui .pmb-cr *, html.pmb-ui .pmb-cr *::before, html.pmb-ui .pmb-cr *::after { box-sizing: border-box; }
html.pmb-ui .pmb-cr button, html.pmb-ui .pmb-cr input, html.pmb-ui .pmb-cr select, html.pmb-ui .pmb-cr textarea { font-family: var(--pmb-font); }
html.pmb-ui .pmb-cr button { cursor: pointer; }
html.pmb-ui .pmb-cr button:disabled { cursor: default; opacity: .6; }
html.pmb-ui .pmb-cr h1, html.pmb-ui .pmb-cr h2, html.pmb-ui .pmb-cr p { margin: 0; }
html.pmb-ui .pmb-cr a { color: var(--pmb-blue); }
html.pmb-ui .pmb-cr a:hover { color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-cr .cr-page { width: 100%; background: var(--pmb-bg); min-height: 900px; padding: 24px 24px 48px; }
html.pmb-ui .pmb-cr .cr-wrap { margin: 0 auto; display: flex; flex-direction: column; gap: 20px; }
html.pmb-ui .pmb-cr #crHead { display: flex; flex-direction: column; gap: 20px; }
html.pmb-ui .pmb-cr #crView { display: flex; flex-direction: column; gap: 20px; }
html.pmb-ui .pmb-cr #crAlerts { display: flex; flex-direction: column; gap: 10px; }
html.pmb-ui .pmb-cr #crAlerts:empty { display: none; }
html.pmb-ui .pmb-cr .cr-hidden { display: none; }
html.pmb-ui .pmb-cr .cr-muted { color: var(--pmb-muted); font-size: 13px; }
html.pmb-ui .pmb-cr .cr-small { font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-sub { font-size: 12px; font-weight: 400; color: var(--pmb-muted); margin-top: 2px; }
html.pmb-ui .pmb-cr .cr-mono { font-family: var(--pmb-mono); }
html.pmb-ui .pmb-cr .cr-col { display: flex; flex-direction: column; gap: 2px; }
html.pmb-ui .pmb-cr .cr-row-gap8 { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
html.pmb-ui .pmb-cr .cr-flex1 { flex: 1; }
html.pmb-ui .pmb-cr .cr-mt12 { margin-top: 12px; }
html.pmb-ui .pmb-cr .cr-pad { padding: 14px 20px; }
html.pmb-ui .pmb-cr .cr-pad20 { padding: 20px; }
html.pmb-ui .pmb-cr .cr-stack { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
html.pmb-ui .pmb-cr .cr-stack-12 { display: flex; flex-direction: column; gap: 12px; }
html.pmb-ui .pmb-cr .cr-stack-8 { display: flex; flex-direction: column; gap: 8px; }
html.pmb-ui .pmb-cr .cr-sub-k { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-err { margin-top: 12px; font-size: 12px; color: #A93226; }
html.pmb-ui .pmb-cr .cr-link { border: none; background: transparent; padding: 0; color: var(--pmb-blue); font-size: 12px; font-weight: 600; }

/* header + tabs */
html.pmb-ui .pmb-cr .cr-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px; }
html.pmb-ui .pmb-cr .cr-titles { display: flex; flex-direction: column; gap: 6px; flex: 1 1 380px; min-width: 0; }
html.pmb-ui .pmb-cr .cr-eyebrow { font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--pmb-green); }
html.pmb-ui .pmb-cr .cr-head h1 { font-size: 30px; line-height: 1.15; font-weight: 600; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-cr .cr-head p { font-size: 14px; color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-head-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-left: auto; }
html.pmb-ui .pmb-cr .cr-tabbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; }
html.pmb-ui .pmb-cr .cr-tabs { display: inline-flex; gap: 4px; padding: 4px; background: #fff; border: 1px solid var(--pmb-border); border-radius: 10px; }
html.pmb-ui .pmb-cr .cr-tabs button { height: 36px; padding: 0 16px; border: none; border-radius: 7px; background: transparent; color: var(--pmb-ink-2); font-size: 14px; font-weight: 600; }
html.pmb-ui .pmb-cr .cr-tabs button[aria-selected="true"] { background: var(--pmb-blue); color: #fff; }

/* buttons */
html.pmb-ui .pmb-cr .cr-btn-primary { height: 40px; padding: 0 18px; border: none; border-radius: 8px; background: var(--pmb-blue); color: #fff; font-size: 13px; font-weight: 600; display: inline-flex; align-items: center; justify-content: center; gap: 8px; white-space: nowrap; }
html.pmb-ui .pmb-cr .cr-btn-primary:hover:not(:disabled) { background: var(--pmb-blue-dark); }
html.pmb-ui .pmb-cr .cr-btn-out { height: 40px; padding: 0 16px; border: 1px solid var(--pmb-input-border); border-radius: 8px; background: #fff; color: var(--pmb-ink); font-size: 13px; font-weight: 600; display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; }
html.pmb-ui .pmb-cr .cr-btn-out:hover { background: var(--pmb-surface-alt); }
html.pmb-ui .pmb-cr .cr-btn-danger-out { color: #A93226; border-color: #F0C9C5; }
html.pmb-ui .pmb-cr .cr-btn-danger-out:hover { background: var(--pmb-danger-bg); }
html.pmb-ui .pmb-cr .cr-btn-36 { height: 36px; padding: 0 14px; font-size: 12px; }
html.pmb-ui .pmb-cr .cr-btn-block { width: 100%; }
html.pmb-ui .pmb-cr .cr-btn-line { height: 28px; padding: 0 10px; border: 1px solid var(--pmb-blue-dark); border-radius: 7px; background: #fff; color: var(--pmb-blue-dark); font-size: 12px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-cr .cr-btn-line:hover { background: var(--pmb-blue-tint); }
html.pmb-ui .pmb-cr .cr-group-head .cr-btn-line { border-color: #2453A6; color: #2453A6; }
html.pmb-ui .pmb-cr .cr-btn-sm { height: 28px; padding: 0 10px; border: 1px solid var(--pmb-input-border); border-radius: 7px; background: #fff; color: var(--pmb-ink); font-size: 12px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-cr .cr-btn-sm:hover { background: var(--pmb-surface-alt); }
html.pmb-ui .pmb-cr .cr-btn-sm-blue { border-color: var(--pmb-blue); background: var(--pmb-blue); color: #fff; }
html.pmb-ui .pmb-cr .cr-btn-sm-blue:hover { background: var(--pmb-blue-dark); }
html.pmb-ui .pmb-cr .cr-btn-xs { height: 30px; padding: 0 12px; border: 1px solid var(--pmb-border); border-radius: 7px; background: #fff; color: var(--pmb-blue-dark); font-size: 12px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-cr .cr-btn-xs:hover { background: var(--pmb-blue-tint); }
html.pmb-ui .pmb-cr .cr-btn-xs.cr-btn-danger { border-color: #F0C9C5; color: #A93226; }
html.pmb-ui .pmb-cr .cr-btn-xs.cr-btn-danger:hover { background: var(--pmb-danger-bg); }
html.pmb-ui .pmb-cr .cr-btn-mail { height: 32px; padding: 0 12px; border: 1px solid #2453A6; border-radius: 8px; background: #fff; color: #2453A6; font-size: 12px; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; }
html.pmb-ui .pmb-cr .cr-btn-mail:hover { background: var(--pmb-blue-tint); }
html.pmb-ui .pmb-cr .cr-chev { width: 32px; height: 32px; border: 1px solid var(--pmb-border); border-radius: 8px; background: #fff; color: var(--pmb-muted); display: inline-flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-cr .cr-chev.is-closed svg { transform: rotate(180deg); }
html.pmb-ui .pmb-cr .cr-btn-file { height: 32px; padding: 0 10px; border: 1px solid var(--pmb-input-border); border-radius: 8px; background: #fff; color: var(--pmb-blue-dark); font-size: 12px; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
html.pmb-ui .pmb-cr .cr-btn-upload { height: 32px; padding: 0 10px; border: 1px dashed var(--pmb-blue); border-radius: 8px; background: var(--pmb-surface-alt); color: var(--pmb-blue); font-size: 12px; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; max-width: 220px; overflow: hidden; text-overflow: ellipsis; }
html.pmb-ui .pmb-cr .cr-btn-upload.cr-btn-36 { height: 36px; padding: 0 12px; }
html.pmb-ui .pmb-cr .cr-btn-open { height: 30px; padding: 0 10px; border: 1px solid var(--pmb-blue-dark); border-radius: 7px; background: #fff; color: var(--pmb-blue-dark); font-size: 12px; font-weight: 600; display: inline-flex; align-items: center; gap: 4px; }
html.pmb-ui .pmb-cr .cr-btn-open[aria-expanded="true"] svg { transform: rotate(180deg); }
html.pmb-ui .pmb-cr .cr-icon { width: 30px; height: 30px; border: 1px solid var(--pmb-border); border-radius: 7px; background: #fff; display: inline-flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-cr .cr-icon:hover { background: var(--pmb-surface-alt); }
html.pmb-ui .pmb-cr .cr-icon-mail { border-color: var(--pmb-input-border); color: #2453A6; }
html.pmb-ui .pmb-cr .cr-x { width: 26px; height: 26px; flex: none; border: none; border-radius: 6px; background: transparent; color: inherit; display: inline-flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-cr .cr-x:hover { background: rgba(26,36,51,.06); }
html.pmb-ui .pmb-cr .cr-upload { height: 44px; width: 100%; border: 1px dashed var(--pmb-blue); border-radius: 8px; background: var(--pmb-surface-alt); color: var(--pmb-blue); font-size: 13px; font-weight: 600; display: flex; align-items: center; justify-content: center; gap: 8px; }
html.pmb-ui .pmb-cr .cr-upload:hover { background: var(--pmb-blue-tint); }

/* clients menu */
html.pmb-ui .pmb-cr .cr-clients { position: relative; }
html.pmb-ui .pmb-cr .cr-clients-btn { height: 40px; padding: 0 14px; border: 1px solid var(--pmb-input-border); border-radius: 10px; background: #fff; color: var(--pmb-ink); font-size: 14px; font-weight: 600; display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
html.pmb-ui .pmb-cr .cr-clients-pop { position: absolute; right: 0; top: 46px; z-index: 20; width: 300px; max-height: 360px; overflow: auto; background: #fff; border: 1px solid var(--pmb-border); border-radius: 10px; box-shadow: 0 12px 30px rgba(26,36,51,.15); padding: 8px; display: flex; flex-direction: column; gap: 2px; }
html.pmb-ui .pmb-cr .cr-clients-tools { display: flex; justify-content: space-between; padding: 4px 10px 8px; border-bottom: 1px solid var(--pmb-border); margin-bottom: 4px; }
html.pmb-ui .pmb-cr .cr-clients-item { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border: none; border-radius: 7px; background: transparent; font-size: 13px; color: var(--pmb-ink); text-align: left; }
html.pmb-ui .pmb-cr .cr-clients-item:hover { background: var(--pmb-surface-alt); }
html.pmb-ui .pmb-cr .cr-box { width: 18px; height: 18px; flex: none; border-radius: 4px; border: 1px solid var(--pmb-input-border); background: #fff; color: #fff; font-size: 12px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-cr .cr-box.is-on { border-color: var(--pmb-blue); background: var(--pmb-blue); }

/* KPIs + group by */
html.pmb-ui .pmb-cr .cr-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
html.pmb-ui .pmb-cr .cr-kpi { background: #fff; border: 1px solid var(--pmb-border); border-radius: 12px; padding: 16px 18px; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
html.pmb-ui .pmb-cr .cr-kpi-label { font-size: 12px; font-weight: 600; color: var(--pmb-muted); text-transform: uppercase; letter-spacing: .08em; }
html.pmb-ui .pmb-cr .cr-kpi-val { font-size: 26px; font-weight: 600; color: var(--pmb-blue-dark); line-height: 1.2; }
html.pmb-ui .pmb-cr .cr-kpi-val.cr-green { color: #24603A; }
html.pmb-ui .pmb-cr .cr-kpi-val.cr-amber { color: #8A4500; }
html.pmb-ui .pmb-cr .cr-kpi-sub { font-size: 12px; color: var(--pmb-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html.pmb-ui .pmb-cr .cr-groupby { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
html.pmb-ui .pmb-cr .cr-seg { display: inline-flex; border: 1px solid var(--pmb-input-border); border-radius: 8px; overflow: hidden; background: #fff; }
html.pmb-ui .pmb-cr .cr-seg button { height: 36px; padding: 0 14px; border: 0; background: #fff; color: var(--pmb-ink); font-size: 13px; font-weight: 600; }
html.pmb-ui .pmb-cr .cr-seg button + button { border-left: 1px solid var(--pmb-input-border); }
html.pmb-ui .pmb-cr .cr-seg button[aria-pressed="true"] { background: var(--pmb-blue); color: #fff; }

/* pills */
html.pmb-ui .pmb-cr .cr-pill { display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: 12px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-cr .cr-tone-blue { background: var(--pmb-blue-tint); color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-cr .cr-tone-amber { background: #FDF0E3; color: #8A4500; }
html.pmb-ui .pmb-cr .cr-tone-grey { background: #F1F4F7; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-cr .cr-tone-light { background: #F1F4F7; color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-tone-green { background: #E7F4EA; color: #24603A; }

/* client cards + application rows */
html.pmb-ui .pmb-cr .cr-card { background: #fff; border: 1px solid var(--pmb-border); border-radius: 12px; overflow: hidden; }
html.pmb-ui .pmb-cr .cr-card-head, html.pmb-ui .pmb-cr .cr-sec-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; padding: 16px 20px; border-bottom: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-cr .cr-card-titles { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
html.pmb-ui .pmb-cr .cr-card-line { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
html.pmb-ui .pmb-cr .cr-card h2 { font-size: 17px; font-weight: 600; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-cr .cr-card-right { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
html.pmb-ui .pmb-cr .cr-app-head, html.pmb-ui .pmb-cr .cr-app-row { display: grid; grid-template-columns: 168px 124px minmax(200px, 2fr) minmax(160px, 1.4fr) 150px 104px 172px; gap: 16px; align-items: start; padding: 14px 20px; }
html.pmb-ui .pmb-cr .cr-app-head { padding-top: 10px; padding-bottom: 10px; background: var(--pmb-surface-alt); font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-app-row { border-top: 1px solid var(--pmb-border); font-size: 13px; line-height: 1.5; }
html.pmb-ui .pmb-cr .cr-cell { min-width: 0; }
html.pmb-ui .pmb-cr .cr-cell-label { display: none; }
html.pmb-ui .pmb-cr .cr-payer { font-weight: 600; }
html.pmb-ui .pmb-cr .cr-clamp { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; white-space: pre-line; word-break: break-word; }
html.pmb-ui .pmb-cr .cr-cell-file { display: flex; flex-wrap: wrap; gap: 6px; }
html.pmb-ui .pmb-cr .cr-cell-file .cr-cell-label { width: 100%; }
html.pmb-ui .pmb-cr .cr-updated { font-size: 12px; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-cr .cr-actions { display: flex; flex-wrap: wrap; gap: 6px; }
html.pmb-ui .pmb-cr .cr-actions .cr-cell-label { width: 100%; }
html.pmb-ui .pmb-cr .cr-group-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; font-size: 12px; font-weight: 600; color: var(--pmb-blue-dark); background: var(--pmb-blue-tint); padding: 8px 20px; border-top: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-cr .cr-detail { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; padding: 14px 20px 16px; background: var(--pmb-surface-alt); border-top: 1px dashed var(--pmb-input-border); font-size: 13px; line-height: 1.5; }
html.pmb-ui .pmb-cr .cr-detail-full { grid-column: 1 / -1; }
/* Form to use / payer portal submission guide panel in an opened application */
html.pmb-ui .pmb-cr .cr-guide { background: #fff; border: 1px solid var(--pmb-border); border-radius: 8px; padding: 12px 14px; }
html.pmb-ui .pmb-cr .cr-mt10 { margin-top: 10px; }
/* "Payer forms and guidelines" link in the header, with Change link */
html.pmb-ui .pmb-cr .cr-guide-link { display: inline-flex; align-items: center; gap: 8px; }
html.pmb-ui .pmb-cr .cr-guide-link > a.cr-btn-out { display: inline-flex; align-items: center; text-decoration: none; }
/* Practice settings → Payers: uploaded official form */
html.pmb-ui .pmb-cr .cr-official { font-size: 12px; font-weight: 600; color: var(--pmb-blue); text-decoration: none; overflow-wrap: anywhere; }
html.pmb-ui .pmb-cr .cr-official:hover { text-decoration: underline; }
html.pmb-ui .pmb-cr .cr-dl { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--pmb-muted); margin-bottom: 4px; }
html.pmb-ui .pmb-cr .cr-pre { white-space: pre-line; word-break: break-word; }
html.pmb-ui .pmb-cr .cr-doc { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 8px 12px; background: #fff; border: 1px solid var(--pmb-border); border-radius: 8px; margin-bottom: 6px; }
html.pmb-ui .pmb-cr .cr-doc a { font-weight: 600; color: var(--pmb-ink); text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html.pmb-ui .pmb-cr .cr-doc a:hover { color: var(--pmb-blue); text-decoration: underline; }
html.pmb-ui .pmb-cr .cr-doc-right { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; color: var(--pmb-muted); flex: none; }
html.pmb-ui .pmb-cr .cr-doc-none { margin-bottom: 6px; }
html.pmb-ui .pmb-cr .cr-doc-add { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
html.pmb-ui .pmb-cr .cr-doc-add .cr-input { flex: 1 1 220px; min-width: 220px; width: auto; }
html.pmb-ui .pmb-cr .cr-card-foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 20px; border-top: 1px solid var(--pmb-border); background: var(--pmb-surface-alt); font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-empty-row { padding: 16px 20px; font-size: 13px; color: var(--pmb-muted); }

/* forms */
html.pmb-ui .pmb-cr .cr-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
html.pmb-ui .pmb-cr .cr-card > .cr-grid { padding: 20px; }
html.pmb-ui .pmb-cr .cr-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
html.pmb-ui .pmb-cr .cr-span2 { grid-column: 1 / -1; }
html.pmb-ui .pmb-cr .cr-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
html.pmb-ui .pmb-cr .cr-label { font-size: 13px; font-weight: 600; color: var(--pmb-ink-2); margin: 0; }
html.pmb-ui .pmb-cr .cr-hint { font-size: 12px; color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-input { height: 44px; width: 100%; padding: 0 12px; border: 1px solid var(--pmb-input-border); border-radius: 8px; background: #fff; font-size: 14px; color: var(--pmb-ink); box-shadow: none; margin: 0; }
html.pmb-ui .pmb-cr .cr-input:focus { outline: 2px solid rgba(31,111,178,.25); outline-offset: 0; border-color: var(--pmb-blue); }
html.pmb-ui .pmb-cr .cr-input[readonly] { background: var(--pmb-surface-alt); color: var(--pmb-ink-2); }
html.pmb-ui .pmb-cr .cr-input-36 { height: 36px; font-size: 13px; }
html.pmb-ui .pmb-cr .cr-textarea { height: auto; min-height: 84px; padding: 10px 12px; resize: vertical; line-height: 1.5; }
html.pmb-ui .pmb-cr .cr-form-body { display: flex; flex-direction: column; gap: 20px; padding: 20px; }
html.pmb-ui .pmb-cr .cr-form-foot { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 10px; padding: 16px 20px; border-top: 1px solid var(--pmb-border); background: var(--pmb-surface-alt); }
html.pmb-ui .pmb-cr .cr-stack > .cr-form-foot { border: 1px solid var(--pmb-border); border-radius: 12px; }
html.pmb-ui .pmb-cr .cr-check { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 400; margin: 0; cursor: pointer; }
html.pmb-ui .pmb-cr .cr-check input { width: 16px; height: 16px; margin: 0; }
html.pmb-ui .pmb-cr .cr-ctx { display: flex; }
html.pmb-ui .pmb-cr .cr-ctx-field { width: 420px; max-width: 100%; }

/* practice settings */
html.pmb-ui .pmb-cr .cr-case { display: flex; flex-wrap: wrap; gap: 12px; padding: 16px 20px; background: #fff; border: 1px solid var(--pmb-border); border-radius: 12px; }
html.pmb-ui .pmb-cr .cr-case-main, html.pmb-ui .pmb-cr .cr-case-item { display: flex; flex-direction: column; gap: 3px; flex: 1 1 200px; min-width: 0; }
html.pmb-ui .pmb-cr .cr-case-item { padding-left: 12px; border-left: 1px solid var(--pmb-border); font-size: 13px; }
html.pmb-ui .pmb-cr .cr-case-name { font-size: 15px; font-weight: 600; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-cr .cr-case-k { font-weight: 600; }
html.pmb-ui .pmb-cr .cr-note { display: flex; align-items: flex-start; gap: 10px; padding: 12px 16px; background: var(--pmb-warn-bg); border: 1px solid var(--pmb-warn-border); border-radius: 10px; font-size: 13px; color: var(--pmb-warn-ink); }
html.pmb-ui .pmb-cr .cr-note svg { flex: none; margin-top: 1px; }
html.pmb-ui .pmb-cr .cr-payer-list { display: flex; flex-direction: column; }
html.pmb-ui .pmb-cr .cr-payer-item { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 20px; border-top: 1px solid var(--pmb-border); }
html.pmb-ui .pmb-cr .cr-payer-item:first-child { border-top: none; }

/* start credentialing */
html.pmb-ui .pmb-cr .cr-start { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 20px; align-items: start; }
html.pmb-ui .pmb-cr .cr-choice { display: flex; align-items: flex-start; gap: 10px; padding: 12px 14px; border: 1px solid var(--pmb-input-border); border-radius: 10px; background: #fff; cursor: pointer; margin: 0; font-weight: 400; }
html.pmb-ui .pmb-cr .cr-choice.is-on { border-color: var(--pmb-blue); background: var(--pmb-blue-tint); }
html.pmb-ui .pmb-cr .cr-choice input { margin: 3px 0 0; width: 16px; height: 16px; flex: none; }
html.pmb-ui .pmb-cr .cr-choice-t { font-size: 14px; font-weight: 600; color: var(--pmb-ink); }
html.pmb-ui .pmb-cr .cr-summary { position: sticky; top: 16px; display: flex; flex-direction: column; gap: 14px; }
html.pmb-ui .pmb-cr .cr-sum-list { display: flex; flex-direction: column; gap: 8px; font-size: 13px; }
html.pmb-ui .pmb-cr .cr-sum-list span { color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-before { display: flex; flex-direction: column; gap: 4px; padding: 12px; background: var(--pmb-surface-alt); border: 1px dashed var(--pmb-input-border); border-radius: 10px; font-size: 12px; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-cr .cr-before-t { font-weight: 600; color: var(--pmb-blue-dark); }

/* alerts / info */
html.pmb-ui .pmb-cr .cr-info { padding: 14px 18px; border: 1px solid var(--pmb-border); border-radius: 12px; background: #fff; font-size: 13px; color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-alert { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 10px 14px; background: var(--pmb-warn-bg); border: 1px solid var(--pmb-warn-border); border-radius: 10px; font-size: 13px; color: var(--pmb-warn-ink); }
html.pmb-ui .pmb-cr .cr-toast { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px; background: #E7F4EA; border: 1px solid #BFE0C7; border-radius: 10px; font-size: 13px; color: #22602F; }
html.pmb-ui .pmb-cr .cr-toast.is-err { background: var(--pmb-danger-bg); border-color: #F0C9C5; color: #A93226; }

/* dialog */
html.pmb-ui .pmb-cr .cr-backdrop { position: fixed; inset: 0; z-index: 1040; background: rgba(26,36,51,.45); }
html.pmb-ui .pmb-cr .cr-dialog { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1041; width: 560px; max-width: calc(100vw - 32px); max-height: calc(100vh - 48px); background: #fff; border-radius: 12px; box-shadow: 0 24px 60px rgba(26,36,51,.30); overflow: hidden; display: flex; flex-direction: column; }
html.pmb-ui .pmb-cr .cr-dialog-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 16px 20px; background: var(--pmb-blue); }
html.pmb-ui .pmb-cr .cr-dialog-title { font-size: 17px; font-weight: 600; color: #fff; }
html.pmb-ui .pmb-cr .cr-dialog-sub { font-size: 13px; color: #DCEAF7; }
html.pmb-ui .pmb-cr .cr-dialog-x { width: 28px; height: 28px; flex: none; border: none; border-radius: 6px; background: rgba(255,255,255,.12); color: #fff; display: flex; align-items: center; justify-content: center; padding: 0; }
html.pmb-ui .pmb-cr .cr-dialog-body { padding: 20px; overflow: auto; }
html.pmb-ui .pmb-cr .cr-dialog-foot { display: flex; justify-content: flex-end; gap: 10px; padding: 14px 20px; border-top: 1px solid var(--pmb-border); background: var(--pmb-surface-alt); }

/* Fee Negotiation: the existing filters and grid in the new look */
html.pmb-ui .pmb-cr .cr-fn { display: flex; flex-direction: column; gap: 16px; }
html.pmb-ui .pmb-cr .cr-fn-filters { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 14px 16px; background: #fff; border: 1px solid var(--pmb-border); border-radius: 12px; }
html.pmb-ui .pmb-cr .cr-fn-filters .cr-input { height: 40px; width: auto; min-width: 160px; font-size: 13px; }
html.pmb-ui .pmb-cr .cr-fn-filters .cr-btn-primary { height: 40px; }
html.pmb-ui .pmb-cr .cr-fn-client .ms-parent { width: 280px !important; }
html.pmb-ui .pmb-cr .cr-fn-card { padding: 0; overflow-x: auto; }
html.pmb-ui .pmb-cr .cr-fn table.dataTable, html.pmb-ui .pmb-cr .cr-fn table.table { width: 100% !important; margin: 0 !important; border: none; border-collapse: collapse; font-size: 13px; text-transform: none; }
html.pmb-ui .pmb-cr .cr-fn table thead th { background: var(--pmb-surface-alt) !important; color: var(--pmb-muted) !important; font-size: 11px !important; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; border: none !important; border-bottom: 1px solid var(--pmb-border) !important; padding: 10px 14px !important; line-height: 1.3 !important; }
html.pmb-ui .pmb-cr .cr-fn table tbody td { border: none !important; border-top: 1px solid var(--pmb-border) !important; padding: 12px 14px !important; vertical-align: top; color: var(--pmb-ink); background: #fff; }
html.pmb-ui .pmb-cr .cr-fn table tbody tr.shown > td { background: var(--pmb-blue-tint); font-weight: 600; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-cr .cr-fn table tbody td.details-control { cursor: pointer; width: 40px; text-align: center; color: var(--pmb-blue-dark); }
html.pmb-ui .pmb-cr .cr-fn table table thead th { font-size: 10px !important; }
html.pmb-ui .pmb-cr .cr-fn table table { width: 100% !important; }
html.pmb-ui .pmb-cr .cr-fn .fa-edit, html.pmb-ui .pmb-cr .cr-fn .fa-envelope, html.pmb-ui .pmb-cr .cr-fn .fa-info-circle, html.pmb-ui .pmb-cr .cr-fn .fa-plus-square { color: var(--pmb-blue) !important; cursor: pointer; }
html.pmb-ui .pmb-cr .cr-fn a { cursor: pointer; font-weight: 600; }
html.pmb-ui .pmb-cr .cr-fn .dataTables_info, html.pmb-ui .pmb-cr .cr-fn .dataTables_paginate { padding: 10px 14px; font-size: 12px; color: var(--pmb-muted); }

@media (max-width: 1100px) {
    html.pmb-ui .pmb-cr .cr-start { grid-template-columns: minmax(0, 1fr); }
    html.pmb-ui .pmb-cr .cr-summary { position: static; }
}
@media (max-width: 900px) {
    html.pmb-ui .pmb-cr .cr-page { padding: 16px 16px 32px; }
    html.pmb-ui .pmb-cr .cr-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    html.pmb-ui .pmb-cr .cr-app-head { display: none; }
    html.pmb-ui .pmb-cr .cr-app-row { grid-template-columns: 1fr 1fr; gap: 10px 16px; }
    html.pmb-ui .pmb-cr .cr-app-row .cr-cell-payer, html.pmb-ui .pmb-cr .cr-app-row .cr-cell-notes, html.pmb-ui .pmb-cr .cr-app-row .cr-cell-req { grid-column: 1 / -1; }
    html.pmb-ui .pmb-cr .cr-cell-label { display: block; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--pmb-muted); margin-bottom: 2px; }
    html.pmb-ui .pmb-cr .cr-detail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    html.pmb-ui .pmb-cr .cr-grid, html.pmb-ui .pmb-cr .cr-grid2 { grid-template-columns: minmax(0, 1fr); }
    html.pmb-ui .pmb-cr .cr-head h1 { font-size: 24px; }
    html.pmb-ui .pmb-cr .cr-case-item { padding-left: 0; border-left: none; }
}

/* ---- Credentialing: Fee Negotiation cards as in the design (cells hold the existing page's edit icons and links) ---- */
html.pmb-ui .pmb-cr .cr-fn-filters { padding: 16px 20px; }
html.pmb-ui .pmb-cr .cr-fn-filters .cr-input { width: 180px; min-width: 0; font-size: 14px; }
html.pmb-ui .pmb-cr .cr-fn-filters .cr-btn-primary { padding: 0 20px; font-size: 14px; }
html.pmb-ui .pmb-cr .cr-fn-filters .cr-check { display: inline-flex; color: var(--pmb-ink-2); }
html.pmb-ui .pmb-cr .cr-fn-client .ms-parent { width: 260px !important; }
html.pmb-ui .pmb-cr .cr-fn-client .ms-choice { height: 40px; border: 1px solid var(--pmb-input-border); border-radius: 8px; font-size: 14px; color: var(--pmb-ink); }
html.pmb-ui .pmb-cr #lblfollowupcounts { color: #A93226; font-weight: 600; font-size: 13px; }
html.pmb-ui .pmb-cr .cr-fn-list { display: flex; flex-direction: column; gap: 20px; }
html.pmb-ui .pmb-cr .cr-fn-head, html.pmb-ui .pmb-cr .cr-fn-row { display: grid; grid-template-columns: minmax(200px, 2.2fr) 110px 120px 140px 110px 120px minmax(200px, 2fr) 110px 52px; gap: 12px; align-items: center; padding: 12px 20px; }
html.pmb-ui .pmb-cr .cr-fn-head { background: var(--pmb-surface-alt); font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pmb-muted); padding-top: 10px; padding-bottom: 10px; }
html.pmb-ui .pmb-cr .cr-fn-row { border-top: 1px solid var(--pmb-border); font-size: 13px; color: var(--pmb-ink); }
html.pmb-ui .pmb-cr .cr-fn-row > div { min-width: 0; word-break: break-word; }
html.pmb-ui .pmb-cr .cr-fn-name { font-weight: 600; }
html.pmb-ui .pmb-cr .cr-fn-contact { font-size: 12px; line-height: 1.45; }
html.pmb-ui .pmb-cr .cr-fn-claims { color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-fn-claims > a { font-family: var(--pmb-mono); color: var(--pmb-ink); font-weight: 400; text-decoration: none; }
html.pmb-ui .pmb-cr .cr-fn-avg > a { font-weight: 600; color: var(--pmb-ink); text-decoration: none; }
html.pmb-ui .pmb-cr .cr-fn-claims > a:hover, html.pmb-ui .pmb-cr .cr-fn-avg > a:hover { color: var(--pmb-blue); text-decoration: underline; }
html.pmb-ui .pmb-cr .cr-fn-avg .fa-plus-square, html.pmb-ui .pmb-cr .cr-fn-avg .fa-minus-square, html.pmb-ui .pmb-cr .cr-fn-avg .fa-info-circle { color: var(--pmb-blue) !important; cursor: pointer; font-size: 13px; }
/* Avg. payment breakdown: specialty lines, a specialty's providers indented below (stacked, no tables) */
html.pmb-ui .pmb-cr .cr-fn-bk { margin-top: 6px; display: flex; flex-direction: column; gap: 6px; font-size: 12px; line-height: 1.35; }
html.pmb-ui .pmb-cr .cr-fn-bk-line { display: flex; align-items: baseline; gap: 6px; }
html.pmb-ui .pmb-cr .cr-fn-bk-name { color: var(--pmb-ink); font-weight: 500; overflow-wrap: anywhere; word-break: normal; }
html.pmb-ui .pmb-cr .cr-fn-bk-val { color: var(--pmb-muted); }
html.pmb-ui .pmb-cr .cr-fn-bk-line + .cr-fn-bk-val { padding-left: 19px; }
html.pmb-ui .pmb-cr .cr-fn-bk-val a { color: var(--pmb-muted); text-decoration: none; }
html.pmb-ui .pmb-cr .cr-fn-bk-val a:hover { color: var(--pmb-blue); text-decoration: underline; }
html.pmb-ui .pmb-cr .cr-fn-bk-sub { margin: 6px 0 0 19px; padding-left: 8px; border-left: 2px solid var(--pmb-border); display: flex; flex-direction: column; gap: 6px; }
html.pmb-ui .pmb-cr .cr-fn-bk-none { color: var(--pmb-muted); font-style: italic; }
html.pmb-ui .pmb-cr .cr-fn-max { color: var(--pmb-ink); }
html.pmb-ui .pmb-cr .cr-fn-hist a { color: var(--pmb-blue); font-size: 13px; font-weight: 500; text-decoration: none; cursor: pointer; }
html.pmb-ui .pmb-cr .cr-fn-hist a:hover { color: var(--pmb-blue-dark); text-decoration: underline; }
/* PMB note: each note as the design's small box */
html.pmb-ui .pmb-cr .cr-fn-note [id^="spnPMBNote_"] > div { background: var(--pmb-surface-alt) !important; border: 1px solid var(--pmb-border); border-radius: 6px; padding: 6px 8px !important; margin-bottom: 4px !important; font-size: 12px; line-height: 1.45; }
html.pmb-ui .pmb-cr .cr-fn-note [id^="spnPMBNote_"] span[style] { color: var(--pmb-blue-dark) !important; }
/* the page's font icons drawn as the design's pencil and mail buttons */
html.pmb-ui .pmb-cr .cr-fn-row i.fa-edit { width: 26px; height: 26px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; vertical-align: middle; color: var(--pmb-blue) !important; font-size: 0 !important; cursor: pointer; }
html.pmb-ui .pmb-cr .cr-fn-row i.fa-edit:hover { background: var(--pmb-blue-tint); }
html.pmb-ui .pmb-cr .cr-fn-row i.fa-edit::before { content: ""; width: 14px; height: 14px; background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4z'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4z'/%3E%3C/svg%3E") center / contain no-repeat; }
html.pmb-ui .pmb-cr .cr-fn-mail i.fa-envelope { width: 32px; height: 32px; border: 1px solid var(--pmb-input-border); border-radius: 7px; background: #fff; display: inline-flex; align-items: center; justify-content: center; color: #2453A6 !important; font-size: 0 !important; cursor: pointer; }
html.pmb-ui .pmb-cr .cr-fn-mail i.fa-envelope:hover { background: var(--pmb-blue-tint); }
html.pmb-ui .pmb-cr .cr-fn-mail i.fa-envelope::before { content: ""; width: 15px; height: 15px; background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E") center / contain no-repeat; }
@media (max-width: 1000px) {
    html.pmb-ui .pmb-cr .cr-fn-head { display: none; }
    html.pmb-ui .pmb-cr .cr-fn-row { grid-template-columns: 1fr 1fr; gap: 8px 12px; }
    html.pmb-ui .pmb-cr .cr-fn-row .cr-fn-name, html.pmb-ui .pmb-cr .cr-fn-row .cr-fn-note { grid-column: 1 / -1; }
    html.pmb-ui .pmb-cr .cr-fn-row .cr-cell-label { display: block; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--pmb-muted); margin-bottom: 2px; }
    html.pmb-ui .pmb-cr .cr-fn-client .ms-parent, html.pmb-ui .pmb-cr .cr-fn-filters .cr-input { width: 100% !important; }
}

/* ---------- CredentialingNew: Send email to client dialog (#mdlSendEmailClient, outside .pmb-cr) ---------- */
html.pmb-ui .cr-mail { font-family: var(--pmb-font); color: #1b2333; font-size: 14px; }
html.pmb-ui .cr-mail *, html.pmb-ui .cr-mail *::before, html.pmb-ui .cr-mail *::after { box-sizing: border-box; }
html.pmb-ui .cr-mail button, html.pmb-ui .cr-mail input { font-family: inherit; }
html.pmb-ui .cr-mail .cr-mail-dialog { width: 760px; max-width: calc(100% - 32px); margin: 32px auto; }
html.pmb-ui .cr-mail .cr-mail-box { border-radius: 10px; border: 1px solid #d3d9e4; box-shadow: 0 16px 48px rgba(27,35,51,.24); overflow: hidden; display: flex; flex-direction: column; max-height: calc(100vh - 64px); }
html.pmb-ui .cr-mail .cr-mail-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 24px; border-bottom: 1px solid #e3e7ee; background: #fff; }
html.pmb-ui .cr-mail .cr-mail-head::before, html.pmb-ui .cr-mail .cr-mail-head::after, html.pmb-ui .cr-mail .cr-mail-foot::before, html.pmb-ui .cr-mail .cr-mail-foot::after { display: none; }
html.pmb-ui .cr-mail .cr-mail-titles { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
html.pmb-ui .cr-mail .cr-mail-titles h1 { margin: 0; font-size: 18px; font-weight: 600; color: #1b2333; line-height: 1.3; }
html.pmb-ui .cr-mail .cr-mail-sub { font-size: 13px; color: #4f5a6e; }
html.pmb-ui .cr-mail .cr-mail-x { width: 40px; height: 40px; border: 0; background: transparent; border-radius: 8px; cursor: pointer; color: #4f5a6e; display: flex; align-items: center; justify-content: center; flex: none; }
html.pmb-ui .cr-mail .cr-mail-x:hover { background: #f5f7fa; color: #1b2333; }
html.pmb-ui .cr-mail .cr-mail-strip { display: flex; flex-wrap: wrap; gap: 8px 20px; padding: 12px 24px; background: #f5f7fa; border-bottom: 1px solid #e3e7ee; font-size: 13px; color: #4f5a6e; }
html.pmb-ui .cr-mail .cr-mail-strip:empty { display: none; }
html.pmb-ui .cr-mail .cr-mail-strip b { color: #1b2333; font-weight: 500; }
html.pmb-ui .cr-mail .cr-mail-body { display: flex; flex-direction: column; gap: 20px; padding: 24px; overflow-y: auto; background: #fff; }
html.pmb-ui .cr-mail .cr-mail-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
html.pmb-ui .cr-mail .cr-mail-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
html.pmb-ui .cr-mail .cr-mail-field > label, html.pmb-ui .cr-mail .cr-mail-label { font-weight: 500; font-size: 14px; color: #1b2333; margin: 0; }
html.pmb-ui .cr-mail .cr-mail-req { color: #b42318; }
html.pmb-ui .cr-mail .cr-mail-input { height: 44px; width: 100%; padding: 0 14px; border: 1px solid #b9c2d1; border-radius: 8px; background: #fff; font-size: 14px; color: #1b2333; }
html.pmb-ui .cr-mail .cr-mail-subject { height: 44px; display: flex; align-items: center; gap: 10px; padding: 0 14px; border: 1px solid #b9c2d1; border-radius: 8px; background: #fff; }
html.pmb-ui .cr-mail .cr-mail-subject input { flex: 1; min-width: 0; height: 100%; border: 0; outline: 0; padding: 0; font-size: 14px; color: #1b2333; background: transparent; }
html.pmb-ui .cr-mail .cr-mail-subject:focus-within, html.pmb-ui .cr-mail .cr-mail-input:focus, html.pmb-ui .cr-mail .cr-mail-search input:focus { border-color: #2453a6; box-shadow: 0 0 0 3px rgba(36,83,166,.15); outline: 0; }
html.pmb-ui .cr-mail .cr-mail-tag { flex: none; font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: #2453a6; background: #e6eefb; padding: 3px 8px; border-radius: 4px; }
html.pmb-ui .cr-mail .cr-mail-tpl { display: flex; flex-direction: column; gap: 10px; }
html.pmb-ui .cr-mail .cr-mail-tpl-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
html.pmb-ui .cr-mail .cr-mail-search { position: relative; color: #4f5a6e; }
html.pmb-ui .cr-mail .cr-mail-search svg { position: absolute; left: 12px; top: 12px; }
html.pmb-ui .cr-mail .cr-mail-search input { width: 100%; height: 40px; padding: 0 12px 0 36px; border: 1px solid #d3d9e4; border-radius: 6px; font-size: 13px; color: #1b2333; }
html.pmb-ui .cr-mail .cr-mail-tpls { display: flex; flex-direction: column; border: 1px solid #d3d9e4; border-radius: 8px; overflow: hidden; max-height: 260px; overflow-y: auto; }
html.pmb-ui .cr-mail .cr-mail-tpls:empty { display: none; }
html.pmb-ui .cr-mail .cr-mail-opt { width: 100%; min-height: 60px; padding: 10px 14px; border: 0; border-top: 1px solid #e3e7ee; background: #fff; cursor: pointer; display: flex; align-items: center; gap: 12px; text-align: left; }
html.pmb-ui .cr-mail .cr-mail-opt:first-child { border-top: 0; }
html.pmb-ui .cr-mail .cr-mail-opt:hover { background: #f8fafd; }
html.pmb-ui .cr-mail .cr-mail-opt[aria-checked="true"] { background: #f3f7fd; }
html.pmb-ui .cr-mail .cr-mail-radio { width: 18px; height: 18px; border-radius: 50%; flex: none; border: 2px solid #b9c2d1; }
html.pmb-ui .cr-mail .cr-mail-opt[aria-checked="true"] .cr-mail-radio { background: #2453a6; border-color: #2453a6; box-shadow: inset 0 0 0 3px #fff; }
html.pmb-ui .cr-mail .cr-mail-opt-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
html.pmb-ui .cr-mail .cr-mail-opt-name { font-weight: 600; font-size: 14px; color: #1b2333; }
html.pmb-ui .cr-mail .cr-mail-opt-prev { font-size: 12px; color: #4f5a6e; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html.pmb-ui .cr-mail .cr-mail-empty { padding: 14px; font-size: 13px; color: #4f5a6e; }
html.pmb-ui .cr-mail .cr-mail-link { align-self: flex-start; border: 0; background: transparent; color: #2453a6; font-size: 13px; padding: 6px 0; cursor: pointer; }
html.pmb-ui .cr-mail .cr-mail-link:hover { color: #163a7a; text-decoration: underline; }
html.pmb-ui .cr-mail .cr-mail-editor { border: 1px solid #b9c2d1; border-radius: 8px; overflow: hidden; }
html.pmb-ui .cr-mail .cr-mail-editor .cke_chrome { border: 0; box-shadow: none; }
html.pmb-ui .cr-mail .cr-mail-editor .cke_bottom { background: #f5f7fa; border-top: 1px solid #e3e7ee; }
html.pmb-ui .cr-mail .cr-mail-chips { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 12px; color: #4f5a6e; }
html.pmb-ui .cr-mail .cr-mail-chip { height: 28px; padding: 0 8px; border: 1px solid #d3d9e4; border-radius: 4px; background: #f5f7fa; font-family: 'IBM Plex Mono', monospace; font-size: 12px; color: #1b2333; cursor: pointer; }
html.pmb-ui .cr-mail .cr-mail-chip:hover { border-color: #2453a6; color: #2453a6; }
html.pmb-ui .cr-mail .cr-mail-file { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
html.pmb-ui .cr-mail .cr-mail-drop { height: 44px; border: 1px dashed #b9c2d1; border-radius: 8px; background: #fafbfd; color: #2453a6; font-size: 13px; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 8px; }
html.pmb-ui .cr-mail .cr-mail-drop.is-over { border-color: #2453a6; background: #e6eefb; }
html.pmb-ui .cr-mail .cr-mail-files { display: flex; flex-wrap: wrap; gap: 6px; }
html.pmb-ui .cr-mail .cr-mail-files:empty { display: none; }
html.pmb-ui .cr-mail .cr-mail-fileitem { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border: 1px solid #d3d9e4; border-radius: 999px; background: #f5f7fa; font-size: 12px; color: #1b2333; }
html.pmb-ui .cr-mail .cr-mail-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 10px; padding: 16px 24px; border-top: 1px solid #e3e7ee; background: #fafbfd; margin: 0; }
html.pmb-ui .cr-mail .cr-mail-cancel { height: 44px; padding: 0 18px; border: 1px solid #b9c2d1; border-radius: 8px; background: #fff; color: #1b2333; font-size: 14px; cursor: pointer; }
html.pmb-ui .cr-mail .cr-mail-send { height: 44px; padding: 0 22px; border: 0; border-radius: 8px; background: #2453a6; color: #fff; font-size: 14px; font-weight: 500; cursor: pointer; }
html.pmb-ui .cr-mail .cr-mail-send:hover { background: #163a7a; }
html.pmb-ui .cr-mail .cr-mail-cancel:focus-visible, html.pmb-ui .cr-mail .cr-mail-send:focus-visible, html.pmb-ui .cr-mail .cr-mail-opt:focus-visible,
html.pmb-ui .cr-mail .cr-mail-drop:focus-visible, html.pmb-ui .cr-mail .cr-mail-chip:focus-visible, html.pmb-ui .cr-mail .cr-mail-x:focus-visible { outline: 2px solid #2453a6; outline-offset: 2px; }
@media (max-width: 640px) {
    html.pmb-ui .cr-mail .cr-mail-two { grid-template-columns: 1fr; }
    html.pmb-ui .cr-mail .cr-mail-head, html.pmb-ui .cr-mail .cr-mail-body, html.pmb-ui .cr-mail .cr-mail-foot, html.pmb-ui .cr-mail .cr-mail-strip { padding-left: 16px; padding-right: 16px; }
}

/* ---------- CredentialingNew: Client channel (Email client / a row's mail icon) ---------- */
html.pmb-ui .pmb-cr .cm-wrap { display: grid; grid-template-columns: 280px minmax(0, 1fr) 340px; gap: 16px; align-items: start; }
html.pmb-ui .pmb-cr .cm-card { background: #FFFFFF; border: 1px solid #E1E6EC; border-radius: 12px; overflow: hidden; }
html.pmb-ui .pmb-cr .cm-input { height: 40px; width: 100%; padding: 0 12px; border: 1px solid #CDD5DF; border-radius: 8px; background: #FFFFFF; font-size: 13px; color: #1A2433; }
html.pmb-ui .pmb-cr .cm-input:focus { outline: 0; border-color: #1F6FB2; box-shadow: 0 0 0 3px rgba(31,111,178,.15); }
html.pmb-ui .pmb-cr .cm-search { padding: 12px 14px; }
html.pmb-ui .pmb-cr .cm-clients { max-height: 640px; overflow-y: auto; }
html.pmb-ui .pmb-cr .cm-client { width: 100%; display: flex; flex-direction: column; gap: 3px; padding: 12px 14px; border: 0; border-top: 1px solid #E1E6EC; background: #FFFFFF; cursor: pointer; text-align: left; }
html.pmb-ui .pmb-cr .cm-client:hover { background: #F4F8FC; }
html.pmb-ui .pmb-cr .cm-client.on { background: #E8F1FA; }
html.pmb-ui .pmb-cr .cm-client-name { font-weight: 600; font-size: 14px; color: #174F80; }
html.pmb-ui .pmb-cr .cm-client-meta { font-size: 12px; color: #5B6675; }
html.pmb-ui .pmb-cr .cm-none { padding: 18px; font-size: 13px; color: #5B6675; }
html.pmb-ui .pmb-cr .cm-err { color: #A93226; }
html.pmb-ui .pmb-cr .cm-convo { display: flex; flex-direction: column; min-height: 720px; }
html.pmb-ui .pmb-cr .cm-convo-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 18px; border-bottom: 1px solid #E1E6EC; }
html.pmb-ui .pmb-cr .cm-convo-titles { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
html.pmb-ui .pmb-cr .cm-convo-name { font-weight: 600; font-size: 15px; color: #174F80; }
html.pmb-ui .pmb-cr .cm-convo-sub { font-size: 12px; color: #5B6675; }
html.pmb-ui .pmb-cr .cm-chip { display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 11px; font-weight: 600; white-space: nowrap; }
html.pmb-ui .pmb-cr .cm-chip-wait { background: #FDF0E3; color: #8A4500; }
html.pmb-ui .pmb-cr .cm-convo-tools { display: flex; align-items: center; gap: 10px; }
html.pmb-ui .pmb-cr .cm-chip-grey { background: #FFFFFF; color: #3A4554; border: 1px solid #CDD5DF; }
html.pmb-ui .pmb-cr .cm-thread { display: flex; flex-direction: column; gap: 14px; padding: 18px; flex: 1; max-height: 560px; overflow-y: auto; }
html.pmb-ui .pmb-cr .cm-msg { display: flex; flex-direction: column; gap: 4px; align-items: flex-start; }
html.pmb-ui .pmb-cr .cm-msg.is-client { align-items: flex-end; }
html.pmb-ui .pmb-cr .cm-msg-meta { font-size: 11px; color: #5B6675; }
html.pmb-ui .pmb-cr .cm-bubble { max-width: 82%; padding: 10px 12px; border-radius: 10px; font-size: 13px; line-height: 1.5; background: #E8F1FA; color: #1A2433; }
html.pmb-ui .pmb-cr .cm-msg.is-client .cm-bubble { background: #F1F4F7; }
html.pmb-ui .pmb-cr .cm-bubble-head { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-bottom: 6px; }
html.pmb-ui .pmb-cr .cm-bubble-subj { font-weight: 600; color: #174F80; }
html.pmb-ui .pmb-cr .cm-bubble-text { white-space: pre-wrap; overflow-wrap: anywhere; }
html.pmb-ui .pmb-cr .cm-compose { display: flex; flex-direction: column; gap: 8px; padding: 14px 18px; border-top: 1px solid #E1E6EC; background: #F8FAFB; }
html.pmb-ui .pmb-cr .cm-textarea { height: 84px; min-height: 84px; padding: 10px 12px; resize: vertical; line-height: 1.5; }
html.pmb-ui .pmb-cr .cm-compose-bar { display: flex; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
html.pmb-ui .pmb-cr .cm-compose-tools { display: flex; gap: 8px; flex-wrap: wrap; }
html.pmb-ui .pmb-cr .cm-btn { height: 34px; padding: 0 12px; border: 1px solid #CDD5DF; border-radius: 7px; background: #FFFFFF; color: #1A2433; font-size: 12px; font-weight: 600; cursor: pointer; }
html.pmb-ui .pmb-cr .cm-btn:hover { border-color: #1F6FB2; color: #1F6FB2; }
html.pmb-ui .pmb-cr .cm-btn-primary { height: 36px; padding: 0 16px; border: 0; border-radius: 8px; background: #1F6FB2; color: #FFFFFF; font-size: 13px; font-weight: 600; cursor: pointer; }
html.pmb-ui .pmb-cr .cm-btn-primary:hover { background: #174F80; }
html.pmb-ui .pmb-cr .cm-btn:disabled, html.pmb-ui .pmb-cr .cm-btn-primary:disabled { opacity: .55; cursor: default; }
html.pmb-ui .pmb-cr .cm-file-input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
html.pmb-ui .pmb-cr .cm-files { display: flex; flex-wrap: wrap; gap: 6px; }
html.pmb-ui .pmb-cr .cm-file { display: inline-flex; align-items: center; gap: 4px; padding: 2px 4px 2px 10px; border: 1px solid #CDD5DF; border-radius: 999px; background: #FFFFFF; font-size: 12px; color: #1A2433; }
html.pmb-ui .pmb-cr .cm-file-x { width: 24px; height: 24px; border: 0; background: transparent; border-radius: 50%; color: #5B6675; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
html.pmb-ui .pmb-cr .cm-file-x:hover { background: #F1F4F7; color: #A93226; }
html.pmb-ui .pmb-cr .cm-side { padding: 16px; display: flex; flex-direction: column; gap: 14px; }
html.pmb-ui .pmb-cr .cm-sub { margin: 0; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #5B6675; }
html.pmb-ui .pmb-cr .cm-tabs { display: flex; flex-wrap: wrap; gap: 4px; padding: 4px; background: #F1F4F7; border-radius: 9px; }
html.pmb-ui .pmb-cr .cm-tab { height: 34px; padding: 0 12px; border: 0; background: transparent; color: #3A4554; font-size: 13px; font-weight: 600; cursor: pointer; border-radius: 7px; display: inline-flex; align-items: center; gap: 6px; }
html.pmb-ui .pmb-cr .cm-tab.on { background: #1F6FB2; color: #FFFFFF; }
html.pmb-ui .pmb-cr .cm-tab:disabled { color: #8792A2; cursor: not-allowed; }
html.pmb-ui .pmb-cr .cm-soon { font-size: 10px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; padding: 1px 6px; border-radius: 999px; background: #E1E6EC; color: #5B6675; }
html.pmb-ui .pmb-cr .cm-hint { margin: -4px 0 0; font-size: 11px; color: #5B6675; line-height: 1.45; }
html.pmb-ui .pmb-cr .cm-field { display: flex; flex-direction: column; gap: 6px; }
html.pmb-ui .pmb-cr .cm-label { font-size: 12px; font-weight: 600; color: #3A4554; margin: 0; }
html.pmb-ui .pmb-cr .cm-req { color: #A93226; }
html.pmb-ui .pmb-cr .cm-from { display: flex; flex-direction: column; gap: 6px; padding-top: 14px; border-top: 1px solid #E1E6EC; }
html.pmb-ui .pmb-cr .cm-from-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
html.pmb-ui .pmb-cr .cm-from.is-edit .cm-from-row { justify-content: flex-start; }
html.pmb-ui .pmb-cr .cm-from-addr { font-size: 13px; color: #1A2433; overflow-wrap: anywhere; }
html.pmb-ui .pmb-cr .cm-from-none { font-size: 12px; color: #8A4500; background: #FDF0E3; border-radius: 6px; padding: 6px 8px; line-height: 1.45; }
html.pmb-ui .pmb-cr .cm-client:focus-visible, html.pmb-ui .pmb-cr .cm-btn:focus-visible, html.pmb-ui .pmb-cr .cm-btn-primary:focus-visible, html.pmb-ui .pmb-cr .cm-file-x:focus-visible { outline: 2px solid #1F6FB2; outline-offset: 2px; }
@media (max-width: 1100px) {
    html.pmb-ui .pmb-cr .cm-wrap { grid-template-columns: minmax(0, 1fr); }
    html.pmb-ui .pmb-cr .cm-convo { min-height: 0; }
    html.pmb-ui .pmb-cr .cm-clients { max-height: 240px; }
}
