@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");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}:root{--bg: #08090a;--bg-raised: #0f1011;--surface-1: rgb(255 255 255 / 2%);--surface-2: rgb(255 255 255 / 4%);--surface-3: rgb(255 255 255 / 5%);--border: rgb(255 255 255 / 8%);--border-strong: rgb(255 255 255 / 14%);--border-input: rgb(255 255 255 / 38%);--text: #f7f8f8;--text-secondary: #d0d6e0;--text-muted: #8a8f98;--text-subtle: #7d828b;--accent: #7170ff;--accent-strong: #5e6ad2;--accent-strong-hover: #4b55b8;--accent-hover: #828fff;--ok: #10b981;--warn: #e0b03c;--danger: #f2555c;--unknown: #8a8f98;--running: #4ea8de;--radius: 6px;--radius-card: 8px;--radius-panel: 12px;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--chrome-height: 49px;color-scheme:dark}:root[data-theme=light]{--bg: #f7f8f8;--bg-raised: #ffffff;--surface-1: rgb(0 0 0 / 2%);--surface-2: rgb(0 0 0 / 4%);--surface-3: rgb(0 0 0 / 6%);--border: #e6e6e6;--border-strong: #d0d6e0;--border-input: rgb(0 0 0 / 44%);--text: #0f1011;--text-secondary: #3c4149;--text-muted: #62666d;--text-subtle: #62666d;--accent: #4f5ac0;--accent-strong: #5e6ad2;--accent-strong-hover: #4b55b8;--accent-hover: #3f49a8;--ok: #12734a;--warn: #8a5d00;--danger: #c0392f;--unknown: #646c7a;--running: #1f6fb2;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter Variable,Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-feature-settings:"cv01","ss03";font-size:14px;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}button{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-chrome{position:sticky;top:0;z-index:20;flex:0 0 auto;background:var(--bg)}.env-bar{height:5px;background:var(--env-accent)}.app-header{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;min-height:44px;padding:6px 16px;border-bottom:1px solid var(--border)}.app-header__brand{font-size:14px;font-weight:590;color:var(--text)}.app-header__brand:hover{color:var(--text);text-decoration:none}.app-header__spacer{flex:1}.app-header__user{color:var(--text-muted);font-size:13px}.app-main{flex:1;width:100%;padding:0 20px 48px}.env-switcher{display:flex;align-items:center;gap:6px;min-height:26px;padding:0 8px;border-radius:var(--radius);border:2px solid var(--env-accent);background:color-mix(in srgb,var(--env-accent) 14%,transparent)}.env-switcher__label{font-size:11px;font-weight:510;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.env-switcher__name{font-size:12px;font-weight:590;letter-spacing:.08em;text-transform:uppercase;color:var(--env-accent)}.view-bar{position:sticky;top:var(--chrome-height);z-index:10;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;min-height:48px;padding:8px 0;background:var(--bg);border-bottom:1px solid var(--border)}@media(max-width:48rem){.view-bar{position:static}}.view-bar__title{margin:0;font-size:15px;font-weight:590}.view-bar__crumb{font-size:14px;color:var(--text-muted)}.view-bar__crumb:hover{color:var(--text);text-decoration:none}.view-bar__separator{color:var(--text-subtle)}.view-bar__note{flex:0 0 auto;white-space:nowrap;font-size:13px;color:var(--text-subtle);font-variant-numeric:tabular-nums}.view-bar__spacer{flex:1}.view-tabs,.view-tabs__group{display:flex;flex-wrap:wrap;align-items:center;gap:2px}.view-tabs__rule{width:1px;height:16px;margin:0 6px;background:var(--border-strong)}@media(max-width:48rem){.view-tabs__rule{display:none}}.view-tabs__tab{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:var(--radius);color:var(--text-muted);font-size:13px;font-weight:510;white-space:nowrap}.view-tabs__tab:hover{color:var(--text);background:var(--surface-2);text-decoration:none}.view-tabs__tab[aria-current=page]{color:var(--text);background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--border-strong)}.view-tabs__count{color:var(--text-subtle);font-weight:400;font-variant-numeric:tabular-nums}.view-tabs__tab--alarm .view-tabs__count{color:var(--danger);font-weight:590}.jobs-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px 24px}.jobs-layout__main{min-width:0}.jobs-layout__side{order:-1;min-width:0}@media(min-width:90rem){.jobs-layout{grid-template-columns:minmax(0,1fr) 300px}.jobs-layout__side{order:0;position:sticky;top:calc(var(--chrome-height) + 64px);align-self:start;max-height:calc(100vh - var(--chrome-height) - 80px);overflow-y:auto}}.recent-runs{border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden}.recent-runs__empty{margin:0;padding:12px;color:var(--text-muted);font-size:13px}.recent-runs__list{margin:0;padding:0;list-style:none;display:flex;overflow-x:auto;overscroll-behavior-x:contain}.recent-run{flex:0 0 240px;border-right:1px solid var(--border)}@media(min-width:90rem){.recent-runs__list{display:block;overflow-x:visible}.recent-run{border-right:0;border-bottom:1px solid var(--border)}.recent-run:last-child{border-bottom:0}}.recent-run__link,.recent-run--starting{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"job job" "status meta";align-items:center;column-gap:8px;row-gap:4px;padding:12px;color:inherit}.recent-run__link:hover{color:inherit;background:var(--surface-2);text-decoration:none}.recent-run__job{grid-area:job;color:var(--text);overflow-wrap:anywhere}.recent-run .status-badge{grid-area:status;min-width:0;font-size:12px}.recent-run__meta{grid-area:meta;color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums}.group-header{display:flex;align-items:center;gap:8px;min-height:36px;margin:0;padding:0 12px;background:var(--surface-1);border-bottom:1px solid var(--border);font-size:13px;font-weight:510}.group-header__title{margin:0;font:inherit}.group-header__spacer{flex:1}.group-header__count{color:var(--text-subtle);font-weight:400;font-variant-numeric:tabular-nums}.panel{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden}.panel__body{padding:16px}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;align-items:center;gap:8px}.secondary{color:var(--text-secondary)}.muted{color:var(--text-muted)}.mono{font-family:var(--font-mono);font-size:13px}.feedback:empty{position:absolute}.banner{padding:10px 14px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface-1)}.banner--error{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,transparent);color:var(--danger)}.banner--success{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 8%,transparent);color:var(--ok)}.banner--warning{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,transparent);color:var(--warn)}.error-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}.error-banner__detail{color:var(--text-secondary)}.theme-picker{margin:0;padding:0;display:inline-flex;height:26px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.theme-picker__option{padding:0 8px;font:inherit;font-size:12px;font-weight:510;color:var(--text-muted);background:transparent;border:0;border-right:1px solid var(--border);cursor:pointer}.theme-picker__option:last-child{border-right:0}.theme-picker__option:hover{color:var(--text);background:var(--surface-1)}.theme-picker__option[aria-pressed=true]{color:var(--text);background:var(--surface-3)}.job-link,.job-link:hover{color:var(--text)}.cell-note{margin-left:8px;padding:1px 6px;border-radius:4px;background:var(--surface-2);color:var(--text-muted);font-size:12px;white-space:nowrap}.cell-clamp{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-kind--one-shot{color:var(--warn)}.job-kind--on-demand,.job-kind--scheduled{color:var(--text-muted)}.list-footer{display:flex;align-items:center;gap:12px;padding:8px 12px;font-size:13px;font-variant-numeric:tabular-nums}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px 24px;margin:0}.facts__item--wide{grid-column:1 / -1}.facts dt{margin-bottom:4px;color:var(--text-muted);font-size:12px;font-weight:510}.facts dd{margin:0;color:var(--text-secondary);overflow-wrap:anywhere}.facts__state{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.args-form{display:flex;flex-direction:column;gap:12px;margin:12px 0;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-1)}.args-form__field{display:flex;flex-direction:column;gap:4px}.args-form__field p{margin:0;font-size:13px}.args-form__field--inline{flex-direction:row;align-items:center;gap:8px}.args-form__required{color:var(--warn);font-size:11px;font-weight:510;letter-spacing:.08em;text-transform:uppercase}.run-summary__stream{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.run-summary__stream code{overflow-wrap:anywhere}.run-summary__args{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:8px}.empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;text-align:center;color:var(--text-muted)}.empty-state p{margin:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:28px;padding:0 10px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface-1);color:var(--text);font-size:13px;font-weight:510;white-space:nowrap;cursor:pointer}a.button:hover{color:var(--text);text-decoration:none}.button:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-input)}.button:disabled{opacity:.45;cursor:not-allowed}.button--danger{border-color:var(--danger);color:var(--danger)}.button--danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 16%,transparent);border-color:var(--danger)}.button--primary{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}.button--primary:hover:not(:disabled){background:var(--accent-strong-hover);border-color:var(--accent-strong-hover)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--text-muted);cursor:pointer}.icon-button--run svg{margin-left:1px}.icon-button--run:hover:not(:disabled){color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent);border-color:color-mix(in srgb,var(--danger) 50%,transparent)}.icon-button:disabled{opacity:.35;cursor:not-allowed}.table-scroll{position:relative;overflow-x:auto;overscroll-behavior-x:contain}.table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}.table th,.table td{height:40px;padding:0 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap}.table td{color:var(--text-secondary)}.table th{height:32px;font-size:12px;font-weight:510;color:var(--text-muted)}.table th[aria-sort]{color:var(--text-secondary)}.th-note{font-weight:400;color:var(--text-subtle)}.table tbody tr:hover{background:var(--surface-1)}.table__actions-cell{width:1%;text-align:right}.sort-button{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.sort-button:hover{color:var(--text)}.sort-icon--none{opacity:.4}.sort-icon--asc .sort-icon__down,.sort-icon--desc .sort-icon__up{opacity:.25}.table--linked tbody tr{position:relative}.row-link{color:inherit}.row-link:hover{color:inherit;text-decoration:none}.row-link:after{content:"";position:absolute;inset:0}.row-link:focus-visible{outline:none}.row-link:focus-visible:after{outline:2px solid var(--accent);outline-offset:-2px}.status-badge{--status: currentcolor;display:inline-flex;align-items:center;gap:6px;min-width:96px;color:var(--text-secondary);font-weight:510;white-space:nowrap}.status-badge__dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--status)}.status-badge--succeeded{--status: var(--ok)}.status-badge--failed{--status: var(--danger);color:var(--danger)}.status-badge--failed .status-badge__dot{border-radius:2px}.status-badge--running{--status: var(--running)}.status-badge--running .status-badge__dot,.status-badge--starting .status-badge__dot{background:transparent;border:2px solid var(--status)}.status-badge--starting{--status: var(--running)}.status-badge--starting .status-badge__dot{border-style:dashed}.status-badge--unknown{--status: var(--unknown);color:var(--text-muted)}.status-badge__glyph{width:8px;color:var(--status);font-weight:590;text-align:center}.status-badge--none{padding-left:14px;color:var(--text-muted);font-weight:400}.table th.status-col,.table td.status-col{width:1%;padding-right:4px}.status-icon{--status: var(--text-muted);display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;color:var(--status);background:color-mix(in srgb,var(--status) 14%,transparent);border:1px solid color-mix(in srgb,var(--status) 40%,transparent);vertical-align:middle}.status-icon--succeeded{--status: var(--ok)}.status-icon--failed{--status: var(--danger)}.status-icon--running{--status: var(--running)}.status-icon--unknown,.status-icon--unavailable{--status: var(--unknown)}.status-icon--never{background:transparent;border:1px dashed var(--border-input)}.schedule-state--enabled{color:var(--ok)}.schedule-state--disabled{color:var(--text-muted);font-weight:510}.run-overdue{color:var(--warn);font-weight:510}.modal{width:min(520px,calc(100% - 32px));max-width:none;max-height:calc(100% - 48px);margin:auto;padding:0;overflow:auto;overscroll-behavior:contain;color:var(--text);background:var(--bg-raised);border:1px solid var(--border-strong);border-radius:var(--radius-panel);border-top:4px solid var(--env-accent);box-shadow:0 0 1px #00000014,0 1px 1px #00000012,0 3px 2px #0000000a,0 8px 24px #0000001f}.modal::backdrop{background:#000000d9}.modal__header{padding:16px 20px 0}.modal__title{margin:0;font-size:17px;font-weight:590;letter-spacing:-.204px}.modal__body{padding:12px 20px 20px;display:flex;flex-direction:column;gap:12px}.modal__body p{margin:0}.modal__footer{display:flex;justify-content:flex-end;gap:8px;padding:0 20px 20px}.modal__env{font-weight:590;color:var(--env-accent);text-transform:uppercase;letter-spacing:.08em}.input{width:100%;height:30px;padding:0 8px;border-radius:var(--radius);border:1px solid var(--border-input);background:var(--surface-1);color:var(--text);font-family:var(--font-mono);font-size:13px}.input::placeholder{color:var(--text-subtle)}.input:focus{outline:2px solid var(--env-accent);outline-offset:1px}select.input{height:32px}.input.view-bar__filter{flex:0 1 220px;min-width:140px}.log-viewer{max-height:460px;overflow:auto;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:inset 0 0 12px #0003;padding:12px}.log-line{display:flex;gap:12px;font-family:var(--font-mono);font-size:13px;line-height:1.6;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word}.log-line__time{color:var(--text-subtle);flex:0 0 auto;font-variant-numeric:tabular-nums}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:340px;text-align:center;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-card);padding:28px 24px}.login-card__title{margin:0 0 6px;font-size:18px;font-weight:590;letter-spacing:-.198px}.login-card__description{margin:0 0 20px;color:var(--text-muted)}.login-card .button{width:100%}.login-card__error{margin:12px 0 0;color:var(--danger);font-size:13px;text-align:left}.centered-message{min-height:60vh;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.log-viewer--tall{max-height:calc(100vh - 320px);min-height:320px}.run-summary{display:flex;flex-direction:column;gap:8px}.command-trigger{color:var(--text-muted)}kbd{padding:0 4px;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface-2);color:var(--text-muted);font-family:inherit;font-size:11px;font-weight:510;line-height:16px}.command-palette{width:min(560px,calc(100% - 32px));margin-top:12vh;border-top:1px solid var(--border-strong);display:flex;flex-direction:column;max-height:min(520px,calc(100% - 24vh));overflow:hidden}.command-palette:not([open]){display:none}.command-palette__input{flex:0 0 auto;width:100%;height:48px;padding:0 16px;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--text);font:inherit;font-size:15px}.command-palette__input:focus{outline:none}.command-palette__input::placeholder{color:var(--text-subtle)}.command-palette__list{flex:1 1 auto;margin:0;padding:6px;overflow-y:auto;overscroll-behavior:contain;list-style:none}.command-palette__option{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;padding:0 10px;border-radius:var(--radius);color:var(--text-secondary);cursor:pointer}.command-palette__option--group-start:not(:first-child){margin-top:6px}.command-palette__option[aria-selected=true]{color:var(--text);background:var(--surface-3);box-shadow:inset 2px 0 0 var(--accent)}.command-palette__group{flex:0 0 auto;color:var(--text-subtle);font-size:12px}.command-palette__empty{margin:0;padding:24px 16px;color:var(--text-muted);text-align:center}.command-palette__footer{display:flex;gap:16px;padding:8px 16px;border-top:1px solid var(--border);color:var(--text-subtle);font-size:12px}.run-link{color:inherit}.run-link:hover{color:var(--text)}
