:root{--text: #1f2937;--text-light: #374151;--text-muted: #6b7280;--text-title: #e84c3e;--bg-body-from: #f3f4f6;--bg-body-to: #e5e7eb;--bg-surface: rgba(255, 255, 255, .8);--bg-surface-light: rgba(255, 255, 255, .6);--bg-surface-deep: rgba(255, 255, 255, .4);--bg-sidebar: rgba(255, 255, 255, .9);--bg-dialog-from: #ffffff;--bg-dialog-to: #f9fafb;--bg-hover: rgba(0, 0, 0, .04);--border: rgba(0, 0, 0, .2);--border-subtle: rgba(0, 0, 0, .1);--border-faint: rgba(0, 0, 0, .15);--border-dim: rgba(0, 0, 0, .12);--border-light: rgba(0, 0, 0, .25);--primary: #3b6fd4;--accent: #0891b2;--success: #16a34a;--success-soft: #10b981;--warn: #dc2626;--user: #d97706;--comment: #6b7280;--trade: #4a90b8;--accent-bg: rgba(8, 145, 178, .15);--success-bg: rgba(22, 163, 74, .15);--comment-bg: rgba(107, 114, 128, .15);--user-bg: rgba(217, 119, 6, .15);--warn-bg: rgba(220, 38, 38, .15);--primary-bg: rgba(59, 111, 212, .2);--trade-bg: rgba(74, 144, 184, .15);--success-hint: rgba(22, 163, 74, .1);--panel-border-project: rgba(59, 111, 212, .5);--panel-border-user: rgba(217, 119, 6, .4);--panel-border-device: rgba(8, 145, 178, .4)}.dark-theme{--text: #e4e4e4;--text-light: #e2e8f0;--text-muted: #888;--bg-body-from: #16243d;--bg-body-to: #0d172d;--bg-surface: rgba(0, 0, 0, .3);--bg-surface-light: rgba(0, 0, 0, .2);--bg-surface-deep: rgba(0, 0, 0, .15);--bg-sidebar: rgba(0, 0, 0, .4);--bg-dialog-from: #243858;--bg-dialog-to: #1b2b47;--bg-hover: rgba(255, 255, 255, .04);--border: rgba(255, 255, 255, .08);--border-subtle: rgba(255, 255, 255, .03);--border-faint: rgba(255, 255, 255, .06);--border-dim: rgba(255, 255, 255, .05);--border-light: rgba(255, 255, 255, .1);--primary: #5b8def;--accent: #22d3ee;--success: #4ade80;--warn: #f87171;--user: #fbbf24;--comment: #9ca3af;--trade: #7eb8da;--accent-bg: rgba(34, 211, 238, .2);--success-bg: rgba(16, 185, 129, .2);--comment-bg: rgba(156, 163, 175, .2);--user-bg: rgba(251, 191, 36, .2);--warn-bg: rgba(248, 113, 113, .2);--primary-bg: rgba(91, 141, 239, .3);--trade-bg: rgba(126, 184, 218, .2);--success-hint: rgba(74, 222, 128, .1);--panel-border-project: rgba(91, 141, 239, .3);--panel-border-user: rgba(251, 191, 36, .25);--panel-border-device: rgba(34, 211, 238, .2)}html{--mat-sys-background: #faf9fd;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #f2f0f4;--mat-sys-inverse-primary: #abc7ff;--mat-sys-inverse-surface: #2f3033;--mat-sys-on-background: #1a1b1f;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #00458f;--mat-sys-on-primary-fixed: #001b3f;--mat-sys-on-primary-fixed-variant: #00458f;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #3e4759;--mat-sys-on-secondary-fixed: #131c2b;--mat-sys-on-secondary-fixed-variant: #3e4759;--mat-sys-on-surface: #1a1b1f;--mat-sys-on-surface-variant: #44474e;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #00458f;--mat-sys-on-tertiary-fixed: #001b3f;--mat-sys-on-tertiary-fixed-variant: #00458f;--mat-sys-outline: #74777f;--mat-sys-outline-variant: #c4c6d0;--mat-sys-primary: #005cbb;--mat-sys-primary-container: #d7e3ff;--mat-sys-primary-fixed: #d7e3ff;--mat-sys-primary-fixed-dim: #abc7ff;--mat-sys-scrim: #000000;--mat-sys-secondary: #565e71;--mat-sys-secondary-container: #dae2f9;--mat-sys-secondary-fixed: #dae2f9;--mat-sys-secondary-fixed-dim: #bec6dc;--mat-sys-shadow: #000000;--mat-sys-surface: #faf9fd;--mat-sys-surface-bright: #faf9fd;--mat-sys-surface-container: #efedf0;--mat-sys-surface-container-high: #e9e7eb;--mat-sys-surface-container-highest: #e3e2e6;--mat-sys-surface-container-low: #f4f3f6;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #dbd9dd;--mat-sys-surface-tint: #005cbb;--mat-sys-surface-variant: #e0e2ec;--mat-sys-tertiary: #005cbb;--mat-sys-tertiary-container: #d7e3ff;--mat-sys-tertiary-fixed: #d7e3ff;--mat-sys-tertiary-fixed-dim: #abc7ff;--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-checkbox-touch-target-display: block;--mat-checkbox-state-layer-size: 36px;--mat-chip-container-height: 28px;--mat-expansion-header-collapsed-state-height: 44px;--mat-expansion-header-expanded-state-height: 60px;--mat-fab-small-touch-target-display: ;--mat-fab-touch-target-display: block;--mat-button-filled-touch-target-display: block;--mat-button-filled-container-height: 36px;--mat-button-outlined-container-height: 36px;--mat-button-outlined-touch-target-display: block;--mat-button-protected-touch-target-display: block;--mat-button-protected-container-height: 36px;--mat-button-text-touch-target-display: block;--mat-button-text-container-height: 36px;--mat-button-tonal-container-height: 36px;--mat-button-tonal-touch-target-display: block;--mat-form-field-container-height: 52px;--mat-form-field-filled-label-display: block;--mat-form-field-container-vertical-padding: 14px;--mat-form-field-filled-with-label-container-padding-top: 22px;--mat-form-field-filled-with-label-container-padding-bottom: 6px;--mat-icon-button-touch-target-display: block;--mat-icon-button-state-layer-size: 36px;--mat-list-list-item-leading-icon-start-space: 12px;--mat-list-list-item-leading-icon-end-space: 12px;--mat-list-list-item-one-line-container-height: 44px;--mat-list-list-item-two-line-container-height: 60px;--mat-list-list-item-three-line-container-height: 84px;--mat-paginator-container-size: 52px;--mat-paginator-form-field-container-height: 40px;--mat-paginator-form-field-container-vertical-padding: 8px;--mat-paginator-touch-target-display: block;--mat-radio-touch-target-display: block;--mat-radio-state-layer-size: 36px;--mat-tab-container-height: 44px;--mat-select-arrow-transform: translateY(-8px);--mat-button-toggle-height: 40px;--mat-stepper-header-height: 68px;--mat-table-header-container-height: 52px;--mat-table-footer-container-height: 48px;--mat-table-row-item-container-height: 48px;--mat-toolbar-standard-height: 60px;--mat-toolbar-mobile-height: 52px;--mat-tree-node-min-height: 44px;--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.dark-theme{--mat-sys-background: #121316;--mat-sys-error: #ffb4ab;--mat-sys-error-container: #93000a;--mat-sys-inverse-on-surface: #2f3033;--mat-sys-inverse-primary: #005cbb;--mat-sys-inverse-surface: #e3e2e6;--mat-sys-on-background: #e3e2e6;--mat-sys-on-error: #690005;--mat-sys-on-error-container: #ffdad6;--mat-sys-on-primary: #002f65;--mat-sys-on-primary-container: #d7e3ff;--mat-sys-on-primary-fixed: #001b3f;--mat-sys-on-primary-fixed-variant: #00458f;--mat-sys-on-secondary: #283041;--mat-sys-on-secondary-container: #dae2f9;--mat-sys-on-secondary-fixed: #131c2b;--mat-sys-on-secondary-fixed-variant: #3e4759;--mat-sys-on-surface: #e3e2e6;--mat-sys-on-surface-variant: #e0e2ec;--mat-sys-on-tertiary: #002f65;--mat-sys-on-tertiary-container: #d7e3ff;--mat-sys-on-tertiary-fixed: #001b3f;--mat-sys-on-tertiary-fixed-variant: #00458f;--mat-sys-outline: #8e9099;--mat-sys-outline-variant: #44474e;--mat-sys-primary: #abc7ff;--mat-sys-primary-container: #00458f;--mat-sys-primary-fixed: #d7e3ff;--mat-sys-primary-fixed-dim: #abc7ff;--mat-sys-scrim: #000000;--mat-sys-secondary: #bec6dc;--mat-sys-secondary-container: #3e4759;--mat-sys-secondary-fixed: #dae2f9;--mat-sys-secondary-fixed-dim: #bec6dc;--mat-sys-shadow: #000000;--mat-sys-surface: #121316;--mat-sys-surface-bright: #38393c;--mat-sys-surface-container: #1f2022;--mat-sys-surface-container-high: #292a2c;--mat-sys-surface-container-highest: #343537;--mat-sys-surface-container-low: #1a1b1f;--mat-sys-surface-container-lowest: #0d0e11;--mat-sys-surface-dim: #121316;--mat-sys-surface-tint: #abc7ff;--mat-sys-surface-variant: #44474e;--mat-sys-tertiary: #abc7ff;--mat-sys-tertiary-container: #00458f;--mat-sys-tertiary-fixed: #d7e3ff;--mat-sys-tertiary-fixed-dim: #abc7ff;--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-checkbox-touch-target-display: block;--mat-checkbox-state-layer-size: 36px;--mat-chip-container-height: 28px;--mat-expansion-header-collapsed-state-height: 44px;--mat-expansion-header-expanded-state-height: 60px;--mat-fab-small-touch-target-display: ;--mat-fab-touch-target-display: block;--mat-button-filled-touch-target-display: block;--mat-button-filled-container-height: 36px;--mat-button-outlined-container-height: 36px;--mat-button-outlined-touch-target-display: block;--mat-button-protected-touch-target-display: block;--mat-button-protected-container-height: 36px;--mat-button-text-touch-target-display: block;--mat-button-text-container-height: 36px;--mat-button-tonal-container-height: 36px;--mat-button-tonal-touch-target-display: block;--mat-form-field-container-height: 52px;--mat-form-field-filled-label-display: block;--mat-form-field-container-vertical-padding: 14px;--mat-form-field-filled-with-label-container-padding-top: 22px;--mat-form-field-filled-with-label-container-padding-bottom: 6px;--mat-icon-button-touch-target-display: block;--mat-icon-button-state-layer-size: 36px;--mat-list-list-item-leading-icon-start-space: 12px;--mat-list-list-item-leading-icon-end-space: 12px;--mat-list-list-item-one-line-container-height: 44px;--mat-list-list-item-two-line-container-height: 60px;--mat-list-list-item-three-line-container-height: 84px;--mat-paginator-container-size: 52px;--mat-paginator-form-field-container-height: 40px;--mat-paginator-form-field-container-vertical-padding: 8px;--mat-paginator-touch-target-display: block;--mat-radio-touch-target-display: block;--mat-radio-state-layer-size: 36px;--mat-tab-container-height: 44px;--mat-select-arrow-transform: translateY(-8px);--mat-button-toggle-height: 40px;--mat-stepper-header-height: 68px;--mat-table-header-container-height: 52px;--mat-table-footer-container-height: 48px;--mat-table-row-item-container-height: 48px;--mat-toolbar-standard-height: 60px;--mat-toolbar-mobile-height: 52px;--mat-tree-node-min-height: 44px;--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}*{margin:0;padding:0;box-sizing:border-box}body{font-family:system-ui;background:linear-gradient(135deg,var(--bg-body-from) 0%,var(--bg-body-to) 100%);color:var(--text);min-height:100vh;font-size:14px;overflow:hidden;transition:background .3s ease,color .3s ease}.firstBaseColorFill{fill:currentColor}.mat-mdc-dialog-container{--mat-dialog-container-shape: 8px;--mat-dialog-container-color: transparent;background:linear-gradient(145deg,var(--bg-dialog-from) 0%,var(--bg-dialog-to) 100%)}.mat-mdc-dialog-container{--mat-dialog-container-max-width: 1000px}.mat-mdc-form-field{--mat-form-field-container-text-size: 13px}.mat-expansion-panel{background:transparent!important;box-shadow:none!important}.mat-mdc-select-panel{--mat-select-panel-background-color: var(--bg-body-from)}.mat-mdc-chip{--mdc-chip-label-text-size: 10px;--mdc-chip-container-height: 20px;min-width:60px;text-align:center;font-weight:600}.mat-mdc-chip.knx,.mat-mdc-chip.knx-positive,.mat-mdc-chip.knx-negative{background-color:var(--accent-bg)!important;border-color:var(--accent)!important}.mat-mdc-chip.knx .mdc-evolution-chip__text-label,.mat-mdc-chip.knx-positive .mdc-evolution-chip__text-label,.mat-mdc-chip.knx-negative .mdc-evolution-chip__text-label{color:var(--accent)!important}.mat-mdc-chip.acceptance,.mat-mdc-chip.acceptance-positive{background-color:var(--success-bg)!important;border-color:var(--success-soft)!important}.mat-mdc-chip.acceptance .mdc-evolution-chip__text-label,.mat-mdc-chip.acceptance-positive .mdc-evolution-chip__text-label{color:var(--success-soft)!important}.mat-mdc-chip.acceptance-negative{background-color:var(--warn-bg)!important;border-color:var(--warn)!important}.mat-mdc-chip.acceptance-negative .mdc-evolution-chip__text-label{color:var(--warn)!important}.mat-mdc-chip.comment,.mat-mdc-chip.comment-positive,.mat-mdc-chip.comment-negative{background-color:var(--comment-bg)!important;border-color:var(--comment)!important}.mat-mdc-chip.comment .mdc-evolution-chip__text-label,.mat-mdc-chip.comment-positive .mdc-evolution-chip__text-label,.mat-mdc-chip.comment-negative .mdc-evolution-chip__text-label{color:var(--comment)!important}.mat-mdc-chip.session{background-color:var(--user-bg)!important;border-color:var(--user)!important}.mat-mdc-chip.session .mdc-evolution-chip__text-label{color:var(--user)!important}.mat-mdc-chip.session-positive{background-color:var(--success-bg)!important;border-color:var(--success)!important}.mat-mdc-chip.session-positive .mdc-evolution-chip__text-label{color:var(--success)!important}.mat-mdc-chip.session-negative{background-color:var(--warn-bg)!important;border-color:var(--warn)!important}.mat-mdc-chip.session-negative .mdc-evolution-chip__text-label{color:var(--warn)!important}.mat-mdc-chip.confirmation{background-color:var(--success-bg)!important;border-color:var(--success)!important}.mat-mdc-chip.confirmation .mdc-evolution-chip__text-label{color:var(--success)!important}.mat-mdc-chip.response{background-color:var(--primary-bg)!important;border-color:var(--primary)!important}.mat-mdc-chip.response .mdc-evolution-chip__text-label{color:var(--primary)!important}.coverage-tooltip{white-space:pre-line}
