:root{
  --frch-pending:#f05a0a;--frch-pending-soft:#fff1e5;
  --frch-reserved:#1748a6;--frch-reserved-soft:#e9f0ff;
  --frch-prepaid:#159f94;--frch-prepaid-soft:#e3fbf8;
  --frch-paid:#168b19;--frch-paid-soft:#e8f8e8;
  --frch-returned:#6c35d9;--frch-returned-soft:#f0e9ff;
  --frch-void:#343434;--frch-void-soft:#ececec;
  --frch-confirmed:#c99a00;--frch-confirmed-soft:#fff7d8;
  --frch-unpaid:#e31212;--frch-unpaid-soft:#ffe9e9;
  --frch-cancelled:#e77b00;--frch-cancelled-soft:#fff0da;
  --frch-active:#27885a;--frch-active-soft:#e8f7ef;
  --frch-ready:#2d6fc2;--frch-ready-soft:#e8f2ff;
  --frch-extension:#8b5a20;--frch-extension-soft:#f7eee3;
}

/* Approved status palette. */
.badge.frch-status-pending,.frch-meta-pill.frch-status-pending{background:var(--frch-pending-soft)!important;color:var(--frch-pending)!important;border-color:var(--frch-pending)!important}
.badge.frch-status-reserved,.frch-meta-pill.frch-status-reserved{background:var(--frch-reserved-soft)!important;color:var(--frch-reserved)!important;border-color:var(--frch-reserved)!important}
.badge.frch-status-prepaid,.frch-meta-pill.frch-status-prepaid{background:var(--frch-prepaid-soft)!important;color:var(--frch-prepaid)!important;border-color:var(--frch-prepaid)!important}
.badge.frch-status-paid,.frch-meta-pill.frch-status-paid{background:var(--frch-paid-soft)!important;color:var(--frch-paid)!important;border-color:var(--frch-paid)!important}
.badge.frch-status-completed,.badge.frch-status-returned,.frch-meta-pill.frch-status-returned,.frch-returned-action{background:var(--frch-returned-soft)!important;color:var(--frch-returned)!important;border-color:var(--frch-returned)!important}
.badge.frch-status-completed,.badge.frch-status-returned{font-size:0!important}
.badge.frch-status-completed::after,.badge.frch-status-returned::after{content:'RETURNED';font-size:11px;font-weight:400}
.badge.frch-status-void,.frch-meta-pill.frch-status-void,.void-rebook-btn{background:var(--frch-void-soft)!important;color:var(--frch-void)!important;border-color:var(--frch-void)!important}
.badge.frch-status-confirmed,.frch-meta-pill.frch-status-confirmed{background:var(--frch-confirmed-soft)!important;color:#9f7800!important;border-color:var(--frch-confirmed)!important}
.badge.frch-status-unpaid,.frch-meta-pill.frch-status-unpaid{background:var(--frch-unpaid-soft)!important;color:var(--frch-unpaid)!important;border-color:var(--frch-unpaid)!important}
.badge.frch-status-partially-paid,.frch-meta-pill.frch-status-partially-paid{background:#fff3e2!important;color:#a05b00!important;border-color:#efd1a6!important}
.badge.frch-status-refund-due,.frch-meta-pill.frch-status-refund-due,.badge.frch-status-partially-refunded,.frch-meta-pill.frch-status-partially-refunded,.badge.frch-status-refunded,.frch-meta-pill.frch-status-refunded{background:#f4efff!important;color:#7241bb!important;border-color:#d6c5ee!important}
.badge.frch-status-cancelled,.frch-meta-pill.frch-status-cancelled,.cancel-no-show-btn{background:var(--frch-cancelled-soft)!important;color:#b65b00!important;border-color:var(--frch-cancelled)!important}
.badge.frch-status-active,.frch-meta-pill.frch-status-active{background:var(--frch-active-soft)!important;color:var(--frch-active)!important;border-color:var(--frch-active)!important}
.badge.frch-status-ready-for-pickup,.frch-meta-pill.frch-status-ready-for-pickup{background:var(--frch-ready-soft)!important;color:var(--frch-ready)!important;border-color:var(--frch-ready)!important}
.badge.frch-status-extension,.frch-meta-pill.frch-status-extension{background:var(--frch-extension-soft)!important;color:var(--frch-extension)!important;border-color:var(--frch-extension)!important}

/* Whole reservation row follows reservation status. */
.reservation-table tbody tr.frch-row-pending>td{background:rgba(240,90,10,.075)!important;border-bottom-color:rgba(240,90,10,.20)!important}
.reservation-table tbody tr.frch-row-reserved>td{background:rgba(23,72,166,.075)!important;border-bottom-color:rgba(23,72,166,.18)!important}
.reservation-table tbody tr.frch-row-confirmed>td{background:rgba(201,154,0,.09)!important;border-bottom-color:rgba(201,154,0,.20)!important}
.reservation-table tbody tr.frch-row-ready-for-pickup>td{background:rgba(45,111,194,.075)!important;border-bottom-color:rgba(45,111,194,.18)!important}
.reservation-table tbody tr.frch-row-active>td{background:rgba(39,136,90,.075)!important;border-bottom-color:rgba(39,136,90,.18)!important}
.reservation-table tbody tr.frch-row-extension>td{background:rgba(139,90,32,.075)!important;border-bottom-color:rgba(139,90,32,.18)!important}
.reservation-table tbody tr.frch-row-returned>td,.reservation-table tbody tr.reservation-completed-row>td{background:rgba(108,53,217,.105)!important;border-bottom-color:rgba(108,53,217,.24)!important}
.reservation-table tbody tr.frch-row-cancelled>td,.reservation-table tbody tr.reservation-row-cancelled>td{background:rgba(231,123,0,.105)!important;border-bottom-color:rgba(231,123,0,.25)!important}
.reservation-table tbody tr.frch-row-void>td,.reservation-table tbody tr.reservation-row-void>td{background:rgba(52,52,52,.105)!important;border-bottom-color:rgba(52,52,52,.24)!important}
.reservation-table tbody tr.frch-row-pending:hover>td{background:rgba(240,90,10,.12)!important}
.reservation-table tbody tr.frch-row-reserved:hover>td{background:rgba(23,72,166,.12)!important}
.reservation-table tbody tr.frch-row-confirmed:hover>td{background:rgba(201,154,0,.14)!important}
.reservation-table tbody tr.frch-row-returned:hover>td,.reservation-table tbody tr.reservation-completed-row:hover>td{background:rgba(108,53,217,.16)!important}
.reservation-table tbody tr.frch-row-cancelled:hover>td,.reservation-table tbody tr.reservation-row-cancelled:hover>td{background:rgba(231,123,0,.16)!important}
.reservation-table tbody tr.frch-row-void:hover>td,.reservation-table tbody tr.reservation-row-void:hover>td{background:rgba(52,52,52,.16)!important}

/* Quick drawer: navigation/actions only, no heavy typography. */
#drawerContent>.drawer-actions{display:flex!important;align-items:center;gap:7px!important;flex-wrap:nowrap!important;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}
#drawerContent>.drawer-actions>button{flex:0 0 auto;min-height:40px;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:400!important;white-space:nowrap}
.frch-nav-action{border:1px solid #b7c8bf;background:#fff;color:#244b38}
.frch-nav-action.active{background:#f4f8f6;border-color:#9bb8aa;color:#24533c}
.generate-top-invoice-btn{background:#fff!important;color:#176944!important;border:1px solid #4b9a72!important;font-weight:400!important}
.frch-final-invoice-action{background:#fff!important;color:var(--frch-returned)!important;border:1px solid var(--frch-returned)!important;border-radius:10px;padding:8px 12px;font-weight:400!important;white-space:nowrap}
.cancel-no-show-btn{font-weight:400!important}
.void-rebook-btn{font-weight:400!important}
.frch-final-focus{box-shadow:0 0 0 4px rgba(108,53,217,.18)!important;transition:box-shadow .2s ease}

/* Large workspace: only real actions belong in the top row. Status/payment stay informational under the title. */
.reservation-workspace-unified .rw-toolbar-actions{display:flex!important;align-items:center;gap:7px!important;flex-wrap:nowrap!important;min-width:0;overflow-x:auto;scrollbar-width:thin}
.reservation-workspace-unified .rw-toolbar-actions>button{font-weight:400!important}
.reservation-workspace-unified .rw-toolbar-actions>.frch-status-action,
.reservation-workspace-unified .rw-toolbar-actions>.frch-payment-indicator{display:none!important}
.frch-workspace-action{font-weight:400!important}
.frch-collect-payment{border:1px solid #5d9d7c!important;background:#fff!important;color:#17623f!important}
.frch-workspace-save{font-weight:400!important;background:#167348!important;color:#fff!important;border:1px solid #167348!important}
.frch-status-section-secondary .rw-status-row{display:flex!important}
.frch-status-section-secondary .rw-section-head::after{content:none!important}
.frch-returned-action.done,.frch-returned-action:disabled{background:var(--frch-returned-soft)!important;color:var(--frch-returned)!important;border-color:var(--frch-returned)!important;opacity:1!important}
.reservation-workspace-unified .rw-action-extra{background:#fff!important;color:#a35c00!important;border:1px solid #dda45f!important}
.reservation-workspace-unified .cancel-no-show-btn{background:#fff!important;color:#c45d00!important;border:1px solid #e58a3b!important}
.reservation-workspace-unified .void-rebook-btn{background:#fff!important;color:#393939!important;border:1px solid #747474!important}
.reservation-workspace-unified .frch-returned-action:not(:disabled){background:#fff!important;color:var(--frch-returned)!important;border:1px solid #8b63df!important}

html[data-theme="dark"] .frch-nav-action{background:#14242b;color:#d8e8df;border-color:#405d50}
html[data-theme="dark"] .frch-nav-action.active{background:#1c372b;color:#c9ecd8;border-color:#4b8067}
html[data-theme="dark"] .badge.frch-status-void,html[data-theme="dark"] .void-rebook-btn{background:#242424!important;color:#efefef!important;border-color:#777!important}
html[data-theme="dark"] .badge.frch-status-returned,html[data-theme="dark"] .badge.frch-status-completed,html[data-theme="dark"] .frch-returned-action{background:#2d1c50!important;color:#d8c4ff!important;border-color:#7650d5!important}
html[data-theme="dark"] .reservation-table tbody tr.frch-row-void>td,html[data-theme="dark"] .reservation-table tbody tr.reservation-row-void>td{background:rgba(115,115,115,.19)!important}
html[data-theme="dark"] .reservation-table tbody tr.frch-row-returned>td,html[data-theme="dark"] .reservation-table tbody tr.reservation-completed-row>td{background:rgba(108,53,217,.24)!important}
