:root,[data-theme=light]{--color-bg: #ffffff;--color-bg-alt: #f8fafc;--color-bg-muted: #f0f4f8;--color-bg-hover: #f8fafc;--color-border: #e8e8e8;--color-border-muted: #e0e0e0;--color-text: #333333;--color-text-muted: #555555;--color-text-subtle: #888888;--color-primary: #1976d2;--color-primary-hover: #1565c0;--color-primary-bg: #e3f2fd;--color-danger: #b71c1c;--color-danger-hover: #c62828;--color-danger-bg: #ffebee;--color-accent: #b45309;--color-input-bg: #ffffff;--color-input-border: #d1d5db;--color-subtable-header: #e8f4f8;--shadow: 0 4px 12px rgba(0, 0, 0, .15)}[data-theme=dark]{--color-bg: #121212;--color-bg-alt: #1e1e1e;--color-bg-muted: #2d2d2d;--color-bg-hover: #252525;--color-border: #3a3a3a;--color-border-muted: #404040;--color-text: #e0e0e0;--color-text-muted: #b0b0b0;--color-text-subtle: #888888;--color-primary: #64b5f6;--color-primary-hover: #90caf9;--color-primary-bg: #1e3a5f;--color-danger: #ef5350;--color-danger-hover: #e57373;--color-danger-bg: #3d2020;--color-accent: #ffb74d;--color-input-bg: #2d2d2d;--color-input-border: #404040;--color-subtable-header: #2a3d52;--shadow: 0 4px 12px rgba(0, 0, 0, .5)}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--color-text);background-color:var(--color-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{margin:0;min-width:320px;min-height:100vh;height:100%;width:100%}#root{min-height:100vh;height:100%;width:100%}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}a:hover{color:#747bff}.jobs-table-page{background:var(--color-bg);width:100%}.jobs-table-search-row{margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.jobs-table-stats{font-size:.9rem;color:var(--color-accent);font-weight:500}.jobs-table-search-wrap{display:inline-flex;align-items:center;gap:8px;max-width:420px;border:1px solid var(--color-input-border);border-radius:6px;padding:6px 12px;background:var(--color-input-bg)}.jobs-table-search-icon{font-size:1rem;opacity:.7}.jobs-table-search-input{flex:1;min-width:0;padding:4px 0;border:none;font-size:.95rem;background:transparent;outline:none}.jobs-table-search-label{font-size:.9rem;color:#555}.jobs-table-filters-row{margin-bottom:16px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.jobs-table-filters-label{font-weight:500;font-size:.95rem;color:var(--color-text)}.jobs-table-filters-inline{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.jobs-table-filter-input{padding:6px 10px;border:1px solid var(--color-border-muted);border-radius:6px;font-size:.9rem;width:120px;background:var(--color-input-bg)}.jobs-table-apply-filters{padding:6px 14px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer}.jobs-table-apply-filters:hover{background:var(--color-primary-hover)}.jobs-table-pills{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.jobs-table-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--color-bg-muted);border-radius:999px;font-size:.85rem;color:var(--color-text)}.jobs-table-pill-remove{background:none;border:none;cursor:pointer;padding:0 2px;font-size:1.1rem;line-height:1;color:var(--color-text-muted)}.jobs-table-pill-remove:hover{color:var(--color-danger)}.jobs-table-wrapper{overflow-x:auto;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg)}.jobs-table{width:100%;border-collapse:collapse;font-size:.98em}.jobs-table th,.jobs-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--color-border-muted);vertical-align:middle}.jobs-table thead tr{background:var(--color-bg-muted)}.jobs-table-th{font-weight:600;color:var(--color-text);white-space:nowrap}.jobs-table-th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.jobs-table-th.sortable:hover{background:var(--color-bg-hover)}.jobs-table-th--filterable{position:relative}.jobs-table-th-trigger{cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:2px 0}.jobs-table-th-trigger:hover{color:var(--color-primary)}.jobs-table-th-filter-dot{width:6px;height:6px;border-radius:50%;background:var(--color-primary);flex-shrink:0}.jobs-table-popover{position:absolute;top:100%;left:0;margin-top:4px;z-index:10;background:var(--color-bg);border:1px solid var(--color-border-muted);border-radius:8px;box-shadow:var(--shadow);padding:12px;min-width:180px;display:flex;flex-direction:column;gap:8px}.jobs-table-popover-input{padding:8px 10px;border:1px solid var(--color-input-border);border-radius:6px;font-size:.9rem;width:100%;box-sizing:border-box;background:var(--color-input-bg);color:var(--color-text)}.jobs-table-popover-input:focus{outline:none;border-color:var(--color-primary)}.jobs-table-popover-apply{padding:8px 12px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer}.jobs-table-popover-apply:hover{background:var(--color-primary-hover)}.jobs-table-popover--checkboxes{min-width:220px;max-width:280px}.jobs-table-checkbox-list{max-height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.jobs-table-checkbox-label{display:flex;align-items:center;gap:8px;font-size:.9rem;cursor:pointer;padding:2px 0}.jobs-table-checkbox-label input{flex-shrink:0}.jobs-table-checkbox-label:hover{color:var(--color-primary)}.sort-icon{opacity:.7;font-size:.85em;margin-left:4px}.jobs-table-row{cursor:pointer;transition:background .15s}.jobs-table-row:hover{background:var(--color-bg-hover)}.jobs-table-row.expanded{background:var(--color-primary-bg)}.jobs-table-link{color:var(--color-primary);text-decoration:none}.jobs-table-link:hover{text-decoration:underline}.expand-col{width:36px;text-align:center}.expand-caret{font-size:.85rem;color:var(--color-text-muted)}.jobs-table-detail-row{background:var(--color-bg-alt)}.jobs-table-detail-cell{padding:0;border-bottom:1px solid var(--color-border-muted);vertical-align:top}.jobs-table-detail-section{margin-bottom:16px}.jobs-table-detail-section:last-child{margin-bottom:0}.jobs-table-detail-section-header{background:#b3e0f2;color:#0d3d4a;font-weight:600;font-size:.9rem;padding:6px 12px;border-radius:4px 4px 0 0}.jobs-table-detail-section-body{padding:10px 12px;background:#f4f9fc;border:1px solid #b3e0f2;border-top:none;border-radius:0 0 4px 4px;overflow-x:auto}.jobs-table-subtable{width:100%;border-collapse:collapse;font-size:.9rem}.jobs-table-subtable th,.jobs-table-subtable td{padding:6px 10px;border:1px solid var(--color-border-muted);text-align:left;vertical-align:top}.jobs-table-copyable{position:relative;cursor:pointer;padding-left:24px}.jobs-table-copyable:hover .jobs-table-copy-icon{color:var(--color-primary)}.jobs-table-copy-icon{position:absolute;left:4px;top:8px;color:var(--color-text-subtle);flex-shrink:0;transition:color .2s}.jobs-table-copyable .jobs-table-json{margin:0}.jobs-table-json{background:var(--color-bg-muted);border-radius:6px;padding:6px 10px;font-size:.9em;margin:6px 0;overflow-x:auto;border:1px solid var(--color-border-muted);color:var(--color-text);max-height:200px;max-width:400px;overflow-y:auto}.jobs-table-subtable td:nth-child(5),.jobs-table-subtable td:nth-child(6){max-width:420px;overflow-x:auto}.jobs-table-muted{color:var(--color-text-subtle)}.jobs-table-error{color:var(--color-danger)}.jobs-table-loading,.jobs-table-empty{padding:24px;text-align:center}.jobs-table-loading,.jobs-table-detail-loading{color:var(--color-primary)}.jobs-table-empty{color:var(--color-text-subtle)}.jobs-table-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:16px 10px;border-top:1px solid var(--color-border)}.jobs-table-pagination__size{display:flex;align-items:center;gap:8px;font-size:.9rem}.jobs-table-pagination__size label{color:var(--color-text-muted)}.jobs-table-pagination__select{padding:6px 8px;border:1px solid var(--color-border-muted);border-radius:6px;font-size:.9rem;background:var(--color-input-bg);color:var(--color-text)}.jobs-table-pagination__info{font-size:.9rem;color:var(--color-text-muted)}.jobs-table-pagination__nav{display:flex;gap:8px}.jobs-table-pagination__btn{padding:6px 14px;font-size:.9rem;border:1px solid var(--color-border-muted);border-radius:6px;background:var(--color-bg);color:var(--color-text);cursor:pointer;transition:background .2s,border-color .2s}.jobs-table-pagination__btn:hover:not(:disabled){background:var(--color-bg-muted);border-color:var(--color-border)}.jobs-table-pagination__btn:disabled{opacity:.5;cursor:not-allowed}.jobs-page{background-color:var(--color-bg)}.jobs-page__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:20px}.jobs-page__tabs{display:flex;gap:4px}.jobs-page__tab{padding:8px 16px;font-size:.95rem;font-weight:500;color:var(--color-primary);text-decoration:none;border-radius:8px;transition:background .2s,color .2s}.jobs-page__tab:hover,.jobs-page__tab--active{background:var(--color-primary-bg);color:var(--color-primary-hover)}.jobs-page__content{margin-top:16px}.jobs-page__title{margin:0 0 16px;font-size:1.25rem;font-weight:600;color:var(--color-text)}.auth-outer-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg-alt)}.auth-container{height:auto;display:flex;flex-direction:column;justify-content:center;align-items:center;background:var(--color-bg);border-radius:16px;box-shadow:var(--shadow);padding:2.5rem 2rem 2rem;width:100%;max-width:420px;margin:0 auto}.auth-container img{width:100px;height:auto;margin-bottom:0}.auth-container h3{border-top:1px solid var(--color-border-muted);padding-top:20px;margin-top:0;margin-bottom:0;width:100%}.auth-logo{height:60px;margin-bottom:32px}.auth-title{font-size:32px;margin-bottom:16px}.auth-row{display:flex;flex-direction:row;align-items:top;gap:12px;min-width:260px}.auth-row button{min-width:100px}.auth-input,.auth-row button{height:40px;box-sizing:border-box;font-size:1.1em;padding:.5em 1em}.auth-input{width:220px}.auth-error{color:var(--color-danger);margin:12px 0}.app-layout{display:flex;flex-direction:column;flex:1;min-height:100%;background:var(--color-bg)}.app-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:12px 0 20px;border-bottom:1px solid var(--color-border);margin-bottom:20px}.app-header-left{display:flex;align-items:center;gap:24px}.app-logo-block{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.app-logo{height:38px;width:auto;display:block}.app-env-switcher{display:flex;align-items:center;gap:4px}.app-env-switcher button{padding:4px 10px;font-size:.85rem;font-weight:500;border:1px solid var(--color-border-muted);background:var(--color-bg);color:var(--color-text-muted);border-radius:6px;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.app-env-switcher button:hover{background:var(--color-bg-muted);border-color:var(--color-border)}.app-env-switcher button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.app-stats{font-size:.9rem;color:var(--color-accent);font-weight:500}.app-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.app-nav a{color:var(--color-primary);text-decoration:none;font-weight:500;font-size:.95rem;padding:6px 12px;border-radius:6px;transition:background .2s,color .2s}.app-nav a:hover,.app-nav a.active{background:var(--color-primary-bg);color:var(--color-primary-hover)}.app-theme-toggle{background:transparent;border:1px solid var(--color-border-muted);color:var(--color-text);font-size:1.1rem;padding:4px 10px;border-radius:6px;cursor:pointer;transition:background .2s,border-color .2s}.app-theme-toggle:hover{background:var(--color-bg-muted);border-color:var(--color-border)}.app-logout{background:transparent;border:none;color:var(--color-danger);font-weight:500;font-size:.95rem;padding:6px 12px;border-radius:6px;cursor:pointer;transition:background .2s,color .2s}.app-logout:hover{background:var(--color-danger-bg);color:var(--color-danger-hover)}.app-main{flex:1;min-width:0}#root{margin:0;padding:0;text-align:left;width:100%;min-height:100vh}*{box-sizing:border-box}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}body input[type=text]{background-color:var(--color-input-bg);color:var(--color-text)}.read-the-docs{color:var(--color-text-subtle)}.App{width:100%;min-height:100vh;margin:0;padding:2.5rem 2rem 2rem;background:var(--color-bg);display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box}nav{display:flex;gap:1.5rem;justify-content:flex-start;margin-bottom:2rem}nav a{color:var(--color-primary);font-weight:600;padding:.5em 1em;border-radius:6px;transition:background .2s}nav a.active,nav a:focus,nav a:hover{background:var(--color-primary-bg);color:var(--color-primary-hover)}input[type=text]{border:1px solid var(--color-input-border);border-radius:6px;padding:.5em 1em;font-size:1.1em;background:var(--color-input-bg);color:var(--color-text);width:100%;max-width:350px;box-sizing:border-box}h1{font-size:2.2em;font-weight:700;color:var(--color-text);margin-bottom:.5em}h2{font-size:1.3em;font-weight:600;color:var(--color-primary);margin-bottom:.7em}ul{list-style:none;padding:0;margin:0}li{margin-bottom:.5em}button{background:var(--color-bg-muted);color:var(--color-text);border:1px solid var(--color-border-muted);border-radius:6px;padding:.5em 1em;font-size:1em;font-weight:500;transition:background .2s,border .2s}button:hover,button:focus{background:var(--color-primary-bg);border:1px solid var(--color-primary);color:var(--color-primary)}@media (max-width: 700px){.App{padding:1rem .5rem}nav{flex-direction:column;gap:.5rem}}*,body,html{color:var(--color-text)}.job-by-id{max-width:auto;margin:0 auto;padding:24px;background:var(--color-bg);border-radius:8px;box-shadow:var(--shadow)}.job-by-id-error{color:var(--color-danger);margin-bottom:12px}.job-by-id-form{display:flex;gap:8px;margin-bottom:18px}.job-by-id-input{flex:1}.job-by-id-details{margin-top:18px}.job-details-loading{color:var(--color-primary)}.job-details-json{background:var(--color-bg-muted);border-radius:6px;padding:6px 10px;font-size:.97em;margin:6px 0;overflow-x:auto;border:1px solid var(--color-border-muted);color:var(--color-text);max-height:200px;max-width:400px}.jobs-table-subtable thead tr{background:var(--color-subtable-header);color:var(--color-text)}.page-size-row{display:flex;justify-content:space-between;margin-top:16px;align-items:center;font-weight:500;border-top:1px solid #ddd;padding-top:16px;padding-bottom:12px}.page-size-row select{width:70px;line-height:30px;padding:8px 4px;border:1px solid #e0e0e0;border-radius:6px;color:#111;background-color:#fff}.pagination-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.pagination-row button{background-color:#fff}.paginated-list{position:relative}.paginated-list:after{content:"";transition:.4s ease-out all}.paginated-list.loading:after{position:absolute;z-index:2;background-color:#dcdcdc66;width:100%;height:100%;top:0;left:0}
