html{color-scheme:light dark;--mat-sys-background: light-dark(#faf9fd, #121316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);--mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #002f65);--mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-on-secondary: light-dark(#ffffff, #283041);--mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);--mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary: light-dark(#ffffff, #0001ac);--mat-sys-on-tertiary-container: light-dark(#0000ef, #e0e0ff);--mat-sys-on-tertiary-fixed: light-dark(#00006e, #00006e);--mat-sys-on-tertiary-fixed-variant: light-dark(#0000ef, #0000ef);--mat-sys-outline: light-dark(#74777f, #8e9099);--mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);--mat-sys-primary: light-dark(#005cbb, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#565e71, #bec6dc);--mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#faf9fd, #121316);--mat-sys-surface-bright: light-dark(#faf9fd, #38393c);--mat-sys-surface-container: light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim: light-dark(#dbd9dd, #121316);--mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);--mat-sys-tertiary: light-dark(#343dff, #bec2ff);--mat-sys-tertiary-container: light-dark(#e0e0ff, #0000ef);--mat-sys-tertiary-fixed: light-dark(#e0e0ff, #e0e0ff);--mat-sys-tertiary-fixed-dim: light-dark(#bec2ff, #bec2ff);--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}:root{--app-success: light-dark(#4caf50, #81c784);--app-success-light: light-dark(#81c784, #a5d6a7);--app-warning: light-dark(#ff9800, #ffb74d);--app-warning-light: light-dark(#ffb74d, #ffcc80);--app-info: light-dark(#2196f3, #64b5f6);--app-info-light: light-dark(#64b5f6, #90caf9);--app-shadow-sm: light-dark( 0 1px 2px 0 rgba(0, 0, 0, .05), 0 1px 2px 0 rgba(0, 0, 0, .3) );--app-shadow-md: light-dark( 0 4px 6px -1px rgba(0, 0, 0, .1), 0 4px 6px -1px rgba(0, 0, 0, .4) );--app-shadow-lg: light-dark( 0 10px 15px -3px rgba(0, 0, 0, .1), 0 10px 15px -3px rgba(0, 0, 0, .5) );--app-border-color: var(--mat-sys-outline-variant);--app-border-radius-sm: 4px;--app-border-radius-md: 8px;--app-border-radius-lg: 12px;--app-card-background: var(--mat-sys-surface-container);--app-card-border: var(--mat-sys-outline-variant);--app-input-background: var(--mat-sys-surface-container-highest);--app-hover-background: var(--mat-sys-surface-container-high);--app-positive: light-dark(#4caf50, #81c784);--app-negative: light-dark(#f44336, #ef5350);--app-neutral: var(--mat-sys-on-surface-variant);--app-status-open: #2196f3;--app-status-open-bg: light-dark(rgba(33, 150, 243, .1), rgba(33, 150, 243, .2));--app-status-partial: #ff9800;--app-status-partial-bg: light-dark(rgba(255, 152, 0, .1), rgba(255, 152, 0, .2));--app-status-paid: #4caf50;--app-status-paid-bg: light-dark(rgba(76, 175, 80, .1), rgba(76, 175, 80, .2));--app-status-overdue: #f44336;--app-status-overdue-bg: light-dark(rgba(244, 67, 54, .1), rgba(244, 67, 54, .2));--app-status-cancelled: #9e9e9e;--app-status-cancelled-bg: light-dark(rgba(158, 158, 158, .1), rgba(158, 158, 158, .2));--app-status-pending: #9c27b0;--app-status-pending-bg: light-dark(rgba(156, 39, 176, .1), rgba(156, 39, 176, .2));--app-status-matched: #00bcd4;--app-status-matched-bg: light-dark(rgba(0, 188, 212, .1), rgba(0, 188, 212, .2));--app-aging-current: #4caf50;--app-aging-1-30: #ff9800;--app-aging-31-60: #f57c00;--app-aging-61-90: #ef5350;--app-aging-90-plus: #c62828;--app-scenario-base: #1565c0;--app-scenario-base-bg: light-dark(#e3f2fd, rgba(21, 101, 192, .2));--app-scenario-optimistic: #2e7d32;--app-scenario-optimistic-bg: light-dark(#e8f5e9, rgba(46, 125, 50, .2));--app-scenario-pessimistic: #7b1fa2;--app-scenario-pessimistic-bg: light-dark(#f3e5f5, rgba(123, 31, 162, .2));--app-scenario-custom: #e65100;--app-scenario-custom-bg: light-dark(#fff3e0, rgba(230, 81, 0, .2));--app-warning-container: light-dark(#fff3e0, rgba(230, 81, 0, .2));--app-on-warning-container: light-dark(#e65100, #ffb74d)}.mat-mdc-card{--mdc-elevated-card-container-color: var(--app-card-background);--mdc-outlined-card-container-color: var(--app-card-background);--mdc-outlined-card-outline-color: var(--app-card-border)}.mat-toolbar{--mat-toolbar-container-background-color: var(--mat-sys-surface-container);--mat-toolbar-container-text-color: var(--mat-sys-on-surface)}.mat-sidenav{--mat-sidenav-container-background-color: var(--mat-sys-surface-container-low);--mat-sidenav-container-text-color: var(--mat-sys-on-surface)}.mat-sidenav-content{--mat-sidenav-content-background-color: var(--mat-sys-surface);--mat-sidenav-content-text-color: var(--mat-sys-on-surface)}.mat-mdc-form-field{--mdc-filled-text-field-container-color: var(--app-input-background)}.mat-mdc-table{--mat-table-background-color: var(--mat-sys-surface);--mat-table-header-headline-color: var(--mat-sys-on-surface);--mat-table-row-item-label-text-color: var(--mat-sys-on-surface);--mat-table-row-item-outline-color: var(--mat-sys-outline-variant)}.mat-mdc-dialog-container{--mdc-dialog-container-color: var(--mat-sys-surface-container-high)}.mat-mdc-snack-bar-container{--mdc-snackbar-container-color: var(--mat-sys-inverse-surface);--mdc-snackbar-supporting-text-color: var(--mat-sys-inverse-on-surface)}.mat-mdc-menu-panel{--mat-menu-container-color: var(--mat-sys-surface-container)}.mat-mdc-list-base{--mdc-list-list-item-label-text-color: var(--mat-sys-on-surface);--mdc-list-list-item-supporting-text-color: var(--mat-sys-on-surface-variant);--mdc-list-list-item-hover-state-layer-color: var(--mat-sys-on-surface)}.mat-mdc-tab-group{--mat-tab-header-inactive-label-text-color: var(--mat-sys-on-surface-variant);--mat-tab-header-active-label-text-color: var(--mat-sys-primary);--mat-tab-header-inactive-hover-label-text-color: var(--mat-sys-on-surface)}.mat-mdc-unelevated-button:not(.btn-danger):not(.btn-secondary),.mat-mdc-raised-button:not(.btn-danger):not(.btn-secondary){--mdc-filled-button-container-color: var(--mat-sys-primary);--mdc-filled-button-label-text-color: var(--mat-sys-on-primary);--mdc-protected-button-container-color: var(--mat-sys-primary);--mdc-protected-button-label-text-color: var(--mat-sys-on-primary)}.mat-mdc-outlined-button:not(.btn-danger):not(.btn-secondary){--mdc-outlined-button-outline-color: var(--mat-sys-primary);--mdc-outlined-button-label-text-color: var(--mat-sys-primary)}.mat-mdc-button:not(.btn-danger):not(.btn-secondary){--mdc-text-button-label-text-color: var(--mat-sys-primary)}.btn-danger{--mat-button-filled-container-color: var(--mat-sys-error);--mat-button-filled-label-text-color: var(--mat-sys-on-error);--mat-button-filled-state-layer-color: var(--mat-sys-on-error);--mat-button-text-label-text-color: var(--mat-sys-error);--mat-button-outlined-label-text-color: var(--mat-sys-error);--mat-button-outlined-outline-color: var(--mat-sys-error)}.btn-secondary{--mat-button-filled-container-color: var(--mat-sys-tertiary);--mat-button-filled-label-text-color: var(--mat-sys-on-tertiary);--mat-button-filled-state-layer-color: var(--mat-sys-on-tertiary);--mat-button-text-label-text-color: var(--mat-sys-tertiary);--mat-button-outlined-label-text-color: var(--mat-sys-tertiary);--mat-button-outlined-outline-color: var(--mat-sys-tertiary)}.chip-accent{--mdc-chip-elevated-container-color: var(--mat-sys-tertiary-container);--mdc-chip-label-text-color: var(--mat-sys-on-tertiary-container);--mdc-chip-elevated-selected-container-color: var(--mat-sys-tertiary);--mdc-chip-selected-label-text-color: var(--mat-sys-on-tertiary)}.container{width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px}.container-fluid{width:100%;padding-left:16px;padding-right:16px}.container-narrow{width:100%;max-width:800px;margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px}.page-section{padding-top:32px;padding-bottom:32px}@media(min-width:960px){.page-section{padding-top:48px;padding-bottom:48px}}@media(min-width:1920px){.card-grid--4-col{grid-template-columns:repeat(4,1fr)}}.content-header{margin-bottom:24px}.content-header h1{margin:0 0 8px}.content-header p{margin:0;color:var(--mat-sys-on-surface-variant)}.content-footer{margin-top:32px;padding-top:24px;border-top:1px solid var(--mat-sys-outline-variant)}.stack{display:flex;flex-direction:column;gap:16px}.stack--sm{gap:8px}.stack--lg{gap:24px}.inline{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.inline--sm{gap:8px}.inline--lg{gap:24px}.split{display:grid;gap:24px;grid-template-columns:1fr}@media(min-width:960px){.split{grid-template-columns:1fr 1fr}}@media(min-width:960px){.split--sidebar{grid-template-columns:300px 1fr}}@media(min-width:960px){.split--sidebar-right{grid-template-columns:1fr 300px}}.m-0{margin:0}.m-xs{margin:4px}.m-sm{margin:8px}.m-md{margin:16px}.m-lg{margin:24px}.m-xl{margin:32px}.mt-0{margin-top:0}.mt-sm{margin-top:8px}.mt-md{margin-top:16px}.mt-lg{margin-top:24px}.mt-xl{margin-top:32px}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:8px}.mb-md{margin-bottom:16px}.mb-lg{margin-bottom:24px}.mb-xl{margin-bottom:32px}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-xs{padding:4px}.p-sm{padding:8px}.p-md{padding:16px}.p-lg{padding:24px}.p-xl{padding:32px}.px-md{padding-left:16px;padding-right:16px}.py-md{padding-top:16px;padding-bottom:16px}.px-lg{padding-left:24px;padding-right:24px}.py-lg{padding-top:24px;padding-bottom:24px}.d-none{display:none}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.d-grid{display:grid}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.align-center{align-items:center}.align-stretch{align-items:stretch}.flex-1{flex:1}.flex-auto{flex:auto}.flex-none{flex:none}.gap-sm{gap:8px}.gap-md{gap:16px}.gap-lg{gap:24px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-sm{font-size:.875rem}.text-md{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-muted{color:var(--mat-sys-on-surface-variant)}.text-primary{color:var(--mat-sys-primary)}.text-error{color:var(--mat-sys-error)}.text-success{color:#4caf50}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-sm{border-radius:4px}.rounded-md{border-radius:8px}.rounded-lg{border-radius:12px}.rounded-full{border-radius:9999px}.border{border:1px solid var(--mat-sys-outline-variant)}.border-top{border-top:1px solid var(--mat-sys-outline-variant)}.border-bottom{border-bottom:1px solid var(--mat-sys-outline-variant)}.visible{visibility:visible}.invisible{visibility:hidden}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-100{opacity:1}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.h-auto{height:auto}.min-h-screen{min-height:100vh}:root{--brand-primary: #1a365d;--brand-primary-light: #2c5282;--brand-primary-dark: #0f2942;--brand-secondary: #0d9488;--brand-secondary-light: #14b8a6;--brand-secondary-dark: #0f766e;--brand-accent: #f59e0b;--brand-accent-light: #fbbf24;--brand-accent-dark: #d97706;--tenant-primary: var(--brand-primary);--tenant-primary-light: var(--brand-primary-light);--tenant-primary-lighter: #5a7db3;--tenant-primary-dark: var(--brand-primary-dark);--tenant-primary-darker: #0d1f36;--tenant-primary-contrast: #ffffff;--tenant-secondary: var(--brand-secondary);--tenant-secondary-light: var(--brand-secondary-light);--tenant-secondary-lighter: #5ed4c8;--tenant-secondary-dark: var(--brand-secondary-dark);--tenant-secondary-darker: #086860;--tenant-secondary-contrast: #ffffff;--tenant-accent: var(--brand-accent);--tenant-accent-light: var(--brand-accent-light);--tenant-accent-dark: var(--brand-accent-dark);--tenant-accent-contrast: #000000;--tenant-logo-url: none;--brand-gradient-primary: linear-gradient(135deg, var(--tenant-primary) 0%, var(--tenant-primary-light) 100%);--brand-gradient-secondary: linear-gradient(135deg, var(--tenant-secondary-dark) 0%, var(--tenant-secondary) 100%);--brand-gradient-accent: linear-gradient(135deg, var(--tenant-accent-dark) 0%, var(--tenant-accent) 100%);--brand-gradient-hero: linear-gradient(135deg, var(--tenant-primary-darker) 0%, var(--tenant-primary) 50%, var(--tenant-secondary-dark) 100%);--brand-mesh-gradient: radial-gradient(at 40% 20%, rgba(13, 148, 136, .15) 0px, transparent 50%), radial-gradient(at 80% 0%, rgba(44, 82, 130, .1) 0px, transparent 50%), radial-gradient(at 0% 50%, rgba(20, 184, 166, .1) 0px, transparent 50%), radial-gradient(at 80% 50%, rgba(26, 54, 93, .08) 0px, transparent 50%), radial-gradient(at 0% 100%, rgba(13, 148, 136, .1) 0px, transparent 50%)}html.dark-theme,:root:has(html.dark-theme){--brand-gradient-hero: linear-gradient(135deg, #0f172a 0%, #0f2942 50%, #0a5f57 100%);--brand-mesh-gradient: radial-gradient(at 40% 20%, rgba(13, 148, 136, .08) 0px, transparent 50%), radial-gradient(at 80% 0%, rgba(44, 82, 130, .05) 0px, transparent 50%), radial-gradient(at 0% 50%, rgba(20, 184, 166, .05) 0px, transparent 50%), radial-gradient(at 80% 50%, rgba(26, 54, 93, .04) 0px, transparent 50%), radial-gradient(at 0% 100%, rgba(13, 148, 136, .05) 0px, transparent 50%)}@media(prefers-color-scheme:dark){html:not(.light-theme){--brand-gradient-hero: linear-gradient(135deg, #0f172a 0%, #0f2942 50%, #0a5f57 100%);--brand-mesh-gradient: radial-gradient(at 40% 20%, rgba(13, 148, 136, .08) 0px, transparent 50%), radial-gradient(at 80% 0%, rgba(44, 82, 130, .05) 0px, transparent 50%), radial-gradient(at 0% 50%, rgba(20, 184, 166, .05) 0px, transparent 50%), radial-gradient(at 80% 50%, rgba(26, 54, 93, .04) 0px, transparent 50%), radial-gradient(at 0% 100%, rgba(13, 148, 136, .05) 0px, transparent 50%)}}.brand-logo{display:flex;align-items:center;gap:12px}.brand-logo__icon{width:40px;height:40px;background:var(--brand-gradient-secondary);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--tenant-secondary-contrast, white);font-weight:700;font-size:1.25rem}.brand-logo__image{width:40px;height:40px;object-fit:contain;border-radius:8px}.brand-logo__text{display:flex;flex-direction:column}.brand-logo__text-primary{font-size:1.25rem;font-weight:700;color:var(--mat-sys-on-surface);line-height:1.2}.brand-logo__text-secondary{font-size:.75rem;color:var(--mat-sys-on-surface-variant);text-transform:uppercase;letter-spacing:.05em}.brand-logo--lg .brand-logo__icon{width:56px;height:56px;border-radius:14px;font-size:1.5rem}.brand-logo--lg .brand-logo__text-primary{font-size:1.5rem}.brand-logo--lg .brand-logo__text-secondary{font-size:.875rem}.brand-btn-primary{background:var(--brand-gradient-secondary)!important;color:#fff!important;border:none!important}.brand-btn-primary:hover{filter:brightness(1.1)}.brand-btn-outline{background:transparent!important;border:2px solid var(--brand-secondary)!important;color:var(--brand-secondary)!important}.brand-btn-outline:hover{background:#0d94881a!important}.status-badge{display:inline-block;padding:4px 16px;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.02em}.status-badge--open{background-color:var(--app-status-open-bg);color:var(--app-status-open)}.status-badge--partial{background-color:var(--app-status-partial-bg);color:var(--app-status-partial)}.status-badge--paid{background-color:var(--app-status-paid-bg);color:var(--app-status-paid)}.status-badge--overdue{background-color:var(--app-status-overdue-bg);color:var(--app-status-overdue)}.status-badge--cancelled{background-color:var(--app-status-cancelled-bg);color:var(--app-status-cancelled)}.status-badge--pending{background-color:var(--app-status-pending-bg);color:var(--app-status-pending)}.status-badge--matched{background-color:var(--app-status-matched-bg);color:var(--app-status-matched)}.alert{display:flex;align-items:center;gap:8px;padding:16px;border-radius:8px}.alert mat-icon,.alert .mat-icon{flex-shrink:0}.alert--error{background-color:var(--mat-sys-error-container);color:var(--mat-sys-on-error-container)}.alert--warning{background-color:var(--app-warning-container);color:var(--app-on-warning-container)}.alert--success{background-color:#4caf501a;color:var(--app-positive)}.alert--info{background-color:#2196f31a;color:var(--app-info)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.page-header__title{margin:0;font-size:1.5rem;font-weight:500;color:var(--mat-sys-on-surface)}.page-header__actions{display:flex;align-items:center;gap:8px}.loading-state{display:flex;justify-content:center;align-items:center;padding:64px;min-height:200px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;text-align:center;color:var(--mat-sys-on-surface-variant)}.empty-state__icon{font-size:48px;width:48px;height:48px;margin-bottom:16px;opacity:.5}.empty-state p{margin:0;font-size:.875rem}.aging-bar--current{background-color:var(--app-aging-current)}.aging-bar--1-30{background-color:var(--app-aging-1-30)}.aging-bar--31-60{background-color:var(--app-aging-31-60)}.aging-bar--61-90{background-color:var(--app-aging-61-90)}.aging-bar--90-plus{background-color:var(--app-aging-90-plus)}.aging-legend--current{background-color:var(--app-aging-current)}.aging-legend--1-30{background-color:var(--app-aging-1-30)}.aging-legend--31-60{background-color:var(--app-aging-31-60)}.aging-legend--61-90{background-color:var(--app-aging-61-90)}.aging-legend--90-plus{background-color:var(--app-aging-90-plus)}.scenario-chip--base{background-color:var(--app-scenario-base-bg)!important;color:var(--app-scenario-base)!important}.scenario-chip--optimistic{background-color:var(--app-scenario-optimistic-bg)!important;color:var(--app-scenario-optimistic)!important}.scenario-chip--pessimistic{background-color:var(--app-scenario-pessimistic-bg)!important;color:var(--app-scenario-pessimistic)!important}.scenario-chip--custom{background-color:var(--app-scenario-custom-bg)!important;color:var(--app-scenario-custom)!important}.card-grid{display:grid;gap:24px;grid-template-columns:1fr}@media(min-width:600px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1280px){.card-grid{grid-template-columns:repeat(3,1fr)}}.summary-row{display:grid;gap:16px;grid-template-columns:1fr}@media(min-width:600px){.summary-row{grid-template-columns:repeat(2,1fr)}}@media(min-width:960px){.summary-row{grid-template-columns:repeat(3,1fr)}}.dialog-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;min-height:200px}.dialog-loading mat-spinner,.dialog-loading .mat-mdc-progress-spinner{margin-bottom:16px}.dialog-loading p{color:var(--mat-sys-on-surface-variant);margin:0}.dialog-error{display:flex;align-items:center;gap:8px;padding:12px 16px;margin-bottom:16px;background:var(--mat-sys-error-container);color:var(--mat-sys-on-error-container);border-radius:8px}.dialog-error mat-icon,.dialog-error .mat-icon{flex-shrink:0}.dialog-empty{display:flex;flex-direction:column;align-items:center;padding:32px;color:var(--mat-sys-on-surface-variant)}.dialog-empty mat-icon,.dialog-empty .mat-icon{font-size:48px;width:48px;height:48px;margin-bottom:12px;opacity:.6}.dialog-empty p{margin:0;text-align:center}.dialog-section-header{margin:0 0 16px;font-size:1rem;font-weight:500;color:var(--mat-sys-on-surface)}.dialog-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px}.dialog-banner mat-icon,.dialog-banner .mat-icon{flex-shrink:0;font-size:24px;width:24px;height:24px}.dialog-banner--success{background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container)}.dialog-banner--success mat-icon,.dialog-banner--success .mat-icon{color:var(--mat-sys-primary)}.dialog-banner--info{background:var(--mat-sys-surface-container);color:var(--mat-sys-on-surface)}.confidence-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 12px;border-radius:9999px;font-size:.875rem;font-weight:600}.confidence-badge--high{background:var(--app-status-paid-bg);color:var(--app-status-paid)}.confidence-badge--medium{background:var(--app-status-partial-bg);color:var(--app-status-partial)}.confidence-badge--low{background:var(--app-status-overdue-bg);color:var(--app-status-overdue)}html,body{height:100%}body{margin:0;font-family:Roboto,Helvetica Neue,sans-serif;color-scheme:light dark;background-color:var(--mat-sys-surface);color:var(--mat-sys-on-surface);font:var(--mat-sys-body-medium);transition:background-color .2s ease,color .2s ease}*,*:before,*:after{box-sizing:border-box}a{color:var(--mat-sys-primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}h1,h2,h3,h4,h5,h6{margin-top:0;font-weight:500;line-height:1.2;color:var(--mat-sys-on-surface)}p{color:var(--mat-sys-on-surface)}.text-primary{color:var(--mat-sys-primary)!important}.text-secondary{color:var(--mat-sys-secondary)!important}.text-tertiary{color:var(--mat-sys-tertiary)!important}.text-error{color:var(--mat-sys-error)!important}.text-muted{color:var(--mat-sys-on-surface-variant)!important}.text-on-primary{color:var(--mat-sys-on-primary)!important}.text-positive{color:var(--app-positive)!important}.text-negative{color:var(--app-negative)!important}.text-neutral{color:var(--app-neutral)!important}.bg-surface{background-color:var(--mat-sys-surface)!important}.bg-surface-container{background-color:var(--mat-sys-surface-container)!important}.bg-surface-container-low{background-color:var(--mat-sys-surface-container-low)!important}.bg-surface-container-high{background-color:var(--mat-sys-surface-container-high)!important}.bg-primary{background-color:var(--mat-sys-primary)!important}.bg-primary-container{background-color:var(--mat-sys-primary-container)!important}.bg-error{background-color:var(--mat-sys-error)!important}.bg-error-container{background-color:var(--mat-sys-error-container)!important}.border-outline{border-color:var(--mat-sys-outline)!important}.border-outline-variant{border-color:var(--mat-sys-outline-variant)!important}.shadow-sm{box-shadow:var(--app-shadow-sm)!important}.shadow-md{box-shadow:var(--app-shadow-md)!important}.shadow-lg{box-shadow:var(--app-shadow-lg)!important}ul.unstyled,ol.unstyled{list-style:none;padding:0;margin:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--mat-sys-outline-variant);border-radius:4px}::-webkit-scrollbar-thumb:hover{background-color:var(--mat-sys-outline)}*{scrollbar-width:thin;scrollbar-color:var(--mat-sys-outline-variant) transparent}:focus-visible{outline:2px solid var(--mat-sys-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{background-color:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container)}
