/*! tailwindcss v3.4.3 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.table{display:table}.h-full{height:100%}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--color-primary-50:#f7f5f9;--color-primary-100:#f0edf4;--color-primary-200:#e1d9e8;--color-primary-300:#c3b4d1;--color-primary-500:#8769a4;--color-primary-600:#69438d;--color-primary-700:#523079;--color-primary-800:#3d2165;--color-grey-50:#f0f5f9;--color-grey-100:#e1e8f0;--color-grey-200:#cad5e0;--color-grey-300:#91a4b7;--color-grey-400:#61758a;--color-grey-500:#445668;--color-grey-600:#304254;--color-grey-700:#1c2a3a;--color-grey-800:#0d1829;--color-grey-900:#030913;--color-green-50:#f3f8f5;--color-green-200:#cfe3d8;--color-green-500:#419164;--color-green-600:#11753d;--color-green-700:#0c643c;--color-blue-50:#f3f6fd;--color-blue-200:#cfdef7;--color-blue-500:#3f7ae0;--color-blue-600:#0f59d8;--color-blue-700:#0a44b9;--color-yellow-50:#fefbf5;--color-yellow-200:#fcf0d8;--color-yellow-700:#cd942a;--color-red-50:#faf4f5;--color-red-200:#eed5d9;--color-red-500:#bb5665;--color-red-600:#aa2c3f;--color-red-700:#92203c;--font-sans:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Monaco,Consolas,monospace;--shadow-lg:0 12px 32px #0d18291f}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-grey-50);color:var(--color-grey-700);font-family:var(--font-sans);margin:0;min-height:100%}*,:after,:before{box-sizing:border-box}a{text-decoration:none}.mono,code,pre{font-family:var(--font-mono)}.flash{background:var(--color-grey-800);border-radius:8px;color:#fff;font-size:13px;margin:10px auto 0;max-width:1240px;padding:8px 12px}.bob{background:var(--color-grey-50);color:var(--color-grey-700);display:flex;flex-direction:column;min-height:100vh}.bob-nav{background:var(--color-grey-900);border-bottom:1px solid #ffffff0f;height:64px;position:sticky;top:0;z-index:50}.bob-nav__inner{gap:30px;height:100%;margin:0 auto;max-width:1240px;padding:0 28px}.bob-brand,.bob-nav__inner{align-items:center;display:flex}.bob-brand{flex:none;gap:10px}.bob-brand img{display:block}.bob-brand__name{color:#fff;font-size:21px;font-weight:800;letter-spacing:0}.bob-brand__tag{border-left:1px solid var(--color-grey-700);color:var(--color-grey-400);font-size:12px;font-weight:500;padding-left:11px}.bob-nav__tabs{align-items:center;display:flex;gap:4px}.bob-nav__tab{align-items:center;border-radius:8px;color:var(--color-grey-300);display:inline-flex;font-size:14px;font-weight:500;gap:8px;height:34px;padding:0 14px;transition:background .15s,color .15s}.bob-nav__tab:hover{background:#ffffff0f;color:#fff}.bob-nav__tab svg{color:var(--color-grey-400);transition:color .15s}.bob-nav__tab:hover svg{color:var(--color-grey-200)}.bob-nav__tab--active{background:#ffffff1a;color:#fff}.bob-nav__tab--active svg{color:var(--color-primary-300)}.bob-nav__right{align-items:center;display:flex;gap:14px;margin-left:auto}.bob-menu{display:none;margin-left:auto;position:relative}.bob-menu__button{align-items:center;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;height:36px;list-style:none;padding:0 12px}.bob-menu__button::-webkit-details-marker{display:none}.bob-menu__button::marker{content:""}.bob-menu[open] .bob-menu__button,.bob-menu__button:hover{background:#ffffff1a}.bob-menu__panel{background:#fff;border:1px solid var(--color-grey-200);border-radius:8px;box-shadow:0 18px 40px #0c142133;display:grid;min-width:220px;padding:8px;position:absolute;right:0;top:calc(100% + 10px);z-index:80}.bob-menu__item{align-items:center;border-radius:6px;color:var(--color-grey-600);display:flex;font-size:14px;font-weight:600;gap:10px;min-height:38px;padding:0 10px}.bob-menu__item svg{color:var(--color-grey-400)}.bob-menu__item--active,.bob-menu__item:hover{background:var(--color-grey-100);color:var(--color-grey-800)}.bob-menu__item--active svg{color:var(--color-primary-600)}.bob-menu__item--external{border-top:1px solid var(--color-grey-100);margin-top:6px;padding-top:6px}.nav-ext{align-items:center;border:1px solid #ffffff1a;border-radius:8px;color:var(--color-grey-300);display:inline-flex;font-family:var(--font-mono);font-size:12.5px;gap:7px;height:32px;padding:0 12px;transition:background .15s,color .15s}.nav-ext:hover{background:#ffffff14;color:#fff}.nav-ext svg{color:var(--color-grey-400)}.bob-main{flex:1}.bob-wrap{margin:0 auto;max-width:1240px;padding:28px 28px 90px}.page-head{align-items:flex-end;display:flex;gap:16px;margin-bottom:22px}.page-head__main{flex:1;min-width:0}.page-head h1{color:var(--color-grey-700);font-size:26px;font-weight:700;letter-spacing:0;line-height:1.1;margin:0 0 6px}.page-head__sub{color:var(--color-grey-500);font-size:14px}.page-head__live{align-items:center;color:var(--color-grey-500);display:inline-flex;flex:none;font-size:13px;gap:8px;padding-bottom:3px}.live-dot{background:var(--color-green-500);border-radius:50%;height:8px;position:relative;width:8px}.live-dot:after{animation:ping 2.4s ease-out infinite;border:1.5px solid var(--color-green-500);border-radius:50%;content:"";inset:-4px;opacity:0;position:absolute}@keyframes ping{0%{opacity:.8;transform:scale(.55)}80%,to{opacity:0;transform:scale(1.9)}}.sec{background:#fff;border:1px solid var(--color-grey-200);border-radius:14px;margin-bottom:18px;overflow:hidden}.sec__head{border-bottom:1px solid var(--color-grey-100);gap:12px;padding:15px 20px}.sec__head,.sec__title{align-items:center;display:flex}.sec__title{color:var(--color-grey-700);font-size:15px;font-weight:600;gap:9px}.sec__count{background:var(--color-grey-100);border-radius:999px;color:var(--color-grey-600);font-size:12px;font-variant-numeric:tabular-nums;font-weight:600;min-width:22px;padding:1px 9px;text-align:center}.sec__count--live{background:var(--color-blue-50);color:var(--color-blue-700)}.icon-blue{color:var(--color-blue-600)}.icon-muted{color:var(--color-grey-400)}.filter-bar{align-items:center;border-bottom:1px solid var(--color-grey-100);display:flex;gap:12px;padding:14px 20px}.filter-bar--wrap{flex-wrap:wrap}.filter-bar__meta{align-self:center;color:var(--color-grey-400);font-size:13px;margin-left:auto;white-space:nowrap}.search-wrap{flex:1;max-width:380px;min-width:220px;position:relative}.search-box{align-items:center;background:var(--color-grey-50);border:1px solid var(--color-grey-200);border-radius:9px;display:flex;gap:8px;height:36px;padding:0 10px 0 12px;transition:border-color .15s,box-shadow .15s,background .15s;width:100%}.search-box:focus-within{background:#fff;border-color:var(--color-blue-500);box-shadow:0 0 0 3px #0f59d81f}.search-box svg{color:var(--color-grey-400);flex:none}.search-box input{background:#0000;border:0;color:var(--color-grey-700);flex:1;font:inherit;font-size:14px;min-width:0;outline:0;padding:0}.search-box input::-moz-placeholder{color:var(--color-grey-400)}.search-box input::placeholder{color:var(--color-grey-400)}.fsel{align-items:center;display:inline-flex;gap:7px;position:relative}.fsel__label{color:var(--color-grey-400);font-size:12px}.fsel select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#fff;border:1px solid var(--color-grey-200);border-radius:8px;color:var(--color-grey-700);cursor:pointer;font:inherit;font-size:13px;height:36px;padding:0 28px 0 11px;transition:border-color .15s}.fsel select:hover{border-color:var(--color-grey-300)}.fsel select:focus{border-color:var(--color-blue-500);box-shadow:0 0 0 3px #0f59d81f;outline:none}.fsel svg{color:var(--color-grey-400);pointer-events:none;position:absolute;right:10px}.fsel--off{opacity:.5}.fsel--off select{background:var(--color-grey-50);cursor:not-allowed}.finput{align-items:center;display:inline-flex;position:relative}.finput input{background:#fff;border:1px solid var(--color-grey-200);border-radius:8px;color:var(--color-grey-700);font:inherit;font-size:13px;height:36px;padding:0 11px;transition:border-color .15s,box-shadow .15s;width:122px}.finput input::-moz-placeholder{color:var(--color-grey-400)}.finput input::placeholder{color:var(--color-grey-400)}.finput input:hover{border-color:var(--color-grey-300)}.finput input:focus{border-color:var(--color-blue-500);box-shadow:0 0 0 3px #0f59d81f;outline:none}.finput--off input{background:var(--color-grey-50);cursor:not-allowed;opacity:.5}.fgroup{align-items:center;border:1px dashed var(--color-grey-200);border-radius:10px;display:inline-flex;gap:8px;padding:5px;transition:opacity .15s}.fgroup--off{opacity:.5}.f-or{align-self:center;color:var(--color-grey-400);font-size:12px;font-style:italic;padding:0 1px}.f-or--off{opacity:.45}.dk-filters{align-items:stretch}.chip-row{display:flex;gap:6px}.chip,.chip-row{align-items:center}.chip{background:#fff;border:1px solid var(--color-grey-200);border-radius:999px;color:var(--color-grey-500);display:inline-flex;font-family:inherit;font-size:13px;font-weight:500;gap:7px;height:32px;padding:0 12px;white-space:nowrap}.chip--active{background:var(--color-grey-700);border-color:var(--color-grey-700);color:#fff}.chip__n{font-size:11px;font-variant-numeric:tabular-nums;font-weight:600;opacity:.75}.chip__dot{border-radius:50%;flex:none;height:8px;width:8px}.chip__dot--done{background:var(--color-green-600)}.chip__dot--failed{background:var(--color-red-600)}.chip-row--filter{flex-wrap:wrap;gap:8px;margin-bottom:18px}.chip-row--filter .chip{cursor:pointer;transition:border-color .15s,background .15s,color .15s}.chip-row--filter .chip:hover:not(.chip--active){border-color:var(--color-grey-400);color:var(--color-grey-700)}.tbl-wrap{max-width:100%;overflow-x:auto}.jt{border-collapse:collapse;min-width:720px;width:100%}.jt thead th{background:var(--color-grey-50);border-bottom:1px solid var(--color-grey-200);color:var(--color-grey-400);font-size:11px;font-weight:600;letter-spacing:.06em;padding:10px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.jt thead th:first-child{padding-left:20px}.jt thead th:last-child{padding-right:20px}.jt tbody td{border-bottom:1px solid var(--color-grey-100);color:var(--color-grey-600);font-size:13px;padding:11px 16px;vertical-align:middle}.jt tbody td:first-child{padding-left:20px}.jt tbody td:last-child{padding-right:20px}.jt tbody tr:last-child td{border-bottom:0}.jt tbody tr:hover{background:var(--color-grey-50)}.jt tr.row--failed td:first-child{box-shadow:inset 3px 0 0 var(--color-red-500)}.col-state{white-space:nowrap;width:1%}.col-time{min-width:190px;white-space:nowrap;width:190px}.col-dur{white-space:nowrap;width:1%}.col-args{width:40%}.c-state{align-items:center;display:flex;gap:9px}.run-label{color:var(--color-blue-700);font-size:12px;font-weight:600}.c-mod{align-items:center;display:flex;gap:9px;min-width:0}.mod-name{color:var(--color-grey-700);font-family:var(--font-mono);font-size:13px;font-weight:500;white-space:nowrap}.c-args{color:var(--color-grey-400);font-family:var(--font-mono);font-size:12px;max-width:460px}.c-args,.c-time{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c-time{color:var(--color-grey-600);font-size:13px;font-variant-numeric:tabular-nums}.c-dur{color:var(--color-grey-500)}.c-dur,.c-elapsed{display:block;font-size:13px;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c-elapsed{color:var(--color-blue-700);font-weight:600}.badge{align-items:center;border:1px solid #0000;border-radius:4px;display:inline-flex;font-size:11px;font-weight:600;gap:6px;letter-spacing:.01em;padding:3px 8px;white-space:nowrap}.badge--neutral{background:var(--color-grey-100);border-color:var(--color-grey-200);color:var(--color-grey-600)}.badge--success{background:var(--color-green-50);border-color:var(--color-green-200);color:var(--color-green-700)}.badge--danger{background:var(--color-red-50);border-color:var(--color-red-200);color:var(--color-red-700)}.badge--running{background:var(--color-blue-50);border-color:var(--color-blue-200);color:var(--color-blue-700)}.badge .badge__dot{background:currentColor;border-radius:50%;height:6px;opacity:.9;width:6px}.state-dot{border-radius:50%;display:inline-block;flex:none;height:9px;position:relative;width:9px}.state-dot--running{background:var(--color-blue-600);color:var(--color-blue-600)}.state-dot--done{background:var(--color-green-600);color:var(--color-green-600)}.state-dot--failed{background:var(--color-red-600);color:var(--color-red-600)}.state-dot--pulse:after{animation:ping 1.8s ease-out infinite;border:1.5px solid;border-radius:50%;content:"";inset:-3px;opacity:0;position:absolute}.cat-glyph{align-items:center;display:inline-flex;flex:none}.cat-glyph--check{color:var(--color-grey-500)}.cat-glyph--build{color:var(--color-primary-600)}.cat-glyph--docker{color:var(--color-blue-600)}.mono-cell{color:var(--color-grey-600);font-family:var(--font-mono);font-size:12.5px;white-space:nowrap}.mono-cell--dim{color:var(--color-grey-400)}.mono-cell--name{color:var(--color-grey-700);font-weight:500}.kind-badge{background:var(--color-primary-50);border:1px solid var(--color-primary-200);border-radius:5px;color:var(--color-primary-700);font-size:11px;font-weight:700;letter-spacing:.04em;padding:1px 7px;text-transform:uppercase}.arch-tag{background:var(--color-grey-100);border:1px solid var(--color-grey-200);border-radius:5px;font-size:11.5px;font-weight:600;padding:1px 7px}.arch-tag,.os-cell{color:var(--color-grey-600);font-family:var(--font-mono)}.os-cell{font-size:12.5px;white-space:nowrap}.arch-list{display:flex;gap:5px}.dk-repo{align-items:center;display:flex;gap:8px}.jt--dk{min-width:1040px;table-layout:fixed}.col-dk-repo{width:180px}.col-dk-tag{width:510px}.col-dk-archs{width:130px}.dk-tag-code{color:var(--color-grey-600);display:block;font-family:var(--font-mono);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.pager{align-items:center;border-top:1px solid var(--color-grey-100);display:flex;justify-content:space-between;padding:14px 20px}.pager__info{color:var(--color-grey-500);font-size:13px;font-variant-numeric:tabular-nums}.pager__info b{color:var(--color-grey-700);font-weight:600}.pager__btns{display:flex;gap:8px}.pg-btn{align-items:center;background:#fff;border:1px solid var(--color-grey-200);border-radius:8px;color:var(--color-grey-600);cursor:pointer;display:inline-flex;font-family:inherit;font-size:13px;font-weight:500;gap:6px;height:34px;padding:0 13px;transition:border-color .14s,color .14s}.pg-btn:hover:not(:disabled){border-color:var(--color-grey-400);color:var(--color-grey-800)}.pg-btn:disabled{cursor:not-allowed;opacity:.45}.empty-mini{color:var(--color-grey-400);font-size:13.5px;padding:22px 20px}.empty-mini b{color:var(--color-grey-600);font-weight:600}.fade-in{animation:fade .25s ease}@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (max-width:820px){.bob-brand__tag,.nav-ext{display:none}.bob-nav__inner{gap:16px;margin:0;max-width:none;padding:0 16px;width:100%}.bob-nav__right,.bob-nav__tabs{display:none}.bob-menu{display:block}.bob-wrap{padding:20px 16px 80px}.page-head{align-items:flex-start;flex-direction:column;gap:8px}.c-args{max-width:200px}.filter-bar__meta{margin-left:0;width:100%}.filter-bar.dk-filters{align-items:stretch;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.dk-filters>.f-or,.dk-filters>.fgroup,.dk-filters>.finput,.dk-filters>.fsel:first-child{grid-column:1/-1}.dk-filters .fgroup{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.dk-filters .finput,.dk-filters .fsel{min-width:0;width:100%}.dk-filters .fsel{display:grid;grid-template-columns:auto minmax(0,1fr)}.dk-filters .finput input,.dk-filters .fsel select{min-width:0;width:100%}.dk-filters .f-or{align-items:center;display:flex;gap:8px;padding:0}.dk-filters .f-or:after,.dk-filters .f-or:before{background:var(--color-grey-200);content:"";flex:1;height:1px}.dk-filters .filter-bar__meta{align-self:center;justify-self:end;text-align:right;width:auto}}