:root{--color-primary:#f5a623;--color-primary-strong:#f5a623;--color-primary-stronger:#f5a623;--color-on-primary:#fff;--color-text:#1f2937;--color-muted:#6b7280;--color-border:#e5e7eb;--color-surface:#fff;--color-surface-alt:#f1f5f9;--color-background:#f8fafc;--color-focus:#ffc84a;--color-success:#15803d;--color-success-soft:#dcfce7;--color-danger:#b91c1c;--color-danger-soft:#fee2e2;--color-warning:#b45309;--color-warning-soft:#fef3c7;--color-info:#1d4ed8;--color-info-soft:#dbeafe;--color-neutral:#4b5563;--color-neutral-soft:#e5e7eb;--color-text-primary:var(--color-text);--color-text-secondary:var(--color-muted);--color-text-disabled:#9ca3af;--color-text-inverse:#fff;--color-text-link:var(--color-primary-stronger);--color-text-link-hover:var(--color-primary-stronger);--color-bg-page:var(--color-background);--color-bg-surface:var(--color-surface);--color-bg-subtle:var(--color-surface-alt);--color-bg-hover:#f3f4f6;--color-bg-active:#e5eef5;--color-bg-disabled:#f3f4f6;--color-border-default:var(--color-border);--color-border-subtle:#f1f5f9;--color-border-strong:#d1d5db;--color-border-focus:var(--color-focus);--color-border-primary:var(--color-primary);--color-action-primary:var(--color-primary-strong);--color-action-primary-hover:var(--color-primary-stronger);--color-action-primary-active:var(--color-primary-stronger);--color-action-primary-text:var(--color-on-primary);--color-action-secondary:var(--color-surface);--color-action-secondary-hover:var(--color-surface-alt);--color-action-secondary-text:var(--color-text);--color-action-secondary-border:var(--color-border);--color-focus-ring:var(--color-focus);--color-status-success:var(--color-success);--color-status-success-bg:var(--color-success-soft);--color-status-success-border:#86efac;--color-status-success-text:var(--color-success);--color-status-danger:var(--color-danger);--color-status-danger-bg:var(--color-danger-soft);--color-status-danger-border:#fca5a5;--color-status-danger-text:var(--color-danger);--color-status-warning:var(--color-warning);--color-status-warning-bg:var(--color-warning-soft);--color-status-warning-border:#fcd34d;--color-status-warning-text:var(--color-warning);--color-status-info:var(--color-info);--color-status-info-bg:var(--color-info-soft);--color-status-info-border:#93c5fd;--color-status-info-text:var(--color-info);--color-status-neutral:var(--color-neutral);--color-status-neutral-bg:var(--color-neutral-soft);--color-status-neutral-border:#d1d5db;--color-status-neutral-text:var(--color-neutral);--color-input-bg:var(--color-surface);--color-input-border:var(--color-border);--color-input-border-hover:var(--color-border-strong);--color-input-border-focus:var(--color-focus);--color-input-text:var(--color-text);--color-input-placeholder:var(--color-muted);--color-input-disabled-bg:var(--color-bg-disabled);--color-input-disabled-text:var(--color-text-disabled);--color-card-bg:var(--color-surface);--color-card-border:var(--color-border);--color-card-text:var(--color-text-primary);--color-table-bg:var(--color-surface);--color-table-header-bg:var(--color-surface-alt);--color-table-border:var(--color-border);--color-table-row-hover:var(--color-bg-hover);--color-badge-neutral-bg:var(--color-neutral-soft);--color-badge-neutral-text:var(--color-neutral);--color-badge-success-bg:var(--color-success-soft);--color-badge-success-text:var(--color-success);--color-badge-danger-bg:var(--color-danger-soft);--color-badge-danger-text:var(--color-danger);--color-badge-warning-bg:var(--color-warning-soft);--color-badge-warning-text:var(--color-warning);--color-badge-info-bg:var(--color-info-soft);--color-badge-info-text:var(--color-info);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "Cascadia Mono", Consolas, monospace;--text-sm:13px;--text-base:15px;--text-lg:18px;--text-xl:24px;--radius-sm:4px;--radius-md:8px;--radius-pill:999px;--shadow-sm:0 1px 2px #0f172a14;--shadow-md:0 6px 18px #0f172a1a;--max-width:1240px;--sidebar-width:232px;--space-7:48px;--space-8:64px;--text-xs:11px;--text-2xl:30px;--color-code-bg:#0f172a;--color-code-text:#e2e8f0;--color-code-border:#1e293b;--color-code-muted:#94a3b8;--color-stage-done:var(--color-success);--color-stage-current:var(--color-primary);--color-stage-pending:var(--color-border-strong);--shadow-lg:0 12px 32px #0f172a24}
*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-bg-page);color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;line-height:1.5}h1,h2,h3,h4{margin:0;line-height:1.25}a{color:var(--color-text-link);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid}.app-sidebar{gap:var(--space-5);padding:var(--space-5) var(--space-4);background:var(--color-bg-surface);border-right:1px solid var(--color-border-default);flex-direction:column;display:flex}.app-sidebar__brand{align-items:center;gap:var(--space-2);display:flex}.app-sidebar__mark{border-radius:var(--radius-sm);background:var(--color-primary);width:28px;height:28px;color:var(--color-on-primary);font-size:var(--text-sm);flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.app-sidebar__title{font-size:var(--text-base);font-weight:600}.app-sidebar__section{gap:var(--space-1);flex-direction:column;display:flex}.app-sidebar__label{padding:0 var(--space-2);margin-bottom:var(--space-1);color:var(--color-text-secondary);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.nav-link{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:var(--text-sm);display:flex}.nav-link:hover{background:var(--color-bg-hover);text-decoration:none}.nav-link[aria-current=page]{background:var(--color-warning-soft);color:var(--color-warning);font-weight:600}.app-sidebar__section--foot{margin-top:auto}.nav-link--button{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}.app-content{flex-direction:column;min-width:0;display:flex}.app-header{background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default)}.app-header__inner{gap:var(--space-3);max-width:var(--max-width);padding:var(--space-5) var(--space-5);flex-wrap:wrap;justify-content:space-between;align-items:center;margin:0 auto;display:flex}.app-header__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.app-title{font-size:var(--text-xl);font-weight:600}.app-subtitle{align-items:center;gap:var(--space-2);margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.app-main{width:100%;max-width:var(--max-width);padding:var(--space-6) var(--space-5) var(--space-8);gap:var(--space-4);flex-direction:column;flex:1;margin:0 auto;display:flex}.app-footer{max-width:var(--max-width);width:100%;padding:var(--space-5);color:var(--color-text-secondary);font-size:var(--text-sm);margin:0 auto}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.app-sidebar{border-right:0;border-bottom:1px solid var(--color-border-default)}}.message{padding:var(--space-3) var(--space-4);border-left:4px solid var(--color-info);background:var(--color-info-soft);border-radius:var(--radius-sm);color:var(--color-text-primary);white-space:pre-line}.message[data-tone=error]{border-left-color:var(--color-danger);background:var(--color-danger-soft)}.message[data-tone=success]{border-left-color:var(--color-success);background:var(--color-success-soft)}.message[data-tone=warning]{border-left-color:var(--color-warning);background:var(--color-warning-soft)}.notice{margin:var(--space-2) 0 0;padding:var(--space-2) var(--space-3);border-left:3px solid var(--color-warning);background:var(--color-warning-soft);border-radius:var(--radius-sm);font-size:var(--text-sm)}.card{background:var(--color-card-bg);border:1px solid var(--color-card-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-5)}.card>:last-child{margin-bottom:0}.card--flush{padding:0;overflow:hidden}.card__title{align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);font-size:var(--text-lg);font-weight:600;display:flex}.card__title-row{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.card__title-row .card__title{margin-bottom:0}.card__hint{margin:0 0 var(--space-4);color:var(--color-text-secondary);font-size:var(--text-sm)}.count-pill{aspect-ratio:1;min-width:24px;padding:0 var(--space-1);border-radius:var(--radius-pill);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:var(--text-sm);justify-content:center;align-items:center;line-height:1;display:inline-flex}.count-pill--text{aspect-ratio:auto;padding:2px var(--space-2)}.form{gap:var(--space-3);display:grid}.form-field{gap:var(--space-1);display:grid}.form-field[hidden]{display:none}.form-field label,.field-label{color:var(--color-text-secondary);font-size:var(--text-sm)}.form-row{align-items:start;gap:var(--space-3);flex-wrap:wrap;display:flex}.form-row>.form-field{flex:200px;min-width:0}input,select,textarea{width:100%;padding:var(--space-2);border:1px solid var(--color-input-border);border-radius:var(--radius-sm);background:var(--color-input-bg);color:var(--color-input-text);font:inherit}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--color-input-border-hover)}input:disabled,select:disabled,textarea:disabled{background:var(--color-input-disabled-bg);color:var(--color-input-disabled-text);cursor:not-allowed}input::placeholder,textarea::placeholder{color:var(--color-input-placeholder)}textarea{resize:vertical;min-height:96px}textarea.textarea--tall{min-height:200px}.form-error{margin:var(--space-1) 0 0;color:var(--color-danger);font-size:var(--text-sm)}.form-footer{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.form-footer__hint{color:var(--color-text-secondary);font-size:var(--text-sm);flex:260px;margin:0}.choice{align-items:center;gap:var(--space-2);font-size:var(--text-sm);cursor:pointer;display:inline-flex}.choice input[type=radio],.choice input[type=checkbox]{appearance:none;border:2px solid var(--color-border-default);background-color:var(--color-surface);cursor:pointer;flex:none;width:16px;height:16px;margin:0}.choice input[type=radio]{border-radius:50%}.choice input[type=checkbox]{border-radius:3px}.choice input:checked{border-color:var(--color-primary);background-color:var(--color-primary);background-clip:content-box;padding:3px}.choice:has(input:checked){color:var(--color-primary);font-weight:600}.choice:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:2px}.radio-group{align-items:center;gap:var(--space-3);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.radio-group legend{width:100%;margin-bottom:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm)}.button{justify-content:center;align-items:center;gap:var(--space-2);padding:calc(var(--space-2) - 1px) var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-action-secondary);color:var(--color-action-secondary-text);font:inherit;font-size:calc(var(--text-base) - 2px);cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){background:var(--color-action-secondary-hover);text-decoration:none}.button:disabled{opacity:.5;cursor:not-allowed}.button-primary{background:var(--color-action-primary);border-color:var(--color-action-primary);color:var(--color-action-primary-text);font-weight:600}.button-primary:hover:not(:disabled){background:var(--color-action-primary-hover);border-color:var(--color-action-primary-hover)}.button-success,.button-success:hover:not(:disabled),.button-success:active:not(:disabled){border-color:var(--color-success);color:var(--color-success)}.button-success:hover:not(:disabled){background:var(--color-success-soft)}.button-danger,.button-danger:hover:not(:disabled),.button-danger:active:not(:disabled){border-color:var(--color-danger);color:var(--color-danger)}.button-danger:hover:not(:disabled){background:var(--color-danger-soft)}.button--small{padding:3px var(--space-3);font-size:var(--text-sm)}.button-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.button-row--end{justify-content:flex-end}.link-button{color:var(--color-danger);font:inherit;font-size:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.link-button:hover{color:var(--color-text-primary)}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:14px;height:14px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:1.5s}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.type-tabs{border-bottom:1px solid var(--color-border-default);min-width:0}.type-tabs__list{align-items:center;gap:var(--space-5);display:flex;overflow:auto hidden}.type-tab{align-items:center;gap:var(--space-2);padding:var(--space-3) 0;color:var(--color-text-secondary);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;text-decoration:none;display:inline-flex}.type-tab:hover{color:var(--color-text-primary);text-decoration:none}.type-tab[aria-current=page]{border-bottom-color:var(--color-primary);color:var(--color-text-primary);font-weight:600}.type-tab__gate{font-size:var(--text-xs)}.summary-bar{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.summary-bar__stats{align-items:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.summary-stat{align-items:baseline;gap:var(--space-2);display:inline-flex}.summary-stat__label{color:var(--color-text-secondary);font-size:var(--text-sm)}.summary-stat__value{font-size:var(--text-lg);font-weight:600}.summary-stat[data-tone=success] .summary-stat__value{color:var(--color-status-success-text)}.summary-stat[data-tone=danger] .summary-stat__value{color:var(--color-status-danger-text)}.summary-stat[data-tone=info] .summary-stat__value{color:var(--color-status-info-text)}.summary-stat[data-tone=warning] .summary-stat__value{color:var(--color-status-warning-text)}.gate-banner{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface);border-left-width:4px;flex-wrap:wrap;display:flex}.gate-banner[data-status=passed]{border-left-color:var(--color-success);background:var(--color-success-soft)}.gate-banner[data-status=failed]{border-left-color:var(--color-danger);background:var(--color-danger-soft)}.gate-banner[data-status=not-run]{border-left-color:var(--color-warning);background:var(--color-warning-soft)}.gate-banner__text{flex-direction:column;gap:2px;min-width:0;display:flex}.gate-banner__title{align-items:center;gap:var(--space-2);font-weight:600;display:flex}.gate-banner__detail{color:var(--color-text-secondary);font-size:var(--text-sm)}.stepper{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.stepper__step{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);display:inline-flex}.stepper__dot{border:2px solid var(--color-stage-pending);background:var(--color-surface);width:20px;height:20px;font-size:var(--text-xs);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.stepper__step[data-state=done]{color:var(--color-success)}.stepper__step[data-state=done] .stepper__dot{border-color:var(--color-stage-done);background:var(--color-stage-done);color:var(--color-text-inverse)}.stepper__step[data-state=current]{color:var(--color-text-primary);font-weight:600}.stepper__step[data-state=current] .stepper__dot{border-color:var(--color-stage-current);background:var(--color-stage-current);color:var(--color-on-primary)}.stepper__arrow{color:var(--color-border-strong)}.how-it-works .stepper{gap:var(--space-3)}.how-it-works__detail{gap:var(--space-3);margin:var(--space-4) 0 0;padding:var(--space-4);border-radius:var(--radius-sm);background:var(--color-bg-subtle);display:grid}.how-it-works__detail dt{margin-bottom:2px;font-weight:600}.how-it-works__detail dd{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0}.how-it-works__now{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);border-left:4px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-info-soft);font-weight:500}.advanced>summary{cursor:pointer;padding:var(--space-3) 0;color:var(--color-text-secondary);font-weight:600}.advanced>summary:hover{color:var(--color-text-primary)}.advanced[open]>summary{margin-bottom:var(--space-4)}.status-badge{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border:1px solid var(--color-status-neutral-border);border-radius:var(--radius-pill);background:var(--color-badge-neutral-bg);color:var(--color-badge-neutral-text);font-size:var(--text-sm);white-space:nowrap;font-weight:500;display:inline-flex}.status-badge:before{font-weight:700}.status-badge[data-status=PASSED],.status-badge[data-status=APPROVED],.status-badge[data-status=CONNECTED],.status-badge[data-status=RETEST_PASSED]{border-color:var(--color-status-success-border);background:var(--color-badge-success-bg);color:var(--color-badge-success-text)}.status-badge[data-status=PASSED]:before,.status-badge[data-status=APPROVED]:before,.status-badge[data-status=CONNECTED]:before,.status-badge[data-status=RETEST_PASSED]:before{content:"✓"}.status-badge[data-status=FAILED],.status-badge[data-status=REJECTED],.status-badge[data-status=BLOCKED],.status-badge[data-status=ERROR],.status-badge[data-status=INVALID],.status-badge[data-status=TIMED_OUT],.status-badge[data-status=RETEST_FAILED]{border-color:var(--color-status-danger-border);background:var(--color-badge-danger-bg);color:var(--color-badge-danger-text)}.status-badge[data-status=FAILED]:before,.status-badge[data-status=REJECTED]:before,.status-badge[data-status=ERROR]:before,.status-badge[data-status=INVALID]:before,.status-badge[data-status=TIMED_OUT]:before,.status-badge[data-status=RETEST_FAILED]:before{content:"✕"}.status-badge[data-status=BLOCKED]:before{content:"⊘"}.status-badge[data-status=UNREVIEWED],.status-badge[data-status=ON_HOLD],.status-badge[data-status=NOT_RUN],.status-badge[data-status=QUEUED],.status-badge[data-status=UNVERIFIED],.status-badge[data-status=READY_FOR_RETEST],.status-badge[data-status=DRAFT]{border-color:var(--color-status-warning-border);background:var(--color-badge-warning-bg);color:var(--color-badge-warning-text)}.status-badge[data-status=UNREVIEWED]:before,.status-badge[data-status=DRAFT]:before{content:"●"}.status-badge[data-status=ON_HOLD]:before,.status-badge[data-status=QUEUED]:before{content:"!"}.status-badge[data-status=RUNNING],.status-badge[data-status=FIXED],.status-badge[data-status=ACTIVE]{border-color:var(--color-status-info-border);background:var(--color-badge-info-bg);color:var(--color-badge-info-text)}.status-badge[data-status=RUNNING]:before{content:"▸"}.status-badge--type{border-color:var(--color-border-strong);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase}.status-badge--source{border-color:var(--color-border-default);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--text-xs)}.list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list__item{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border-subtle)}.list__item:last-child{border-bottom:0}.list__head{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.list__id{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--text-sm)}.list__title{font-weight:600}.list__meta{align-items:center;gap:var(--space-3);margin-top:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.test-case{border-bottom:1px solid var(--color-border-subtle)}.test-case:last-child{border-bottom:0}.test-case__summary{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);cursor:pointer;flex-wrap:wrap;list-style:none;display:flex}.test-case__summary::-webkit-details-marker{display:none}.test-case__summary:hover{background:var(--color-table-row-hover)}.test-case__caret{border-right:2px solid var(--color-text-secondary);border-bottom:2px solid var(--color-text-secondary);flex:none;width:7px;height:7px;transition:transform .12s;transform:rotate(-45deg)}.test-case[open] .test-case__caret{transform:rotate(45deg)}.test-case__identity{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;flex:1;min-width:0;display:flex}.test-case__badges{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.test-case__history-dots{align-items:center;gap:3px;display:inline-flex}.test-case__history-dot{background:var(--color-border-strong);border-radius:2px;width:8px;height:8px}.test-case__history-dot[data-result=PASSED]{background:var(--color-success)}.test-case__history-dot[data-result=FAILED],.test-case__history-dot[data-result=TIMED_OUT],.test-case__history-dot[data-result=ERROR]{background:var(--color-danger)}.test-case__flaky-label{color:var(--color-warning);font-size:var(--text-xs);font-weight:600}.test-case__body{padding:0 var(--space-5) var(--space-5);border-top:1px solid var(--color-border-subtle);padding-top:var(--space-4)}.test-case__grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.test-case__label{margin:0 0 var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:600}.test-case__steps{padding-left:var(--space-5);margin:0}.test-case__steps li{margin-bottom:var(--space-2)}.test-case__steps li:last-child{margin-bottom:0}.code-block{padding:var(--space-4);background:var(--color-code-bg);border:1px solid var(--color-code-border);border-radius:var(--radius-sm);color:var(--color-code-text);font-family:var(--font-mono);font-size:var(--text-sm);tab-size:2;margin:0;line-height:1.6;overflow-x:auto}.code-block--log{white-space:pre-wrap;word-break:break-word;max-height:420px;font-size:var(--text-xs);color:var(--color-code-muted);overflow-y:auto}.code-toolbar{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.table-wrap{overflow-x:auto}table.data-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.data-table th,.data-table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--color-table-border);vertical-align:top}.data-table th{background:var(--color-table-header-bg);color:var(--color-text-secondary);white-space:nowrap;font-weight:600}.data-table tbody tr:hover{background:var(--color-table-row-hover)}.data-table td.numeric{font-family:var(--font-mono);white-space:nowrap}.empty-state{padding:var(--space-7) var(--space-5);text-align:center;color:var(--color-text-secondary)}.empty-state__title{margin-bottom:var(--space-2);color:var(--color-text-primary);font-size:var(--text-base);font-weight:600}.empty-state__actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-4);display:flex}.provider-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.provider-card{gap:var(--space-3);padding:var(--space-5);background:var(--color-card-bg);border:1px solid var(--color-card-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.provider-card[data-active=true]{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary), var(--shadow-sm)}.provider-card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.provider-card__name{font-size:var(--text-base);font-weight:600}.provider-card__tagline{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-sm)}.provider-card__steps{padding-left:var(--space-5);color:var(--color-text-secondary);font-size:var(--text-sm);margin:0}.provider-card__steps li{margin-bottom:var(--space-1)}.provider-card__detail{padding:var(--space-2) var(--space-3);background:var(--color-bg-subtle);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);word-break:break-all}.provider-card__footer{justify-content:space-between;align-items:center;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border-subtle);flex-wrap:wrap;margin-top:auto;display:flex}code.inline{background:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);font-family:var(--font-mono);border-radius:3px;padding:1px 5px;font-size:.92em}.dialog-backdrop{z-index:50;padding:var(--space-6) var(--space-4);background:#0f172a73;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog{background:var(--color-surface);border-radius:var(--radius-md);width:100%;max-width:720px;box-shadow:var(--shadow-lg)}.dialog--wide{max-width:960px}.dialog__head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border-default);display:flex}.dialog__title{font-size:var(--text-lg);font-weight:600}.dialog__body{padding:var(--space-5)}.dialog__foot{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border-default);flex-wrap:wrap;display:flex}.dialog__close{padding:0 var(--space-2);color:var(--color-text-secondary);font-size:var(--text-lg);cursor:pointer;background:0 0;border:0;line-height:1}.dialog__close:hover{color:var(--color-text-primary)}.stack{gap:var(--space-4);flex-direction:column;display:flex}.stack--tight{gap:var(--space-2)}.row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.row--between{justify-content:space-between}.muted{color:var(--color-text-secondary)}.text-sm{font-size:var(--text-sm)}.mono{font-family:var(--font-mono)}.grow{flex:1;min-width:0}.section-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.section-header__title{font-size:var(--text-lg);font-weight:600}.section-header__subtitle{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-sm)}.page-title{font-size:var(--text-2xl);font-weight:600}.artifact-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.artifact-thumb{gap:var(--space-1);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-subtle);cursor:zoom-in;text-align:left;flex-direction:column;padding:0;display:flex;overflow:hidden}.artifact-thumb:hover{border-color:var(--color-primary)}.artifact-thumb img,.artifact-thumb video{object-fit:cover;object-position:top center;background:var(--color-surface);width:100%;height:96px;display:block}.artifact-thumb{position:relative}.artifact-thumb[data-kind=video]{cursor:pointer}.artifact-thumb__play{color:#fff;pointer-events:none;background:#1118279e;border-radius:50%;place-items:center;width:34px;height:34px;padding-left:2px;font-size:13px;line-height:1;display:grid;position:absolute;top:30px;left:50%;transform:translate(-50%)}.artifact-thumb:hover .artifact-thumb__play{background:#111827cc}.artifact-thumb__label{padding:var(--space-1) var(--space-2);color:var(--color-text-secondary);font-size:var(--text-xs)}.artifact-player{border-radius:var(--radius-sm);background:#000;width:100%;max-height:68vh;display:block}.fixture-row{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border-subtle);flex-wrap:wrap;display:flex}.fixture-row:last-child{border-bottom:0}.fixture-row__preview{object-fit:cover;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-subtle);flex:none;width:44px;height:44px}.fixture-row__icon{border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-subtle);width:44px;height:44px;color:var(--color-text-secondary);font-size:var(--text-xs);text-transform:uppercase;flex:none;justify-content:center;align-items:center;display:inline-flex}.data-fields{gap:var(--space-2);flex-direction:column;display:flex}.data-field{align-items:start;gap:var(--space-3);grid-template-columns:minmax(120px,200px) minmax(0,1fr) auto;display:grid}.data-field__key{word-break:break-word;min-width:0;padding-top:7px}.data-field__key input{height:34px;font-family:var(--font-mono);font-size:var(--text-sm);padding-top:0;padding-bottom:0}.data-field__value{min-width:0}.data-field__value input[data-missing=true]{border-color:var(--color-status-warning-border);background:var(--color-warning-soft)}.data-field__action{padding-top:4px}@media (max-width:640px){.data-field{gap:var(--space-1);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border-subtle);grid-template-columns:1fr}}.repo-row{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-subtle);flex-wrap:wrap;display:flex}.repo-row:last-child{border-bottom:0}.repo-row>.grow{flex:320px}.job-queue .card__title-row{margin-bottom:var(--space-2)}.job-list{margin:var(--space-2) 0 var(--space-3);padding:0;list-style:none}.job-lane{align-items:center;gap:var(--space-2);margin:var(--space-3) 0 0;color:var(--color-text-secondary);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:600;display:flex}.job-row{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border-subtle);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.job-row:last-child{border-bottom:0}.job-row[data-status=SUCCEEDED],.job-row[data-status=CANCELLED]{color:var(--color-text-secondary)}.job-row__kind{min-width:3.5rem;color:var(--color-text-secondary);flex:none;font-weight:600}.job-row__label{color:var(--color-text-primary);flex:14rem}.job-row__detail{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-secondary);flex:12rem;overflow:hidden}.job-line{align-items:center;gap:var(--space-2);margin:var(--space-2) 0 0;font-size:var(--text-sm);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.evidence>summary{cursor:pointer;color:var(--color-text-secondary);font-size:var(--text-sm)}.evidence>summary:hover{color:var(--color-text-primary)}.evidence[open]>summary{margin-bottom:var(--space-2)}.evidence .artifact-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}.evidence .artifact-thumb img,.evidence .artifact-thumb video{height:62px}.evidence .artifact-thumb__play{width:26px;height:26px;font-size:11px;top:18px}.auth-area{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-subtle)}.account-row{align-items:flex-start;gap:var(--space-2) var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-subtle);flex-wrap:wrap;display:flex}.account-row:last-child{border-bottom:0}.account-row>.grow{align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:22rem;display:flex}.access-matrix td.access-cell,.access-matrix th:not(:first-child){text-align:center;width:7rem}.access-cell{cursor:help;font-weight:600}.access-cell[data-outcome=REACHED]{color:var(--color-status-success);background:var(--color-status-success-bg)}.access-cell[data-outcome=REDIRECTED_TO_LOGIN]{color:var(--color-status-warning);background:var(--color-status-warning-bg)}.access-cell[data-outcome=REFUSED]{color:var(--color-status-info);background:var(--color-status-info-bg)}.access-cell[data-outcome=ERROR]{color:var(--color-status-danger);background:var(--color-status-danger-bg)}.access-cell[data-outcome=NOT_FOUND],.access-cell[data-outcome=UNKNOWN]{color:var(--color-text-disabled)}
