.finance-dashboard{display:grid;gap:16px;margin-bottom:20px;min-width:0}
.finance-dashboard-head{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.finance-dashboard-head h2{font-size:18px;line-height:1.3;margin:0 0 4px;color:var(--text-primary)}
.finance-dashboard-head p,.finance-context{font-size:11px;line-height:1.5;color:var(--text-secondary);margin:0;overflow-wrap:anywhere}
.finance-period{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin:0}
.finance-period .os-field{margin:0;gap:4px;min-width:0;font-size:11px}
.finance-period input{box-sizing:border-box;min-width:0;width:148px;height:44px;min-height:44px;border:1px solid var(--line);background:var(--surface-field);color:var(--text-primary);border-radius:10px;padding:8px 10px;font:inherit}
.finance-period button{display:inline-flex;align-items:center;justify-content:center;margin:0;gap:8px}
.finance-period button .icon{width:18px;height:18px}
.finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-width:0}
.finance-kpi{display:grid;grid-template-columns:24px minmax(0,1fr);gap:6px 8px;align-content:center;min-width:0;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-field)}
.finance-kpi>.icon{width:20px;height:20px;color:var(--text-link)}
.finance-kpi>span{font-size:11px;line-height:1.4;color:var(--text-secondary)}
.finance-kpi>strong{grid-column:1/-1;font-size:20px;line-height:1.3;font-weight:650;color:var(--text-primary);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.finance-kpi.negative>strong{color:var(--text-link)}
.finance-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.finance-analysis{padding:16px;border-radius:16px;min-width:0;border:1px solid var(--line)}
.finance-analysis h3{font-size:14px;line-height:1.4;margin:0 0 10px;color:var(--text-primary)}
.finance-chart{display:block;width:100%;max-height:200px;margin-top:8px}
.finance-chart .incoming{fill:var(--text-link)}.finance-chart .outgoing{fill:var(--text-subtle)}
.finance-chart text{fill:var(--text-secondary);font-size:11px;font-family:inherit}
.finance-chart-max{margin:4px 0 0;text-align:right;font-size:10px;line-height:1.4;color:var(--text-secondary);overflow-wrap:anywhere}
.finance-dashboard-stale .finance-kpis,.finance-dashboard-stale .finance-charts{opacity:.55}
.finance-chart-legend{display:flex;align-items:center;gap:16px;font-size:10px;margin:10px 0 0;color:var(--text-secondary)}
.finance-chart-legend span::before{content:'';display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px;background:var(--text-link)}
.finance-chart-legend .outgoing::before{background:var(--text-subtle)}
.finance-chart-empty{display:grid;place-items:center;min-height:110px;margin:0;font-size:12px;color:var(--text-secondary)}
.finance-aging{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.finance-aging th,.finance-aging td{padding:8px 4px;border-bottom:1px solid var(--line);font-size:11px;line-height:1.5;text-align:left;overflow-wrap:anywhere}
.finance-category-row{position:relative;display:flex;justify-content:space-between;gap:12px;min-width:0;font-size:12px;padding:10px 0 12px;margin-bottom:4px}
.finance-category-row>span:first-child{min-width:0;overflow-wrap:anywhere}.finance-category-row strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.finance-category-bar{position:absolute;bottom:3px;left:0;height:3px;max-width:100%;border-radius:4px;background:var(--text-link);opacity:.55}
.finance-priorities{grid-column:1/-1}
.finance-priority-row{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}
.finance-priority-row:last-child{border:0}.finance-priority-row>div{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}.finance-priority-row small{font-size:11px;line-height:1.4;color:var(--text-secondary)}
.finance-priority-row>strong{font-size:13px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.finance-priority-row .record-row-action{display:grid;place-items:center;margin:0;padding:0;width:44px;height:44px}
.finance-dashboard-module .operations-summary{display:none}
.finance-cycle-preview{font-size:11px;line-height:1.6;color:var(--text-secondary);margin:0;padding:10px 0;border-top:1px solid var(--line)}
.finance-receipts{width:600px}.finance-receipt-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}
.finance-receipt-row>span{min-width:0;overflow-wrap:anywhere}.finance-receipts form{display:grid;gap:12px;margin-top:16px}
.finance-receipts label{display:grid;gap:6px;font-size:12px}.finance-receipts label small{color:var(--text-secondary);font-size:11px}
.finance-dialog input[type=file],.finance-receipts input[type=file]{max-width:100%;width:100%;box-sizing:border-box;min-width:0;font-size:12px;color:var(--text-secondary)}
.finance-dialog input[type=file]::file-selector-button,.finance-receipts input[type=file]::file-selector-button{background:var(--surface-field);color:var(--text-primary);border:1px solid var(--line);border-radius:10px;padding:10px;margin-right:8px;min-height:44px;cursor:pointer}
@media(max-width:1000px){.finance-kpi>strong{font-size:18px}.finance-period{width:100%}}
@media(max-width:800px){.finance-charts{grid-template-columns:minmax(0,1fr)}.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-priorities{grid-column:1}.finance-kpi{padding:12px}}
@media(max-width:600px){.finance-dashboard{gap:12px}.finance-dashboard-head h2{font-size:16px}.finance-period{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.finance-period input{width:100%}.finance-period button{grid-column:1/-1}.finance-analysis{padding:12px}.finance-kpi{padding:10px;gap:4px 6px}.finance-kpi>strong{font-size:16px}.finance-priority-row{gap:8px;grid-template-columns:minmax(0,1fr) 44px}.finance-priority-row>strong{grid-column:1;grid-row:2}.finance-priority-row>button{grid-column:2;grid-row:1/3}}

.finance-payment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-inline);margin:0;padding-block:var(--space-inline);border-block:1px solid var(--line)}
.finance-payment-summary div{min-width:0}.finance-payment-summary dt{font-size:var(--type-meta);color:var(--text-secondary)}.finance-payment-summary dd{margin:var(--space-inline) 0 0;font-size:var(--type-body);font-weight:600;overflow-wrap:anywhere}.finance-payment-summary div:last-child dd{color:var(--text-link)}
.finance-settlement{padding-block:var(--space-fields);border-bottom:1px solid var(--line);display:grid;gap:var(--space-inline)}.finance-settlement-head{display:flex;justify-content:space-between;gap:var(--space-inline)}.finance-settlement p{margin:0;overflow-wrap:anywhere}.finance-history-description{overflow-wrap:anywhere}.finance-receipts form{display:grid;gap:var(--space-inline);padding-top:var(--space-fields)}
@media(max-width:360px){.finance-payment-summary{grid-template-columns:1fr}.finance-payment-summary div{display:flex;justify-content:space-between;gap:var(--space-inline)}.finance-payment-summary dd{margin:0}}

/* Finance workspace: one task per tab, with charts that keep a readable scale. */
.finance-dashboard{gap:var(--space-section);margin-bottom:0}.finance-tab-panel{min-width:0;display:grid;gap:var(--space-section)}
.finance-dashboard [hidden]{display:none!important}.finance-entries{display:block}.finance-entries .listing-control-bar{margin-bottom:var(--space-section)}
.finance-dashboard-head{align-items:center}.finance-dashboard-head h2{font-size:var(--type-section-title);margin:0 0 4px}.finance-dashboard-head p{font-size:var(--type-meta)}
.finance-workspace-actions{display:flex;align-items:end;gap:var(--space-fields);flex-wrap:wrap}.finance-workspace-actions>.customer-new{margin:0;width:auto;font-size:var(--type-action)}
.finance-period{width:auto;gap:var(--space-inline)}.finance-period input{width:136px;font-size:var(--type-control)}
.finance-tabs.app-tabs{overflow:visible}.finance-tabs.app-tabs>button{gap:var(--space-inline);font-size:var(--type-action);min-width:0}.finance-tabs .icon{width:18px;height:18px;flex-shrink:0}
.finance-kpis{gap:var(--space-fields)}.finance-kpi{padding:var(--space-fields);gap:4px var(--space-inline);background:var(--surface-glass)}.finance-kpi>strong{font-size:var(--type-dialog-title)}.finance-kpi>span{font-size:var(--type-meta)}.finance-kpi.negative>strong{color:var(--text-error)}
.finance-overview-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:var(--space-fields);align-items:start}
.finance-analysis{padding:var(--space-panel);background:var(--surface-glass)}.finance-analysis h3{font-size:var(--type-section-title)}
.finance-priorities{grid-column:auto;position:relative}.finance-priorities>h3{padding-right:100px;min-height:44px;display:flex;align-items:center;margin-bottom:var(--space-inline)}
.finance-priorities>button{position:absolute;right:var(--space-panel);top:var(--space-panel);font-size:var(--type-action)}
.finance-priority-row{grid-template-columns:minmax(0,1fr) 44px;gap:var(--space-inline);padding:var(--space-inline) 0;font-size:var(--type-body)}
.finance-priority-row>strong{grid-column:1;grid-row:2;font-size:var(--type-body)}.finance-priority-row>button{grid-column:2;grid-row:1/3}.finance-priority-row>div>strong{font-weight:500;font-size:var(--type-body)}.finance-priority-row small{font-size:var(--type-meta)}
.finance-chart-heading{display:flex;justify-content:space-between;align-items:start;gap:var(--space-fields)}.finance-chart-heading h3{margin:0 0 4px}.finance-chart-heading>div{min-width:0}.finance-chart-heading p{font-size:var(--type-meta)}
.finance-group-label{display:grid;gap:4px;flex:0 0 auto;font-size:var(--type-meta);color:var(--text-secondary)}
.finance-group-label select{box-sizing:border-box;min-height:var(--control-target);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field);color:var(--text-primary);padding:var(--action-padding-block) var(--action-padding-inline);font:inherit;font-size:var(--type-control);max-width:100%}
.finance-chart-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-inline);margin:var(--space-section) 0;padding-bottom:var(--space-fields);border-bottom:1px solid var(--line)}
.finance-chart-totals>div{display:grid;gap:4px;min-width:0}.finance-chart-totals span{font-size:var(--type-meta);color:var(--text-secondary)}.finance-chart-totals strong{font-size:var(--type-section-title);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.finance-chart-totals .incoming span::before,.finance-chart-totals .outgoing span::before{content:'';display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:var(--text-success)}.finance-chart-totals .outgoing span::before{background:var(--text-error)}
.finance-chart-viewport{min-width:0}.finance-chart{max-height:none;width:100%;display:block;margin:0;touch-action:pan-y;outline-offset:2px;border-radius:4px}
.finance-chart:focus-visible,.finance-group-label select:focus-visible{outline:2px solid var(--text-link)}
.finance-chart text{font-size:var(--type-meta);fill:var(--text-subtle)}.finance-gridline{stroke:var(--line);stroke-dasharray:3 5;stroke-width:1}.finance-chart .incoming{fill:var(--text-success)}.finance-chart .outgoing{fill:var(--text-error)}
.finance-chart .finance-area{opacity:.08}.finance-chart .finance-line{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.finance-chart .finance-line.incoming{stroke:var(--text-success)}.finance-chart .finance-line.outgoing{stroke:var(--text-error);stroke-dasharray:6 4}
.finance-dot{stroke:var(--surface-field);stroke-width:2}.finance-cursor{stroke:var(--text-subtle);stroke-dasharray:3 3;stroke-width:1}.finance-chart .finance-bar{opacity:.85}
.finance-chart-readout{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:var(--space-inline);align-items:center;border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field);margin-top:var(--space-inline);padding:4px}
.finance-chart-readout>div{min-width:0;display:grid;gap:4px}.finance-chart-readout strong{font-size:var(--type-meta);font-weight:600}.finance-chart-readout span{font-size:var(--type-meta);color:var(--text-secondary);overflow-wrap:anywhere}.finance-chart-readout button{width:44px;height:44px;margin:0;padding:0;box-shadow:none;border:0;background:transparent}.finance-chart-readout .icon{width:18px;height:18px}
.finance-forecast{grid-column:1/-1}.finance-category-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-inline);padding:var(--space-fields) 0;margin:0;font-size:var(--type-body)}.finance-category-row>small{font-size:var(--type-meta);color:var(--text-secondary)}
.finance-category-track{height:8px;align-self:center;overflow:hidden;border-radius:8px;background:var(--surface-hover)}.finance-category-bar{display:block;position:static;height:100%;max-width:100%;border-radius:inherit;background:var(--text-link);opacity:.75}
.finance-scope-note{font-size:var(--type-meta)}
@media(max-width:1100px){.finance-overview-grid{grid-template-columns:minmax(0,1fr)}.finance-priority-row{grid-template-columns:minmax(0,1fr) auto 44px}.finance-priority-row>strong{grid-row:auto;grid-column:auto}.finance-priority-row>button{grid-column:auto;grid-row:auto}}
@media(max-width:700px){.finance-workspace-actions{width:100%;justify-content:space-between}.finance-period{flex:1;display:flex;flex-wrap:wrap;gap:var(--space-inline);align-items:end}.finance-period .os-field{flex:1;min-width:90px}.finance-period input{width:100%}.finance-period button{width:44px;height:44px;flex:0 0 44px}.finance-period button span{display:none}.finance-workspace-actions>.customer-new{flex:1 0 100%}.finance-tabs.app-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.finance-tabs.app-tabs>button{white-space:normal;padding:var(--action-padding-block) 4px;gap:5px}.finance-tabs .icon{display:none}.finance-chart-heading{gap:var(--space-inline)}.finance-chart-heading>div{flex:1}.finance-group-label select{max-width:85px;padding-inline:var(--space-inline)}.finance-chart-totals strong{font-size:var(--type-body)}.finance-priority-row{grid-template-columns:minmax(0,1fr) 44px}.finance-priority-row>strong{grid-column:1;grid-row:2}.finance-priority-row>button{grid-column:2;grid-row:1/3}.finance-priorities>h3{padding-right:105px}}

.finance-chart-readout>button:first-child .icon{transform:rotate(180deg)}

.finance-dashboard-stale .finance-overview-grid{opacity:.55}

/* Ledger: native table on desktop, the existing card content on mobile. */
.finance-ledger-scroll{min-width:0;max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface-glass)}
.finance-ledger-scroll:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}
.finance-ledger{width:100%;border-collapse:collapse;text-align:left;font-size:var(--type-body)}
.finance-ledger-caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.finance-ledger th{padding:var(--space-fields);font-size:var(--type-label);font-weight:500;color:var(--text-secondary);background:var(--surface-field);border-bottom:1px solid var(--line);white-space:nowrap}
.finance-ledger .finance-ledger-row{display:table-row;background:transparent;border:0;border-radius:0;padding:0}
.finance-ledger td{padding:var(--space-inline) var(--space-fields);vertical-align:middle;border-bottom:1px solid var(--line)}
.finance-ledger tr:last-child td{border-bottom:0}.finance-ledger-row:hover{background:var(--surface-hover)}
.finance-ledger .finance-column-entry{min-width:190px;width:100%}.finance-ledger .operations-copy{gap:4px;min-width:0}
.finance-ledger .finance-entry-title{font-size:var(--type-body);font-weight:600;line-height:1.4}
.finance-desktop-detail{display:grid;gap:3px}.finance-ledger .operations-copy small{font-size:var(--type-meta);line-height:1.4;color:var(--text-secondary)}
.finance-ledger .finance-mobile-detail{display:none}.finance-ledger .finance-entry-meta{color:var(--text-subtle)}
.finance-ledger .finance-column-due{white-space:nowrap;font-size:var(--type-body)}
.finance-ledger :is(.finance-column-amount,.finance-column-remaining){text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.finance-ledger td>strong{font-size:var(--type-body);font-weight:600}.finance-ledger td>small{display:block;font-size:var(--type-meta);color:var(--text-secondary);margin-top:4px}
.finance-ledger .finance-column-status{white-space:nowrap}.finance-status{display:inline-flex;align-items:center;min-height:24px;padding:3px 7px;border-radius:7px;font-size:var(--type-meta);line-height:1.4;background:var(--surface-hover);color:var(--text-secondary)}
.finance-status[data-state=paid]{background:var(--surface-success);color:var(--text-success)}.finance-status[data-state=partial]{background:var(--surface-warning);color:var(--text-warning)}
.finance-ledger .finance-column-actions{text-align:right}.finance-ledger .operations-actions.listing-row-actions{width:max-content;margin-left:auto}
@media(max-width:700px){
 .finance-ledger-scroll{border:0;background:transparent;box-shadow:none;overflow:visible;border-radius:0}
 .finance-ledger,.finance-ledger tbody{display:block;width:100%;min-width:0}.finance-ledger tbody{display:grid;gap:var(--space-inline)}
 .finance-ledger thead{display:none}.finance-ledger .finance-ledger-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-fields);padding:var(--space-fields);border:1px solid var(--line);border-radius:14px;background:var(--surface-field)}
 .finance-ledger td{padding:0;border:0}.finance-ledger .finance-column-entry{min-width:0;width:auto}
 .finance-ledger td:is(.finance-column-due,.finance-column-amount,.finance-column-remaining,.finance-column-status){display:none}
 .finance-ledger .finance-mobile-detail{display:block}.finance-ledger .finance-desktop-detail{display:none}.finance-ledger .operations-copy small{font-size:var(--type-meta)}
 .finance-ledger .operations-actions.listing-row-actions{width:100%}.finance-ledger .finance-column-actions{min-width:0}
}

.finance-tabs.app-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-analyses{display:grid;gap:var(--space-section)}.finance-section-heading{font-size:var(--type-section-title);color:var(--text-secondary);margin:var(--space-inline) 0 0}
.finance-sort-button{min-width:var(--control-target);display:inline-flex;align-items:center;gap:var(--space-inline);min-height:var(--control-target);padding:var(--action-padding-block) 0;margin:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;white-space:nowrap}
.finance-ledger th:has(.finance-sort-button){padding-block:0}.finance-sort-button:hover{color:var(--text-link)}.finance-sort-button:active{color:var(--text-primary)}.finance-sort-button:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}.finance-sort-indicator{color:var(--text-subtle)}.finance-ledger th[aria-sort]:not([aria-sort=none]) .finance-sort-button{color:var(--text-link);font-weight:600}
.finance-mobile-sort{display:none}.finance-category-field{display:grid;gap:var(--space-inline);min-width:0}.finance-category-field>label{display:grid;gap:6px}.finance-category-field [hidden]{display:none!important}.finance-category-field select,.finance-mobile-sort select{width:100%;box-sizing:border-box;min-width:0;min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field);color:var(--text-primary);font:inherit;font-size:var(--type-control)}
.finance-category-field select:focus-visible,.finance-mobile-sort select:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}
@media(max-width:700px){.finance-mobile-sort{display:block;margin-bottom:var(--space-fields)}.finance-mobile-sort label{display:grid;gap:4px;font-size:var(--type-label);color:var(--text-secondary)}}

.finance-overview-grid{align-items:stretch}.finance-overview-grid>.finance-analysis{box-sizing:border-box;min-width:0}
.finance-counterparty-field{display:grid;grid-template-columns:minmax(0,1fr) var(--control-target);gap:var(--space-inline);align-items:end;min-width:0}.finance-counterparty-field>label{display:grid;gap:6px;margin:0;min-width:0}.finance-counterparty-field input{width:100%;box-sizing:border-box;min-width:0}.finance-counterparty-trigger{width:44px;height:44px;min-height:44px;min-width:44px;padding:0;margin:0;display:grid;place-items:center}.finance-counterparty-trigger .icon{width:18px;height:18px}.finance-counterparty-trigger[hidden]{display:none!important}.finance-counterparty-field:has(.finance-counterparty-trigger[hidden]){grid-template-columns:minmax(0,1fr)}
.finance-contact-picker{width:560px}.finance-contact-picker .app-tabs{margin-bottom:var(--space-fields)}.finance-contact-results{display:grid;gap:var(--space-inline);padding-block:var(--space-inline)}.finance-contact-option{display:grid;gap:4px;text-align:left;min-height:var(--control-target);width:100%;margin:0;padding:var(--action-padding-block) var(--action-padding-inline);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field);color:var(--text-primary);font:inherit}.finance-contact-option strong{font-size:var(--type-body);font-weight:500;overflow-wrap:anywhere}.finance-contact-option small{font-size:var(--type-meta);color:var(--text-secondary)}.finance-contact-option:hover{background:var(--surface-hover)}.finance-contact-option:active{background:var(--surface-pressed)}.finance-contact-option:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}.finance-contact-picker .customer-pagination[hidden]{display:none!important}

.finance-priorities>h3{align-items:flex-start}

:root body.in-workspace .finance-contact-picker .customer-pagination.listing-pagination>button{width:44px;min-width:44px;height:44px;min-height:44px;font-size:var(--type-action);padding:var(--action-padding-block);gap:0;flex-shrink:0}
.finance-contact-picker .customer-pagination.listing-pagination>button>svg{width:18px;height:18px;flex-shrink:0}

/* Credit metrics reuse the finance workspace and compact controls. */
.finance-dashboard:has(.finance-cards) .finance-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
.finance-card-metrics,.finance-card-results{display:grid;gap:var(--space-section);min-width:0}
.finance-card-metrics [hidden]{display:none!important}
.finance-card-heading h3{font-size:var(--type-section-title);margin:0 0 4px;color:var(--text-primary)}
.finance-card-filters{display:grid;grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) minmax(160px,2fr) minmax(130px,1fr) auto;gap:var(--space-inline);align-items:end;margin:0;min-width:0}
.finance-card-filters .os-field{display:grid;gap:var(--space-inline);margin:0;min-width:0;font-size:var(--type-label);color:var(--text-secondary)}
.finance-card-filters :is(input,select){box-sizing:border-box;width:100%;min-width:0;min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field);color:var(--text-primary);font:inherit;font-size:var(--type-control)}
.finance-card-filters :is(input,select):focus-visible{outline:2px solid var(--text-link);outline-offset:2px}
.finance-card-filters>button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-inline);margin:0;min-height:var(--control-target)}
.finance-card-filters .icon{width:18px;height:18px;flex-shrink:0}
.finance-card-metrics>.feedback,.finance-card-metrics>p{margin:0}.finance-card-metrics>p:empty{display:none}
.finance-card-kpi{grid-template-columns:minmax(0,1fr)}
.finance-card-details{display:grid;gap:var(--space-inline);padding-block:var(--space-fields);border-block:1px solid var(--line);min-width:0}
.finance-card-detail{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:var(--space-inline);font-size:var(--type-body);overflow-wrap:anywhere}
.finance-card-detail>strong{text-align:right;font-variant-numeric:tabular-nums;max-width:100%}
.finance-card-warning{margin:0;font-size:var(--type-meta);line-height:1.5;color:var(--text-warning);padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-warning);overflow-wrap:anywhere}
.finance-card-sources{display:grid;gap:var(--space-fields);min-width:0}.finance-card-sources h4{font-size:var(--type-section-title);margin:0}
.finance-card-source{padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-glass);min-width:0}
.finance-card-source>strong{font-size:var(--type-body)}.finance-card-source dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-inline);margin:var(--space-inline) 0 0}
.finance-card-source dl>div{min-width:0}.finance-card-source dt{font-size:var(--type-meta);color:var(--text-secondary)}.finance-card-source dd{margin:4px 0 0;font-size:var(--type-body);font-weight:600;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
@media(max-width:700px){.finance-card-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-card-filters>button{grid-column:1/-1}.finance-card-source dl{grid-template-columns:repeat(2,minmax(0,1fr))}}

.finance-card-origin-refunds{margin-top:var(--space-inline)}

.finance-cost-review{display:grid;gap:var(--space-fields);min-width:0}.finance-cost-review h3{margin:0;font-size:var(--type-section-title)}
.finance-cost-item{display:grid;gap:var(--space-inline);border-top:1px solid var(--line);padding-block:var(--space-fields);min-width:0}.finance-cost-item p{margin:0;overflow-wrap:anywhere}
.finance-cost-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-inline);min-width:0}.finance-cost-form .os-field{display:grid;gap:var(--space-inline);min-width:0;margin:0;font-size:var(--type-label)}
.finance-cost-form input{box-sizing:border-box;width:100%;min-width:0;min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field);color:var(--text-primary);font:inherit;font-size:var(--type-control)}
.finance-cost-form input:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}.finance-cost-form>.os-field:nth-child(3),.finance-cost-form>.feedback{grid-column:1/-1}.finance-cost-form>.glass-button{grid-column:1/-1;justify-self:end;margin:0}
.finance-card-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-inline);flex-wrap:wrap}.finance-card-heading>.glass-button{margin:0}.finance-cost-review .customer-pagination[hidden]{display:none}
@supports(-webkit-touch-callout:none){.finance-cost-form input{font-size:max(16px,var(--type-control))}}
@media(max-width:360px){.finance-cost-form{grid-template-columns:minmax(0,1fr)}}

.finance-cost-heading>strong{text-align:left}.finance-cost-heading>span{text-align:right;font-size:var(--type-meta);color:var(--text-secondary)}.finance-cost-expand{justify-self:end;margin:0}.finance-cost-form[hidden]{display:none}

.finance-cost-heading{align-items:center}.finance-cost-heading.has-action{grid-template-columns:minmax(0,1fr) auto var(--control-target)}.finance-cost-heading .finance-cost-expand{width:var(--control-target);min-width:var(--control-target);min-height:var(--control-target);padding:var(--action-padding-block);display:inline-flex;align-items:center;justify-content:center}.finance-cost-heading .icon{width:18px;height:18px}

.finance-cost-heading .finance-cost-share{width:var(--control-target);min-width:var(--control-target);min-height:var(--control-target);padding:var(--action-padding-block);margin:0;display:inline-flex;align-items:center;justify-content:center}

.finance-dashboard-head[hidden]{display:none}

@media(min-width:701px) and (max-width:1050px){.finance-card-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-card-filters>button{grid-column:1/-1}}

.finance-card-actions{display:flex;flex-wrap:wrap;gap:var(--space-inline);align-items:center;min-width:0}.finance-card-actions>button{margin:0;min-height:var(--control-target);min-width:var(--control-target)}

/* Operational metrics share the financial compact surfaces and rhythm. */
.finance-metric-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3,12px);margin-block:var(--space-3,12px)}
.finance-metric-panel{min-width:0;padding:var(--space-3,12px);border:1px solid var(--line);border-radius:var(--action-radius,12px);background:var(--surface-field)}
.finance-metric-panel h4{font-size:var(--type-section-title);margin:0 0 8px;line-height:1.4}
.finance-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3,12px)}
.finance-metric-grid>div{display:flex;flex-direction:column;gap:4px;min-width:0}.finance-metric-grid small{color:var(--text-secondary);font-size:var(--type-caption)}
.finance-metric-grid strong{font-size:var(--type-body);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.finance-pos-results>.finance-metric-panel{margin-block:12px}.finance-metric-bar-row{padding-block:8px;border-bottom:1px solid var(--line)}
.finance-metric-bar-label{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:var(--type-body)}
.finance-metric-track{height:6px;border-radius:8px;background:var(--surface-hover);overflow:hidden;margin-block:8px}.finance-metric-track>span{display:block;height:100%;background:var(--accent);border-radius:inherit}
.finance-metric-panel summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:var(--type-control);border-radius:var(--action-radius)}.finance-metric-panel summary:hover{background:var(--surface-hover)}.finance-metric-panel summary:active{background:var(--surface-pressed)}
.finance-metric-table-scroll{max-height:320px;overflow:auto;scrollbar-color:var(--scroll-thumb) transparent}.finance-metric-table-scroll table{min-width:320px;width:100%}.finance-metric-table-scroll td{font-variant-numeric:tabular-nums}
.finance-pos-filters{grid-template-columns:repeat(2,minmax(0,1fr)) minmax(140px,1fr) auto}
@media(max-width:700px){.finance-metric-panels{grid-template-columns:minmax(0,1fr)}.finance-pos-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-metric-panel{padding:var(--space-2,8px)}}

.finance-pos-results>.finance-kpis>.finance-metric{display:flex;flex-direction:column;justify-content:center;gap:8px;min-width:0;padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius,12px);background:var(--surface-glass)}
.finance-pos-results>.finance-kpis>.finance-metric>small{font-size:var(--type-meta);color:var(--text-secondary)}.finance-pos-results>.finance-kpis>.finance-metric>strong{font-size:var(--type-dialog-title);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.finance-pos{min-width:0}.finance-pos-metrics,.finance-pos-results{display:grid;gap:var(--space-section);min-width:0;max-width:100%}.finance-pos-metrics [hidden]{display:none!important}.finance-pos-metrics>.feedback{margin:0}.finance-metric-table-scroll{min-width:0;max-width:100%}

.finance-refund-track>span{background:var(--text-error)}

.finance-pos-results>.finance-metric-panel,.finance-pos-results>.finance-metric-panels{margin-block:0}
/* Financial analytics: scoped visual hierarchy, real SVG plots and readable compact controls. */
.finance-viz-main-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:var(--space-section);min-width:0;align-items:stretch}
.finance-viz-secondary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-section);min-width:0}
.finance-metric-panel.finance-viz-panel{display:flex;flex-direction:column;gap:var(--space-fields);padding:var(--space-section);border-radius:16px;background:var(--surface-field);box-shadow:0 4px 18px #00000003;margin:0}
.finance-viz-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-fields);min-width:0}.finance-viz-heading>div{min-width:0}
.finance-viz-heading h4{margin:3px 0 0;font-size:var(--type-section-title);font-weight:650;line-height:1.4;letter-spacing:-.15px}
.finance-viz-eyebrow{font-size:var(--type-eyebrow);font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}
.finance-viz-heading .finance-context{margin-top:4px}
.finance-kpis.finance-viz-kpis{gap:var(--space-fields)}
.finance-kpi.finance-viz-kpi{display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-inline);padding:var(--space-section);border-radius:14px;background:var(--surface-field);position:relative;box-shadow:0 4px 18px #00000003}
.finance-viz-kpi-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.finance-viz-kpi-top>span:first-child{font-size:var(--type-label);color:var(--text-secondary);min-width:0}
.finance-viz-kpi .finance-viz-kpi-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;flex:none;background:var(--surface-hover);color:var(--text-secondary)}.finance-viz-kpi-icon .icon{width:16px;height:16px}
.finance-viz-kpi>strong{font-size:var(--type-dialog-title);letter-spacing:-.3px;line-height:1.3;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.finance-viz-kpi.tone-primary{border-color:color-mix(in srgb,var(--text-success) 35%,var(--line));background:linear-gradient(130deg,color-mix(in srgb,var(--text-success) 7%,var(--surface-field)),var(--surface-field))}.finance-viz-kpi.tone-primary>strong{color:var(--text-success)}
.finance-viz-kpi.tone-income .finance-viz-kpi-icon{color:var(--text-success);background:color-mix(in srgb,var(--text-success) 9%,transparent)}.finance-viz-kpi.tone-refund .finance-viz-kpi-icon{color:var(--text-error);background:color-mix(in srgb,var(--text-error) 8%,transparent)}
.finance-viz-segments{display:flex;gap:4px;border:1px solid var(--line);padding:3px;border-radius:10px;background:var(--surface-hover);flex:none}.finance-viz-segments button{margin:0;border:0;border-radius:7px;background:transparent;box-shadow:none;min-width:44px;min-height:44px;padding:8px;font-family:inherit;font-size:var(--type-action);font-weight:500;color:var(--text-secondary)}
.finance-viz-segments button[aria-pressed=true]{background:var(--surface-field);color:var(--text-primary);box-shadow:0 1px 4px #0000000c}.finance-viz-segments button:hover{background:var(--surface-hover)}.finance-viz-segments button:active{background:var(--surface-pressed)}
.finance-viz-legend{display:flex;gap:12px;flex-wrap:wrap;align-items:center;min-height:24px;font-size:var(--type-meta);color:var(--text-secondary)}.finance-viz-legend>span,.finance-viz-readout span{display:inline-flex;align-items:center;gap:6px}
.finance-viz-legend i,.finance-viz-readout i,.finance-viz-donut-item>i{width:7px;height:7px;border-radius:50%;flex:none}
.finance-viz-plot{min-width:0;width:100%;margin-top:auto}.finance-viz-svg{display:block;width:100%;height:254px;touch-action:pan-y;border-radius:6px;outline-offset:3px;overflow:visible}
.finance-viz-svg text{font-family:inherit;font-size:var(--type-meta);fill:var(--text-secondary)}.finance-viz-svg .finance-viz-gridline{stroke:var(--line);stroke-width:1;stroke-dasharray:3 5}.finance-viz-svg .finance-viz-cursor{stroke:var(--text-subtle);stroke-width:1;stroke-dasharray:3 4;opacity:.55}.finance-viz-point{stroke:var(--surface-field);stroke-width:2}
.finance-viz-inspector{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;padding-top:8px;border-top:1px solid var(--line);min-height:68px}.finance-viz-inspector[hidden]{display:none}
.finance-viz-arrow{display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;margin:0;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface-field);box-shadow:none;color:var(--text-secondary)}.finance-viz-arrow:first-child .icon{transform:rotate(180deg)}.finance-viz-arrow .icon{width:16px;height:16px}.finance-viz-arrow:hover{background:var(--surface-hover)}.finance-viz-arrow:active{background:var(--surface-pressed)}.finance-viz-arrow:disabled{opacity:.35;cursor:default}
.finance-viz-readout{min-width:0;display:grid;gap:5px}.finance-viz-readout>strong{font-size:var(--type-meta);font-weight:600;color:var(--text-primary)}.finance-viz-readout>div{display:flex;gap:5px 12px;flex-wrap:wrap}.finance-viz-readout span{font-size:var(--type-meta);font-variant-numeric:tabular-nums;color:var(--text-secondary)}
.finance-viz-donut-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-fields);min-width:0;margin-block:auto}
.finance-viz-donut-stage{position:relative;width:200px;max-width:100%;margin:auto;aspect-ratio:1}.finance-viz-donut-stage svg{display:block;width:100%;height:100%}.finance-viz-ring{stroke:var(--surface-hover)}
.finance-viz-donut-center{position:absolute;inset:30%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:4px;pointer-events:none}.finance-viz-donut-center small{font-size:var(--type-meta);color:var(--text-secondary)}.finance-viz-donut-center strong{font-size:var(--type-dialog-title);letter-spacing:-.4px;line-height:1.3;white-space:nowrap;font-variant-numeric:tabular-nums}
.finance-viz-donut-legend{display:grid;gap:4px;min-width:0}.finance-viz-donut-item{display:grid;grid-template-columns:8px minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:44px;min-width:44px;padding:8px;margin:0;border:1px solid transparent;border-radius:10px;background:transparent;box-shadow:none;text-align:left;font-family:inherit;color:var(--text-primary);font-size:var(--type-action)}
.finance-viz-donut-item>span{min-width:0;overflow-wrap:anywhere}.finance-viz-donut-item strong{font-size:var(--type-action);font-weight:600;font-variant-numeric:tabular-nums}.finance-viz-donut-item small{font-size:var(--type-meta);color:var(--text-secondary);min-width:32px;text-align:right}.finance-viz-donut-item:hover{background:var(--surface-hover)}.finance-viz-donut-item:active{background:var(--surface-pressed)}.finance-viz-donut-item[aria-pressed=true]{border-color:var(--line);background:var(--surface-hover)}
.finance-viz-cancellations .finance-viz-donut-layout{grid-template-columns:180px minmax(0,1fr);align-items:center}.finance-viz-cancellations .finance-viz-donut-stage{width:180px}
.finance-viz-inline-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-top:1px solid var(--line);padding-top:12px}.finance-viz-inline-stats>div{display:flex;flex-direction:column;gap:6px;min-width:0}.finance-viz-inline-stats small{font-size:var(--type-meta);color:var(--text-secondary)}.finance-viz-inline-stats strong{font-size:var(--type-section-title);font-variant-numeric:tabular-nums}
.finance-viz-operations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-section) var(--space-fields);margin-block:auto}.finance-viz-operations>div{display:flex;gap:10px;align-items:center;min-width:0;padding-block:8px}.finance-viz-stat-icon{display:grid;place-items:center;width:32px;height:32px;flex:none;background:var(--surface-hover);border-radius:9px;color:var(--text-secondary)}.finance-viz-stat-icon .icon{width:16px;height:16px}.finance-viz-operations>div>div{display:flex;flex-direction:column;gap:6px;min-width:0}.finance-viz-operations small{font-size:var(--type-meta);color:var(--text-secondary)}.finance-viz-operations strong{font-size:var(--type-section-title);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.finance-viz-data,.finance-viz-notes{min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--surface-field);padding:0 12px}.finance-viz-data>summary,.finance-viz-notes>summary{display:flex;align-items:center;gap:8px;min-height:44px;padding-block:8px;cursor:pointer;font-size:var(--type-action);color:var(--text-secondary)}.finance-viz-data>summary::after,.finance-viz-notes>summary::after{content:'+';font-size:var(--type-section-title);margin-left:auto}.finance-viz-data[open]>summary::after,.finance-viz-notes[open]>summary::after{content:'−'}.finance-viz-notes>p{margin:0 0 12px;max-width:100ch}.finance-viz-data>summary:hover,.finance-viz-notes>summary:hover{color:var(--text-primary);background:var(--surface-hover)}
.finance-viz-fee-values{display:grid;grid-template-columns:1fr 1fr;gap:12px}.finance-viz-fee-values>div{display:grid;gap:7px;min-width:0}.finance-viz-fee-values small{font-size:var(--type-meta);color:var(--text-secondary)}.finance-viz-fee-values strong{font-size:var(--type-dialog-title);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.finance-viz-fee-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:10px;font-size:var(--type-meta);color:var(--text-secondary)}.finance-viz-fee-footer strong{font-size:var(--type-body);color:var(--text-primary);font-variant-numeric:tabular-nums}
.finance-viz-badge{font-size:var(--type-meta);font-weight:500;padding:5px 8px;background:var(--surface-hover);border:1px solid var(--line);border-radius:20px;white-space:nowrap;color:var(--text-secondary)}.finance-viz-badge.is-warning{color:var(--text-warning);background:color-mix(in srgb,var(--text-warning) 8%,transparent);border-color:color-mix(in srgb,var(--text-warning) 18%,transparent)}
.finance-card-details.finance-viz-balance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;padding:0;border:0}.finance-viz-balance .finance-card-detail{padding-block:10px;border-bottom:1px solid var(--line);align-items:center}.finance-viz-balance .finance-card-detail:first-child{grid-column:1/-1;background:var(--surface-hover);padding:12px;border:0;border-radius:10px}.finance-viz-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-fields)}.finance-viz-sources .finance-card-source{margin:0}.finance-viz-sources .finance-card-source dl{grid-template-columns:repeat(2,minmax(0,1fr))}
.finance-pos-metrics>.finance-card-filters,.finance-card-metrics>.finance-card-filters{padding:var(--space-fields);border:1px solid var(--line);border-radius:14px;background:var(--surface-glass)}
@media(max-width:1100px){.finance-viz-main-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.finance-viz-cancellations .finance-viz-donut-layout{grid-template-columns:minmax(0,1fr)}.finance-viz-cancellations .finance-viz-donut-stage{width:160px}}
@media(max-width:800px){.finance-viz-main-grid,.finance-viz-secondary-grid,.finance-viz-source-grid{grid-template-columns:minmax(0,1fr)}.finance-viz-main-grid>.finance-viz-panel:last-child .finance-viz-donut-layout{grid-template-columns:180px minmax(0,1fr);align-items:center}.finance-viz-heading{flex-wrap:wrap}.finance-viz-cancellations .finance-viz-donut-layout{grid-template-columns:160px minmax(0,1fr)}.finance-card-details.finance-viz-balance{grid-template-columns:minmax(0,1fr)}}
@media(max-width:480px){.finance-metric-panel.finance-viz-panel,.finance-kpi.finance-viz-kpi{padding:var(--space-fields)}.finance-viz-main-grid>.finance-viz-panel:last-child .finance-viz-donut-layout,.finance-viz-cancellations .finance-viz-donut-layout{grid-template-columns:minmax(0,1fr)}.finance-viz-donut-stage{width:180px}.finance-viz-cancellations .finance-viz-donut-stage{width:160px}.finance-viz-kpi .finance-viz-kpi-icon{display:none}.finance-viz-kpi>strong{font-size:var(--type-dialog-title)}.finance-viz-inline-stats{gap:8px}.finance-viz-heading{gap:8px}.finance-viz-segments{margin-left:auto}.finance-viz-operations{gap:8px}.finance-viz-stat-icon{width:28px;height:28px}.finance-viz-readout>div{gap:4px}.finance-viz-inspector{gap:6px}.finance-viz-donut-item{padding-inline:4px}}

.finance-viz-arrow{font-family:inherit;font-size:var(--type-action)}
.finance-viz-donut-center{inset:22%}.finance-viz-donut-center strong{white-space:nowrap}

.finance-viz-donut-item .finance-viz-method-note{display:block;text-align:left;margin-top:4px;white-space:normal;min-width:0}

.finance-viz-panel :is(button,summary,svg[tabindex]):focus-visible,.finance-viz-data>summary:focus-visible,.finance-viz-notes>summary:focus-visible{outline:2px solid var(--text-link);outline-offset:3px}

/* Always-visible companion panels at the end of the financial dashboards. */
.finance-viz-footer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-fields);align-items:stretch;min-width:0}
.finance-viz-footer-grid>.finance-viz-panel{margin:0;padding:var(--space-fields);background:var(--surface-field)}
.finance-viz-footer-grid .finance-viz-heading{padding-bottom:var(--space-inline);border-bottom:1px solid var(--line)}
.finance-viz-guidance{display:grid;gap:0;min-width:0}
.finance-viz-guidance-item{display:flex;gap:var(--space-inline);align-items:flex-start;padding-block:var(--space-inline);min-width:0}
.finance-viz-guidance-item+div{border-top:1px solid var(--line)}
.finance-viz-guidance-item p{margin:0;line-height:1.6;overflow-wrap:anywhere}
.finance-viz-guidance-item .finance-viz-stat-icon{width:28px;height:28px;border-radius:8px}
.finance-viz-footer-grid .finance-viz-source-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-fields)}
.finance-viz-footer-grid .finance-card-source{background:transparent;border:1px solid var(--line);border-radius:var(--action-radius);box-shadow:none;padding:var(--space-fields)}
.finance-viz-footer-grid .finance-card-source>strong{display:block;font-size:var(--type-body)}
.finance-viz-data .finance-metric-table-scroll{max-height:320px}
.finance-viz-data .finance-aging{margin:0;min-width:0;table-layout:fixed}
.finance-viz-data .finance-aging :is(td,th){overflow-wrap:anywhere;padding:var(--space-inline);text-align:right}
.finance-viz-data .finance-aging :is(td,th):first-child{text-align:left;width:26%}
@media(max-width:800px){.finance-viz-footer-grid{grid-template-columns:minmax(0,1fr)}}

/* Card-fee reconciliation is a focused dialog, never an appended dashboard. */
.finance-cost-dialog{width:720px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:var(--space-fields);border:1px solid var(--line);border-radius:20px}
.finance-cost-dialog .mobile-dialog-scroll{display:flex;flex-direction:column;gap:var(--space-fields);min-height:0}
.finance-cost-dialog .customer-dialog-header,.finance-cost-dialog .customer-dialog-actions{margin:0;flex:none}
.finance-cost-dialog .finance-cost-review{overflow:auto;min-height:0;padding-right:var(--space-inline);scrollbar-color:var(--scroll-thumb) transparent}
.finance-cost-dialog .finance-cost-review>.finance-card-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-inline);border:0;padding:0}
.finance-cost-dialog .finance-cost-review>.finance-card-details>.finance-card-detail{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-inline);padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field)}
.finance-cost-dialog .finance-cost-item{padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field);gap:var(--space-inline)}
.finance-cost-dialog .finance-cost-heading{border-bottom:1px solid var(--line);padding-bottom:var(--space-inline)}
.finance-cost-dialog .finance-cost-item .finance-card-detail:not(.finance-cost-heading){border:0;padding-block:0}
.finance-cost-dialog .finance-cost-form{border-top:1px solid var(--line);padding-top:var(--space-fields)}
.finance-cost-dialog .finance-cost-item:focus{outline:none}.finance-cost-dialog .finance-cost-item.is-selected{border-color:var(--text-subtle)}
.finance-cost-dialog .finance-cost-review>.glass-button{justify-self:end;width:auto}
@media(max-width:480px){.finance-cost-dialog{max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px);padding:var(--space-inline);border-radius:16px}}

/* Receipt history: adaptable card grid, deliberate file picker and one action footer. */
:root dialog.finance-receipts{width:820px;max-width:calc(100vw - 24px)}
:root dialog.finance-receipts.has-single-settlement{width:680px}
.finance-receipts .customer-dialog-header{margin:0;padding-bottom:var(--space-inline)}
.finance-receipts .modal-content-scroll{gap:var(--space-fields)}
.finance-receipts .finance-receipts-body{display:flex;flex-direction:column;gap:var(--space-fields);min-width:0}
.finance-receipts .finance-receipts-body>*{flex-shrink:0;min-width:0}
.finance-receipts .finance-history-description{margin:0;font-size:var(--type-body);line-height:1.5}
.finance-receipts .finance-payment-summary{padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-hover)}
.finance-receipts .finance-settlements-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-fields);min-width:0}
.finance-receipts .finance-settlement{display:flex;flex-direction:column;padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-glass);gap:var(--space-inline);min-width:0}
.finance-receipts .finance-settlement:only-child{grid-column:1/-1}
.finance-receipts .finance-settlement .os-note{font-size:var(--type-meta);line-height:1.5;margin:0}
.finance-receipts .finance-settlement-head{align-items:flex-start;flex-wrap:wrap;gap:var(--space-inline)}
.finance-receipts .finance-settlement-head>strong:last-child{margin-left:auto;font-variant-numeric:tabular-nums}
.finance-receipts .finance-receipt-row{padding:var(--space-inline) 0 0;margin:0;border-top:1px solid var(--line);border-bottom:0;font-size:var(--type-body);gap:var(--space-inline)}
.finance-receipts .finance-receipt-row>button{flex-shrink:0;margin:0;box-shadow:none;background:var(--surface-field);border:1px solid var(--line);color:var(--text-primary)}
.finance-receipts .finance-receipt-row>button:hover{background:var(--surface-hover)}
.finance-receipts .finance-receipt-row>button:active{background:var(--surface-pressed)}
.finance-receipts .finance-receipt-upload{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:var(--space-fields);margin:0;padding:var(--space-fields) 0 0;border:0;border-top:1px solid var(--line);background:transparent;overflow:visible}
.finance-receipts .finance-receipt-upload>label.full{grid-column:auto}
.finance-receipts .finance-receipt-upload label{margin:0;gap:var(--space-inline)}
:root dialog.finance-receipts .finance-receipt-upload select{background:var(--surface-field);margin:0;min-height:var(--control-target)}
:root dialog.finance-receipts .finance-proof-picker{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-inline);width:100%;min-width:0;min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);margin:0;border:1px dashed var(--text-subtle);border-radius:var(--action-radius);background:var(--surface-hover);box-shadow:none;color:var(--text-primary);font-size:var(--type-action);text-align:left}
.finance-proof-picker .icon{width:18px;height:18px;flex:none}.finance-proof-picker>span{min-width:0;overflow-wrap:anywhere}
:root dialog.finance-receipts .finance-proof-picker.has-file{border-style:solid;border-color:var(--line)}
:root dialog.finance-receipts .finance-proof-picker:hover{background:var(--surface-hover);border-color:var(--text-link)}
:root dialog.finance-receipts .finance-proof-picker:active{background:var(--surface-pressed)}
:root dialog.finance-receipts .finance-proof-picker:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}
.finance-receipts .customer-dialog-actions>[data-receipt-upload-save]{width:auto;min-height:var(--control-target);margin:0;padding:var(--action-padding-block) var(--action-padding-inline);font-size:var(--type-action)}
.finance-receipts .customer-dialog-actions>[data-receipt-upload-save]:disabled{opacity:.55;cursor:default}
@media(max-width:700px){.finance-receipts .finance-settlements-grid,.finance-receipts .finance-receipt-upload{grid-template-columns:minmax(0,1fr)}}

/* Financial editors share a structured, compact form language. */
:root dialog.finance-create-dialog{width:760px;max-width:calc(100vw - 24px)}
:root dialog.finance-payment-dialog{width:640px;max-width:calc(100vw - 24px)}
.finance-dialog .customer-dialog-header{margin:0;padding-bottom:var(--space-inline)}
.finance-dialog .operations-fields{display:flex;flex-direction:column;gap:var(--space-section)}
.finance-form-section{min-width:0;display:grid;gap:var(--space-fields)}
.finance-form-heading{display:flex;align-items:center;gap:var(--space-inline);margin:0;padding-bottom:var(--space-inline);border-bottom:1px solid var(--line);font-size:var(--type-section-title);font-weight:600}
.finance-form-symbol{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:8px;background:var(--surface-hover);color:var(--text-secondary)}
.finance-form-symbol .icon{width:16px;height:16px}
.finance-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-fields);min-width:0}
.finance-form-fields>.full{grid-column:1/-1}.finance-form-fields>*{min-width:0}
.finance-dialog .finance-form-fields .os-field,.finance-dialog .operations-fields>label{margin:0}
.finance-dialog .finance-cycle-preview{margin:0;padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-hover);font-size:var(--type-meta);line-height:1.5}
.finance-dialog .finance-entry-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-fields);padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-glass);min-width:0}
.finance-entry-summary>strong{font-size:var(--type-body);overflow-wrap:anywhere}.finance-entry-summary>span{font-size:var(--type-body);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.finance-payment-dialog .finance-entry-summary{padding:0;border:0;background:transparent}.finance-payment-dialog .finance-entry-summary>span{display:none}
.finance-payment-dialog .finance-payment-summary{border:1px solid var(--line);border-radius:var(--action-radius);padding:var(--space-fields);background:var(--surface-hover)}
:root dialog.finance-dialog .finance-proof-picker{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-inline);width:100%;min-width:0;min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);margin:0;border:1px dashed var(--text-subtle);border-radius:var(--action-radius);background:var(--surface-hover);box-shadow:none;color:var(--text-primary);font-size:var(--type-action);text-align:left}
:root dialog.finance-dialog .finance-proof-picker.has-file{border-style:solid;border-color:var(--line)}
:root dialog.finance-dialog .finance-proof-picker:hover{background:var(--surface-hover);border-color:var(--text-link)}
:root dialog.finance-dialog .finance-proof-picker:active{background:var(--surface-pressed)}
:root dialog.finance-dialog .finance-proof-picker:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}
/* Fee review uses a concise grid, with full-width editing and one scroll region. */
:root dialog.finance-cost-dialog{width:860px}:root dialog.finance-cost-dialog.is-focused-cost{width:680px}
.finance-cost-dialog .finance-cost-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-fields);min-width:0}
.finance-cost-grid>.finance-cost-item:only-child,.finance-cost-grid>.finance-cost-item.is-editing{grid-column:1/-1}
.finance-cost-dialog .finance-cost-item{background:var(--surface-glass);align-content:start;gap:var(--space-inline)}
.finance-cost-dialog .finance-cost-heading{padding-bottom:0;border:0;gap:var(--space-inline)}
.finance-cost-dialog .finance-cost-heading>strong{font-size:var(--type-body)}
.finance-cost-dialog .finance-cost-method{margin:0;padding-bottom:var(--space-inline);border-bottom:1px solid var(--line)}
.finance-cost-dialog .finance-cost-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:var(--space-inline)}
.finance-cost-dialog .finance-cost-values>.finance-card-detail{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-inline);min-width:0}
.finance-cost-values .finance-card-detail>span{font-size:var(--type-meta)}.finance-cost-values .finance-card-detail>strong{font-size:var(--type-body);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.finance-cost-dialog .finance-cost-status{font-size:var(--type-meta);border:1px solid var(--line);border-radius:20px;padding:4px 8px;white-space:normal;background:var(--surface-hover);color:var(--text-secondary)}
.finance-cost-status.is-confirmed{color:var(--text-success)}.finance-cost-status.is-divergent{color:var(--text-warning)}
.finance-cost-dialog .finance-cost-review>.finance-card-details>.finance-card-detail{background:var(--surface-hover)}
.finance-cost-dialog .finance-cost-review>.glass-button{box-shadow:none;border-color:var(--line);background:transparent}
.finance-cost-dialog .finance-cost-form>.submit-button{grid-column:1/-1;justify-self:end;margin:0;width:auto;font-size:var(--type-action);min-height:var(--control-target)}
@media(max-width:700px){.finance-form-fields,.finance-cost-dialog .finance-cost-grid{grid-template-columns:minmax(0,1fr)}.finance-dialog .finance-entry-summary{flex-wrap:wrap}}
@media(max-width:360px){.finance-cost-dialog .finance-cost-values{grid-template-columns:repeat(2,minmax(0,1fr))}}

.finance-form-fields>.finance-counterparty-field,.finance-form-fields>.finance-category-field{align-self:start}

:root dialog.finance-edit-dialog{width:680px;max-width:calc(100vw - 24px)}
.finance-edit-dialog.has-finance-partial .finance-entry-summary>span{display:none}
.finance-edit-dialog .finance-payment-summary{padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-hover)}

/* Read-only finance detail mirrors the editor hierarchy without edit controls. */
:root body.in-workspace dialog.record-finance-details{width:min(760px,calc(100vw - 24px))}
.record-finance-details .customer-dialog-header{margin:0;padding-bottom:var(--space-inline)}
.record-finance-details .record-details-body{gap:var(--space-fields)}
.record-finance-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-fields);min-width:0}
.record-finance-hero>div{min-width:0;display:grid;gap:var(--space-inline)}
.record-finance-kind{font-size:var(--type-meta);color:var(--text-secondary)}
.record-finance-description{margin:0;font-size:var(--type-section-title);font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.record-finance-hero>.finance-status{flex:none;max-width:40%;white-space:normal;line-height:1.5}
.record-finance-details .finance-payment-summary{padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-hover)}
.record-finance-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-fields);min-width:0}
.record-finance-details .record-finance-sections>.record-details-section{padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-glass);display:flex;flex-direction:column;gap:var(--space-fields);min-width:0}
:root .record-finance-details .record-details-section>h3{font-size:var(--type-section-title);margin:0;color:var(--text-primary);line-height:1.4}
:root .record-finance-details .record-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-fields)}
.record-finance-details .record-detail{padding:0;min-width:0}
.record-finance-details .record-detail dt{font-size:var(--type-meta)}
.record-finance-details .record-detail dd{font-size:var(--type-body)}
.record-finance-details .record-detail-receipts{justify-self:start;align-self:flex-start;margin:0;box-shadow:none;border-color:var(--line);min-height:var(--control-target);font-size:var(--type-action);max-width:100%;white-space:normal}
.record-finance-details .record-finance-origin{padding:var(--space-fields) 0 0;border-top:1px solid var(--line);display:grid;gap:var(--space-fields)}
.record-finance-details .record-details-notes{padding-top:var(--space-inline)}
@media(max-width:700px){.record-finance-sections{grid-template-columns:minmax(0,1fr)}}

/* Consistent financial modal chrome; content-specific layouts retain their geometry. */
:root body.in-workspace dialog:is(.finance-dialog,.record-finance-details,.finance-receipts,.finance-cost-dialog,.finance-contact-picker,.finance-chart-dialog){border:1px solid var(--line);border-radius:20px;color:var(--text-primary)}
:root body.in-workspace dialog:is(.finance-dialog,.record-finance-details,.finance-receipts,.finance-cost-dialog,.finance-contact-picker,.finance-chart-dialog) .customer-dialog-header{margin:0;padding:0 0 var(--space-inline);gap:var(--space-fields);align-items:flex-start}
:root body.in-workspace dialog:is(.finance-dialog,.record-finance-details,.finance-receipts,.finance-cost-dialog,.finance-contact-picker,.finance-chart-dialog) .customer-dialog-header h2{margin:0;font-size:var(--type-dialog-title);line-height:1.3}
:root body.in-workspace dialog:is(.finance-dialog,.record-finance-details,.finance-receipts,.finance-cost-dialog,.finance-contact-picker,.finance-chart-dialog) .modal-close-control{width:var(--control-target);height:var(--control-target);min-width:var(--control-target);min-height:var(--control-target);margin:0;padding:var(--action-padding-block);flex:none;border:1px solid var(--line);border-radius:var(--action-radius);box-shadow:none}
:root body.in-workspace dialog:is(.finance-dialog,.record-finance-details,.finance-receipts,.finance-cost-dialog,.finance-contact-picker,.finance-chart-dialog) .modal-action-footer{gap:var(--space-inline);padding-top:var(--space-fields);border-top:1px solid var(--line)}
:root body.in-workspace dialog:is(.finance-dialog,.record-finance-details,.finance-receipts,.finance-cost-dialog,.finance-contact-picker,.finance-chart-dialog) .modal-action-footer>button{min-height:var(--control-target);font-size:var(--type-action);margin-block:0}
:root body.in-workspace dialog:is(.finance-dialog,.record-finance-details,.finance-receipts,.finance-cost-dialog,.finance-contact-picker,.finance-chart-dialog) button:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}

.finance-kind-field{border:0;padding:0;margin:0;min-width:0}
:root body.in-workspace .finance-kind-field>legend{padding:0;margin:0 0 var(--space-inline);font-size:var(--type-label);font-weight:500;color:var(--text-secondary)}
.finance-kind-cards [data-kind=receivable] .choice-card-symbol>.icon{transform:rotate(135deg)}
.finance-kind-cards [data-kind=payable] .choice-card-symbol>.icon{transform:rotate(-45deg)}

.finance-receipt-actions{display:flex;flex-wrap:nowrap;gap:var(--space-inline);flex-shrink:0}
.finance-receipt-actions>button{display:inline-flex;align-items:center;justify-content:center;min-width:var(--control-target);min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);margin:0;box-shadow:none;background:var(--surface-field);border:1px solid var(--line);color:var(--text-primary)}
.finance-receipt-actions>button:hover{background:var(--surface-hover)}
.finance-receipt-actions>button:active{background:var(--surface-pressed)}
.finance-receipt-actions>button[hidden]{display:none!important}

.finance-receipts .app-tooltip{pointer-events:none}

@media(max-width:700px){.finance-receipt-row.has-manual-send{flex-wrap:wrap}.finance-receipt-row.has-manual-send>span{flex-basis:100%}}

.finance-generated-receipt{display:inline-flex;align-items:center;gap:var(--space-inline);white-space:normal;text-align:start;min-height:var(--control-target)}

/* File picker for sharing an existing receipt in the team chat. */
:root body.in-workspace dialog.receipt-chat-picker{width:min(560px,calc(100vw - 24px));box-sizing:border-box}
.receipt-chat-context{display:grid;gap:4px;min-width:0;padding-bottom:var(--space-inline)}
.receipt-chat-context strong,.receipt-chat-file-copy strong{font-size:var(--type-body);line-height:1.5;overflow-wrap:anywhere}
.receipt-chat-context small,.receipt-chat-file-copy small{font-size:var(--type-meta);color:var(--text-secondary);overflow-wrap:anywhere}
.receipt-chat-picker .finance-receipt-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:var(--space-inline);padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field)}
.receipt-chat-file-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:var(--surface-hover);color:var(--text-secondary)}
.receipt-chat-file-icon .icon{width:18px;height:18px}
.receipt-chat-file-copy{display:grid;gap:4px;min-width:0}
.receipt-chat-picker .finance-receipt-actions{display:flex;gap:var(--space-inline);flex-wrap:nowrap}
:root body.in-workspace .receipt-chat-picker .finance-receipt-actions>button{width:var(--control-target);height:var(--control-target);min-width:var(--control-target);padding:var(--space-inline);box-shadow:none;background:transparent;border:1px solid var(--line);backdrop-filter:none}
:root body.in-workspace .receipt-chat-picker .finance-receipt-actions>button:hover{background:var(--surface-hover)}
:root body.in-workspace .receipt-chat-picker .finance-receipt-actions>button:active{background:var(--surface-pressed)}
@media(max-width:430px){.receipt-chat-picker .finance-receipt-row{grid-template-columns:32px minmax(0,1fr)}.receipt-chat-picker .finance-receipt-actions{grid-column:2;justify-self:end}}
.finance-credit-metrics,.finance-credit-results,.finance-credit-section{display:grid;gap:var(--space-section);min-width:0}
.finance-credit-metrics>.finance-credit-filters{grid-template-columns:minmax(0,180px) minmax(0,180px) auto;justify-content:start;align-items:end;padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-glass)}
.finance-credit-filters button{display:flex;align-items:center;gap:var(--space-inline);min-height:var(--control-target)}
.finance-credit-section-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-inline);flex-wrap:wrap}
.finance-credit-section-heading h4{margin:0;font-size:var(--type-section-title)}
.finance-credit-section-heading small{color:var(--text-secondary);font-size:var(--type-meta)}
.finance-credit-section .finance-kpis{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}
.finance-credit-exposure{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-fields);padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field)}
.finance-credit-exposure>div{display:flex;align-items:center;justify-content:space-between;gap:var(--space-inline);min-width:0}
.finance-credit-exposure small{font-size:var(--type-meta);color:var(--text-secondary)}
.finance-credit-exposure strong{font-size:var(--type-body);font-variant-numeric:tabular-nums}
.finance-credit-graphs>div{min-width:0;display:grid}
.finance-credit-side{display:grid;gap:var(--space-section);min-width:0;align-content:start}
@media(max-width:700px){.finance-dashboard:has(.finance-credit) .finance-tabs.app-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start}.finance-dashboard:has(.finance-credit) .finance-tabs.app-tabs>button{flex:none;min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);white-space:nowrap}}
.finance-credit-metrics .chart-data-trigger{margin-top:var(--space-fields)}
.finance-credit-metrics .finance-priority-row{grid-template-columns:minmax(0,1fr) auto var(--control-target)}
.finance-credit-metrics .finance-priority-row>button{width:var(--control-target);min-height:var(--control-target);padding:var(--space-inline)}
.finance-credit-metrics .finance-priority-row small{overflow-wrap:anywhere}
@media(max-width:700px){.finance-credit-metrics>.finance-credit-filters{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;box-sizing:border-box}.finance-credit-filters>button{grid-column:1/-1;justify-content:center}.finance-credit-section .finance-kpis{grid-template-columns:1fr}.finance-credit-exposure{grid-template-columns:1fr}.finance-credit-section-heading{align-items:start}}
