:root {
    --rima-maroon: #790d2c;
    --rima-maroon-dark: #4d1020;
    --rima-gold: #cc8b16;
    --rima-rose: #f5e9ec;
    --rima-canvas: #faf6ee;
    --rima-ink: #252d42;
    --rima-muted: #70758a;
    --rima-border: #e5dfe0;
    --rima-sidebar-width: 260px;
    --bs-primary: var(--rima-maroon);
    --bs-primary-rgb: 121, 13, 44;
    --bs-link-color: var(--rima-maroon);
    --bs-link-hover-color: var(--rima-maroon-dark);
    --bs-body-color: var(--rima-ink);
    --bs-body-bg: var(--rima-canvas);
    --bs-border-color: var(--rima-border);
}
body .direct-debit-status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 5px 12px;
    border: 0;
    border-radius: 20px;
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.4;
    white-space: normal;
    background: #eef0f3;
    color: #596172;
}
body .direct-debit-status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
    flex-shrink: 0;
}
body .direct-debit-status--pending { background: #fff4da; color: #966000; }
body .direct-debit-status--success { background: #e6f9e9; color: #16803b; }
body .direct-debit-status--cancelled { background: #fce8eb; color: #b1243e; }
body, .page-shell { background: var(--rima-canvas); color: var(--rima-ink); }
body:has(#workspace-navigation) {
    background-color: #faf6ed;
    background-image:
        linear-gradient(137deg, transparent 0%, transparent 31%, rgba(231, 209, 165, .12) 31%, rgba(231, 209, 165, .12) 48%, transparent 48%),
        linear-gradient(137deg, transparent 0%, transparent 66%, rgba(235, 216, 182, .18) 66%, rgba(235, 216, 182, .18) 82%, transparent 82%),
        linear-gradient(110deg, #fcf9f1 0%, #f8eedc 100%);
    background-size: calc(100% - var(--rima-sidebar-width)) 100%;
    background-position: right top;
    background-repeat: no-repeat;
    background-attachment: fixed;
}
body:has(#workspace-navigation) .page-shell { background: transparent; }
@media (max-width: 992px) {
    body:has(#workspace-navigation) { background-size: 100% 100%; }
}
body .rima-login, body .rima-auth-page {
    --maroon: var(--rima-maroon);
    --dark-maroon: var(--rima-maroon-dark);
    --gold: var(--rima-gold);
    --accent-gold: var(--rima-gold);
}
h1, h2, h3, h4, h5, h6 { color: var(--rima-maroon-dark); }
a { color: var(--rima-maroon); }
button, input, select, textarea { accent-color: var(--rima-maroon); }
.btn-primary, .btn-info {
    --bs-btn-bg: var(--rima-maroon); --bs-btn-border-color: var(--rima-maroon);
    --bs-btn-hover-bg: var(--rima-maroon-dark); --bs-btn-hover-border-color: var(--rima-maroon-dark);
    --bs-btn-active-bg: var(--rima-maroon-dark); --bs-btn-active-border-color: var(--rima-maroon-dark);
    --bs-btn-disabled-bg: var(--rima-maroon); --bs-btn-disabled-border-color: var(--rima-maroon);
    --bs-btn-color: #fff; --bs-btn-hover-color: #fff; --bs-btn-active-color: #fff;
}
.btn-outline-primary, .btn-outline-info {
    --bs-btn-color: var(--rima-maroon); --bs-btn-border-color: var(--rima-maroon);
    --bs-btn-hover-bg: var(--rima-maroon); --bs-btn-hover-border-color: var(--rima-maroon);
    --bs-btn-active-bg: var(--rima-maroon); --bs-btn-active-border-color: var(--rima-maroon);
    --bs-btn-hover-color: #fff; --bs-btn-active-color: #fff;
}
.form-control:focus, .form-select:focus, .form-check-input:focus {
    border-color: var(--rima-maroon); box-shadow: 0 0 0 3px #790d2c20;
}
.form-check-input:checked { background-color: var(--rima-maroon); border-color: var(--rima-maroon); }
.card, .modal-content, .dropdown-menu { background: #fff; border-color: var(--rima-border); border-radius: 8px; }
.card-header { background: var(--rima-rose); color: var(--rima-maroon); }
.table { --bs-table-bg: #fff; --bs-table-color: var(--rima-ink); --bs-table-border-color: var(--rima-border); --bs-table-hover-bg: #faf3f5; }
.table thead { --bs-table-bg: #fff; --bs-table-color: var(--rima-maroon); }

/* Section headers follow the rose-and-white treatment of the invoice reference. */
body .panel, body .summary-card, body .practice-card {
    border: 1px solid var(--rima-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 3px 12px rgba(77, 16, 32, .035);
    backdrop-filter: none;
}
body .history-panel { padding: 0; }
.payrun-section {
    border: 1px solid var(--rima-border);
    border-radius: 8px;
    background: #fff;
}
.payrun-summary-row > .grid-col:not(:last-child) {
    flex: 1 1 0;
    min-width: 0;
}
.payrun-summary-row > .grid-col:first-child { flex-grow: 1.6; }
.practice-list-row > .grid-col:not(.ms-auto) {
    flex-grow: 1;
    min-width: 0;
}
body .portal-modal .modal-body :is(label, .portal-modal-label, .field span) {
    font-weight: 400;
    color: var(--rima-ink);
}
.practice-modal-dialog { max-width: 640px; margin: 24px auto; padding: 0 12px; }
body .practice-modal { max-height: calc(100dvh - 48px); display: flex; flex-direction: column; border-radius: 8px; }
body .practice-modal > .modal-header { padding: 18px 24px; flex-shrink: 0; }
body .practice-modal > .modal-body { padding: 20px 24px; min-height: 0; }
body .practice-modal > .modal-footer { padding: 16px 24px; gap: 8px; flex-shrink: 0; justify-content: flex-end; }
.practice-modal .modal-body > .row { margin-bottom: 14px !important; }
.practice-modal .modal-body > .row:last-child { margin-bottom: 0 !important; }
.practice-modal .col-form-label { padding-top: 0; padding-bottom: 6px; }
.practice-modal .modal-body > .row > :is(.col-4, .col-8) { width: 100%; }
.practice-modal .portal-modal-label { display: flex; flex-direction: column; gap: 6px; }
.deduction-modal-dialog { max-width: 600px; margin: 24px auto; padding: 0 12px; }
body .deduction-modal { max-height: calc(100dvh - 48px); border-radius: 8px; display: flex; flex-direction: column; }
body .deduction-modal > .modal-header { padding: 18px 24px; flex-shrink: 0; }
body .deduction-modal > .modal-body { padding: 20px 24px; min-height: 0; }
body .deduction-modal > .modal-footer { padding: 16px 24px; gap: 8px; flex-shrink: 0; }
.adviser-picker-description { margin: 0 0 16px; color: var(--rima-muted); }
.adviser-picker-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 10px 8px; border: 1px solid var(--rima-border); border-radius: 6px 6px 0 0; background: #faf6f7; }
.adviser-picker-toolbar label { margin: 0; cursor: pointer; }
.adviser-selection-count { color: var(--rima-maroon); font-size: .875rem; white-space: nowrap; }
.adviser-picker-list { max-height: min(340px, 40dvh); overflow-y: auto; border: 1px solid var(--rima-border); border-top: 0; border-radius: 0 0 6px 6px; }
.adviser-picker-row { min-height: 44px; display: flex; align-items: center; padding: 8px; border-bottom: 1px solid #eeeef1; cursor: pointer; }
.adviser-picker-row:last-child { border-bottom: 0; }
.adviser-picker-row:hover, .adviser-picker-row.is-selected { background: #faf0f3; }
.adviser-picker-row:focus-within { outline: 2px solid var(--rima-maroon); outline-offset: -2px; }
.adviser-picker .practice-name { line-height: 1.4; overflow-wrap: anywhere; }
.adviser-picker-empty { padding: 24px 16px; color: var(--rima-muted); text-align: center; }
@media (max-width: 767px) {
    .practice-modal .modal-body > .row { row-gap: 14px; }
}
.deduction-list-row > .grid-col:not(:first-child):not(:last-child) {
    flex-grow: 1;
    min-width: 0;
}
body .transactions-header-bar, body .card-header,
body .panel > .panel-heading, body .practice-card-header,
body .practice-inline-header, body div.payrun-bg-info {
    background: #f7edef;
    color: var(--rima-maroon) !important;
    border-bottom: 1px solid var(--rima-border);
}
body .transactions-header-bar {
    margin: 0; padding: 14px 20px; min-height: 60px;
    border-radius: 8px 8px 0 0;
    flex-wrap: wrap;
}
body .transactions-header-bar h2,
body .panel-heading h2, body .practice-title,
body .card-header :is(h2, h3, h4, h5),
body div.payrun-bg-info .text-white {
    color: var(--rima-maroon) !important;
}
body .panel > .panel-heading {
    margin: -20px -20px 18px;
    padding: 14px 20px;
    border-radius: 8px 8px 0 0;
}
body .practice-card-header { margin: -18px -18px 12px; padding: 14px 18px; border-radius: 8px 8px 0 0; }
body .practice-inline-header { padding: 12px; border-radius: 6px; }
body .transactions-filter-bar { background: #fff; padding: 16px; margin-bottom: 0; }
body .transactions-table-shell { background: #fff; border-radius: 0 0 8px 8px; }
body .transactions-add-button {
    background: #fff; color: var(--rima-maroon); border: 1px solid var(--rima-maroon); box-shadow: none;
}
body .transactions-add-button:hover { background: var(--rima-maroon); color: #fff; }
body .summary-value { color: var(--rima-maroon); }
body .summary-hint { color: var(--rima-muted); }
/* Shared control treatment for page forms and dialogs, including legacy filters. */
body :is(.ps-lg-210, .portal-modal, .profile-modal, .assistant-page) :is(
    input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="reset"]),
    select:not(.invoice-status-select):not(.paid-bg):not(.void-bg):not(.approved-bg):not(.awaiting-payment-bg),
    textarea
) {
    min-height: 44px;
    height: auto;
    padding: 10px 12px;
    border: 1px solid #d8d5dc;
    border-radius: 6px;
    background-color: #fff;
    color: var(--rima-ink);
    font-family: var(--app-font-family);
    font-size: .9375rem;
    line-height: 1.4;
    box-shadow: none;
    outline: none;
}
body :is(.ps-lg-210, .portal-modal, .profile-modal, .assistant-page) select:not(.invoice-status-select) {
    appearance: auto;
    background-image: none;
    padding-right: 12px;
}
body :is(.ps-lg-210, .portal-modal, .profile-modal, .assistant-page) textarea {
    min-height: 110px;
    resize: vertical;
}
body :is(.ps-lg-210, .portal-modal, .profile-modal, .assistant-page) :is(input, textarea)::placeholder {
    color: #838596;
    opacity: 1;
}
body :is(.ps-lg-210, .portal-modal, .profile-modal, .assistant-page) :is(
    input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]), select, textarea
):focus {
    border-color: var(--rima-maroon) !important;
    outline: none;
    box-shadow: 0 0 0 3px #790d2c18 !important;
}
body :is(.ps-lg-210, .portal-modal, .profile-modal, .assistant-page) :is(input, select, textarea):disabled,
body :is(.ps-lg-210, .portal-modal, .profile-modal, .assistant-page) :is(input, textarea)[readonly] {
    background-color: #f5f5f7 !important;
    color: #737587 !important;
    opacity: 1;
}
body :is(.ps-lg-210, .portal-modal, .profile-modal, .assistant-page) :is(input, select, textarea):is(.invalid, .is-invalid, [aria-invalid="true"]) {
    border-color: #b1243e !important;
}
body :is(.ps-lg-210, .portal-modal, .profile-modal, .assistant-page) :is(input, select, textarea):is(.invalid, .is-invalid, [aria-invalid="true"]):focus {
    border-color: #b1243e !important;
    box-shadow: 0 0 0 3px #b1243e20 !important;
}
body .grid-pagination-size select {
    min-height: 34px !important;
    padding: 4px 8px !important;
}
body .direct-debit-summary {
    margin: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
body .revenue-total-notice {
    width: fit-content;
    max-width: calc(100% - 32px);
    margin: 16px;
    padding: 14px 18px;
    border-radius: 6px;
    overflow-wrap: anywhere;
}
@media (max-width: 480px) {
    body .direct-debit-summary { grid-template-columns: minmax(0, 1fr); }
}
body .panel table th, body .panel table td {
    border-bottom: 1px solid #eeeef1;
    color: var(--rima-ink);
}
body .panel table th {
    background: #fff; color: var(--rima-maroon); font-weight: 700;
    padding: 18px 24px;
    vertical-align: middle;
    border-bottom: 1px solid var(--rima-border);
}
body .panel table tbody tr { background: #fff; }
body .panel table tbody tr:hover { background: #fcf8f9; }
/* Lists grow with their rows; the page handles vertical scrolling. */
body .transactions-table-wrap:has(> .rima-div-grid) {
    max-height: none;
    overflow: visible;
    scrollbar-gutter: auto;
    border: 0;
    border-radius: 0;
}
.rima-div-grid {
    width: 100%;
    min-width: 0;
    background: #fff;
    font-size: .875rem;
    line-height: 1.4;
}
.rima-grid-heading, .rima-grid-body {
    overflow: visible;
}
.rima-grid-heading { position: static; background: #fff; padding-bottom: 1px; }
.rima-grid-body { max-height: none; }
.rima-grid-row {
    display: grid;
    grid-template-columns: var(--data-columns);
    align-items: center;
    margin: 0;
    border: 0;
    border-bottom: 1px solid #ececf0;
    border-radius: 0;
    background: #fff;
}
.rima-grid-heading .rima-grid-row {
    margin-top: 0;
    background: #fff;
    color: var(--rima-maroon);
}
.rima-grid-row > [role="columnheader"], .rima-grid-row > [role="cell"] {
    min-width: 0;
    padding: 12px min(1vw, 12px);
    overflow-wrap: anywhere;
}
.rima-grid-row > [role="columnheader"] { padding: 16px min(1vw, 12px); font-weight: 700; }
.rima-grid-body .rima-grid-row:hover { background: #fcf8f9; }
.rima-grid-row > .transactions-empty-cell { grid-column: 1 / -1; }
.rima-grid-row > [role="cell"]:last-child:not([aria-colspan]),
.rima-grid-row > [role="columnheader"]:last-child {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}
.rima-grid-row > [role="cell"]:last-child > :is(.d-flex, .invoice-actions) { flex-wrap: nowrap; gap: 8px !important; }
.rima-div-grid :is(.invoice-icon-button, .icon-button) {
    width: 34px;
    height: 34px;
    min-width: 34px;
    flex-shrink: 0;
    margin: 0;
    padding: 0;
}
.rima-div-grid .transactions-action-menu-wrap { margin: 0; flex-shrink: 0; }
.rima-div-grid .transactions-select-cell { width: auto; min-width: 0; }
.rima-div-grid .invoice-status-select { min-width: 0; width: 100%; max-width: 100%; }
.rima-div-grid .billing-status-pill { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
.rima-div-grid [role="cell"] { white-space: normal; }
body .transactions-header-bar h2 {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    font-size: 22px;
    font-weight: 700;
}
body .transactions-header-bar h2 .bi { font-size: 24px; flex-shrink: 0; }
body .payrun-section .payrun-summary-row {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 12px 8px !important;
    border: 0 !important;
    border-bottom: 1px solid #ececf0 !important;
    border-radius: 0 !important;
    background: #fff;
    min-height: 58px;
}
body .payrun-section .payrun-summary-row.payrun-bg-info {
    color: var(--rima-maroon) !important;
    background: #fff;
    min-height: 50px;
    font-weight: 700;
}
body .payrun-summary-row.drag-handle:hover { background: #fcf8f9 !important; }
body .ps-lg-210 div.payrun-bg-info {
    background: #fff;
    color: var(--rima-maroon) !important;
    font-weight: 700;
    border: 0 !important;
    border-bottom: 1px solid #ececf0 !important;
    border-radius: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
body .ps-lg-210 .drag-handle.border {
    border: 0 !important;
    border-bottom: 1px solid #ececf0 !important;
    border-radius: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
body .payrun-summary-row .badge.text-dark { background: #fff4da; color: #966000 !important; }
body .rima-grid-body .rima-grid-row:last-child { border-bottom: 0; }
body :is(.payrun-section, .rima-div-grid) :is(.paid-bg, .status-auto) {
    background: #e6f9e9 !important; color: #16803b !important;
}
body :is(.payrun-section, .rima-div-grid) :is(.approved-bg, .awaiting-payment-bg, .status-review) {
    background: #fff4da !important; color: #966000 !important;
}
body :is(.payrun-section, .rima-div-grid) :is(.void-bg, .status-no-match) {
    background: #fce8eb !important; color: #b1243e !important;
}
body :is(.payrun-section, .rima-div-grid) :is(span.badge, .billing-status-pill, .status) {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 6px 12px; border-radius: 20px;
    font-size: .8125rem; font-weight: 600; line-height: 1.3;
    max-width: 100%; white-space: normal;
}
body :is(.payrun-section, .rima-div-grid) :is(span.badge, .billing-status-pill, .status)::before {
    content: ""; width: 8px; height: 8px;
    flex-shrink: 0; border-radius: 50%; background: currentColor;
}
body .rima-div-grid :is(.invoice-icon-button, .transactions-table-action),
body .payrun-summary-row .btn-outline-secondary {
    border: 1px solid #a53650;
    color: var(--rima-maroon);
    border-radius: 6px;
    background: #fff;
}
body .rima-div-grid :is(.invoice-icon-button, .transactions-table-action):hover,
body .payrun-summary-row .btn-outline-secondary:hover { background: var(--rima-rose); }
@media print {
    body .transactions-table-wrap:has(> .rima-div-grid), .rima-grid-body { overflow: visible; max-height: none; }
    .rima-grid-heading { position: static; }
    .rima-div-grid { min-width: 0; }
}
body .transactions-table-wrap > table > thead {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #fff;
    box-shadow: 0 1px 0 var(--rima-border);
}
body .transactions-table-wrap > table > thead th {
    background: #fff;
    color: var(--rima-maroon);
    font-weight: 700;
    padding: 18px 24px;
    vertical-align: middle;
    border-top: 0;
    border-bottom: 1px solid var(--rima-border);
}
body .transactions-table-wrap > table > thead th:first-child { border-left: 0; }
body .transactions-table-wrap > table > thead th:last-child { border-right: 0; }
@media print {
    body .transactions-table-wrap > table > thead {
        position: static;
        box-shadow: none;
    }
}
body .invoice-status-pill, body .invoice-status-select, body .billing-status-pill { border-radius: 20px; }
body .invoice-status-select.bg-success, body .invoice-status-pill.bg-success,
body .billing-status-pill.bg-success { background: #e6f9e9 !important; color: #16803b !important; }
body .invoice-status-select.bg-warning, body .invoice-status-pill.bg-warning,
body .billing-status-pill.bg-warning { background: #fff4da !important; color: #aa6900 !important; }
body .portal-modal > .modal-header {
    background: #f7edef !important; color: var(--rima-maroon);
    border-bottom: 1px solid var(--rima-border);
}
body .portal-modal > .modal-header :is(.modal-title, .text-white, h1, h2, h3, h4, h5) {
    color: var(--rima-maroon) !important;
}
body .portal-modal > .modal-header .btn-close { filter: none; }
.page-link { color: var(--rima-maroon); background: #fff; border-color: var(--rima-border); }
.active > .page-link, .page-link.active { background: var(--rima-maroon); border-color: var(--rima-maroon); }
.nav-tabs .nav-link { color: var(--rima-muted); }
.nav-tabs .nav-link.active { color: var(--rima-maroon); border-bottom-color: var(--rima-maroon); }

/* The fixed shell shares one width so header and page offsets stay aligned. */
body #workspace-navigation {
    top: 0; bottom: 0; width: var(--rima-sidebar-width);
    height: 100vh; height: 100dvh;
    max-height: 100vh; max-height: 100dvh; min-height: 0;
    padding: 40px 20px 32px 40px !important;
    background: #fff url('images/rima-sidebar-ribbon.png') left top / 25px 100% no-repeat;
    border-right: 1px solid var(--rima-border); box-shadow: none; z-index: 11;
    flex-direction: column !important; align-items: stretch; gap: 0;
}
.workspace-brand { display: flex; align-items: center; gap: 5px; margin: 0 0 42px; text-decoration: none; color: var(--rima-maroon); flex-shrink: 0; }
.workspace-brand img { width: 58px; height: 58px; object-fit: contain; }
.workspace-brand strong { font-size: 25px; line-height: 1; font-weight: 800; white-space: nowrap; }
.workspace-brand strong span { color: #111; }
.workspace-brand small { display: block; font-size: 14px; line-height: 1.2; font-weight: 700; }
.workspace-label { color: var(--rima-muted); font-size: 12px; font-weight: 700; text-transform: uppercase; margin: 0 14px 12px; }
body #workspace-navigation .nav { padding: 0 !important; flex-flow: column nowrap !important; }
body #workspace-navigation .nav-link {
    display: flex; align-items: center; justify-content: flex-start; gap: 12px;
    min-height: 52px; margin-bottom: 6px !important; padding: 12px 14px;
    color: var(--rima-ink) !important; border-radius: 6px !important;
    font-size: 15px; text-decoration: none; border-left: 4px solid transparent;
}
body #workspace-navigation .nav-link i { font-size: 20px; width: 23px; text-align: center; flex-shrink: 0; }
body #workspace-navigation .nav-link:hover { background: #faf3f5 !important; color: var(--rima-maroon) !important; }
body #workspace-navigation .nav-link.payrun-bg-info { background: var(--rima-rose) !important; color: var(--rima-maroon) !important; border-left-color: var(--rima-maroon); font-weight: 700; }
.connected-navigation { margin-top: auto; flex-shrink: 0; }
body #workspace-navigation .connected-apps-divider { border-top: 1px solid var(--rima-border); border-left: 0; height: 0; margin: 16px 12px 10px; align-self: stretch; }
body #workspace-navigation .rima-conversations { display: flex; color: var(--rima-ink); }
body .rima-conversations-heading button, body .rima-conversation-link { color: var(--rima-maroon); }
body .rima-conversation-link:hover, body .rima-conversation-link.active { background: var(--rima-rose); color: var(--rima-maroon); }
body .header-con { left: var(--rima-sidebar-width) !important; background: #fff; border-bottom: 1px solid var(--rima-border); }
body .header-con .header-brand, body .header-con .header-user-action, body .header-con .header-signout-action,
body .header-con .ask-rima-header-action, body .header-con .ask-rima-header-content,
body .header-con .ask-rima-header-action .header-action-label, body .header-con .ask-rima-header-action .bi { color: var(--rima-maroon) !important; }
body .header-con .header-brand { font-size: 18px !important; margin-left: 0; }
body .header-con .header-brand-icon, body .header-con .header-icon-circle, body .header-con .header-initials-avatar { border-color: var(--rima-border); }
body .header-con .header-initials-avatar, body .header-con .ask-rima-header-action:hover { background: var(--rima-rose); }
body .header-con .ask-rima-header-action { border-color: var(--rima-border); }
.rima-menu-toggle, .rima-menu-backdrop { display: none; }
@media (min-width: 993px) {
    body .ps-lg-210 { margin-left: var(--rima-sidebar-width); min-width: 0; width: calc(100% - var(--rima-sidebar-width)); }
}
@media (max-width: 992px) {
    body .assistant-page { width: 100%; margin-left: 0; max-width: none; }
    body .header-con { left: 0 !important; }
    body .header-con > div { padding-left: 62px !important; padding-right: 12px !important; }
    body .header-action-group { gap: 10px; }
    body #workspace-navigation { visibility: hidden; transform: translateX(-100%); transition: transform .2s ease, visibility .2s; }
    body #workspace-navigation.menu-open { visibility: visible; transform: translateX(0); }
    .rima-menu-toggle { display: grid; place-items: center; position: fixed; top: 17px; left: 12px; width: 38px; height: 38px; border: 1px solid var(--rima-border); border-radius: 6px; background: #fff; color: var(--rima-maroon); z-index: 13; font-size: 24px; }
    .rima-menu-backdrop { display: block; position: fixed; inset: 0; background: #25131b66; border: 0; z-index: 10; }
    body #workspace-navigation .workspace-brand { margin-top: 32px; margin-bottom: 28px; }
    body .ps-lg-210 { margin-left: 0; width: 100%; min-width: 0; }
    body #workspace-navigation .finley-navigation { max-width: none; }
}
@media (max-width: 480px) {
    body .header-con .header-brand { font-size: 14px !important; }
    body .header-con .header-brand-icon { display: none; }
    body .header-action-group { gap: 6px; }
    body .header-user-action, body .header-signout-action { min-width: 36px; }
    body .ask-rima-header-action { min-width: 46px; padding: 5px; }
    body .xero-connect-button { width: 52px; }
    body .xero-connect-logo { width: 46px; }
}
