@charset "UTF-8";:root{--app-bg: #0B1220;--panel-bg: #121B2E;--panel-bg-raised: #182640;--panel-bg-inset: #0E1526;--border-color: #253355;--border-color-subtle: #1B2740;--accent-primary: #3DA9FC;--accent-primary-dim: #1E5FA8;--accent-secondary: #7C5CFC;--status-success: #34D399;--status-success-bg: rgba(52, 211, 153, .12);--status-warning: #FBBF24;--status-warning-bg: rgba(251, 191, 36, .12);--status-error: #F87171;--status-error-bg: rgba(248, 113, 113, .14);--status-info: #38BDF8;--status-info-bg: rgba(56, 189, 248, .12);--text-primary: #E8EDF7;--text-secondary: #9AA7C2;--text-muted: #64708C;--text-on-accent: #071018;--chart-1: #3DA9FC;--chart-2: #34D399;--chart-3: #FBBF24;--chart-4: #F87171;--chart-5: #7C5CFC;--chart-6: #F472B6;--chart-7: #2DD4BF;--chart-8: #FB923C;--elevation-1: 0 0 0 1px var(--border-color-subtle);--elevation-2: 0 4px 16px rgba(0,0,0,.35), 0 0 0 1px var(--border-color-subtle);--elevation-focus-glow: 0 0 0 3px rgba(61, 169, 252, .25);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-pill: 999px;--space-unit: 4px;--font-family-ui: "Inter", sans-serif;--font-family-mono: "JetBrains Mono", "IBM Plex Mono", monospace;--font-scale-xs: 11px;--font-scale-sm: 13px;--font-scale-base: 14px;--font-scale-md: 16px;--font-scale-lg: 20px;--font-scale-xl: 28px;--font-scale-display: 36px;--motion-fast: .12s;--motion-base: .2s;--motion-slow: .4s;--motion-easing: cubic-bezier(.4, 0, .2, 1);--sidebar-width: 220px;--sidebar-collapsed-width: 64px;--filter-panel-width: 240px;--header-height: 56px}[data-theme=light]{--app-bg: #F4F6FA;--panel-bg: #FFFFFF;--panel-bg-raised: #FFFFFF;--panel-bg-inset: #EEF1F7;--border-color: #DDE3EF;--border-color-subtle: #E7EBF3;--text-primary: #131B2C;--text-secondary: #4B5670;--text-muted: #8590A8;--elevation-2: 0 2px 12px rgba(20,30,60,.08), 0 0 0 1px var(--border-color-subtle)}body{font-family:Inter,sans-serif;font-size:14px}.kpi-value{font-family:JetBrains Mono,monospace;font-size:28px;font-weight:700;line-height:1.1}.kpi-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary)}.section-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-primary)}.table-header{font-size:11px;font-weight:600;color:var(--color-text-secondary)}.table-cell{font-size:13px;font-weight:400}.num-cell{font-family:JetBrains Mono,monospace;font-size:13px}[data-theme=dark] .mat-mdc-select-panel,.mat-mdc-select-panel{background:var(--panel-bg-raised)!important}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{background:var(--app-bg);font-family:Inter,sans-serif;font-size:var(--font-scale-base);color:var(--text-primary);transition:background var(--motion-base) var(--motion-easing)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.shell{display:grid;grid-template-rows:var(--header-height) 1fr;grid-template-columns:var(--sidebar-collapsed-width) 1fr var(--filter-panel-width);height:100vh;overflow:hidden;transition:grid-template-columns var(--motion-base) var(--motion-easing)}.shell.shell--expanded{grid-template-columns:var(--sidebar-width) 1fr var(--filter-panel-width)}.shell.shell--filter-collapsed{grid-template-columns:var(--sidebar-collapsed-width) 1fr 40px}.shell.shell--expanded.shell--filter-collapsed{grid-template-columns:var(--sidebar-width) 1fr 40px}.shell__header{grid-column:1/-1}.shell__sidebar{grid-row:2;overflow-y:auto}.shell__main{grid-row:2;overflow-y:auto;padding:20px}.shell__filters{grid-row:2;overflow-y:auto}.kpi-cards-row{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.charts-row{display:grid;gap:12px;margin-bottom:20px}.charts-row--2{grid-template-columns:1fr 1fr}.charts-row--3{grid-template-columns:2fr 1fr 1fr}.chart-card{background:var(--panel-bg);border-radius:var(--radius-md);border:1px solid var(--border-color-subtle);padding:16px}.chart-card__title{font-size:var(--font-scale-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin-bottom:12px}.chart-card--error{border-left:3px solid var(--status-error)}.chart-card--callout{background:var(--panel-bg-inset);border-left:3px solid var(--accent-primary);border-radius:var(--radius-sm);padding:12px 16px}echarts{width:100%;display:block}.data-table{width:100%;border-collapse:collapse}.data-table th{font-size:var(--font-scale-xs);font-weight:600;color:var(--text-secondary);padding:10px 12px;border-bottom:1px solid var(--border-color);text-align:left;text-transform:uppercase;letter-spacing:.05em;background:var(--panel-bg-raised);position:sticky;top:0;z-index:2}.data-table td{font-size:var(--font-scale-sm);font-weight:400;padding:8px 12px;border-bottom:1px solid var(--border-color-subtle);color:var(--text-primary)}.data-table tr:nth-child(2n) td{background:var(--panel-bg-inset)}.data-table tr:hover td{background:#3da9fc0f;border-left:3px solid var(--accent-primary);padding-left:9px}.data-table tr.row-red td{border-left:3px solid var(--status-error);background:var(--status-error-bg)}.data-table tr.row-amber td{border-left:3px solid var(--status-warning);background:var(--status-warning-bg)}.data-table tr.row-green td{border-left:3px solid var(--status-success);background:var(--status-success-bg)}.table-scroll{overflow:auto;max-height:340px;border-radius:var(--radius-sm);border:1px solid var(--border-color-subtle)}.table-scroll .data-table th{box-shadow:0 2px 3px -2px #00000059}.table-search{display:flex;align-items:center;gap:6px;margin-bottom:8px;max-width:320px;background:var(--panel-bg-raised);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:0 8px;height:32px}.table-search:focus-within{border-color:var(--accent-primary)}.table-search>.mat-icon{color:var(--text-muted);font-size:16px;width:16px;height:16px;flex-shrink:0}.table-search input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:var(--font-scale-sm);height:100%}.table-search input::placeholder{color:var(--text-muted)}.table-search .table-search__clear{color:var(--text-muted);width:22px;height:22px;line-height:22px;flex-shrink:0}.table-search .table-search__clear .mat-icon{font-size:16px;width:16px;height:16px}.table-no-matches{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;font-size:var(--font-scale-sm);color:var(--text-muted);background:var(--panel-bg-inset);border:1px dashed var(--border-color);border-radius:var(--radius-sm)}.table-no-matches .mat-icon{font-size:18px;width:18px;height:18px}.table-count{font-size:10px;font-weight:500;color:var(--text-muted);background:var(--panel-bg-inset);border:1px solid var(--border-color-subtle);border-radius:var(--radius-pill);padding:1px 8px;margin-left:6px;white-space:nowrap}.pill{display:inline-block;padding:2px 8px;border-radius:var(--radius-pill);font-size:var(--font-scale-xs);font-weight:600;white-space:nowrap}.pill--green,.pill--success{background:var(--status-success-bg);color:var(--status-success)}.pill--amber,.pill--warning{background:var(--status-warning-bg);color:var(--status-warning)}.pill--red,.pill--error{background:var(--status-error-bg);color:var(--status-error)}.pill--grey{background:#94a3b81f;color:var(--text-muted)}.table-cell{font-family:var(--font-family-ui)}.num-cell{font-family:var(--font-family-mono);text-align:right;font-variant-numeric:tabular-nums}.prototype-watermark{position:fixed;bottom:12px;right:16px;font-size:10px;color:var(--text-muted);opacity:.5;z-index:9999}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--panel-bg) 25%,var(--panel-bg-raised) 50%,var(--panel-bg) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite var(--motion-easing);border-radius:var(--radius-sm)}.skeleton--text{height:14px;width:100%;margin-bottom:8px}.skeleton--card{height:120px;width:100%}.skeleton--chart{height:260px;width:100%}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle;flex-shrink:0}.status-dot--success{background:var(--status-success)}.status-dot--warning{background:var(--status-warning)}.status-dot--error{background:var(--status-error)}.status-dot--info{background:var(--status-info)}.status-dot--grey{background:var(--text-muted)}@keyframes status-pulse{0%{box-shadow:0 0 0 0 var(--status-warning)}70%{box-shadow:0 0 0 6px transparent}to{box-shadow:0 0 0 0 transparent}}.status-dot--pulse{animation:status-pulse 2s infinite var(--motion-easing)}.accent-bar{position:absolute;top:0;left:0;right:0;height:2px;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.accent-bar--success{background:var(--status-success)}.accent-bar--warning{background:var(--status-warning)}.accent-bar--error{background:var(--status-error)}.accent-bar--info{background:var(--status-info)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 16px;color:var(--text-muted);text-align:center}.empty-state__icon{font-size:40px;width:40px;height:40px;margin-bottom:12px;opacity:.5}.empty-state__text{font-size:var(--font-scale-sm)}.avatar-initial{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary-dim),var(--accent-primary));color:var(--text-on-accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.avatar-initial--sm{width:24px;height:24px;font-size:10px}.avatar-initial--ring{position:relative}.avatar-initial--ring:after{content:"";position:absolute;inset:-3px;border-radius:50%;border:2px solid var(--border-color)}.avatar-initial--ring.success:after{border-color:var(--status-success)}.avatar-initial--ring.warning:after{border-color:var(--status-warning)}.avatar-initial--ring.error:after{border-color:var(--status-error)}.avatar-initial--ring.info:after{border-color:var(--status-info)}.mat-mdc-table{background:transparent!important}.mat-mdc-paginator{background:transparent!important;color:var(--text-secondary)!important}.mat-mdc-select-value{color:var(--text-primary)!important}.mat-mdc-select-arrow{color:var(--text-muted)!important}.mat-mdc-option{font-size:13px!important}.mdc-text-field--outlined{--mdc-outlined-text-field-input-text-color: var(--text-primary)}.mdc-text-field--outlined .mdc-notched-outline__leading,.mdc-text-field--outlined .mdc-notched-outline__notch,.mdc-text-field--outlined .mdc-notched-outline__trailing{border-color:var(--border-color)!important}.mdc-text-field--outlined.mdc-text-field--focused .mdc-notched-outline__leading,.mdc-text-field--outlined.mdc-text-field--focused .mdc-notched-outline__notch,.mdc-text-field--outlined.mdc-text-field--focused .mdc-notched-outline__trailing{border-color:var(--accent-primary)!important}.mdc-text-field--outlined .mdc-floating-label{color:var(--text-muted)!important}.mat-mdc-form-field-focus-overlay{background:var(--accent-primary)!important;opacity:.08!important}.mat-mdc-dialog-surface,.mat-mdc-snack-bar-surface{background:var(--panel-bg-raised)!important;color:var(--text-primary)!important}.ee-bp-tooltip{white-space:pre-line!important;max-width:280px!important;font-size:11px!important;line-height:1.45!important}.drop-zone{border:2px dashed var(--border-color);background:var(--panel-bg-inset);border-radius:var(--radius-md);padding:32px;text-align:center;transition:all var(--motion-base) var(--motion-easing);cursor:pointer}.drop-zone:hover,.drop-zone--active{border-color:var(--accent-primary);transform:scale(1.01);box-shadow:var(--elevation-focus-glow)}.segmented-progress{height:6px;border-radius:3px;background:var(--panel-bg-inset);overflow:hidden;position:relative}.segmented-progress__bar{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--accent-primary),var(--accent-primary-dim),var(--accent-primary));background-size:200% 100%;transition:width var(--motion-slow) var(--motion-easing)}.segmented-progress__bar--shimmer{animation:shimmer 1.5s infinite}.pipeline-dots-wrapper{display:flex;justify-content:center;width:100%}.pipeline-dots{display:flex;align-items:center;gap:0;width:max-content}.pipeline-dots__dot{width:14px;height:14px;min-width:14px;border-radius:50%;background:var(--border-color);flex-shrink:0;position:relative;transition:all var(--motion-base) var(--motion-easing)}.pipeline-dots__dot--complete{background:var(--status-success)}.pipeline-dots__dot--current{background:var(--accent-primary);box-shadow:0 0 0 4px #3da9fc33;animation:status-pulse 2s infinite}.pipeline-dots__dot--error{background:var(--status-error)}.pipeline-dots__dot--pending{background:var(--border-color);opacity:.5}.pipeline-dots__dot--error:after{content:"\2715";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:8px;color:#fff;font-weight:700}.pipeline-dots__line{width:70px;height:2px;background:var(--border-color);flex-shrink:0;transition:all var(--motion-base) var(--motion-easing)}.pipeline-dots__line--complete{background:var(--status-success)}.pipeline-dots__line--current{background:var(--accent-primary);opacity:.5}.pipeline-labels{display:flex;width:max-content;margin-top:4px;font-size:10px;color:var(--text-muted)}.pipeline-labels span{width:79px;flex-shrink:0;text-align:left;white-space:nowrap}.upload-dialog-container{padding:20px 24px;background:var(--surface-card);border-radius:12px}.upload-dialog-header{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#f5f8ff,#fff);padding:14px 18px;border-radius:10px;border:1px solid var(--border-color);margin-bottom:16px}.upload-dialog-header h1{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.upload-dialog-header p{margin:4px 0 0;font-size:13px;color:var(--text-secondary)}.upload-dialog .mat-mdc-dialog-container{padding:0!important;border-radius:12px;overflow:hidden}.cdk-global-overlay-wrapper{display:flex!important;justify-content:center!important;align-items:center!important}.permission-disabled{opacity:.45!important;cursor:not-allowed!important;pointer-events:none!important;filter:grayscale(.6)!important}.mat-mdc-snack-bar-container{--mdc-snackbar-container-color: transparent !important;--mdc-snackbar-supporting-text-color: var(--text-primary) !important;min-width:320px!important;max-width:520px!important;padding:0!important}.mat-mdc-snack-bar-container .mdc-snackbar__surface{min-height:48px!important;padding:0 16px!important;border-radius:var(--radius-md)!important;box-shadow:0 10px 30px #0000002e,0 2px 8px #00000014!important}.mat-mdc-snack-bar-label{font-family:var(--font-family-ui)!important;font-size:var(--font-scale-sm)!important;font-weight:600!important;line-height:1.4!important}.custom-snackbar .mdc-snackbar__surface{background:#3da9fc1f!important;border:1px solid rgba(61,169,252,.35)!important}.custom-snackbar .mat-mdc-snack-bar-label,.custom-snackbar .mat-mdc-snack-bar-action{color:var(--accent-primary)!important}.snackbar-success .mdc-snackbar__surface{background:#22c55e1f!important;border:1px solid rgba(34,197,94,.35)!important}.snackbar-success .mat-mdc-snack-bar-label,.snackbar-success .mat-mdc-snack-bar-action{color:var(--status-success)!important}.snackbar-error .mdc-snackbar__surface{background:#ef44441f!important;border:1px solid rgba(239,68,68,.35)!important}.snackbar-error .mat-mdc-snack-bar-label,.snackbar-error .mat-mdc-snack-bar-action{color:var(--status-error)!important}.mat-mdc-snack-bar-action:hover{background:#3da9fc14!important}.cdk-global-overlay-wrapper{display:flex!important;justify-content:center!important;align-items:flex-end!important}.cdk-overlay-pane{margin-bottom:40px!important}@media(max-width:600px){.mat-mdc-snack-bar-container{min-width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;margin:8px 12px 0!important}.mat-mdc-snack-bar-container .mdc-snackbar__surface{min-height:46px!important}}
