/* ':not(#_)' chains raise specificity above old ID-scoped !important page rules */
:root {
    --ui-primary: #c05f5f;
    --ui-header-grad: linear-gradient(120deg, #38393c 0%, #4a4a4c 45%, #c05f5f 100%);  /* same band as the Clients modal headers */
    --ui-primary-dark: #a3455f;
    --ui-primary-tint: #f8ecec;          /* hover rows, secondary hover, row icon buttons */
    --ui-primary-tint-border: #e6c3c3;
    --ui-positive: #4f7c3c;              /* darkened for white-text contrast (AA) */
    --ui-positive-dark: #3f6a2f;
    --ui-action: #2563eb;               /* edit / add icon buttons */
    --ui-action-dark: #1d4ed8;
    --ui-action-tint: #eff6ff;
    --ui-action-hover: #dbeafe;
    --ui-action-border: #bfdbfe;
    --ui-save-dark: #047857;            /* update / save icon buttons */
    --ui-save-tint: #ecfdf5;
    --ui-save-hover: #d1fae5;
    --ui-save-border: #a7f3d0;
    --ui-del: #dc2626;                  /* delete icon buttons */
    --ui-del-tint: #fef2f2;
    --ui-del-hover: #fee2e2;
    --ui-del-border: #fecaca;
    --ui-icon-neutral: #6b7280;         /* cancel icon buttons */
    --ui-icon-neutral-hover: #f3f4f6;
    --ui-icon-neutral-border: #e5e7eb;
    --ui-danger: #c8403c;                /* darkened for white-text contrast (AA) */
    --ui-danger-border: #d43f3a;
    --ui-danger-dark: #c9302c;
    --ui-danger-darker: #ac2925;
    --ui-danger-tint: #fdefec;
    --ui-neutral-text: #4a4a4c;
    --ui-neutral-muted: #6f6f76;         /* AA on white */
    --ui-neutral-border: #d9dae3;
    --ui-neutral-line: #e7e7e7;
}

/* Destructive actions: red everywhere, matched by handler name; other buttons carry .ui-danger */
body .btn[onclick*="elete" i]:not(.btn-delete):not(.btn-cancel):not(#_):not(#__),
body .btn[onclick*="emove" i]:not(.btn-delete):not(.btn-cancel):not(#_):not(#__),
body button#btnDeleteOwnersForm:not(#_):not(#__),
body button#DeleteProperty:not(#_):not(#__),
body #DeletePropertyModal .btn-primary:not(#_):not(#__),
body #DeleteCompModel .btn-primary:not(#_):not(#__),
body #DeleteAdjustmentTemplateModal .btn-primary:not(#_):not(#__),
body #DeleteDocument_Modal .selectYes:not(#_):not(#__),
body :is(.btn, .eq-btn).ui-danger:not(#_):not(#__) {
    background: var(--ui-danger) !important;
    background-image: none !important;
    border: 1px solid var(--ui-danger-border) !important;
    color: #fff !important;
    box-shadow: 0 2px 6px rgba(217, 83, 79, .35) !important;
}
body .btn[onclick*="elete" i]:not(.btn-delete):not(.btn-cancel):not(#_):not(#__):is(:hover, :focus, :active),
body .btn[onclick*="emove" i]:not(.btn-delete):not(.btn-cancel):not(#_):not(#__):is(:hover, :focus, :active),
body button#btnDeleteOwnersForm:not(#_):not(#__):is(:hover, :focus, :active),
body button#DeleteProperty:not(#_):not(#__):is(:hover, :focus, :active),
body #DeletePropertyModal .btn-primary:not(#_):not(#__):is(:hover, :focus, :active),
body #DeleteCompModel .btn-primary:not(#_):not(#__):is(:hover, :focus, :active),
body #DeleteAdjustmentTemplateModal .btn-primary:not(#_):not(#__):is(:hover, :focus, :active),
body #DeleteDocument_Modal .selectYes:not(#_):not(#__):is(:hover, :focus, :active),
body :is(.btn, .eq-btn).ui-danger:not(#_):not(#__):is(:hover, :focus, :active) {
    background: var(--ui-danger-dark) !important;
    border-color: var(--ui-danger-darker) !important;
}

/* Secondary buttons: white with a gray border */
body :is(.btn-nevermind, .NeverMindBtn, .neverMind_btn, .theme-btn-default, .btnCancel.btn-cancel, .blue-outline-btn,
         .modal_close_btn, .outline_modal_btn, .ui-secondary, .btn.btn-clear, .btn-secondary,
         .confirm_btns .btn_danger, .btn[style*="lightgrey" i],
         .btn-default:not(.custm_btn_):not(.blue-btn):not(.softRed-btn):not(.navbar-btn):not(.ChangeStatusBtn)):not(#_):not(#__) {
    background: #fff !important;
    background-image: none !important;
    border: 1px solid var(--ui-neutral-border) !important;
    color: var(--ui-neutral-text) !important;
    box-shadow: none !important;
}
body :is(.btn-nevermind, .NeverMindBtn, .neverMind_btn, .theme-btn-default, .btnCancel.btn-cancel, .blue-outline-btn,
         .modal_close_btn, .outline_modal_btn, .ui-secondary, .btn.btn-clear, .btn-secondary,
         .confirm_btns .btn_danger, .btn[style*="lightgrey" i],
         .btn-default:not(.custm_btn_):not(.blue-btn):not(.softRed-btn):not(.navbar-btn):not(.ChangeStatusBtn)):not(#_):not(#__):not(:disabled):is(:hover, :focus, :active) {
    background: var(--ui-primary-tint) !important;
    border-color: var(--ui-primary-tint-border) !important;
    color: var(--ui-primary-dark) !important;
}

/* Row icon buttons by role; delete is red because a maroon tint on small icons reads as an error */
body :is(.edit_btn, .Edit_AdjustmentTemplate, .Edit_UserDetails,
         .setting_User .ResetPasswordBtn, .setting_User #Add_User,
         .document_settings #Edit, .document_settings #Add,
         .Filing_Period_Deadlines #Edit, .Filing_Period_Deadlines #Add,
         .AdjustmentTemplates_section #Edit, .AdjustmentTemplates_section #Add):not(#_):not(#__) {
    background: var(--ui-action-tint) !important;
    color: var(--ui-action-dark) !important;
    border: 1px solid var(--ui-action-border) !important;
}
body :is(.Update_User, .document_settings #update, .Filing_Period_Deadlines #update, .history_update_btn .btn-Update):not(#_):not(#__) {
    background: var(--ui-save-tint) !important;
    color: var(--ui-save-dark) !important;
    border: 1px solid var(--ui-save-border) !important;
}
body :is(.edit_btn, .Edit_AdjustmentTemplate, .Edit_UserDetails, .setting_User .ResetPasswordBtn, .setting_User #Add_User,
         .document_settings #Edit, .document_settings #Add, .Filing_Period_Deadlines #Edit, .Filing_Period_Deadlines #Add,
         .AdjustmentTemplates_section #Edit, .AdjustmentTemplates_section #Add):not(#_):not(#__):is(:hover, :focus) {
    background: var(--ui-action-hover) !important;
}
body :is(.Update_User, .document_settings #update, .Filing_Period_Deadlines #update, .history_update_btn .btn-Update):not(#_):not(#__):is(:hover, :focus) {
    background: var(--ui-save-hover) !important;
}
body :is(button#cancel, .delete_btn:is([title="Cancel" i], [data-ui-title="Cancel" i]), .ea-cancel-trigger, .Marketing_cancel):not(#_):not(#__) {
    background: #fff !important;
    color: var(--ui-neutral-text) !important;
    border: 1px solid var(--ui-neutral-border) !important;
}

body :is(.btn-success, #confirm .btn_success.yes):not(#_):not(#__) {
    background: var(--ui-positive) !important;
    background-image: none !important;
    border: 1px solid var(--ui-positive-dark) !important;
    color: #fff !important;
    font-weight: 600;
}
body :is(.btn-success, #confirm .btn_success.yes):not(#_):not(#__):is(:hover, :focus, :active) {
    background: var(--ui-positive-dark) !important;
    border-color: var(--ui-positive-dark) !important;
}
/* The generic confirm dialog turns red when its message is about deleting/removing */
body #confirm.confirm-danger .btn_success.yes:not(#_):not(#__) {
    background: var(--ui-danger) !important;
    border-color: var(--ui-danger-border) !important;
}
body #confirm.confirm-danger .btn_success.yes:not(#_):not(#__):is(:hover, :focus, :active) {
    background: var(--ui-danger-dark) !important;
    border-color: var(--ui-danger-darker) !important;
}

/* Disabled look; .ui-busy is excluded (separate state) */
body :is(button, input[type="button"], input[type="submit"], input[type="reset"], .btn, .action-btn, [role="button"]):is(:disabled, .disabled, [disabled], [aria-disabled="true"]):not(.ui-busy):not(#_):not(#__):not(#___):not(#____) {
    opacity: .55 !important;
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: none !important;
    animation: none !important;
    outline: none !important;
}

/* Outline buttons fill on hover; legacy classes mixed a white fill with the gradient */
body :is(.green-outline-btn, .softRed-outline-btn):not(#_):not(#__) {
    background: #fff !important;
    background-image: none !important;
    border: 1px solid var(--ui-primary) !important;
    color: var(--ui-primary-dark) !important;
    box-shadow: none !important;
}
body :is(.green-outline-btn, .softRed-outline-btn):not(#_):not(#__):not(:disabled):is(:hover, :focus, :active) {
    background: var(--ui-primary) !important;
    border-color: var(--ui-primary) !important;
    color: #fff !important;
}

/* Light hover tint for grid rows and dropdown items */
.table-hover > tbody > tr:not(.selected):hover > td,
.table-hover > tbody > tr:not(.selected):hover > th,
table.dataTable.hover > tbody > tr:not(.selected):hover > td,
table.dataTable.display > tbody > tr:not(.selected):hover > td,
table.dataTable > tbody > tr:not(.selected):hover > td { background-color: var(--ui-primary-tint); }
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus,
.multiselect-container > li > a:hover,
.list-group-item-action:hover { background-color: var(--ui-primary-tint); }

/* Header: signed-in user chip + logout pill */
.btn_logoutDiv.ui-user {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 0;
    padding: 4px 6px 4px 4px;
    background: #fff;
    border: 1px solid var(--ui-neutral-line);
    border-radius: 999px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .08);
}
.ui-user-avatar {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--ui-primary-dark) 0%, var(--ui-primary) 100%);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .03em;
    line-height: 1;
}
.ui-user-meta {
    display: flex;
    flex-direction: column;
    min-width: 0;
    line-height: 1.15;
}
.ui-user-label {
    font-size: 10px;
    font-weight: 500;
    color: var(--ui-neutral-muted);
    text-transform: uppercase;
    letter-spacing: .07em;
}
.ui-user-name {
    max-width: 190px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 14px;
    font-weight: 600;
    color: var(--ui-neutral-text);
}
.btn_logoutDiv .signout-btn.ui-logout:not(#_) {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    float: none !important;
    padding: 7px 14px !important;
    border: 1px solid var(--ui-neutral-border);
    border-radius: 999px;
    background: #fff;
    color: var(--ui-neutral-text) !important;
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    transform: none;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
.btn_logoutDiv .signout-btn.ui-logout:not(#_) i {
    padding: 0 !important;
    font-size: 15px;
    color: var(--ui-danger);
}
.btn_logoutDiv .signout-btn.ui-logout:not(#_):hover {
    background: var(--ui-danger-tint);
    border-color: var(--ui-danger);
    color: var(--ui-danger-dark) !important;
    transform: none;
    text-decoration: none;
}
/* No dark focus box after a mouse click; keyboard users keep a rounded ring */
.btn_logoutDiv .signout-btn.ui-logout:not(#_):focus,
.btn_logoutDiv .signout-btn.ui-logout:not(#_):active {
    outline: none;
    box-shadow: none;
}
.btn_logoutDiv .signout-btn.ui-logout:not(#_):focus-visible {
    outline: 2px solid var(--ui-primary);
    outline-offset: 2px;
    border-radius: 999px;
    background: var(--ui-danger-tint);
    border-color: var(--ui-danger);
    color: var(--ui-danger-dark) !important;
}

/* Mobile menu logout: same look, full width */
body .logout-resp .btn_logout:not(#_):not(#__) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: calc(100% - 30px);
    margin: 6px 15px 10px;
    padding: 10px 14px;
    background: #fff !important;
    border: 1px solid var(--ui-neutral-border) !important;
    border-radius: 999px !important;
    color: var(--ui-neutral-text) !important;
    font-weight: 500;
    box-shadow: none !important;
}
body .logout-resp .btn_logout:not(#_):not(#__) i { padding: 0 !important; color: var(--ui-danger); }
body .logout-resp .btn_logout:not(#_):not(#__):hover,
body .logout-resp .btn_logout:not(#_):not(#__):focus-visible {
    background: var(--ui-danger-tint) !important;
    border-color: var(--ui-danger) !important;
    color: var(--ui-danger-dark) !important;
    transform: none;
}
body .logout-resp .btn_logout:not(#_):not(#__):focus:not(:focus-visible) { outline: none; box-shadow: none; }

@media (max-width: 767px) {
    .ui-user-label { display: none; }
    .ui-user-name { max-width: 120px; font-size: 13px; }
    .btn_logoutDiv.ui-user { padding-right: 12px; }
}

/* Site Settings row buttons by title; ID bumps beat per-tab rules */
body #dashboard_main :is(button:is([title="Edit" i], [data-ui-title="Edit" i]), button:is([title="Update" i], [data-ui-title="Update" i]), button:is([title="Save" i], [data-ui-title="Save" i]), button:is([title="Add" i], [data-ui-title="Add" i]),
                         button:is([title="Delete" i], [data-ui-title="Delete" i]), button:is([title="Cancel" i], [data-ui-title="Cancel" i]), button:is([title="Reset password" i], [data-ui-title="Reset password" i])):not(.btn):not(#_):not(#__):not(#___) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    min-width: 34px;
    padding: 0;
    margin: 0 8px 0 0;
    border-radius: 8px;
    border: 1px solid var(--ui-icon-neutral-border) !important;
    background: #fff !important;
    color: var(--ui-icon-neutral) !important;
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
    box-shadow: none;
    text-transform: none;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
body #dashboard_main :is(button:is([title="Edit" i], [data-ui-title="Edit" i]), button:is([title="Update" i], [data-ui-title="Update" i]), button:is([title="Save" i], [data-ui-title="Save" i]), button:is([title="Add" i], [data-ui-title="Add" i]),
                         button:is([title="Delete" i], [data-ui-title="Delete" i]), button:is([title="Cancel" i], [data-ui-title="Cancel" i]), button:is([title="Reset password" i], [data-ui-title="Reset password" i])):not(.btn):not(#_):not(#__):not(#___):last-child { margin-right: 0; }
body #dashboard_main :is(button:is([title="Edit" i], [data-ui-title="Edit" i]), button:is([title="Update" i], [data-ui-title="Update" i]), button:is([title="Save" i], [data-ui-title="Save" i]), button:is([title="Add" i], [data-ui-title="Add" i]),
                         button:is([title="Delete" i], [data-ui-title="Delete" i]), button:is([title="Cancel" i], [data-ui-title="Cancel" i]), button:is([title="Reset password" i], [data-ui-title="Reset password" i])):not(.btn):not(#_):not(#__):not(#___) i { color: inherit !important; font-size: inherit; padding: 0; margin: 0; }
body #dashboard_main :is(button:is([title="Edit" i], [data-ui-title="Edit" i]), button:is([title="Update" i], [data-ui-title="Update" i]), button:is([title="Save" i], [data-ui-title="Save" i]), button:is([title="Add" i], [data-ui-title="Add" i]),
                         button:is([title="Delete" i], [data-ui-title="Delete" i]), button:is([title="Cancel" i], [data-ui-title="Cancel" i]), button:is([title="Reset password" i], [data-ui-title="Reset password" i])):not(.btn):not(#_):not(#__):not(#___):hover { transform: translateY(-1px); }
/* Even 8px gap: drop the whitespace between buttons in button-only cells */
body #dashboard_main :is(td, div):has(> button:is([title="Edit" i], [data-ui-title="Edit" i]), > button:is([title="Update" i], [data-ui-title="Update" i]), > button:is([title="Save" i], [data-ui-title="Save" i]), > button:is([title="Add" i], [data-ui-title="Add" i]), > button:is([title="Delete" i], [data-ui-title="Delete" i]), > button:is([title="Cancel" i], [data-ui-title="Cancel" i])):not(:has(> :not(button))):not(.actions-cell) { font-size: 0; }
/* Referrals keeps its own flex layout: colors only */
body #dashboard_main button.action-btn:not(.btn):not(#_):not(#__):not(#___) { margin: 0; display: flex; }
body #dashboard_main button:is([title="Edit" i], [data-ui-title="Edit" i]):not(.btn):not(#_):not(#__):not(#___) { background: var(--ui-action-tint) !important; color: var(--ui-action-dark) !important; border-color: var(--ui-action-border) !important; }
body #dashboard_main button:is([title="Edit" i], [data-ui-title="Edit" i]):not(.btn):not(#_):not(#__):not(#___):not(:disabled):is(:hover, :focus) { background: var(--ui-action-hover) !important; color: var(--ui-action-dark) !important; }
body #dashboard_main :is(button:is([title="Update" i], [data-ui-title="Update" i]), button:is([title="Save" i], [data-ui-title="Save" i]), button:is([title="Add" i], [data-ui-title="Add" i])):not(.btn):not(#_):not(#__):not(#___) { background: var(--ui-save-tint) !important; color: var(--ui-save-dark) !important; border-color: var(--ui-save-border) !important; }
body #dashboard_main :is(button:is([title="Update" i], [data-ui-title="Update" i]), button:is([title="Save" i], [data-ui-title="Save" i]), button:is([title="Add" i], [data-ui-title="Add" i])):not(.btn):not(#_):not(#__):not(#___):not(:disabled):is(:hover, :focus) { background: var(--ui-save-hover) !important; color: var(--ui-save-dark) !important; }
body #dashboard_main button:is([title="Delete" i], [data-ui-title="Delete" i]):not(.btn):not(#_):not(#__):not(#___) { background: var(--ui-del-tint) !important; color: var(--ui-del) !important; border-color: var(--ui-del-border) !important; }
body #dashboard_main button:is([title="Delete" i], [data-ui-title="Delete" i]):not(.btn):not(#_):not(#__):not(#___):not(:disabled):is(:hover, :focus) { background: var(--ui-del-hover) !important; color: var(--ui-del) !important; }
body #dashboard_main button:is([title="Cancel" i], [data-ui-title="Cancel" i]):not(.btn):not(#_):not(#__):not(#___):not(:disabled):is(:hover, :focus) { background: var(--ui-icon-neutral-hover) !important; color: #374151 !important; }
/* Reset password: text button, same height/radius as the icon buttons */
body #dashboard_main button:is([title="Reset password" i], [data-ui-title="Reset password" i]):not(.btn):not(#_):not(#__):not(#___) { width: auto; padding: 0 12px; font-size: 13px; font-weight: 500; white-space: nowrap; background: var(--ui-save-tint) !important; color: var(--ui-save-dark) !important; border-color: var(--ui-save-border) !important; }
body #dashboard_main button:is([title="Reset password" i], [data-ui-title="Reset password" i]):not(.btn):not(#_):not(#__):not(#___):not(:disabled):is(:hover, :focus) { background: var(--ui-save-hover) !important; color: var(--ui-save-dark) !important; }

/* Grid headers (tables, DataTables, ag-Grid): gradient on the header row so it spans once; cells transparent */
body table:not(.table-condensed):not(.ui-datepicker-calendar) > thead > tr:not(:is(.platinum-bg, .priority-bg) *) {
    background-image: var(--ui-header-grad) !important;
    background-color: var(--ui-primary) !important;
}
body table:not(.table-condensed):not(.ui-datepicker-calendar) > thead > tr > :is(th, td) {
    background-color: transparent !important;
    background-image: none;
    color: #fff !important;
    border-color: rgba(255, 255, 255, .25) !important;
}
body table:not(.table-condensed):not(.ui-datepicker-calendar) > thead :is(th, td) :is(a, span, div, label, i, b, strong, p, .fa):not(.btn):not(#_):not(#__) { color: #fff !important; }
/* White sort arrows (page rules use dark PNGs at the same specificity) */
body table.dataTable thead .sorting,
body table.dataTable thead .sorting_asc,
body table.dataTable thead .sorting_desc { background-repeat: no-repeat !important; background-position: center right 6px !important; background-size: 10px 16px !important; }
body table.dataTable thead .sorting { background-image: url('/images/ptd/sort_both.svg') !important; }
body table.dataTable thead .sorting_asc { background-image: url('/images/ptd/sort_asc.svg') !important; }
body table.dataTable thead .sorting_desc { background-image: url('/images/ptd/sort_desc.svg') !important; }
body table.dataTable thead .sorting_disabled { background-image: none !important; }
[class*="ag-theme-"] { --ag-header-background-color: #c05f5f; --ag-header-foreground-color: #fff; }
[class*="ag-theme-"] .ag-header { background-image: var(--ui-header-grad) !important; background-color: var(--ui-primary) !important; }
[class*="ag-theme-"] :is(.ag-header-row, .ag-header-cell, .ag-header-group-cell) { background-color: transparent !important; background-image: none !important; color: #fff !important; }
[class*="ag-theme-"] .ag-header :is(.ag-header-viewport, .ag-header-container, .ag-pinned-left-header, .ag-pinned-right-header, .ag-floating-filter, .ag-grid-container-wrapper, .ag-grid-scrolling-cells) { background-color: transparent !important; background-image: none !important; }
/* Pinned header areas must stay opaque so scrolled cells don't show through; fills match the gradient ends. */
[class*="ag-theme-"] .ag-header .ag-grid-pinned-left-cells { background-color: #38393c !important; background-image: none !important; }
[class*="ag-theme-"] .ag-header .ag-grid-pinned-right-cells { background-color: var(--ui-primary) !important; background-image: none !important; }
[class*="ag-theme-"] :is(.ag-header-cell-text, .ag-header-cell-label, .ag-header-group-text, .ag-header-icon, .ag-header .ag-icon) { color: #fff !important; }
/* Moving gradient, as in the Clients modal headers */
body table:not(.table-condensed):not(.ui-datepicker-calendar) > thead > tr:not(:is(.platinum-bg, .priority-bg) *),
[class*="ag-theme-"] .ag-header { background-size: 220% 220% !important; animation: uiHeaderGradientShift 12s ease infinite; }
@keyframes uiHeaderGradientShift {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}
@media (prefers-reduced-motion: reduce) {
    body table:not(.table-condensed):not(.ui-datepicker-calendar) > thead > tr:not(:is(.platinum-bg, .priority-bg) *),
    [class*="ag-theme-"] .ag-header { animation: none; }
}

/* Inner left nav (Filing, MLS): Site Settings look */
body .sidenav { border-right: 1px solid #e9ebee; }
body .sidenav .sidebar-left .side_main_list {
    margin: 2px 8px;
    width: calc(100% - 16px);
    border-bottom: 0;
    border-left: 3px solid transparent;
    border-radius: 6px;
    transition: background-color .15s ease-in-out, color .15s ease-in-out;
}
body .sidenav .sidebar-left .side_main_list:hover:not(.active) { background: #fbeceb; border-left-color: #c05f5f; }
body .sidenav .sidebar-left .side_main_list:hover:not(.active) :is(span, i) { color: #a94f4f; }
body .sidenav .sidebar-left .side_main_list:hover:not(.active) svg { fill: #a94f4f; color: #a94f4f; }
body .sidenav .sidebar-left .side_main_list.active :is(span, i) { color: #fff; }
body .sidenav .sidebar-left .side_main_list.active svg { fill: #fff; color: #fff; }

/* Clients inner nav: same item style */
body .sidebar_wrapper .sidebar_nav li { border-radius: 6px; border-left: 3px solid transparent; transition: background-color .15s ease-in-out, color .15s ease-in-out; }
@media (min-width: 768px) {
    body .sidebar_wrapper .sidebar_nav li { margin: 2px 8px; border-top: 0; }
}
body .sidebar_wrapper .sidebar_nav li i { color: #6b7280; }
body .sidebar_wrapper .sidebar_nav li.active { color: #fff; }
body .sidebar_wrapper .sidebar_nav li.active i { color: #fff; }
body .sidebar_wrapper .sidebar_nav li:hover:not(.active):not(.disable-hover) { background: #fbeceb; color: #a94f4f; border-left-color: #c05f5f; }
body .sidebar_wrapper .sidebar_nav li:hover:not(.active):not(.disable-hover) i { color: #a94f4f; }

/* Reports sub-tabs: pill style (wide screens use the tab look further down) */
body .main-inner-tabs .navbar li a,
body .main-inner-tabs .navbar li a:hover,
body .main-inner-tabs .navbar li a:focus {
    background: transparent;
    color: #5b5b5b;
    border-radius: 6px;
    border-bottom: 3px solid transparent;
    padding: 6px 18px;
    font-weight: 600;
    transition: background-color .15s ease-in-out, color .15s ease-in-out;
}
body .main-inner-tabs .navbar li a:hover:not(.rtsSelected) { background: #fbeceb; color: #a94f4f; border-bottom-color: #c05f5f; }
body .main-inner-tabs .navbar li a.rtsSelected,
body .main-inner-tabs .navbar li a.rtsSelected:hover,
body .main-inner-tabs .navbar li a.rtsSelected:focus,
body .main-inner-tabs .navbar li.active a,
body .main-inner-tabs .navbar li.active a:hover,
body .main-inner-tabs .navbar li.active a:focus { background: #c05f5f; color: #fff; border-bottom-color: #a94f4f; box-shadow: 0 2px 10px rgba(20, 20, 30, .06); }

/* DataTable footer: gray bar, info left, pill pager right */
body .dataTables_wrapper :is(.row.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)):not(#_):not(#__) {
    background: #f1f1f1 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #dddddd !important;
    border-top: 0 !important;
    border-radius: 0 0 3px 3px !important;
}
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) :is(.dt_footer, .text-center):not(#_):not(#__) {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 5px;
    text-align: left !important;
}
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) .dataTables_info:not(#_):not(#__) {
    color: #8a8f98 !important;
    font-size: 12px !important;
    padding: 0 8px !important;
    border: 0 !important;
    float: none;
}
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) .dataTables_paginate:not(#_):not(#__) { float: none; text-align: right !important; margin: 0; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination:not(#_):not(#__) { border: 0 !important; margin: 0 !important; position: relative; top: 2px; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li:not(#_):not(#__) { background: transparent; font-size: 12px; color: #000; border: 0 !important; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li a:not(#_):not(#__) { border-radius: 999px !important; margin: 0 2px; color: #4b4f56; outline: none; background: transparent; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li.active a:not(#_):not(#__) { background-color: #c05f5f !important; border-color: #c05f5f !important; color: #fff !important; box-shadow: 0 2px 10px rgba(20, 20, 30, .06); }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li.disabled a:not(#_):not(#__) { color: #525050; border: 0; background: transparent; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li a:not(#_):not(#__) { border: 1px solid transparent; transition: background-color .2s ease, border-color .2s ease, color .2s ease; cursor: pointer; transform: none; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li:not(.active):not(.disabled) a:not(#_):not(#__):hover { background-color: var(--ui-primary-tint) !important; border-color: var(--ui-primary) !important; color: var(--ui-primary-dark) !important; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li.active a:not(#_):not(#__):hover { background-color: var(--ui-primary-dark) !important; border-color: var(--ui-primary-dark) !important; color: #fff !important; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li a:not(#_):not(#__):focus,
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li a:not(#_):not(#__):active { outline: none; box-shadow: none; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li:not(.active):not(.disabled) a:not(#_):not(#__):active { background-color: var(--ui-primary-tint) !important; border-color: var(--ui-primary) !important; color: var(--ui-primary-dark) !important; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li:not(.disabled) a:not(#_):not(#__):focus-visible { outline: 2px solid var(--ui-primary); outline-offset: 2px; border-radius: 999px; }
body .dataTables_wrapper :is(.view-pager, .uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)) ul.pagination li.disabled a:not(#_):not(#__) { cursor: not-allowed; }

/* Footers without the view-pager wrapper */
body .dataTables_wrapper :is(.uasm-dt-footer, .bottom-toolbar, .dataTables_wrapper > .row:has(> div > .dataTables_info, > div > .dataTables_paginate)):not(#_):not(#__) { display: flex !important; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 5px; }
body .dataTables_wrapper .row:has(> div > .dataTables_info, > div > .dataTables_paginate):not(#_):not(#__)::before, body .dataTables_wrapper .row:has(> div > .dataTables_info, > div > .dataTables_paginate):not(#_):not(#__)::after { display: none; }
body .dataTables_wrapper .row:has(> div > .dataTables_info, > div > .dataTables_paginate) > div:not(#_):not(#__) { width: auto; float: none; padding: 0; }

/* Modals: Clients modal skin; overflow stays visible so dropdowns are not clipped */
body .modal-content:not(#_):not(#__) {
    border: 0;
    border-radius: 18px;
    box-shadow: 0 20px 50px -10px rgb(20 15 35 / 40%), 0 4px 16px rgb(0 0 0 / 10%);
}
body .modal-content > .modal-header:not(#_):not(#__) {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border: 0 !important;
    border-radius: 18px 18px 0 0;
    background-image: linear-gradient(120deg, #38393c 0%, #4a4a4c 45%, #c05f5f 100%) !important;
    background-color: #4a4a4c !important;
    background-size: 220% 220% !important;
    animation: uiHeaderGradientShift 12s ease infinite;
    color: #fff !important;
    text-shadow: 0 1px 3px rgb(0 0 0 / 22%);
}
body .modal-content > .modal-header:not(#_):not(#__)::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 85% -10%, rgb(255 255 255 / 30%), transparent 55%);
    pointer-events: none;
    z-index: -1;
}
body .modal-content > .modal-header :is(h1, h2, h3, h4, h5, h6, .modal-title, p, span, i, b, strong, small, label, a, .fa, .glyphicon):not(.btn):not(#_):not(#__) { color: #fff !important; }
body .modal-content > .modal-header .close:not(#_):not(#__) {
    background: rgb(255 255 255 / 15%) !important;
    border: 0;
    color: #fff !important;
    opacity: 1;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    font-size: 16px;
    line-height: 26px;
    text-shadow: none;
    transition: background .2s ease, transform .2s ease;
}
body .modal-content > .modal-header .close:not(#_):not(#__):hover { background: rgb(255 255 255 / 28%) !important; transform: rotate(90deg); }
body .modal-content > .modal-footer:not(#_):not(#__) {
    background: #f7f8fb;
    border-top: 1px solid #e7e8ef;
    border-radius: 0 0 18px 18px;
}
body .modal-footer .btn-primary:not(#_):not(#__) {
    background: linear-gradient(120deg, #c05f5f, #a3455f) !important;
    border: 0 !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 6px rgb(192 95 95 / 35%);
    transition: transform .15s ease, box-shadow .2s ease;
}
body .modal-footer .btn-primary:not(#_):not(#__):not(:disabled):hover { transform: translateY(-1px); box-shadow: 0 6px 14px rgb(192 95 95 / 40%); }
body .modal-footer :is(.btn-nevermind, .btn-default):not(.btn-primary):not(.custm_btn_):not(.modal-btn):not(#_):not(#__) {
    background: #fff !important;
    color: #555 !important;
    border: 1px solid #d9dae3 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    transition: background .2s ease;
}
body .modal-footer :is(.btn-nevermind, .btn-default):not(.btn-primary):not(.custm_btn_):not(.modal-btn):not(#_):not(#__):hover { background: #f1f2f6 !important; }
@media (prefers-reduced-motion: reduce) { body .modal-content > .modal-header:not(#_):not(#__) { animation: none; } }
/* Manage Property button: icons stay white */
body .clientSection_ManageProperty .custom-dropdown-btn i:not(#_):not(#__) { color: #fff !important; }
body .clientSection_ManageProperty .custom-dropdown-menu button#DeleteProperty i:not(#_):not(#__) { color: #fff !important; }

/* Softer grid headers: rounded top, no cell dividers */
body table:not(.table-condensed):not(.ui-datepicker-calendar) > thead > tr:not(:is(.platinum-bg, .priority-bg) *):not(#_):not(#__) { clip-path: inset(0 round 10px 10px 0 0); }
body table:not(.table-condensed):not(.ui-datepicker-calendar) > thead > tr:not(:is(.platinum-bg, .priority-bg) *) > :is(th, td):not(#_):not(#__) { border-left-color: transparent !important; border-right-color: transparent !important; border-top-color: transparent !important; border-bottom-color: transparent !important; }
[class*="ag-theme-"] .ag-header:not(#_):not(#__) { border-radius: 10px 10px 0 0; overflow: hidden; }
[class*="ag-theme-"] .ag-header-cell:not(#_):not(#__)::after, [class*="ag-theme-"] .ag-header-group-cell:not(#_):not(#__)::after { display: none; }

/* DataTables: row tints, cell padding, search/length inputs, card edges */
body table.dataTable tbody tr:not(.selected):not([style*="background"]):hover > td:not([class*="isabled" i]):not([class*="eadonly" i]):not([class*="ocked" i]):not([class*="non-county" i]):not([aria-disabled="true"]):not([style*="background"]):not(:has(:disabled)):not(#_):not(#__) { background-color: var(--ui-primary-tint) !important; }
body table.dataTable tbody tr.selected > td:not([class*="isabled" i]):not([class*="eadonly" i]):not([class*="ocked" i]):not([class*="non-county" i]):not([aria-disabled="true"]):not([style*="background"]):not(:has(:disabled)):not(#_):not(#__) { background-color: #f4dcdc !important; color: inherit; }
body table.dataTable tbody td { padding-top: 7px; padding-bottom: 7px; vertical-align: middle; }
body .dataTables_wrapper .dataTables_filter input:not(#_):not(#__),
body .dataTables_wrapper .dataTables_length select:not(#_):not(#__) {
    border: 1px solid #d9dae3;
    border-radius: 8px;
    padding: 4px 10px;
    background-color: #fff;
    color: #4b4f56;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}
body .dataTables_wrapper .dataTables_filter input:not(#_):not(#__):focus,
body .dataTables_wrapper .dataTables_length select:not(#_):not(#__):focus { border-color: #d9dae3; box-shadow: 0 2px 8px rgba(20, 20, 30, .12); }
/* Card edges via inset shadow (no layout shift) */
body .dataTables_wrapper .dataTables_scrollBody tbody tr > td:first-child:not(#_):not(#__) { box-shadow: inset 1px 0 #ddd; } /* per cell: a wrapper shadow hides under striped rows */
body .dataTables_wrapper .dataTables_scrollBody tbody tr > td:last-child:not(#_):not(#__) { box-shadow: inset -1px 0 #ddd; }

/* Empty grids: no scrollbars or reserved height */
body .dataTables_wrapper .dataTables_scrollBody:has(td.dataTables_empty):not(#_):not(#__) { overflow: hidden !important; height: auto !important; min-height: 0 !important; }
body :is(.table-responsive, .dataTables_wrapper):has(> table td.dataTables_empty):not(#_):not(#__) { overflow-x: hidden; }

/* Alerts: pinned top-right above modals; !important neutralizes page sizing rules */
body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(#_):not(#__):not(#___) {
    position: fixed !important;
    top: 20px !important;
    right: 20px !important;
    left: auto !important;
    bottom: auto !important;
    transform: none !important;
    z-index: 3000 !important;
    width: auto !important;
    min-width: 260px;
    max-width: min(420px, calc(100vw - 40px)) !important;
    margin: 0 !important;
    text-align: left !important;
    text-shadow: none;
    border-radius: 14px !important;
    box-shadow: 0 14px 32px rgba(20, 20, 30, .16), 0 2px 6px rgba(20, 20, 30, .08) !important;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .1px;
    pointer-events: auto;
    animation: uiAlertIn .25s cubic-bezier(.4, 0, .2, 1) backwards;
    /* not forwards: a held final opacity would override the fade-out */
    min-height: 0 !important;
    padding: 16px 22px 16px 64px !important;
    background: linear-gradient(90deg, #e9f5e3, #f6fbf3) !important;
    color: #2f4a22 !important;
    border: 1px solid #cfe3c4 !important;
    border-left: 4px solid #78a562 !important;
    height: auto !important;
    max-height: none !important;
    line-height: 19px !important;
    white-space: normal !important;
    overflow: visible !important;
}
/* Icon (skipped when the message already carries its own) */
body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(:has(.fa, .glyphicon, i)):not(#_):not(#__):not(#___)::before {
    content: "\f00c";
    display: inline-block;
    position: absolute;
    left: 16px;
    top: 50%;
    margin: -16px 0 0 !important;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    text-align: center;
    vertical-align: baseline;
    color: #fff !important;
    background: #4f7c3c;
    box-shadow: 0 0 0 4px rgba(79, 124, 60, .16);
    font: normal 15px/32px FontAwesome;
}
body :is(.alert-danger, .FailsAlert):not(.save-message-alert):not(:has(.fa, .glyphicon, i)):not(#_):not(#__):not(#___)::before { content: "\f00d"; }
body .alert-warning:not(.save-message-alert):not(:has(.fa, .glyphicon, i)):not(#_):not(#__):not(#___)::before { content: "\f12a"; }
/* Script-generated Reports message: keeps its position, same look */
body .save-message-alert:not(#_):not(#__) { z-index: 3000 !important; background: #fff !important; color: #2b2b30 !important; border: 0 !important; border-left: 3px solid #78a562 !important; border-radius: 10px !important; box-shadow: 0 8px 20px rgba(20, 20, 30, .14) !important; }
body .save-message-alert.alert-danger:not(#_):not(#__) { border-left-color: #c70e0e !important; }
/* An open modal dialog keeps a transform that would trap fixed alerts */
body .modal.in .modal-dialog:not(.modal-center):not(#_):not(#__) { transform: none !important; }
/* Communications toasts above modals */
body .eq-toast-stack:not(#_):not(#__) { z-index: 3000; }

/* No dark focus box after a mouse click (Bootstrap 3 :focus outline); keyboard ring kept */
body :is(a, button, .btn, [role="button"], [tabindex], summary, label, li, th, td, tr):focus:not(:focus-visible):not(#_):not(#__) { outline: none !important; }
body :is(a, button, .btn, [role="button"], summary):focus-visible:not(#_):not(#__) { outline: 2px solid var(--ui-primary) !important; outline-offset: 2px; }
body a:not(#_):not(#__), body button:not(#_):not(#__) { -webkit-tap-highlight-color: transparent; }

body :is(.alert-danger, .FailsAlert):not(.save-message-alert):not(:has(.fa, .glyphicon, i)):not(#_):not(#__):not(#___)::before { background: #c8403c; box-shadow: 0 0 0 4px rgba(200, 64, 60, .16); }
body .alert-warning:not(.save-message-alert):not(:has(.fa, .glyphicon, i)):not(#_):not(#__):not(#___)::before { background: #c9821a; box-shadow: 0 0 0 4px rgba(201, 130, 26, .18); }
/* slide only: jQuery fadeOut reads the current opacity */
@keyframes uiAlertIn { from { translate: 24px 0; } to { translate: 0 0; } }
@media (prefers-reduced-motion: reduce) { body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(#_):not(#__):not(#___) { animation: none; } }

body :is(.alert-danger, .FailsAlert):not(.save-message-alert):not(#_):not(#__):not(#___) { background: linear-gradient(90deg, #fbe9e9, #fef6f6) !important; color: #7a1111 !important; border-color: #f0c4c4 !important; border-left-color: #c70e0e !important; }
body .alert-warning:not(.save-message-alert):not(#_):not(#__):not(#___) { background: linear-gradient(90deg, #fdf1d9, #fffaf0) !important; color: #6b4a0f !important; border-color: #f1dcae !important; border-left-color: #d9a441 !important; }

/* Tooltips (ui-improvements.js replaces the native title bubble) */
.ui-tip {
    position: fixed;
    z-index: 3500;
    max-width: 260px;
    padding: 6px 10px;
    background: #2b2b30;
    color: #fff;
    font: 500 12px/1.4 Arial, sans-serif;
    border-radius: 6px;
    box-shadow: 0 6px 16px rgba(20, 20, 30, .25);
    pointer-events: none;
    opacity: 0;
    transform: translateY(3px);
    transition: opacity .12s ease, transform .12s ease;
    word-wrap: break-word;
}
.ui-tip.show { opacity: 1; transform: none; }
.ui-tip::after { content: ""; position: absolute; left: var(--ui-tip-arrow, 50%); margin-left: -5px; border: 5px solid transparent; }
.ui-tip.above::after { top: 100%; border-top-color: #2b2b30; }
.ui-tip.below::after { bottom: 100%; border-bottom-color: #2b2b30; }

/* Thin scrollbars (ag-Grid keeps its own) */
* { scrollbar-width: thin; scrollbar-color: #c4c7ce transparent; }
.ag-theme-quartz *, [class*="ag-theme-"] * { scrollbar-width: auto; }

/* Busy button: spinner over hidden content so the size never changes */
body .ui-busy:not(#_):not(#__):not(#___):not(#____) { opacity: 1 !important; pointer-events: none; cursor: progress; position: relative; color: transparent !important; text-shadow: none !important; }
body .ui-busy :is(i, span, svg, .fa):not(#_):not(#__):not(#___):not(#____) { color: transparent !important; }
body .ui-busy:not(#_):not(#__) > * { visibility: hidden; }
body :is(button, a, span, i, [role="button"]).ui-busy:not(#_):not(#__)::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 14px;
    height: 14px;
    margin: -7px 0 0 -7px;
    border: 2px solid #fff;
    border-right-color: transparent;
    border-radius: 50%;
    animation: uiPopIn .4s cubic-bezier(.34, 1.56, .64, 1) both, uiSpin .7s linear infinite;
}
body :is(button, a, span, i, [role="button"]).ui-busy-light:not(#_):not(#__)::after { border-color: #6b7280; border-right-color: transparent; }
/* input[type=button] cannot hold ::after: animated spinner as a background */
body :is(a, span, i).ui-busy-link:not(#_):not(#__):not(#___)::after { border-color: #c05f5f; border-right-color: transparent; }
body input.ui-busy:not(#_):not(#__):not(#___):not(#____) { /* ids: outrank .modal-footer .btn-primary and .btn-primary gradients */
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-36 -12 72 24'><g><animateTransform attributeName='transform' type='translate' from='-26 0' to='0 0' dur='0.4s' fill='freeze' calcMode='spline' keyTimes='0;1' keySplines='.34 1.56 .64 1'/><g><animateTransform attributeName='transform' type='rotate' from='0' to='360' dur='0.7s' repeatCount='indefinite'/><circle r='5.5' fill='none' stroke='white' stroke-width='2.5' stroke-dasharray='17 17' stroke-linecap='round'><animate attributeName='opacity' from='0' to='1' dur='0.25s' fill='freeze'/></circle></g></g></svg>"), var(--ui-busy-img, none) !important;
    background-color: var(--ui-busy-bg, transparent) !important;
    background-repeat: no-repeat, no-repeat !important;
    background-position: center, center !important;
    background-size: 100% 100%, 100% 100% !important;
    animation: uiBtnPress .25s ease-out;
}
body input.ui-busy-light:not(#_):not(#__):not(#___):not(#____) { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-36 -12 72 24'><g><animateTransform attributeName='transform' type='translate' from='-26 0' to='0 0' dur='0.4s' fill='freeze' calcMode='spline' keyTimes='0;1' keySplines='.34 1.56 .64 1'/><g><animateTransform attributeName='transform' type='rotate' from='0' to='360' dur='0.7s' repeatCount='indefinite'/><circle r='5.5' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-dasharray='17 17' stroke-linecap='round'><animate attributeName='opacity' from='0' to='1' dur='0.25s' fill='freeze'/></circle></g></g></svg>"), var(--ui-busy-img, none) !important; }
@keyframes uiSpin { to { transform: rotate(360deg); } }
/* The spinner springs in as the label drops out; the button gives a small press */
@keyframes uiPopIn { from { left: 12%; scale: .3; opacity: 0; } to { left: 50%; scale: 1; opacity: 1; } }
@keyframes uiBtnPress { 0% { scale: 1; } 40% { scale: .94; } 100% { scale: 1; } }
body .ui-busy:not(input):not(#_):not(#__):not(#___):not(#____) { animation: uiBtnPress .25s ease-out; }

/* Alert wrappers must not become the fixed alert's positioning box */
body .Alert_Div:not(#_):not(#__) { position: static !important; transform: none !important; box-shadow: none !important; min-width: 0 !important; left: auto !important; top: auto !important; background: transparent !important; }

/* Inner nav selected item: gradient, glow, bold label, chevron */
body .sidenav .sidebar-left .side_main_list.active,
body .sidebar_wrapper .sidebar_nav li.active {
    position: relative;
    background: linear-gradient(120deg, #c05f5f 0%, #a3455f 100%);
    border-left-color: #f3c9c9;
    box-shadow: 0 6px 16px rgba(192, 95, 95, .38), inset 0 1px 0 rgba(255, 255, 255, .18);
}
body .sidenav .sidebar-left .side_main_list.active :is(span, i),
body .sidebar_wrapper .sidebar_nav li.active { font-weight: 600; }
body .sidenav .sidebar-left .side_main_list.active::after,
body .sidebar_wrapper .sidebar_nav li.active::after {
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    right: 14px;
    top: 50%;
    margin-top: -9px;
    font-size: 18px;
    line-height: 18px;
    color: rgba(255, 255, 255, .85);
}
body .sidenav .sidebar-left .side_main_list.active svg,
body .sidebar_wrapper .sidebar_nav li.active i { filter: drop-shadow(0 1px 1px rgba(0, 0, 0, .25)); }

/* Body stripes: soft warm stripe, thin row lines, no vertical cell lines */
body table.dataTable tbody tr:nth-child(even):not(.selected):not([style*="background"]) > td:not([class*="isabled" i]):not([class*="eadonly" i]):not([class*="ocked" i]):not([class*="non-county" i]):not([aria-disabled="true"]):not([style*="background"]):not(:has(:disabled)):not(#_):not(#__) { background-color: #fbf8f8; }
body table.dataTable tbody > tr > td:not(#_):not(#__) {
    border-left-color: transparent !important;
    border-right-color: transparent !important;
    border-top: 1px solid #f0e8e8 !important;
    transition: none !important; /* a hover fade can freeze half-way on fast mouse exits and leave a stray tint */
}
body table.dataTable tbody > tr:first-child > td:not(#_):not(#__) { border-top-color: transparent !important; }
body table.dataTable.table-bordered:not(#_):not(#__), body table.dataTable.cell-border:not(#_):not(#__) { border-left-color: transparent; border-right-color: transparent; }

/* A saving button shows its own spinner: no full-screen loader */
body:has(.ui-busy) > .loader:not(#_):not(#__) { display: none !important; }

/* A wrapper holding an alert must not create a containing block (transform/filter/contain) */
body :has(> :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute)):not(.modal):not(.modal-dialog):not(.modal-center):not(#_):not(#__),
body .confirmMsg:not(#_):not(#__) { transform: none !important; filter: none !important; perspective: none !important; contain: none !important; will-change: auto !important; }

/* MLS sub-tabs are a horizontal row: pill look (narrow screens) */
body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab:not(#_):not(#__) {
    width: auto;
    flex: 0 0 auto;
    margin: 4px 5px 4px 0;
    padding: 6px 18px;
    border-radius: 6px;
    border-left: 0;
    border-bottom: 3px solid transparent;
    box-shadow: none;
    background: transparent;
}
body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab :is(span, i):not(#_):not(#__) { width: auto; color: #5b5b5b; font-weight: 600; }
body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab svg:not(#_):not(#__) { fill: #5b5b5b; }
body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab:hover:not(.active):not(#_):not(#__) { background: #fbeceb; border-bottom-color: #c05f5f; }
body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab:hover:not(.active) :is(span, i):not(#_):not(#__) { color: #a94f4f; }
body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab:hover:not(.active) svg:not(#_):not(#__) { fill: #a94f4f; }
body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab.active:not(#_):not(#__) { background: #c05f5f; border-bottom-color: #a94f4f; box-shadow: 0 2px 10px rgba(20, 20, 30, .06); }
body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab.active :is(span, i):not(#_):not(#__) { color: #fff; }
body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab.active svg:not(#_):not(#__) { fill: #fff; filter: none; }
body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab.active:not(#_):not(#__)::after { display: none; }

/* Inner tabs (Statuses, Reports, MLS): the top-nav look and motion */
@media only screen and (min-width: 768px) {
    body .main-inner-tabs .navbar-default:not(#_):not(#__) { border-bottom: 1px solid #ddd !important; }
    body .main-inner-tabs .navbar li:not(#_):not(#__) { margin-right: 2px; }
    body :is(.main-inner-tabs .navbar-nav > li > a, .sidenav .sidebar-left .side_main_list.MLSSectionSubTab):not(#_):not(#__):not(#___) {
        position: relative;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        width: auto !important;
        margin: 0 2px -1px 0;
        padding: 7px 20px !important;
        font: 600 15px 'Open Sans', Arial, sans-serif;
        color: #5b5b5b !important;
        background: transparent !important;
        border: 1px solid transparent !important;
        border-top: 3px solid transparent !important;
        border-radius: 10px 10px 0 0 !important;
        box-shadow: none !important;
        text-align: center;
        outline: none;
        transition: color .35s cubic-bezier(.4, 0, .2, 1), background-color .35s cubic-bezier(.4, 0, .2, 1), transform .35s cubic-bezier(.4, 0, .2, 1);
    }
    body :is(.main-inner-tabs .navbar-nav > li > a, .sidenav .sidebar-left .side_main_list.MLSSectionSubTab):not(#_):not(#__):not(#___)::before {
        content: '';
        position: absolute;
        top: -3px;
        left: 50%;
        width: 0;
        height: 3px;
        border-radius: 0 0 3px 3px;
        background: linear-gradient(90deg, #c05f5f, #e79a9a);
        transform: translateX(-50%);
        transition: width .4s cubic-bezier(.4, 0, .2, 1), box-shadow .4s cubic-bezier(.4, 0, .2, 1);
    }
    body :is(.main-inner-tabs .navbar-nav > li > a, .sidenav .sidebar-left .side_main_list.MLSSectionSubTab) :is(span, i):not(#_):not(#__):not(#___) { color: inherit !important; width: auto; font: inherit; }
    body .sidenav .sidebar-left .side_main_list.MLSSectionSubTab svg:not(#_):not(#__):not(#___) { fill: currentColor !important; color: inherit !important; filter: none; width: 18px; height: 18px; }
    body :is(.main-inner-tabs .navbar-nav > li:not(.active) > a:not(.rtsSelected), .sidenav .sidebar-left .side_main_list.MLSSectionSubTab:not(.active)):hover:not(#_):not(#__):not(#___) {
        color: #c05f5f !important;
        background: #fafafa !important;
        transform: translateY(-2px);
    }
    body :is(.main-inner-tabs .navbar-nav > li:not(.active) > a:not(.rtsSelected), .sidenav .sidebar-left .side_main_list.MLSSectionSubTab:not(.active)):hover:not(#_):not(#__):not(#___)::before { width: 60%; box-shadow: 0 0 8px rgba(192, 95, 95, .45); }
    body :is(.main-inner-tabs .navbar-nav > li.active > a, .main-inner-tabs .navbar-nav > li > a.rtsSelected, .sidenav .sidebar-left .side_main_list.MLSSectionSubTab.active):not(#_):not(#__):not(#___) {
        color: #c05f5f !important;
        background: #fff !important;
        border-color: #ddd !important;
        border-bottom: 1px solid #fff !important;
        border-top-color: transparent !important;
        box-shadow: 0 -4px 14px rgba(192, 95, 95, .18) !important;
        transform: translateY(-2px);
        pointer-events: none;
        animation: uiNavTabIn .4s cubic-bezier(.34, 1.56, .64, 1);
    }
    body :is(.main-inner-tabs .navbar-nav > li.active > a, .main-inner-tabs .navbar-nav > li > a.rtsSelected, .sidenav .sidebar-left .side_main_list.MLSSectionSubTab.active):not(#_):not(#__):not(#___)::before { width: 100%; animation: uiNavGlowSettle .8s ease-out forwards; display: block; }

    @keyframes uiNavTabIn { 0% { transform: translateY(4px); opacity: .55; } 100% { transform: translateY(-2px); opacity: 1; } }
    @keyframes uiNavGlowSettle { 0% { box-shadow: 0 0 16px rgba(192, 95, 95, .85); } 100% { box-shadow: 0 0 6px rgba(192, 95, 95, .45); } }
}

/* Back to top (ui-improvements.js): floating button with a scroll-progress ring */
.ui-top {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 1030;
    width: 48px;
    height: 48px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(135deg, #cf6f6f 0%, #c05f5f 45%, #a3455f 100%);
    box-shadow: 0 8px 20px rgba(163, 69, 95, .38), 0 2px 5px rgba(20, 20, 30, .14), inset 0 1px 0 rgba(255, 255, 255, .22);
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    translate: 0 16px;
    scale: .6;
    will-change: translate, scale, opacity;
    transition: opacity .3s ease, translate .5s cubic-bezier(.34, 1.56, .64, 1), scale .5s cubic-bezier(.34, 1.56, .64, 1),
                box-shadow .25s ease, visibility 0s linear .5s;
}
.ui-top.ui-top-show { opacity: 1; visibility: visible; translate: 0 0; scale: 1; transition-delay: 0s; }
.ui-top-ring { position: absolute; inset: 0; width: 100%; height: 100%; transform: rotate(-90deg); pointer-events: none; }
.ui-top-ring circle { fill: none; stroke-width: 2.5; }
.ui-top-track { stroke: rgba(255, 255, 255, .22); }
.ui-top-prog { stroke: #fff; stroke-linecap: round; transition: stroke-dashoffset .12s linear; }
.ui-top-arrow { position: relative; transition: translate .25s cubic-bezier(.34, 1.56, .64, 1); }
.ui-top:hover { translate: 0 -3px; box-shadow: 0 12px 26px rgba(163, 69, 95, .46), 0 3px 8px rgba(20, 20, 30, .16), inset 0 1px 0 rgba(255, 255, 255, .26); }
.ui-top:hover .ui-top-arrow { translate: 0 -2px; }
.ui-top:active { translate: 0 0; scale: .94; transition-duration: .12s; }
.ui-top:focus { outline: none; }
.ui-top:focus-visible { outline: 2px solid #c05f5f; outline-offset: 3px; }
@media (max-width: 767px) { .ui-top { right: 16px; bottom: 16px; width: 44px; height: 44px; } }
@media (prefers-reduced-motion: reduce) { .ui-top, .ui-top-arrow, .ui-top-prog { transition: opacity .01s, visibility .01s; translate: 0 0; scale: 1; } .ui-top:hover .ui-top-arrow { translate: 0 0; } }
body.modal-open .ui-top { visibility: hidden !important; opacity: 0 !important; }

/* Grid loading: compact shimmer bars (short, so the grid does not grow then collapse) */
.dt-state-msg:has(.dt-state-loading)::after {
    content: "";
    display: block;
    height: 54px;
    width: min(70%, 640px);
    margin: 12px auto 0;
    border-radius: 6px;
    background:
        linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.7) 50%, rgba(255,255,255,0) 100%) 0 0 / 200% 100% no-repeat,
        repeating-linear-gradient(180deg, #eceef2 0 10px, transparent 10px 22px);
    animation: uiShimmer 1.3s linear infinite;
}
@keyframes uiShimmer { from { background-position: 200% 0, 0 0; } to { background-position: -100% 0, 0 0; } }
@media (prefers-reduced-motion: reduce) { .dt-state-msg:has(.dt-state-loading)::after { animation: none; } }

/* Keyboard shortcut list */
.ui-help {
    position: fixed;
    inset: 0;
    z-index: 3300;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(20, 20, 30, .45);
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s ease, visibility 0s linear .2s;
}
.ui-help.ui-help-show { opacity: 1; visibility: visible; transition-delay: 0s; }
.ui-help-card {
    width: min(440px, calc(100vw - 32px));
    padding: 22px 24px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 24px 60px -10px rgba(20, 15, 35, .45), 0 4px 16px rgba(0, 0, 0, .12);
    transform: translateY(8px) scale(.97);
    transition: transform .25s cubic-bezier(.34, 1.56, .64, 1);
    font-family: 'Open Sans', Arial, sans-serif;
    color: #2b2b30;
}
.ui-help-show .ui-help-card { transform: none; }
.ui-help-card h4 { margin: 0 0 12px; font-size: 17px; font-weight: 700; }
.ui-help-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 18px; font-size: 13px; }
.ui-help-grid > div { display: flex; align-items: center; gap: 10px; }
.ui-help-keys { display: inline-flex; gap: 4px; min-width: 56px; }
.ui-help-card kbd {
    display: inline-block; min-width: 22px; padding: 2px 7px; text-align: center; font: 600 12px/1.5 Arial, sans-serif;
    color: #4b4f56; background: #f4f5f8; border: 1px solid #d9dae3; border-bottom-width: 2px; border-radius: 6px;
}
.ui-help-card > p { margin: 14px 0 0; font-size: 12px; color: #8a8f98; }
@media (max-width: 520px) { .ui-help-grid { grid-template-columns: 1fr; } }

/* A loading grid shows its own state: no full-screen loader */
body:has(table.dataTable .dt-state-loading) > .loader:not(#_):not(#__) { display: none !important; }

/* Alert exit: slide back out to the right */
body .ui-alert-out:not(#_):not(#__):not(#___) { translate: calc(100% + 48px) 0 !important; transition: translate .4s cubic-bezier(.4, 0, .6, 1) !important; }
@media (prefers-reduced-motion: reduce) { body .ui-alert-out:not(#_):not(#__):not(#___) { transition: none !important; } }
/* Stacked alerts glide up when the one above leaves */
body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(.ui-alert-out):not(#_):not(#__):not(#___) { transition: margin-top .25s ease; }

/* .modal-center dialogs: auto margins instead of a transform, which traps fixed alerts */
body .modal .modal-dialog.modal-center:not(.AddEditModalForAdjustmentTemplate):not(#_):not(#__) { transform: none !important; inset: 0; margin: auto; height: fit-content; } /* no .modal-center styling here (that CSS is Clients-only) */
body .modal.in .modal-dialog.AddEditModalForAdjustmentTemplate:not(#_):not(#__) { transform: none !important; } /* same reason */

/* Status pills (window.statusPill) */
.ui-pill { display: inline-block; max-width: 100%; padding: 2px 10px; border: 1px solid transparent; border-radius: 999px; font-size: 12px; font-weight: 600; line-height: 1.5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; vertical-align: middle; }
.ui-pill-green { background: #ecfdf5; color: #047857; border-color: #a7f3d0; }
.ui-pill-amber { background: #fffbeb; color: #92400e; border-color: #fde68a; }
.ui-pill-red { background: #fef2f2; color: #b91c1c; border-color: #fecaca; }
.ui-pill-gray { background: #f3f4f6; color: #4b5563; border-color: #e5e7eb; }
/* Documents .select-row (blue, !important): same selected tint as other grids */
body table.dataTable tbody tr.select-row:not(#_):not(#__), body table.dataTable tbody tr.select-row:hover:not(#_):not(#__), body table.dataTable tbody tr.select-row > td:not(#_):not(#__) { background-color: #f4dcdc !important; }
/* Keyboard ring for controls the generic rule skips */
body :is([data-ui-kbd], input[type="button"], input[type="submit"], input[type="image"], li[tabindex]):focus-visible:not(#_):not(#__) { outline: 2px solid var(--ui-primary) !important; outline-offset: 2px; }
/* Dropdowns: soft shadow on focus, no outline (reads as an error); selects match :focus-visible on click */
body :is(select, .btn-group > .multiselect.btn):is(:focus, :focus-visible):not(#_):not(#__) { outline: none !important; box-shadow: 0 2px 8px rgba(20, 20, 30, .12); }
body table thead th:focus-visible:not(#_):not(#__) { outline: 2px solid #fff !important; outline-offset: -3px; } /* sortable header on the dark band */

/* Top nav: tighter padding at 1360-1599px keeps Communications on one row */
@media (min-width: 1360px) and (max-width: 1599px) {
    body .main-header .navbar-default .navbar-nav > li > a:not(#_):not(#__) { padding-left: 14px; padding-right: 14px; }
}

/* Print: solid header (printed exactly), no screen-only overlays, motion or clipping */
@media print {
    .ui-top, .ui-tip, .ui-help, .loader,
    body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(#_):not(#__):not(#___) { display: none !important; }
    *, *::before, *::after { animation: none !important; transition: none !important; text-shadow: none !important; }
    body table:not(.table-condensed):not(.ui-datepicker-calendar) > thead > tr:not(:is(.platinum-bg, .priority-bg) *):not(#_):not(#__):not(#___) {
        background-image: none !important;
        background-color: var(--ui-primary) !important;
        clip-path: none !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    body table:not(.table-condensed):not(.ui-datepicker-calendar) > thead > tr > :is(th, td):not(#_):not(#__):not(#___) {
        background-image: none !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    body table.dataTable thead :is(.sorting, .sorting_asc, .sorting_desc):not(#_):not(#__):not(#___) { background-image: none !important; }
    [class*="ag-theme-"] .ag-header:not(#_):not(#__) { background-image: none !important; background-color: var(--ui-primary) !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    body table.dataTable tbody tr:not(#_):not(#__) > td { box-shadow: none !important; }
    body .dataTables_wrapper :is(.dataTables_filter, .dataTables_length, .dataTables_paginate):not(#_):not(#__) { display: none !important; }
    body .ui-pill:not(#_):not(#__) { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    .modal-backdrop, .eq-toast-stack, .dataTables_processing { display: none !important; }
    body .modal-header:not(#_):not(#__):not(#___) { animation: none !important; } /* page rule outranks the * reset */
    body :is(tbody tr, tbody td, .ag-row, .ag-cell):not(#_):not(#__):not(#___) { background: none !important; box-shadow: none !important; } /* no tints or zebra */
}
/* Public Record: the no-data message from the procedure */
.public-record-empty { margin: 14px 0; padding: 16px 18px; border: 1px dashed #d9dae3; border-radius: 8px; background: #fafafb; color: #6b7280; font-size: 14px; text-align: center; }
/* ag-Grid pager sits bottom right: lift the button above it */
body:has(.ag-paging-panel) .ui-top:not(#_):not(#__) { bottom: 64px; }
/* Narrow screens: no page-level sideways scroll (search box min-width, empty .row negative margins) */
@media (max-width: 767px) { body .eq-search input:not(#_):not(#__) { min-width: 0; } }
@media (max-width: 1199px) { body .row:has(> #PartialViewDiv):not(#_):not(#__) { margin-left: 0; margin-right: 0; } }
/* One loader per grid: the grid's own "Loading your data" row replaces the DataTables processing overlay */
body .dataTables_wrapper:has(.dt-state-loading) .dataTables_processing:not(#_):not(#__) { display: none !important; }

/* Alert card: white card, gradient icon tile, type label, countdown line (--ui-alert-ms is set by showAlert) */
body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(#_):not(#__):not(#___) {
    --a: #4f7c3c; --a2: #6ea055; --a-title: "Success";
    background-image: linear-gradient(90deg, var(--a), var(--a2)), none !important; background-color: rgba(255, 255, 255, .8) !important;
    background-position: left bottom, 0 0 !important; background-repeat: no-repeat !important;
    background-size: calc(var(--ui-bar, 100) * 1%) 2px, auto !important; /* --ui-bar is animated: an !important size can't be */
    -webkit-backdrop-filter: blur(14px) saturate(1.5); backdrop-filter: blur(14px) saturate(1.5);
    color: #2b2f36 !important;
    border: 1px solid rgba(20, 20, 30, .08) !important;
    padding: 13px 38px 13px 58px !important;
    cursor: pointer;
    min-height: 46px !important;
    box-shadow: 0 8px 22px rgba(20, 20, 30, .14), 0 1px 4px rgba(20, 20, 30, .08) !important;
    animation: uiAlertIn .25s cubic-bezier(.4, 0, .2, 1) backwards, uiAlertBar var(--ui-alert-ms, 3s) linear forwards;
}
body :is(.alert-danger, .FailsAlert):not(.save-message-alert):not(#_):not(#__):not(#___) { --a: #c8403c; --a2: #e0605a; --a-title: "Error"; }
body .alert-warning:not(.save-message-alert):not(#_):not(#__):not(#___) { --a: #c9821a; --a2: #e6a23c; --a-title: "Warning"; }
body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(:has(.fa, .glyphicon, i)):not(#_):not(#__):not(#___)::before {
    left: 14px; margin: -15px 0 0 !important; width: 30px; height: 30px; border-radius: 9px;
    background: linear-gradient(135deg, var(--a), var(--a2)) !important; color: #fff !important;
    box-shadow: none !important; font: normal 14px/30px FontAwesome;
}
body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(#_):not(#__):not(#___)::after { content: "\f00d"; font: normal 12px/1 FontAwesome; position: absolute; right: 14px; top: 50%; margin-top: -6px; color: #6b7280; opacity: .5; transition: opacity .15s; }
body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(#_):not(#__):not(#___):hover::after { opacity: 1; }
body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(#_):not(#__):not(#___).ui-alert-hold { animation-play-state: paused, paused; }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) { body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(#_):not(#__):not(#___) { background: linear-gradient(90deg, var(--a), var(--a2)) left bottom / 100% 2px no-repeat, #fff !important; } }
@property --ui-bar { syntax: "<number>"; inherits: false; initial-value: 100; }
@keyframes uiAlertBar { from { --ui-bar: 100; } to { --ui-bar: 0; } }
@media (prefers-reduced-motion: reduce) { body :is(.alert-success, .alert-danger, .alert-warning, .SuccessAlert, .FailsAlert, .alertMessage_Absolute):not(.save-message-alert):not(#_):not(#__):not(#___) { animation: none; } }
/* Sliding tab underline (ui-improvements.js) */
.ui-tab-wrap { position: relative; }
.ui-tab-ind { position: absolute; left: 0; bottom: 0; height: 3px; width: 0; border-radius: 3px 3px 0 0; background: linear-gradient(90deg, #c05f5f, #a3455f); pointer-events: none; transition: transform .28s cubic-bezier(.4, 0, .2, 1), width .28s cubic-bezier(.4, 0, .2, 1), opacity .15s; }
@media (prefers-reduced-motion: reduce) { .ui-tab-ind { transition: none; } }
/* Loading states appear only if a load takes longer than ~0.3s, so fast loads never flash a loader */
.ui-section-loading { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 0; padding: 0 16px; opacity: 0; animation: uiSectionIn .25s ease .3s both; } /* centered in the section area */
@keyframes uiSectionIn { from { opacity: 0; min-height: 0; padding: 0 16px; } to { opacity: 1; min-height: 220px; padding: 24px 16px; } }
body .dt-state-loading:not(#_):not(#__) { animation: uiLoaderIn .2s ease .3s both; }
body .ui-section-loading .dt-state-loading:not(#_):not(#__) { animation: none; }
@keyframes uiLoaderIn { from { opacity: 0; } to { opacity: 1; } }
body .loader:not(#_):not(#__) { animation: uiLoaderIn .2s ease .3s both; } /* includes the page-open loader: a page that is ready in time never shows it */
body .ag-overlay-loading-center:not(#_):not(#__), body .dataTables_processing:not(#_):not(#__), body .arc-grid-loading:not(#_):not(#__) { animation: uiLoaderIn .2s ease .3s both; }
@media (prefers-reduced-motion: reduce) { .ui-section-loading { animation: none; opacity: 1; min-height: 220px; padding: 24px 16px; } body .dt-state-loading:not(#_):not(#__), body .loader:not(#_):not(#__), body .ag-overlay-loading-center:not(#_):not(#__), body .dataTables_processing:not(#_):not(#__), body .arc-grid-loading:not(#_):not(#__) { animation: none; } }
.ui-section-error { color: #555; font-size: 14px; }
.ui-section-error .dt-retry { margin-left: 6px; font-weight: 600; color: #c05f5f; cursor: pointer; }
