:root{--ft-primary: #4b2a8c;--ft-primary-strong: #371d6b;--ft-primary-tint: #ece6f6;--ft-on-primary: #ffffff;--ft-bg: #f6f5f8;--ft-surface: #ffffff;--ft-neutral-tint: #ecebf0;--ft-border: #d6d3de;--ft-text: #1f1b2a;--ft-text-muted: #5b566b;--ft-status-running: #1f8a4c;--ft-status-idle: #b56a00;--ft-status-stopped: #c62f2f;--ft-status-nodata: #7a7786;--ft-status-running-tint: #e2f3e9;--ft-status-stopped-tint: #fae5e5;--ft-status-nodata-tint: #ecebf0;--ft-rail: #22113f;--ft-rail-text: #cdc3e3;--ft-rail-hover: rgb(255 255 255 / 10%);--ft-rail-active: #6b45b8;--ft-shadow-1: 0 1px 2px rgb(31 27 42 / 6%), 0 1px 3px rgb(31 27 42 / 8%);--ft-shadow-2: 0 8px 28px rgb(31 27 42 / 18%);--ft-radius-lg: .875rem;--ft-text-xs: .75rem;--ft-radius: .5rem;--ft-space-1: .25rem;--ft-space-2: .5rem;--ft-space-3: .75rem;--ft-space-4: 1rem;--ft-space-5: 1.5rem;--ft-space-6: 2rem;--ft-font: "Segoe UI", "Nirmala UI", "Noto Sans", "Noto Sans Devanagari", system-ui, sans-serif;--ft-text-sm: .875rem;--ft-text-md: 1rem;--ft-text-lg: 1.25rem;--ft-text-xl: 1.75rem}html{color-scheme:light;--mat-sys-background: var(--ft-bg);--mat-sys-error: var(--ft-status-stopped);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f5eff4, #323033);--mat-sys-inverse-primary: light-dark(#d5baff, #7d00fa);--mat-sys-inverse-surface: light-dark(#323033, #e6e1e6);--mat-sys-on-background: var(--ft-text);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: var(--ft-on-primary);--mat-sys-on-primary-container: var(--ft-primary-strong);--mat-sys-on-primary-fixed: light-dark(#270057, #270057);--mat-sys-on-primary-fixed-variant: light-dark(#5f00c0, #5f00c0);--mat-sys-on-secondary: light-dark(#ffffff, #352d40);--mat-sys-on-secondary-container: light-dark(#4b4357, #eadef7);--mat-sys-on-secondary-fixed: light-dark(#1f182a, #1f182a);--mat-sys-on-secondary-fixed-variant: light-dark(#4b4357, #4b4357);--mat-sys-on-surface: var(--ft-text);--mat-sys-on-surface-variant: var(--ft-text-muted);--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: var(--ft-border);--mat-sys-outline-variant: var(--ft-border);--mat-sys-primary: var(--ft-primary);--mat-sys-primary-container: var(--ft-primary-tint);--mat-sys-primary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-primary-fixed-dim: light-dark(#d5baff, #d5baff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#645b70, #cec2db);--mat-sys-secondary-container: light-dark(#eadef7, #4b4357);--mat-sys-secondary-fixed: light-dark(#eadef7, #eadef7);--mat-sys-secondary-fixed-dim: light-dark(#cec2db, #cec2db);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: var(--ft-surface);--mat-sys-surface-bright: light-dark(#fef8fc, #3b383c);--mat-sys-surface-container: var(--ft-neutral-tint);--mat-sys-surface-container-high: light-dark(#ede6eb, #2b292d);--mat-sys-surface-container-highest: light-dark(#e6e1e6, #363437);--mat-sys-surface-container-low: light-dark(#f8f2f6, #1d1b1e);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0f0d11);--mat-sys-surface-dim: light-dark(#ded8dd, #151316);--mat-sys-surface-tint: light-dark(#7d00fa, #d5baff);--mat-sys-surface-variant: light-dark(#e8e0eb, #49454e);--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: #332f37;--mat-sys-neutral10: #1d1b1e;--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 var(--ft-font);--mat-sys-body-large-font: var(--ft-font);--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 var(--ft-font);--mat-sys-body-medium-font: var(--ft-font);--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 var(--ft-font);--mat-sys-body-small-font: var(--ft-font);--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 var(--ft-font);--mat-sys-display-large-font: var(--ft-font);--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 var(--ft-font);--mat-sys-display-medium-font: var(--ft-font);--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 var(--ft-font);--mat-sys-display-small-font: var(--ft-font);--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 var(--ft-font);--mat-sys-headline-large-font: var(--ft-font);--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 var(--ft-font);--mat-sys-headline-medium-font: var(--ft-font);--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 var(--ft-font);--mat-sys-headline-small-font: var(--ft-font);--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 var(--ft-font);--mat-sys-label-large-font: var(--ft-font);--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 var(--ft-font);--mat-sys-label-medium-font: var(--ft-font);--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 var(--ft-font);--mat-sys-label-small-font: var(--ft-font);--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 var(--ft-font);--mat-sys-title-large-font: var(--ft-font);--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 var(--ft-font);--mat-sys-title-medium-font: var(--ft-font);--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 var(--ft-font);--mat-sys-title-small-font: var(--ft-font);--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: var(--ft-radius);--mat-sys-corner-none: 0;--mat-sys-corner-small: var(--ft-radius);--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}.ft-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--ft-space-2);min-height:2.5rem;padding:0 var(--ft-space-4);border:1px solid var(--ft-border);border-radius:var(--ft-radius);background:var(--ft-surface);color:var(--ft-text);font:inherit;font-size:var(--ft-text-sm);font-weight:600;line-height:1.2;white-space:nowrap;text-decoration:none;cursor:pointer;transition:background-color .12s,border-color .12s}.ft-btn:hover{border-color:var(--ft-primary);background:var(--ft-primary-tint)}.ft-btn:disabled{opacity:.5;cursor:default;pointer-events:none}.ft-btn--primary{border-color:var(--ft-primary);background:var(--ft-primary);color:var(--ft-on-primary)}.ft-btn--primary:hover{border-color:var(--ft-primary-strong);background:var(--ft-primary-strong)}.ft-btn--quiet{border-color:transparent;background:transparent;color:var(--ft-primary)}.ft-btn--round{width:2.5rem;padding:0;border-radius:50%;font-size:var(--ft-text-md)}.ft-btn--small{min-height:2rem;padding:0 var(--ft-space-3)}.ft-btn:focus-visible,.ft-chip:focus-visible,.ft-link:focus-visible,.ft-input:focus-visible,.ft-row-button:focus-visible{outline:2px solid var(--ft-primary);outline-offset:2px}.ft-link{display:inline-flex;align-items:center;gap:var(--ft-space-1);padding:0;border:0;border-radius:var(--ft-space-1);background:none;color:var(--ft-primary);font:inherit;font-size:var(--ft-text-sm);font-weight:600;cursor:pointer}.ft-link:hover{text-decoration:underline}.ft-chip{display:inline-flex;align-items:center;gap:var(--ft-space-2);min-height:2.25rem;padding:0 var(--ft-space-3);border:1px solid var(--ft-border);border-radius:var(--ft-radius);background:var(--ft-surface);color:var(--ft-text);font:inherit;font-size:var(--ft-text-sm);white-space:nowrap;cursor:pointer}.ft-chip:hover{border-color:var(--ft-primary)}.ft-chip--on{border-color:var(--ft-primary);background:var(--ft-primary-tint);color:var(--ft-primary-strong);font-weight:600}.ft-chip__count{font-variant-numeric:tabular-nums;color:var(--ft-text-muted)}.ft-chip__dot{width:.5rem;height:.5rem;border-radius:50%}.ft-tag{display:inline-flex;align-items:center;min-height:1.5rem;padding:0 var(--ft-space-2);border-radius:999px;background:var(--ft-primary-tint);color:var(--ft-primary-strong);font-size:var(--ft-text-xs);font-weight:600;white-space:nowrap}.ft-search{display:flex;align-items:center;gap:var(--ft-space-2);min-height:2.5rem;padding:0 var(--ft-space-3);border:1px solid transparent;border-radius:var(--ft-radius);background:var(--ft-neutral-tint);color:var(--ft-text-muted)}.ft-search:focus-within{border-color:var(--ft-primary);background:var(--ft-surface);box-shadow:0 0 0 1px var(--ft-primary)}.ft-search input{flex:1;min-width:0;border:0;outline:0;background:none;color:var(--ft-text);font:inherit;font-size:var(--ft-text-sm)}.ft-input{min-height:2.5rem;padding:0 var(--ft-space-3);border:1px solid var(--ft-border);border-radius:var(--ft-radius);background:var(--ft-surface);color:var(--ft-text);font:inherit;font-size:var(--ft-text-sm)}.ft-panel{border:1px solid var(--ft-border);border-radius:var(--ft-radius-lg);background:var(--ft-surface)}.ft-page{display:flex;flex-direction:column;gap:var(--ft-space-4);min-height:100%;padding:var(--ft-space-4)}.ft-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ft-space-3);padding:var(--ft-space-3) var(--ft-space-4)}.ft-toolbar__title{display:flex;align-items:center;gap:var(--ft-space-2);margin:0;font-size:var(--ft-text-md);font-weight:600}.ft-spacer{flex:1}.ft-muted{color:var(--ft-text-muted)}.ft-table-wrap{overflow:auto}.ft-table{width:100%;border-collapse:collapse;font-size:var(--ft-text-sm)}.ft-table th,.ft-table td{padding:var(--ft-space-3) var(--ft-space-4);text-align:start;vertical-align:top}.ft-table th{position:sticky;top:0;z-index:1;background:var(--ft-neutral-tint);font-weight:600;white-space:nowrap}.ft-table tbody tr{border-top:1px solid var(--ft-border)}.ft-table .ft-table__num{font-variant-numeric:tabular-nums;white-space:nowrap}.ft-table .ft-table__actions{display:flex;gap:var(--ft-space-2);margin-block:-.5rem}@media(max-width:720px){.ft-table thead{display:none}.ft-table tbody tr{display:block;padding:var(--ft-space-2) 0}.ft-table td{display:flex;gap:var(--ft-space-3);padding:var(--ft-space-1) var(--ft-space-4)}.ft-table td:before{flex:0 0 38%;color:var(--ft-text-muted);content:attr(data-label)}.ft-page{padding:var(--ft-space-3)}}.ft-sheet-backdrop{position:fixed;inset:0;z-index:40;width:100%;border:0;background:#1f1b2a73;animation:ft-fade .16s ease-out}.ft-sheet{position:fixed;inset:0 0 0 auto;z-index:41;display:flex;flex-direction:column;width:min(100vw,var(--ft-sheet-width, 26rem));background:var(--ft-surface);box-shadow:var(--ft-shadow-2);animation:ft-slide-in .2s ease-out}.ft-sheet__head{display:flex;align-items:center;gap:var(--ft-space-2);padding:var(--ft-space-3) var(--ft-space-4);border-bottom:1px solid var(--ft-border)}.ft-sheet__title{flex:1;margin:0;font-size:var(--ft-text-lg);font-weight:600}.ft-sheet__body{flex:1;overflow:auto}.ft-sheet__foot{display:flex;gap:var(--ft-space-3);padding:var(--ft-space-3) var(--ft-space-4);border-top:1px solid var(--ft-border)}.ft-sheet__foot .ft-btn{flex:1}@keyframes ft-slide-in{0%{transform:translate(100%)}}@keyframes ft-fade{0%{opacity:0}}@media(prefers-reduced-motion:reduce){.ft-sheet,.ft-sheet-backdrop{animation:none}}.ft-dialog{display:flex;flex-direction:column;gap:var(--ft-space-4);width:min(28rem,100%);padding:var(--ft-space-5)}.ft-dialog__title{margin:0;font-size:var(--ft-text-lg);font-weight:600;line-height:1.3}.ft-dialog__actions{display:flex;justify-content:flex-end;gap:var(--ft-space-3)}.ft-field{display:flex;flex-direction:column;gap:var(--ft-space-1);font-size:var(--ft-text-sm)}.ft-field>span{font-weight:600}select.ft-input{padding-right:2.25rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='%235b566b'%3E%3Cpath d='M480-344 240-584l56-56 184 184 184-184 56 56-240 240Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .625rem center;background-size:1.25rem;appearance:none}.ft-field__hint{color:var(--ft-text-muted);font-size:var(--ft-text-xs)}.ft-field__error{color:var(--ft-status-stopped);font-size:var(--ft-text-xs)}.ft-switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ft-space-4);min-height:2.75rem;font-size:var(--ft-text-sm)}.ft-row-button{display:grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--ft-border);border-radius:50%;background:var(--ft-surface);color:var(--ft-text);cursor:pointer}.ft-row-button:hover{border-color:var(--ft-primary);color:var(--ft-primary)}.ft-row-button--danger:hover{border-color:var(--ft-status-stopped);color:var(--ft-status-stopped)}.ft-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}*,*:before,*:after{box-sizing:border-box}html{font-size:100%}body{margin:0;background:var(--ft-bg);color:var(--ft-text);font-family:var(--ft-font);font-size:var(--ft-text-md);line-height:1.6}a{color:var(--ft-primary)}.page__title{margin:0 0 var(--ft-space-2);font-size:var(--ft-text-xl);line-height:1.3;text-wrap:balance}.page__lead{max-width:60ch;margin:0 0 var(--ft-space-5);color:var(--ft-text-muted)}.status-line{display:inline-flex;align-items:center;gap:var(--ft-space-2);margin:0;padding:var(--ft-space-2) var(--ft-space-3);border:1px solid var(--ft-border);border-radius:var(--ft-radius);background:var(--ft-surface)}.status-dot{width:.625rem;height:.625rem;border-radius:50%;background:var(--ft-status-nodata)}.status-dot--ok{background:var(--ft-status-running)}.status-dot--down{background:var(--ft-status-stopped)}
