@charset "UTF-8";html{color-scheme:light;--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, #42008a);--mat-sys-on-tertiary-container: light-dark(#5f00c0, #ecdcff);--mat-sys-on-tertiary-fixed: light-dark(#270057, #270057);--mat-sys-on-tertiary-fixed-variant: light-dark(#5f00c0, #5f00c0);--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(#7d00fa, #d5baff);--mat-sys-tertiary-container: light-dark(#ecdcff, #5f00c0);--mat-sys-tertiary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-tertiary-fixed-dim: light-dark(#d5baff, #d5baff);--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 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-body-large-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-body-medium-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-body-small-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-display-large-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-display-medium-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-display-small-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-headline-large-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-headline-medium-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-headline-small-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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: 550 .875rem / 1.25rem Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-label-large-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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: 550;--mat-sys-label-large-weight-prominent: 650;--mat-sys-label-medium: 550 .75rem / 1rem Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-label-medium-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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: 550;--mat-sys-label-medium-weight-prominent: 650;--mat-sys-label-small: 550 .688rem / 1rem Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-label-small-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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: 550;--mat-sys-title-large: 400 1.375rem / 1.75rem Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-title-large-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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: 550 1rem / 1.5rem Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-title-medium-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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: 550;--mat-sys-title-small: 550 .875rem / 1.25rem Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, sans-serif;--mat-sys-title-small-font: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Arial, 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: 550;--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}:root{--app-bg: #f6f7f9;--app-surface: #ffffff;--app-surface-2: #f9fafb;--app-raised: #ffffff;--app-border: #e4e8ee;--app-border-strong: #d5dbe4;--app-text: #111827;--app-text-2: #5b6472;--app-text-3: #68717e;--app-text-inverse: #ffffff;--app-primary: #0064cc;--app-primary-hover: #0057b8;--app-primary-soft: #eef5ff;--app-on-primary: #ffffff;--app-good: #0ca30c;--app-warn: #fab219;--app-crit: #d03b3b;--app-info: #2a78d6;--app-good-text: #047857;--app-warn-text: #b45309;--app-crit-text: #c62828;--app-info-text: #0064cc;--app-good-bg: #ecfdf3;--app-warn-bg: #fff8eb;--app-crit-bg: #fef2f2;--app-info-bg: #eff6ff;--viz-cat-1: #2a78d6;--viz-cat-2: #eb6834;--viz-cat-3: #1baf7a;--viz-series: #2a78d6;--viz-series-fill: rgb(42 120 214 / 12%);--viz-grid: #eceff3;--viz-axis: #9aa3b0;--app-radius: 10px;--app-radius-sm: 7px;--app-radius-lg: 14px;--app-shadow-xs: 0 1px 2px rgb(16 24 40 / 5%);--app-shadow-sm: 0 1px 3px rgb(16 24 40 / 8%), 0 1px 2px rgb(16 24 40 / 4%);--app-shadow-md: 0 4px 12px rgb(16 24 40 / 8%);--app-shadow-pop: 0 12px 32px rgb(16 24 40 / 12%);--app-sidebar-bg: #101725;--app-sidebar-text: #c8d1e0;--app-sidebar-icon: #8c99ad;--app-sidebar-active-bg: rgb(59 130 246 / 16%);--app-sidebar-active-text: #ffffff;--app-sidebar-hover: rgb(255 255 255 / 6%);--app-sidebar-section: #7d8ca4;--app-sidebar-divider: rgb(255 255 255 / 8%);--app-header-h: 60px;--app-sidenav-w: 252px;--app-ease: cubic-bezier(.4, 0, .2, 1)}:root,:root.dark{--mat-sys-surface: var(--app-surface);--mat-sys-surface-container-lowest: var(--app-surface);--mat-sys-surface-container-low: var(--app-surface);--mat-sys-surface-container: var(--app-surface);--mat-sys-surface-container-high: var(--app-surface-2);--mat-sys-surface-container-highest: var(--app-surface-2);--mat-sys-surface-variant: var(--app-surface-2);--mat-sys-background: var(--app-bg);--mat-sys-on-surface: var(--app-text);--mat-sys-on-surface-variant: var(--app-text-2);--mat-sys-on-background: var(--app-text);--mat-sys-primary: var(--app-primary);--mat-sys-on-primary: var(--app-on-primary);--mat-sys-primary-container: var(--app-primary-soft);--mat-sys-on-primary-container: var(--app-primary);--mat-sys-error: var(--app-crit);--mat-sys-on-error: #ffffff;--mat-sys-outline: var(--app-border-strong);--mat-sys-outline-variant: var(--app-border)}:root.dark{--app-bg: #22262e;--app-surface: #2a2f39;--app-surface-2: #313743;--app-raised: #333944;--app-border: #3a4150;--app-border-strong: #4a5364;--app-text: #e8ecf2;--app-text-2: #a8b3c4;--app-text-3: #8e9aad;--app-text-inverse: #1b1f27;--app-primary: #6ea8ff;--app-primary-hover: #8fbdff;--app-primary-soft: rgb(110 168 255 / 18%);--app-on-primary: #0b1220;--app-good: #22c55e;--app-warn: #fab219;--app-crit: #ef5350;--app-info: #5a9bf0;--app-good-text: #4ade80;--app-warn-text: #fbbf24;--app-crit-text: #ff8a80;--app-info-text: #7cb0f0;--app-good-bg: rgb(34 197 94 / 15%);--app-warn-bg: rgb(250 178 25 / 15%);--app-crit-bg: rgb(239 83 80 / 17%);--app-info-bg: rgb(90 155 240 / 15%);--viz-cat-1: #5a9bf0;--viz-cat-2: #e8703a;--viz-cat-3: #22b583;--viz-series: #5a9bf0;--viz-series-fill: rgb(90 155 240 / 18%);--viz-grid: #363d4a;--viz-axis: #8592a5;--app-shadow-xs: 0 1px 2px rgb(0 0 0 / 24%);--app-shadow-sm: 0 1px 3px rgb(0 0 0 / 30%);--app-shadow-md: 0 4px 12px rgb(0 0 0 / 34%);--app-shadow-pop: 0 12px 32px rgb(0 0 0 / 46%);--app-sidebar-bg: #1b1f27;--app-sidebar-text: #c8d1de;--app-sidebar-icon: #98a3b5;--app-sidebar-active-bg: rgb(59 130 246 / 24%);--app-sidebar-hover: rgb(255 255 255 / 6%);--app-sidebar-section: #8b95a8;--app-sidebar-divider: rgb(255 255 255 / 9%);color-scheme:dark}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;font-display:block;src:url(/fonts/material-icons-outlined.woff2) format("woff2")}.material-icons{font-family:Material Icons,sans-serif;font-weight:400;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;font-feature-settings:"liga";-webkit-font-smoothing:antialiased}html,body{height:100%;margin:0}body{background:var(--app-bg);color:var(--app-text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}.app-card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius);box-shadow:var(--app-shadow-xs)}.app-card-head{display:flex;gap:12px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--app-border)}.app-card-head h2{margin:0;font-size:14px;font-weight:600;letter-spacing:-.01em}.app-card-head .sub{margin:0;font-size:12px;color:var(--app-text-2)}.app-card-head mat-icon{width:18px;height:18px;font-size:18px;color:var(--app-text-3)}.app-pill{display:inline-flex;gap:5px;align-items:center;padding:2px 9px 2px 6px;font-size:12px;font-weight:550;line-height:1.65;white-space:nowrap;border-radius:999px}.app-pill mat-icon{width:14px;height:14px;font-size:14px}.app-pill--success{color:var(--app-good-text);background:var(--app-good-bg)}.app-pill--warning{color:var(--app-warn-text);background:var(--app-warn-bg)}.app-pill--error{color:var(--app-crit-text);background:var(--app-crit-bg)}.app-pill--info{color:var(--app-info-text);background:var(--app-info-bg)}.app-table-scroll{width:100%;overflow-x:auto}table.mat-mdc-table{width:100%;background:transparent}table.mat-mdc-table th.mat-mdc-header-cell{padding:0 16px;font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--app-text-2);text-transform:uppercase;background:var(--app-surface-2);border-bottom:1px solid var(--app-border);white-space:nowrap}table.mat-mdc-table td.mat-mdc-cell{padding:0 16px;font-size:13px;color:var(--app-text);border-bottom:1px solid var(--app-border)}table.mat-mdc-table tr.mat-mdc-row{height:56px;transition:background .12s var(--app-ease)}table.mat-mdc-table tr.mat-mdc-row:hover{background:var(--app-surface-2)}table.mat-mdc-table tr.mat-mdc-row:last-child td.mat-mdc-cell{border-bottom:none}.app-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:40px 24px;text-align:center}.app-empty .icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:6px;background:var(--app-surface-2);border:1px solid var(--app-border);border-radius:50%}.app-empty .icon mat-icon{width:22px;height:22px;font-size:22px;color:var(--app-text-3)}.app-empty h3{margin:0;font-size:14px;font-weight:600}.app-empty p{max-width:380px;margin:0;font-size:13px;color:var(--app-text-2)}.app-empty .actions{margin-top:10px}.app-muted{color:var(--app-text-2)}.app-truncate{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-spacer{flex:1 1 auto}.app-row{display:flex;gap:12px;align-items:center}.app-stack{display:flex;flex-direction:column}.app-grid{display:grid;gap:16px}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.app-snack--success{--mdc-snackbar-container-color: #0f5132}.app-snack--error{--mdc-snackbar-container-color: #7f1d1d}.app-snack--warning{--mdc-snackbar-container-color: #7c4a03}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
