.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}:root{--color-black: #1d1d1d;--color-white: #ffffff;--color-blue-dark: #022445;--color-blue-deep: #011730;--color-blue-medium: #0b427a;--color-blue: #4a8ccf;--color-blue-light: #a7cdf4;--color-gray-light: #f4f4f4;--color-gray-mid: #d7d3ce;--color-gray-blue: #8fa2af;--color-gray-green: #afa98f;--color-beige-light: #f1e0c7;--color-muted: #565656;--color-border: #cfd9e4;--color-danger: #f83f32;--color-danger-light: #fff1f0;--color-success: #1faa46;--color-warning: #f99826;--color-blue-pale: #e9eff5;--font-sans: "FTSystem-Blank", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "FTSystem-Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25)}@font-face{font-family:FTSystem-Blank;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/FTSystem-BlankRegular.woff2) format("woff2");ascent-override:95%}@font-face{font-family:FTSystem-Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/FTSystemMono-Medium.woff2) format("woff2");ascent-override:95%}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--color-gray-light);color:var(--color-black);font-family:var(--font-sans);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font-family:inherit}.cut-edges{position:relative;isolation:isolate;clip-path:polygon(0 var(--cut-out, 5px),var(--cut-out, 5px) 0,calc(100% - var(--cut-out, 5px)) 0,100% var(--cut-out, 5px),100% calc(100% - var(--cut-out, 5px)),calc(100% - var(--cut-out, 5px)) 100%,var(--cut-out, 5px) 100%,0 calc(100% - var(--cut-out, 5px)))}.cut-edges:before{content:"";position:absolute;inset:0;background:var(--fill-color, transparent);z-index:-1;clip-path:inherit}.badge{--cut-out: 4px;clip-path:polygon(0 var(--cut-out),var(--cut-out) 0,calc(100% - var(--cut-out)) 0,100% var(--cut-out),100% calc(100% - var(--cut-out)),calc(100% - var(--cut-out)) 100%,var(--cut-out) 100%,0 calc(100% - var(--cut-out)))}.action-focus:focus-visible{--cut-out: 0px !important;outline-style:solid;outline-width:2px;outline-offset:0;outline-color:#1d1d1dcc}.cdk-overlay-dark-backdrop{background:#1d1d1d80}.export-dialog{box-shadow:var(--shadow-2xl)}.export-btn{display:flex;align-items:center;gap:8px;height:44px;padding:8px 16px;border:0;background:transparent;font-family:var(--font-mono);font-size:14px;line-height:20px;text-transform:uppercase;color:var(--color-black);cursor:pointer;transition:opacity .15s}.export-btn:hover{opacity:.75}.export-btn__icon{width:20px;height:20px}.export-btn--neutral{--fill-color: var(--color-gray-green);--cut-out: 5px}.export-btn--primary-disabled{--fill-color: var(--color-border);background:var(--color-gray-light);color:#1d1d1d4d;pointer-events:none}.export-btn--tiny{--fill-color: var(--color-border);--cut-out: 3px;display:flex;align-items:center;height:28px;padding:0 12px;border:0;background:transparent;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;color:var(--color-muted);cursor:pointer}.export-btn--tiny:hover{opacity:.75}.export-btn--danger{--fill-color: var(--color-danger-light);color:var(--color-danger)}.export-btn--destructive{--fill-color: var(--color-danger);--cut-out: 5px;color:var(--color-white)}.icon-btn{--fill-color: var(--color-gray-mid);--cut-out: 4px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;background:transparent;color:var(--color-black);cursor:pointer;transition:opacity .15s}.icon-btn:hover:not(:disabled){opacity:.85}.icon-btn app-icon{width:20px;height:20px}.icon-btn--danger{--fill-color: var(--color-danger-light);color:var(--color-danger)}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.export-btn:disabled,.export-btn--tiny:disabled{--fill-color: var(--color-border);color:#1d1d1d4d;cursor:not-allowed}.export-input{height:44px;width:224px;padding:0 12px;border:1px solid var(--color-border);border-radius:0;background:var(--color-white);font-family:var(--font-mono);font-size:14px;text-transform:uppercase;color:var(--color-black)}.export-input::placeholder{color:var(--color-muted)}.export-input:focus{outline:none;border-color:var(--color-black);font-weight:700}.export-checkbox{appearance:none;flex-shrink:0;width:24px;height:24px;margin:0;border:1px solid var(--color-gray-blue);border-radius:0;background-color:var(--color-gray-light);background-position:center;background-repeat:no-repeat;background-size:66%;cursor:pointer}.export-checkbox:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238fa2af' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4.5 12.75 6 6 9-13.5'/%3E%3C/svg%3E")}.export-checkbox:indeterminate{background-image:linear-gradient(var(--color-gray-blue),var(--color-gray-blue));background-size:66% 2px}.export-checkbox:focus-visible{outline:1px solid rgb(29 29 29 / .8);outline-offset:0}.export-checkbox:disabled{opacity:.25;cursor:default}.export-checkbox--lg{width:32px;height:32px;background-size:75%}.export-checkbox--md{width:24px;height:24px}.export-checkbox--sm,.export-checkbox--xs{width:16px;height:16px;background-size:75%}.export-checkbox--sm:indeterminate,.export-checkbox--xs:indeterminate{background-size:62% 2px}.export-radio{accent-color:var(--color-blue-dark);flex-shrink:0;margin:0;width:14px;height:14px;cursor:pointer}.filter-field{display:flex;flex-direction:column;gap:4px}.filter-label{font-family:var(--font-mono);font-size:10px;line-height:14px;text-transform:uppercase;color:var(--color-gray-blue)}.filter-input,.filter-select{height:32px;width:100%;min-width:0;padding:0 8px;border:1px solid var(--color-border);border-radius:0;background:var(--color-white);font-size:13px;color:var(--color-black)}.filter-select{appearance:none;padding-right:28px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d1d1d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m19.5 8.25-7.5 7.5-7.5-7.5'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:14px;font-family:var(--font-mono);font-size:11px;text-transform:uppercase;cursor:pointer}.filter-input:focus,.filter-select:focus{outline:none;border-color:var(--color-black)}.filter-input::placeholder{color:var(--color-gray-blue)}.filter-check{display:flex;align-items:center;gap:8px;padding:3px 0;cursor:pointer}.filter-check:hover .filter-check__label{color:var(--color-blue-medium)}.filter-check__label{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;text-transform:uppercase;color:var(--color-black)}.filter-check__count{font-family:var(--font-mono);font-size:10px;color:var(--color-gray-blue);font-variant-numeric:tabular-nums}.filter-hint{margin:0;font-size:12px;color:var(--color-gray-blue)}.filter-segment{display:flex;border:1px solid var(--color-border)}.filter-segment__option{flex:1;height:28px;padding:0 8px;border:0;background:var(--color-white);font-family:var(--font-mono);font-size:11px;text-transform:uppercase;color:var(--color-muted);cursor:pointer}.filter-segment__option+.filter-segment__option{border-left:1px solid var(--color-border)}.filter-segment__option[aria-pressed=true]{background:var(--color-blue-dark);color:var(--color-white)}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th,.data-table td{padding:16px;text-align:left}.data-table thead tr{background:var(--color-blue-dark);color:var(--color-white);white-space:nowrap}.data-table th{font-family:var(--font-mono);font-size:14px;font-weight:500;text-transform:uppercase}.data-table tbody tr{background:var(--color-white)}.data-table tbody tr:nth-child(odd){background:#fbfbfb}.data-table tbody tr.is-selected{background:#a7cdf440}.data-table__check{width:40px;padding:0!important;text-align:center!important}.data-table__num{text-align:right!important;font-variant-numeric:tabular-nums}.status-badge{display:inline-flex;align-items:center;padding:8px;font-family:var(--font-mono);font-size:12px;line-height:1;text-transform:uppercase;white-space:nowrap}.status-badge--success{background:var(--color-success);color:var(--color-white)}.status-badge--warning{background:var(--color-warning);color:var(--color-black)}.status-badge--neutral{background:var(--color-muted);color:var(--color-white)}.status-badge--error{background:var(--color-danger);color:var(--color-white)}.page{height:100%;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:20px}.card{background:var(--color-white);border:1px solid #e2e8f0;border-radius:8px;padding:18px 20px}.card h1,.card h2{margin:0;font-size:17px;font-weight:400}.card h2{font-size:15px}.card__sub{margin:4px 0 0;font-size:13px;color:#64748b;max-width:680px}.card__head{margin-bottom:16px}.card__head--row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.card__actions{display:flex;flex-wrap:wrap;gap:8px}.card__notice{margin:0;font-size:13px;color:#64748b}.card__notice--error{padding:8px 12px;border-left:3px solid var(--color-danger);background:var(--color-danger-light);color:var(--color-danger)}.card__notice--live{padding:8px 12px;border-left:3px solid var(--color-blue-dark);background:var(--color-blue-pale);color:var(--color-black)}.hint{margin:0;font-size:13px;color:#64748b}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;padding:8px 10px;border-bottom:1px solid #e2e8f0;background:var(--color-white);font-size:12px;font-weight:600;color:#64748b}.table td{padding:8px 10px;border-bottom:1px solid #f1f5f9;color:#334155;vertical-align:top}.table__name{font-weight:500;color:#0f172a}.table__muted{font-size:12px;color:#94a3b8}.table__count{font-variant-numeric:tabular-nums;white-space:nowrap}.table__num{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap}.table__error{display:block;margin-top:3px;font-size:11px;color:#b91c1c}.table__actions{width:1%}.table__row--link{cursor:pointer}.table__row--link:hover td,.table__row--link:focus-visible td{background:#f8fafc}.table__row--link:focus-visible{outline:none}.row-actions{display:flex;justify-content:flex-end;gap:6px;white-space:nowrap}.tag{display:inline-block;padding:2px 8px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:11px;font-weight:500;white-space:nowrap}.tag+.tag{margin-left:4px}.tag--strong{background:#dbeafe;color:#1d4ed8}.tag--admin{background:#fef3c7;color:#92400e}.tag--manual{background:#dcfce7;color:#15803d}.tag--restricted{background:#ede9fe;color:#6d28d9}.tag--danger{background:var(--color-danger-light);color:#b91c1c}.chip{padding:4px 10px;border:1px solid #cbd5e1;border-radius:999px;background:var(--color-white);font:inherit;font-size:12px;color:#475569;cursor:pointer}.chip--on{border-color:var(--color-blue-dark);background:var(--color-blue-dark);color:var(--color-white)}.text-input{padding:7px 9px;border:1px solid #cbd5e1;border-radius:6px;background:var(--color-white);font-size:13px;color:var(--color-black)}.text-input:focus{outline:none;border-color:var(--color-blue-dark)}textarea.text-input{width:100%;min-height:72px;resize:vertical;font-family:inherit}.field{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#475569}.pager{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:12px}.pager__info{margin-right:auto;font-size:12px;color:#64748b;font-variant-numeric:tabular-nums}.run-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:500;white-space:nowrap}.run-badge--completed,.run-badge--ok{background:#dcfce7;color:#15803d}.run-badge--queued,.run-badge--denied{background:#fef3c7;color:#b45309}.run-badge--running{background:#dbeafe;color:#1d4ed8}.run-badge--failed,.run-badge--error{background:#fee2e2;color:#b91c1c}.dialog{display:flex;flex-direction:column;width:1120px;max-width:94vw;max-height:92vh;background:var(--color-white)}.dialog--narrow{width:520px}.dialog__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px 16px;border-bottom:1px solid #e2e8f0}.dialog__title{margin:0;font-family:var(--font-mono);font-size:16px;font-weight:500;text-transform:uppercase}.dialog__sub{margin:4px 0 0;font-size:13px;color:#64748b}.dialog__close{display:flex;padding:4px;border:0;background:none;color:#64748b;cursor:pointer}.dialog__close app-icon{width:20px;height:20px}.dialog__body{display:flex;flex-direction:column;gap:20px;padding:20px 24px 24px;overflow-y:auto}.dialog__error{margin:0;padding:10px 24px;background:var(--color-danger-light);color:var(--color-danger);font-size:13px}.dialog__actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.dialog__actions--footer{padding-top:12px;border-top:1px solid #f1f5f9}.dialog__actions .spacer{flex:1}
