html{--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, #4397d2);--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(#2f6fa8, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#2f6fa8, #2f6fa8);--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(#4397d2, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #2f6fa8);--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(#4397d2, #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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-body-large-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-body-medium-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-body-small-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-display-large-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-display-medium-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-display-small-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-headline-large-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-headline-medium-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-headline-small-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-label-large-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-label-medium-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-label-small-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-title-large-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-title-medium-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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 -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--mat-sys-title-small-font: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--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}html{--mat-sys-primary: #4397d2;--mat-sys-on-primary: #ffffff;--mat-sys-surface-tint: #4397d2;--mat-sys-primary-container: #d6eaf5;--mat-sys-on-primary-container: #1a4370}.mat-mdc-unelevated-button.mat-primary:not(:disabled),.mat-mdc-raised-button.mat-primary:not(:disabled){--mat-button-filled-container-color: #4397d2;--mat-button-protected-container-color: #4397d2;--mat-button-filled-label-text-color: #ffffff;--mat-button-filled-hover-label-text-color: #ffffff;--mat-button-filled-focus-label-text-color: #ffffff;--mat-button-filled-pressed-label-text-color: #ffffff;--mat-button-filled-state-layer-color: #ffffff;background-color:#4397d2;color:#fff}.mat-mdc-unelevated-button.mat-primary:not(:disabled) .mdc-button__label,.mat-mdc-unelevated-button.mat-primary:not(:disabled) .mat-icon,.mat-mdc-raised-button.mat-primary:not(:disabled) .mdc-button__label,.mat-mdc-raised-button.mat-primary:not(:disabled) .mat-icon{color:#fff}.mat-mdc-unelevated-button.mat-primary:not(:disabled):hover,.mat-mdc-raised-button.mat-primary:not(:disabled):hover{--mat-button-filled-container-color: #3680bd;--mat-button-protected-container-color: #3680bd;background-color:#3680bd}.mat-mdc-unelevated-button.mat-warn:not(:disabled),.mat-mdc-raised-button.mat-warn:not(:disabled){--mat-button-filled-label-text-color: #ffffff;--mat-button-filled-hover-label-text-color: #ffffff;--mat-button-filled-focus-label-text-color: #ffffff;--mat-button-filled-pressed-label-text-color: #ffffff;color:#fff}.mat-mdc-unelevated-button.mat-warn:not(:disabled) .mdc-button__label,.mat-mdc-unelevated-button.mat-warn:not(:disabled) .mat-icon,.mat-mdc-raised-button.mat-warn:not(:disabled) .mdc-button__label,.mat-mdc-raised-button.mat-warn:not(:disabled) .mat-icon{color:#fff}a.mat-mdc-unelevated-button.mat-primary:not(:disabled),a.mat-mdc-raised-button.mat-primary:not(:disabled){color:#fff;text-decoration:none}a.mat-mdc-unelevated-button.mat-primary:not(:disabled) .mdc-button__label,a.mat-mdc-raised-button.mat-primary:not(:disabled) .mdc-button__label{color:#fff}a.mat-mdc-outlined-button:not(:disabled),a.mat-mdc-button-base.mat-mdc-outlined-button:not(:disabled){color:#4397d2;text-decoration:none}a.mat-mdc-outlined-button:not(:disabled) .mdc-button__label,a.mat-mdc-button-base.mat-mdc-outlined-button:not(:disabled) .mdc-button__label{color:#4397d2}.mat-button-toggle.mat-button-toggle-checked{--mat-button-toggle-selected-state-background-color: #4397d2;--mat-button-toggle-selected-state-text-color: #ffffff;background-color:#4397d2;color:#fff}.mat-button-toggle.mat-button-toggle-checked .mat-button-toggle-label-content{color:#fff}:root{--bg-primary: #f5f5f5;--bg-secondary: #ffffff;--text-primary: #333333;--sidebar-bg: #2c3e50;--sidebar-text: #ecf0f1;--sidebar-hover: #34495e;--filter-bar-bg: #eceff1;--filter-bar-border: #cfd8dc;--btn-primary-bg: #4397d2;--btn-primary-hover: #3680bd}html.dark-mode{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--text-primary: #e0e0e0;--mat-sys-primary: #4397d2;--mat-sys-on-primary: #ffffff}.module-view-controls{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.module-view-controls__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto}.module-page__status{margin:.25rem 0 0;color:var(--mat-sys-on-surface-variant, rgba(0, 0, 0, .6))}.mat-mdc-form-field,.mat-mdc-form-field .mat-mdc-input-element,.mat-mdc-form-field .mat-mdc-select-value,.mat-mdc-form-field .mat-mdc-select-min-line,.mat-mdc-form-field .mat-mdc-floating-label,.mat-mdc-form-field .mdc-floating-label{font-size:14px}input[type=date]:not(.mat-mdc-input-element),input[type=text]:not(.mat-mdc-input-element),input[type=email]:not(.mat-mdc-input-element),input[type=number]:not(.mat-mdc-input-element),input[type=search]:not(.mat-mdc-input-element),select:not(.mat-mdc-input-element),textarea:not(.mat-mdc-input-element){font-size:14px}.boss-table-wrap{overflow-x:auto;background:#fff;border:1px solid #dee2e6;border-radius:.375rem}.boss-table-wrap--loading{opacity:.55;pointer-events:none}.boss-table{width:100%;min-width:56rem}.boss-table .mat-mdc-header-row{background:var(--sidebar-bg)}.boss-table .mat-mdc-header-cell{color:#fff;font-weight:600;font-size:14px}.boss-table .mat-mdc-cell{font-size:14px;font-weight:400}.boss-table .mat-mdc-cell:has(.boss-table__cell-select){padding-top:.375rem;padding-bottom:.375rem;vertical-align:middle}.boss-table thead th{background:var(--sidebar-bg);color:#fff;font-weight:600;font-size:14px}.boss-table tbody td{font-size:14px}.boss-table:not(.mat-mdc-table){border-collapse:collapse}.boss-table:not(.mat-mdc-table) th,.boss-table:not(.mat-mdc-table) td{border-bottom:1px solid #dee2e6;padding:.75rem;vertical-align:top}.boss-table--wide{min-width:72rem}.boss-table__numeric{text-align:right}.boss-table__link{color:var(--btn-primary-bg, #4397d2);text-decoration:none}.boss-table__link:hover{text-decoration:underline}.boss-table__empty{text-align:center;padding:1.5rem}p.boss-table__empty{margin:0;color:#0009}.boss-table__row-clickable{cursor:pointer}.boss-table__row-clickable:hover{background:#0000000a}.boss-compact-select,.boss-table__cell-select{width:100%;min-width:5.5rem;max-width:9rem;margin:0;font-size:14px}.boss-compact-select .mat-mdc-form-field-subscript-wrapper,.boss-table__cell-select .mat-mdc-form-field-subscript-wrapper{display:none}.boss-compact-select .mat-mdc-text-field-wrapper,.boss-table__cell-select .mat-mdc-text-field-wrapper{padding-bottom:0}.boss-compact-select .mat-mdc-form-field-flex,.boss-table__cell-select .mat-mdc-form-field-flex{height:2rem;align-items:center}.boss-compact-select .mat-mdc-form-field-infix,.boss-table__cell-select .mat-mdc-form-field-infix{min-height:2rem;padding-top:.125rem;padding-bottom:.125rem;width:auto}.boss-compact-select .mdc-text-field--outlined,.boss-table__cell-select .mdc-text-field--outlined{--mat-form-field-outlined-container-shape: 4px;padding-left:.5rem;padding-right:.25rem}.boss-compact-select .mdc-text-field--outlined .mdc-notched-outline__leading,.boss-compact-select .mdc-text-field--outlined .mdc-notched-outline__notch,.boss-compact-select .mdc-text-field--outlined .mdc-notched-outline__trailing,.boss-table__cell-select .mdc-text-field--outlined .mdc-notched-outline__leading,.boss-table__cell-select .mdc-text-field--outlined .mdc-notched-outline__notch,.boss-table__cell-select .mdc-text-field--outlined .mdc-notched-outline__trailing{border-color:#0000003b}.boss-compact-select .mat-mdc-select-trigger,.boss-table__cell-select .mat-mdc-select-trigger{height:1.75rem}.boss-compact-select .mat-mdc-select-value,.boss-table__cell-select .mat-mdc-select-value{font-size:14px;line-height:1.75rem}.boss-compact-select .mat-mdc-select-arrow-wrapper,.boss-table__cell-select .mat-mdc-select-arrow-wrapper{height:1.75rem;display:flex;align-items:center}.boss-compact-select input.mat-mdc-input-element,.boss-table__cell-select input.mat-mdc-input-element{font-size:14px;height:1.75rem}.boss-compact-select--wide,.boss-table__cell-select.boss-table__cell-select--wide{max-width:11rem}.boss-compact-select--entity{max-width:14rem}.boss-compact-select--fill{max-width:none;width:100%}.boss-table__cell-select--status .mat-mdc-text-field-wrapper{background-color:var(--status-bg)}.boss-table__cell-select--status .mat-mdc-select-value,.boss-table__cell-select--status .mat-mdc-select-arrow{color:var(--status-color)}.boss-badge{display:inline-block;padding:.15rem .5rem;border-radius:.75rem;font-size:.8rem;font-weight:600;line-height:1.25;white-space:nowrap}.boss-badge-set{display:inline-flex;flex-wrap:wrap;gap:.25rem}html,body{height:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;background:var(--bg-primary);color:var(--text-primary)}
