/* Rental Manager 2.9.3 stabilization */
:root{--cfl-293-safe-bottom:max(18px,env(safe-area-inset-bottom,0px))}
.cfl-description-empty,.cfl-description-error{margin:0;padding:14px 16px;border:1px dashed var(--cfl-border,#cbd5e1);border-radius:10px;background:var(--cfl-soft,#f8fafc);color:var(--cfl-muted,#64748b)}
.cfl-description-error{border-color:#efb4aa;background:#fff5f2;color:#8a2d20}
.cfl-293-description-loading{min-height:90px;display:flex;align-items:center;justify-content:center}
.cfl-rich-content .et-boc,.cfl-rich-content .woocommerce-product-gallery,.cfl-rich-content form.cart,.cfl-rich-content .related.products{max-width:100%}

/* Operational rentals use the available desktop workspace. */
.cfl-293-rental-operations .cfl-293-full-rental-grid,
.cfl-293-rental-operations .cfl-rental-operations-grid,
.cfl-293-rental-operations .cfl-operations-rental-grid,
.cfl-293-rental-operations .cfl-rental-ops-grid{grid-template-columns:minmax(0,1fr)!important}
.cfl-293-rental-operations .cfl-293-full-rental-card{grid-column:1/-1!important;width:100%!important;max-width:none!important}

/* Reports filter layout remains readable at intermediate widths and zoom. */
.cfl-293-reports .cfl-report-filters,.cfl-293-reports .cfl-report-filter-row,.cfl-293-reports [class*="report-filter"] form{display:grid!important;grid-template-columns:minmax(150px,.85fr) minmax(150px,.85fr) minmax(150px,.85fr) minmax(210px,1.25fr) auto!important;gap:14px!important;align-items:end!important}
.cfl-293-reports form.cfl-report-filters>*{min-width:0!important;margin:0!important}
.cfl-293-reports form.cfl-report-filters button,.cfl-293-reports form.cfl-report-filters input[type="submit"]{white-space:nowrap;min-height:44px}
@media(max-width:1180px){.cfl-293-reports .cfl-report-filters,.cfl-293-reports .cfl-report-filter-row,.cfl-293-reports [class*="report-filter"] form{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cfl-293-reports form.cfl-report-filters button,.cfl-293-reports form.cfl-report-filters input[type="submit"]{width:100%}}
@media(max-width:680px){.cfl-293-reports .cfl-report-filters,.cfl-293-reports .cfl-report-filter-row,.cfl-293-reports [class*="report-filter"] form{grid-template-columns:minmax(0,1fr)!important}}

/* Task empty state. */
.cfl-293-task-empty{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-content:center!important;justify-items:center!important;gap:10px!important;padding:30px 22px!important;text-align:center!important}
.cfl-293-task-empty h2,.cfl-293-task-empty h3,.cfl-293-task-empty strong,.cfl-293-task-empty p{margin:0!important;padding:0!important}
.cfl-293-task-empty p{line-height:1.55!important}

/* Messages: keep the composer fully inside the shell. */
.cfl-293-messages .cfl-message-composer,.cfl-293-messages .cfl-customer-message-composer,.cfl-293-messages [class*="message-compose"],.cfl-293-messages [class*="message-reply"]{padding-bottom:var(--cfl-293-safe-bottom)!important;margin-bottom:0!important;box-sizing:border-box!important}
.cfl-293-messages .cfl-message-thread,.cfl-293-messages .cfl-customer-message-thread,.cfl-293-messages [class*="conversation-detail"]{scroll-padding-bottom:130px}
.cfl-293-conversation-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;margin-top:10px}
.cfl-293-header-action{display:inline-flex!important;align-items:center;min-height:38px;padding:8px 12px!important;border:1px solid var(--cfl-border,#d7e0ea);border-radius:9px;text-decoration:none!important;background:var(--cfl-card,#fff);color:var(--cfl-text,#172033)!important;font-weight:700}
.cfl-293-mobile-inbox{padding:16px;border:1px solid var(--cfl-border,#d7e0ea);border-radius:14px;background:var(--cfl-card,#fff)}
.cfl-293-mobile-inbox-head{margin-bottom:12px}.cfl-293-mobile-inbox-head h2{margin:0}
.cfl-293-conversation-card{width:100%;display:grid;gap:5px;text-align:left;padding:16px;border:1px solid var(--cfl-border,#d7e0ea);border-radius:12px;background:var(--cfl-soft,#f8fafc);color:var(--cfl-text,#172033)}
@media(min-width:783px){.cfl-293-mobile-inbox{display:none!important}.cfl-293-messages a[href*="message_view=inbox"],.cfl-293-messages .cfl-message-back{display:none!important}}

/* Attention and creation feedback. */
.cfl-293-attention-banner,.cfl-293-success-notice{margin:0 0 18px;padding:14px 16px;border-radius:11px;border:1px solid #f0b49a;background:#fff5ef;color:#5e2a16;display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.cfl-293-success-notice{border-color:#9fd7ae;background:#f0fbf3;color:#185b2c;font-weight:700}
.cfl-293-attention-banner a{font-weight:700}

/* Upcoming unpaid/readiness section. */
.cfl-293-readiness{margin:22px 0;padding:20px;border:1px solid var(--cfl-border,#d7e0ea);border-radius:14px;background:var(--cfl-card,#fff);box-shadow:0 8px 24px rgba(20,45,70,.05)}
.cfl-293-section-head{display:flex;gap:18px;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.cfl-293-section-head h2,.cfl-293-section-head p{margin:0}.cfl-293-section-head p{margin-top:5px;color:var(--cfl-muted,#64748b)}
.cfl-293-count{display:grid;place-items:center;min-width:32px;height:32px;padding:0 8px;border-radius:999px;background:var(--cfl-soft,#eef3f8);font-weight:800}
.cfl-293-readiness-list{display:grid;gap:10px}.cfl-293-readiness-card{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(170px,1fr) minmax(150px,.8fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid var(--cfl-border,#d7e0ea);border-radius:11px}.cfl-293-readiness-card p{margin:4px 0 0;color:var(--cfl-muted,#64748b)}.cfl-293-readiness-card small{display:block;margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em;color:var(--cfl-muted,#64748b);font-weight:700}.cfl-293-blockers span{display:inline-flex;padding:5px 9px;border-radius:999px;background:#fff0e9;color:#9a3616;font-weight:700;font-size:.82rem}
@media(max-width:900px){.cfl-293-readiness-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cfl-293-readiness-card>a{width:100%;justify-content:center}}
@media(max-width:560px){.cfl-293-readiness{padding:14px}.cfl-293-readiness-card{grid-template-columns:minmax(0,1fr)}}

/* System Health dates must wrap rather than overlap. */
.cfl-status-card,.cfl-rental-status [class*="health-card"],.cfl-rental-status [class*="metric-card"],.cfl-system-health [class*="health-card"],.cfl-system-health [class*="metric-card"]{min-height:116px;height:auto!important;overflow-wrap:anywhere}
.cfl-status-card strong,.cfl-rental-status [class*="health-card"] strong,.cfl-rental-status [class*="metric-card"] strong,.cfl-system-health [class*="health-card"] strong,.cfl-system-health [class*="metric-card"] strong{line-height:1.08!important;display:block}

/* Customer portal mobile polish and optional dark-mode control. */
.cfl-293-customer-theme-toggle{display:inline-grid;place-items:center;flex:0 0 auto;width:44px;height:44px;border:1px solid var(--cfl-border,#d7e0ea);border-radius:11px;background:var(--cfl-card,#fff);color:var(--cfl-text,#172033);cursor:pointer}
.cfl-293-customer-theme-toggle svg{width:23px;height:23px}
@media(max-width:782px){
 body.cfl-293-customer-portal{padding-top:0!important;margin-top:0!important}
 body.cfl-293-customer-portal #page-container,body.cfl-293-customer-portal #main-content,body.cfl-293-customer-portal .entry-content{padding-top:0!important;margin-top:0!important}
 body.cfl-293-customer-portal .et_pb_section:has(.cfl-customer-account),body.cfl-293-customer-portal .et_pb_section:has(.cfl-account-shell),body.cfl-293-customer-portal .et_pb_section:has([class*="rental-account"]){padding-top:max(8px,env(safe-area-inset-top,0px))!important;margin-top:0!important}
 body.cfl-293-customer-portal .cfl-customer-account,body.cfl-293-customer-portal .cfl-account-shell,body.cfl-293-customer-portal [class*="rental-account"]{margin-top:0!important}
 .cfl-293-messages .cfl-message-composer,.cfl-293-messages .cfl-customer-message-composer,.cfl-293-messages [class*="message-compose"],.cfl-293-messages [class*="message-reply"]{padding-bottom:calc(var(--cfl-293-safe-bottom) + 10px)!important}
}
html.cfl-customer-dark,body.cfl-customer-dark{color-scheme:dark}
html.cfl-customer-dark body.cfl-293-customer-portal,body.cfl-customer-dark.cfl-293-customer-portal{--cfl-card:#192b42;--cfl-soft:#223851;--cfl-border:#3c526c;--cfl-text:#f4f7fb;--cfl-muted:#c4cfdb;background:#10243b!important;color:#f4f7fb!important}
html.cfl-customer-dark body.cfl-293-customer-portal input,html.cfl-customer-dark body.cfl-293-customer-portal select,html.cfl-customer-dark body.cfl-293-customer-portal textarea{background:#142a43!important;color:#f4f7fb!important;border-color:#48617e!important}
html.cfl-customer-dark body.cfl-293-customer-portal .cfl-293-mobile-inbox,html.cfl-customer-dark body.cfl-293-customer-portal .cfl-293-conversation-card{background:#192b42!important;color:#f4f7fb!important;border-color:#3c526c!important}

@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.cfl-report-bar,.cfl-report-bar-fill,.cfl-chart-bar,.cfl-trend-bar,.cfl-bar-fill{opacity:1!important;visibility:visible!important}}

/* 2.9.3.1 — shared customer segmented controls must always retain contrast. */
body.cfl-rental-customer-account :is(.cfl-rental-lifecycle-filters,.cfl-financial-filters) a.is-active,
body.cfl-rental-customer-account :is(.cfl-rental-lifecycle-filters,.cfl-financial-filters) a[aria-current="page"],
body.cfl-rental-customer-account [role="tablist"] :is(a,button)[aria-selected="true"]{
 background:var(--cfl-cx-primary,var(--cfl-brand-primary,#f05a1a))!important;
 border-color:var(--cfl-cx-primary,var(--cfl-brand-primary,#f05a1a))!important;
 color:var(--cfl-brand-button-text,#fff)!important;
 -webkit-text-fill-color:var(--cfl-brand-button-text,#fff)!important;
 text-shadow:none!important;
}
body.cfl-rental-customer-account :is(.cfl-rental-lifecycle-filters,.cfl-financial-filters) a:not(.is-active){-webkit-text-fill-color:currentColor}

/* 2.9.3.1 — one authoritative customer appearance mode. */
@media(max-width:760px){
 body.cfl-rental-customer-account .cfl-account-theme-form{display:block!important;flex:0 0 auto!important;margin:0!important;padding:0!important}
 body.cfl-rental-customer-account .cfl-account-theme-form .cfl-account-theme-toggle{display:inline-grid!important}
}
@media(max-width:390px){
 body.cfl-rental-customer-account .cfl-account-shell__logo{max-width:90px!important;height:38px!important}
 body.cfl-rental-customer-account :is(.cfl-account-icon-action,.cfl-account-nav-toggle){width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:36px!important;border-radius:10px!important}
 body.cfl-rental-customer-account .cfl-account-header-actions,body.cfl-rental-customer-account .cfl-account-shell__header-tools{gap:4px!important}
}
body.cfl-rental-customer-account.cfl-rental-theme-dark,
body.cfl-rental-thank-you-page.cfl-rental-theme-dark{background:#10243b!important;color:#f8fafc!important;color-scheme:dark}
body.cfl-rental-customer-account.cfl-rental-theme-dark :is(#page-container,#main-content,.entry-content,.et-l--post,.et_builder_inner_content),
body.cfl-rental-customer-account.cfl-rental-theme-dark .et_pb_section:has(.cfl-account-shell){background:#10243b!important;color:#f8fafc!important}
body.cfl-rental-customer-account.cfl-rental-theme-dark :is(.cfl-account-shell__heading,.cfl-account-shell__navigation,.cfl-account-shell__content,.cfl-customer-endpoint,.cfl-customer-dashboard,.cfl-my-rental-card,.cfl-financial-record,.cfl-customer-bell-panel,.cfl-customer-empty,.cfl-equipment-card,.cfl-equipment-detail-section,.cfl-rental-browser-tools,.cfl-notification-center,.cfl-notification-item){background:var(--cfl-cx-surface,#203047)!important;color:var(--cfl-cx-text,#f8fafc)!important;border-color:var(--cfl-cx-line,#3b506b)!important}
body.cfl-rental-customer-account.cfl-rental-theme-dark :is(h1,h2,h3,h4,h5,h6,strong,label,dt,dd){color:var(--cfl-cx-text,#f8fafc)!important;-webkit-text-fill-color:var(--cfl-cx-text,#f8fafc)!important}
body.cfl-rental-customer-account.cfl-rental-theme-dark :is(p,small,.cfl-muted,.cfl-account-shell__heading-copy p){color:var(--cfl-cx-muted,#b8c5d6)!important}
body.cfl-rental-customer-account.cfl-rental-theme-dark :is(input,select,textarea){background:#17283e!important;color:#f8fafc!important;border-color:#435872!important}
body.cfl-rental-customer-account.cfl-rental-theme-dark :is(input,textarea)::placeholder{color:#aebdce!important;opacity:1}
body.cfl-rental-customer-account.cfl-rental-theme-dark .cfl-account-icon-action,
body.cfl-rental-customer-account.cfl-rental-theme-dark .cfl-account-nav-toggle{background:#263850!important;color:#f8fafc!important;border-color:#435872!important}
body.cfl-rental-customer-account.cfl-rental-theme-dark .cfl-account-icon-action svg,
body.cfl-rental-customer-account.cfl-rental-theme-dark .cfl-account-nav-toggle svg{color:#f8fafc!important;stroke:currentColor!important}
body.cfl-rental-customer-account.cfl-rental-theme-dark .cfl-customer-bell-head{background:#203047!important}

/* Customer cart departure confirmation; canonical WooCommerce navigation remains untouched. */
.cfl-cart-exit-dialog[hidden]{display:none!important}.cfl-cart-exit-dialog{position:fixed;inset:0;z-index:1000000;display:grid;place-items:center;padding:18px;background:rgba(15,23,42,.66);backdrop-filter:blur(3px)}
.cfl-cart-exit-dialog__panel{width:min(520px,100%);padding:24px;border:1px solid var(--cfl-cx-line,#d8e1eb);border-radius:17px;background:var(--cfl-cx-surface,#fff);color:var(--cfl-cx-text,#172033);box-shadow:0 28px 90px rgba(0,0,0,.34)}
.cfl-cart-exit-dialog__panel h2{margin:0 0 9px!important;color:var(--cfl-cx-text,#172033)!important;font-size:25px!important;line-height:1.18!important}.cfl-cart-exit-dialog__panel p{margin:0;color:var(--cfl-cx-muted,#64748b);line-height:1.58}
.cfl-cart-exit-dialog__actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:22px}.cfl-cart-exit-dialog__actions button,.cfl-cart-exit-dialog__actions a{min-height:44px!important;margin:0!important;border-radius:10px!important}
.cfl-cart-exit-dialog__actions [data-cfl-cart-stay]{padding:10px 15px;border:1px solid var(--cfl-cx-line,#d8e1eb);background:var(--cfl-cx-soft,#f8fafc);color:var(--cfl-cx-text,#172033);font:inherit;font-weight:800;cursor:pointer}.cfl-cart-exit-open{overflow:hidden!important}
body.cfl-rental-theme-dark .cfl-cart-exit-dialog__panel{--cfl-cx-surface:#203047;--cfl-cx-soft:#263850;--cfl-cx-text:#f8fafc;--cfl-cx-muted:#b8c5d6;--cfl-cx-line:#435872}
@media(max-width:560px){.cfl-cart-exit-dialog{padding:11px}.cfl-cart-exit-dialog__panel{padding:20px}.cfl-cart-exit-dialog__actions{display:grid;grid-template-columns:1fr}.cfl-cart-exit-dialog__actions>*{width:100%!important;text-align:center}}

/* Notification popover feedback. */
.cfl-customer-bell-error{margin:10px 14px;padding:10px 11px;border:1px solid #efb4aa;border-radius:9px;background:#fff5f2;color:#8a2d20;font-size:13px;line-height:1.45}.cfl-customer-bell-empty{margin:12px 14px;padding:13px;border-radius:10px;background:var(--cfl-cx-soft,#f8fafc);color:var(--cfl-cx-muted,#64748b);text-align:center}
body.cfl-rental-theme-dark .cfl-customer-bell-error{background:#4b2525;color:#ffd8d4;border-color:#88504a}

/* 2.9.3.1 — operational urgency and clear hierarchy. */
.cfl-operations-quiet{display:flex;align-items:center;gap:14px;border-style:dashed!important;background:var(--cfl-soft,#f8fafc)!important}.cfl-operations-quiet h3,.cfl-operations-quiet p{margin:0}.cfl-operations-quiet p:last-child{margin-top:4px;color:var(--cfl-muted,#64748b)}
.cfl-operation-card.is-critical,.cfl-rental-order-card.is-critical{border-color:#e7a39b!important;border-left:5px solid var(--cfl-brand-error,#b42318)!important;background:color-mix(in srgb,var(--cfl-brand-error,#b42318) 6%,var(--cfl-card,#fff))!important;box-shadow:0 12px 30px rgba(180,35,24,.10)!important}
.cfl-operation-card.is-critical .cfl-operation-time,.cfl-rental-critical-context{color:var(--cfl-brand-error,#b42318)!important}.cfl-rental-critical-context{margin:8px 0 12px!important;padding:9px 11px;border-radius:8px;background:color-mix(in srgb,var(--cfl-brand-error,#b42318) 9%,transparent)}
:is(.cfl-status,.cfl-rental-status).cfl-rental-status-pickup-overdue,
:is(.cfl-status,.cfl-rental-status).cfl-rental-status-return-overdue,
.cfl-rental-status-pickup-overdue,.cfl-rental-status-return-overdue,
.cfl-operation-card.is-critical .cfl-operation-status{background:var(--cfl-brand-error,#b42318)!important;border-color:var(--cfl-brand-error,#b42318)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.cfl-operation-card.is-critical .cfl-count-pill{background:#fff0ee!important;color:#8f1d14!important;border-color:#e7a39b!important}
body.cfl-rental-theme-dark :is(.cfl-operation-card.is-critical,.cfl-rental-order-card.is-critical){background:#402829!important;border-color:#8f4b45!important;border-left-color:#ef6a5c!important}.cfl-rental-operations-attention>.cfl-card-grid{grid-template-columns:minmax(0,1fr)!important}

/* 2.10.1 — preserve semantic rental states inside the employee dark theme. */
.cfl-v2-shell[data-theme="dark"] :is(.cfl-operation-card.is-critical,.cfl-rental-order-card.is-critical){
 background:color-mix(in srgb,var(--cfl-brand-error,#ef6a5c) 12%,var(--cfl-v2-surface,#20344d))!important;
 border-color:color-mix(in srgb,var(--cfl-brand-error,#ef6a5c) 48%,var(--cfl-v2-line,#3a506b))!important;
 border-left-color:color-mix(in srgb,var(--cfl-brand-error,#ef6a5c) 88%,#fff)!important;
 box-shadow:0 12px 30px rgba(120,25,22,.17)!important
}
.cfl-v2-shell[data-theme="dark"] .cfl-rental-critical-context{
 background:color-mix(in srgb,var(--cfl-brand-error,#ef6a5c) 16%,transparent)!important;
 color:#ffd4cf!important;-webkit-text-fill-color:#ffd4cf!important
}
.cfl-v2-shell[data-theme="dark"] :is(.cfl-rental-status-pickup-overdue,.cfl-rental-status-return-overdue,.cfl-rental-status-overdue,.cfl-rental-status-missed-pickup,.cfl-status-rejected,.cfl-status.rejected){
 background:#6a292b!important;border-color:#984947!important;color:#ffd7d2!important;-webkit-text-fill-color:#ffd7d2!important
}
.cfl-v2-shell[data-theme="dark"] :is(.cfl-rental-status-return-today,.cfl-rental-status-partially-returned,.cfl-rental-status-partially-fulfilled-and-returned,.cfl-status-pending,.cfl-status-missing){
 background:#5a431d!important;border-color:#876528!important;color:#ffe2a8!important;-webkit-text-fill-color:#ffe2a8!important
}
.cfl-v2-shell[data-theme="dark"] :is(.cfl-rental-status-completed,.cfl-rental-status-completed-partial-fulfillment,.cfl-status-approved,.cfl-status.approved){
 background:#1e5139!important;border-color:#327457!important;color:#c5f7da!important;-webkit-text-fill-color:#c5f7da!important
}
.cfl-v2-shell[data-theme="dark"] :is(.cfl-rental-status-pickup-today,.cfl-rental-status-ready-for-pickup,.cfl-rental-status-active,.cfl-rental-status-partially-picked-up,.cfl-rental-status-active-remaining-closed){
 background:#263f67!important;border-color:#3d5f91!important;color:#d9e8ff!important;-webkit-text-fill-color:#d9e8ff!important
}
.cfl-v2-shell[data-theme="dark"] .cfl-operation-card.is-critical .cfl-count-pill{
 background:#5f2929!important;border-color:#8d4846!important;color:#ffd7d2!important;-webkit-text-fill-color:#ffd7d2!important
}

/* 2.10.1 — semantic success/warning/error surfaces remain meaningful in employee dark mode. */
.cfl-v2-shell[data-theme="dark"] .cfl-positive-empty{
 background:color-mix(in srgb,#2f9b62 14%,var(--cfl-v2-surface,#203047))!important;
 border-color:color-mix(in srgb,#58c486 44%,var(--cfl-v2-line,#344861))!important;
 color:#c9f6da!important;-webkit-text-fill-color:#c9f6da!important
}
.cfl-v2-shell[data-theme="dark"] .cfl-positive-empty:before{
 background:#1f5a3d!important;color:#d7ffe6!important;-webkit-text-fill-color:#d7ffe6!important
}
.cfl-v2-shell[data-theme="dark"] :is(.cfl-portal-notice.success,.cfl-workspace-notice.is-success,.cfl-293-success-notice){
 background:color-mix(in srgb,#2f9b62 14%,var(--cfl-v2-surface,#203047))!important;
 border-color:color-mix(in srgb,#58c486 44%,var(--cfl-v2-line,#344861))!important;
 color:#c9f6da!important;-webkit-text-fill-color:#c9f6da!important
}
.cfl-v2-shell[data-theme="dark"] :is(.cfl-portal-notice.warning,.cfl-callout.warning){
 background:color-mix(in srgb,#d69a2d 15%,var(--cfl-v2-surface,#203047))!important;
 border-color:color-mix(in srgb,#e2ae4f 45%,var(--cfl-v2-line,#344861))!important;
 color:#ffe7b3!important;-webkit-text-fill-color:#ffe7b3!important
}
.cfl-v2-shell[data-theme="dark"] :is(.cfl-portal-notice.error,.cfl-customer-bell-error,.cfl-293-attention-banner){
 background:color-mix(in srgb,var(--cfl-brand-error,#ef6a5c) 14%,var(--cfl-v2-surface,#203047))!important;
 border-color:color-mix(in srgb,var(--cfl-brand-error,#ef6a5c) 48%,var(--cfl-v2-line,#344861))!important;
 color:#ffd7d2!important;-webkit-text-fill-color:#ffd7d2!important
}
