:root,[data-theme=dark]{color-scheme:dark;--bg: #0a0a0b;--surface: #141416;--surface-hover: #1a1a1e;--surface-active: rgba(249, 99, 2, .06);--surface-raised: #1c1c20;--surface-sunken: #09090a;--sidebar: #111113;--sidebar-hover: rgba(255, 255, 255, .04);--sidebar-active: rgba(255, 255, 255, .06);--ink: #ececef;--concrete: rgba(255, 255, 255, .05);--text: #c2c2c9;--text-secondary: #a4a4ac;--text-muted: #87878f;--text-on-dark: #cdcdd4;--text-on-dark-muted: #87878f;--muted-node: #475569;--border: rgba(255, 255, 255, .07);--border-strong: rgba(255, 255, 255, .13);--primary: #f96302;--primary-hover: #ff7a1f;--primary-soft: rgba(249, 99, 2, .1);--primary-contrast: #ffffff;--success: #22c55e;--success-soft: rgba(34, 197, 94, .1);--warning: #eab308;--warning-soft: rgba(234, 179, 8, .1);--danger: #ef4444;--danger-soft: rgba(239, 68, 68, .1);--info: #3b82f6;--info-soft: rgba(59, 130, 246, .1);--healed: #a78bfa;--healed-soft: rgba(167, 139, 250, .12);--hover-overlay: rgba(255, 255, 255, .03);--chip-overlay: rgba(255, 255, 255, .05);--track: rgba(255, 255, 255, .08);--scrollbar-thumb: rgba(255, 255, 255, .1);--scrollbar-thumb-hover: rgba(255, 255, 255, .16);--skeleton-base: rgba(255, 255, 255, .03);--skeleton-highlight: rgba(255, 255, 255, .07);--card-topline: rgba(255, 255, 255, .04);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .35);--shadow: 0 4px 12px rgba(0, 0, 0, .4);--shadow-md: 0 8px 28px rgba(0, 0, 0, .5);--backdrop: rgba(0, 0, 0, .6);--t-label: 12px;--t-small: 13px;--t-body: 14px;--t-lead: 16px;--t-title: 20px;--t-display: 28px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--radius: 8px;--radius-sm: 6px;--radius-lg: 10px}[data-theme=light]{color-scheme:light;--bg: #f5f5f6;--surface: #ffffff;--surface-hover: #f6f6f8;--surface-active: rgba(249, 99, 2, .07);--surface-raised: #ffffff;--surface-sunken: #ededef;--sidebar: #fbfbfc;--sidebar-hover: rgba(17, 17, 19, .045);--sidebar-active: rgba(17, 17, 19, .07);--ink: #1a1a1f;--concrete: rgba(17, 17, 19, .05);--text: #34343c;--text-secondary: #57575f;--text-muted: #696971;--text-on-dark: #34343c;--text-on-dark-muted: #696971;--muted-node: #64748b;--border: rgba(17, 17, 19, .09);--border-strong: rgba(17, 17, 19, .16);--primary: #ea5c00;--primary-hover: #f96302;--primary-soft: rgba(249, 99, 2, .09);--primary-contrast: #ffffff;--success: #16a34a;--success-soft: rgba(22, 163, 74, .1);--warning: #b45309;--warning-soft: rgba(202, 138, 4, .12);--danger: #dc2626;--danger-soft: rgba(220, 38, 38, .08);--info: #2563eb;--info-soft: rgba(37, 99, 235, .08);--healed: #7c3aed;--healed-soft: rgba(124, 58, 237, .1);--hover-overlay: rgba(17, 17, 19, .03);--chip-overlay: rgba(17, 17, 19, .05);--track: rgba(17, 17, 19, .08);--scrollbar-thumb: rgba(17, 17, 19, .18);--scrollbar-thumb-hover: rgba(17, 17, 19, .3);--skeleton-base: rgba(17, 17, 19, .04);--skeleton-highlight: rgba(17, 17, 19, .08);--card-topline: rgba(255, 255, 255, .6);--shadow-xs: 0 1px 2px rgba(17, 17, 19, .05);--shadow-sm: 0 1px 3px rgba(17, 17, 19, .07);--shadow: 0 4px 12px rgba(17, 17, 19, .08);--shadow-md: 0 8px 28px rgba(17, 17, 19, .14);--backdrop: rgba(17, 17, 19, .4)}[data-theme=midnight]{color-scheme:dark;--bg: #0a0a14;--surface: #14141f;--surface-hover: #1a1a28;--surface-active: rgba(123, 126, 247, .08);--surface-raised: #1c1c2c;--surface-sunken: #08080f;--sidebar: #11111c;--sidebar-hover: rgba(255, 255, 255, .04);--sidebar-active: rgba(255, 255, 255, .06);--ink: #ececf4;--concrete: rgba(255, 255, 255, .05);--text: #c7c7d9;--text-secondary: #a6a6bc;--text-muted: #86869e;--text-on-dark: #cdcdda;--text-on-dark-muted: #86869e;--muted-node: #4b5578;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .15);--primary: #f96302;--primary-hover: #ff7a1f;--primary-soft: rgba(249, 99, 2, .1);--primary-contrast: #ffffff;--success: #22c55e;--success-soft: rgba(34, 197, 94, .1);--warning: #eab308;--warning-soft: rgba(234, 179, 8, .1);--danger: #f2555a;--danger-soft: rgba(242, 85, 90, .1);--info: #7b7ef7;--info-soft: rgba(123, 126, 247, .12);--healed: #a78bfa;--healed-soft: rgba(167, 139, 250, .12);--hover-overlay: rgba(255, 255, 255, .03);--chip-overlay: rgba(255, 255, 255, .05);--track: rgba(255, 255, 255, .08);--scrollbar-thumb: rgba(255, 255, 255, .1);--scrollbar-thumb-hover: rgba(255, 255, 255, .16);--skeleton-base: rgba(255, 255, 255, .03);--skeleton-highlight: rgba(255, 255, 255, .07);--card-topline: rgba(255, 255, 255, .04);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .35);--shadow: 0 4px 12px rgba(0, 0, 0, .4);--shadow-md: 0 8px 28px rgba(0, 0, 0, .5);--backdrop: rgba(0, 0, 0, .6)}[data-theme=forest]{color-scheme:dark;--bg: #0a0f0c;--surface: #121814;--surface-hover: #182019;--surface-active: rgba(34, 163, 90, .08);--surface-raised: #1b241d;--surface-sunken: #080b09;--sidebar: #0f1512;--sidebar-hover: rgba(255, 255, 255, .04);--sidebar-active: rgba(255, 255, 255, .06);--ink: #e9f0ea;--concrete: rgba(255, 255, 255, .05);--text: #c2ccc4;--text-secondary: #a3aea6;--text-muted: #85908a;--text-on-dark: #cbd5cd;--text-on-dark-muted: #85908a;--muted-node: #4d6355;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .15);--primary: #22a35a;--primary-hover: #2fbf6a;--primary-soft: rgba(34, 163, 90, .12);--primary-contrast: #ffffff;--success: #34d399;--success-soft: rgba(52, 211, 153, .1);--warning: #eab308;--warning-soft: rgba(234, 179, 8, .1);--danger: #f2555a;--danger-soft: rgba(242, 85, 90, .1);--info: #38bdf8;--info-soft: rgba(56, 189, 248, .1);--healed: #a78bfa;--healed-soft: rgba(167, 139, 250, .12);--hover-overlay: rgba(255, 255, 255, .03);--chip-overlay: rgba(255, 255, 255, .05);--track: rgba(255, 255, 255, .08);--scrollbar-thumb: rgba(255, 255, 255, .1);--scrollbar-thumb-hover: rgba(255, 255, 255, .16);--skeleton-base: rgba(255, 255, 255, .03);--skeleton-highlight: rgba(255, 255, 255, .07);--card-topline: rgba(255, 255, 255, .04);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .35);--shadow: 0 4px 12px rgba(0, 0, 0, .4);--shadow-md: 0 8px 28px rgba(0, 0, 0, .5);--backdrop: rgba(0, 0, 0, .6)}[data-theme=sepia]{color-scheme:light;--bg: #f4ecdc;--surface: #fbf3e4;--surface-hover: #f6ecd9;--surface-active: rgba(160, 74, 8, .08);--surface-raised: #fffaf0;--surface-sunken: #f2e9d6;--sidebar: #f7efe0;--sidebar-hover: rgba(43, 32, 19, .045);--sidebar-active: rgba(43, 32, 19, .07);--ink: #2b2013;--concrete: rgba(43, 32, 19, .05);--text: #453922;--text-secondary: #6b5a3f;--text-muted: #786646;--text-on-dark: #382c1a;--text-on-dark-muted: #6b5a3f;--muted-node: #8a7a5e;--border: rgba(43, 32, 19, .12);--border-strong: rgba(43, 32, 19, .2);--primary: #a04a08;--primary-hover: #c05f0e;--primary-soft: rgba(160, 74, 8, .1);--primary-contrast: #ffffff;--success: #367019;--success-soft: rgba(54, 112, 25, .12);--warning: #8a5a12;--warning-soft: rgba(138, 90, 18, .12);--danger: #b3341a;--danger-soft: rgba(179, 52, 26, .08);--info: #4a6a8a;--info-soft: rgba(74, 106, 138, .08);--healed: #7a3fae;--healed-soft: rgba(122, 63, 174, .1);--hover-overlay: rgba(43, 32, 19, .03);--chip-overlay: rgba(43, 32, 19, .05);--track: rgba(43, 32, 19, .08);--scrollbar-thumb: rgba(43, 32, 19, .16);--scrollbar-thumb-hover: rgba(43, 32, 19, .26);--skeleton-base: rgba(43, 32, 19, .04);--skeleton-highlight: rgba(43, 32, 19, .08);--card-topline: rgba(255, 255, 255, .6);--shadow-xs: 0 1px 2px rgba(43, 32, 19, .06);--shadow-sm: 0 1px 3px rgba(43, 32, 19, .08);--shadow: 0 4px 12px rgba(43, 32, 19, .1);--shadow-md: 0 8px 28px rgba(43, 32, 19, .16);--backdrop: rgba(43, 32, 19, .42)}[data-theme=high-contrast]{color-scheme:dark;--bg: #000000;--surface: #000000;--surface-hover: #141414;--surface-active: rgba(255, 255, 255, .14);--surface-raised: #1a1a1a;--surface-sunken: #000000;--sidebar: #000000;--sidebar-hover: rgba(255, 255, 255, .14);--sidebar-active: rgba(255, 255, 255, .22);--ink: #ffffff;--concrete: rgba(255, 255, 255, .1);--text: #ffffff;--text-secondary: #f2f2f2;--text-muted: #c7c7c7;--text-on-dark: #ffffff;--text-on-dark-muted: #c7c7c7;--muted-node: #9a9a9a;--border: rgba(255, 255, 255, .35);--border-strong: rgba(255, 255, 255, .65);--primary: #ff8c1a;--primary-hover: #ffa64d;--primary-soft: rgba(255, 140, 26, .18);--primary-contrast: #000000;--success: #3ddc84;--success-soft: rgba(61, 220, 132, .16);--warning: #ffd60a;--warning-soft: rgba(255, 214, 10, .16);--danger: #ff6b6b;--danger-soft: rgba(255, 107, 107, .16);--info: #4fc3f7;--info-soft: rgba(79, 195, 247, .16);--healed: #c792ea;--healed-soft: rgba(199, 146, 234, .16);--hover-overlay: rgba(255, 255, 255, .08);--chip-overlay: rgba(255, 255, 255, .12);--track: rgba(255, 255, 255, .2);--scrollbar-thumb: rgba(255, 255, 255, .3);--scrollbar-thumb-hover: rgba(255, 255, 255, .45);--skeleton-base: rgba(255, 255, 255, .08);--skeleton-highlight: rgba(255, 255, 255, .18);--card-topline: rgba(255, 255, 255, .12);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .6);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .65);--shadow: 0 4px 12px rgba(0, 0, 0, .7);--shadow-md: 0 8px 28px rgba(0, 0, 0, .8);--backdrop: rgba(0, 0, 0, .85)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}a{color:var(--primary);text-decoration:none;transition:color .15s}a:hover{color:var(--primary-hover);text-decoration:none}.holo-glass{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.app{display:grid;grid-template-columns:232px 1fr;transition:grid-template-columns .18s ease;height:100vh;overflow:hidden;position:relative;z-index:1}.skip-link{position:absolute;top:-48px;left:8px;z-index:2000;padding:8px 14px;border-radius:var(--radius-sm);background:var(--primary);color:var(--primary-contrast);font-size:13px;font-weight:600}.skip-link:focus{top:8px}.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}.sidebar{background:var(--sidebar);color:var(--text-on-dark);display:flex;flex-direction:column;padding:16px 10px 10px;gap:1px;overflow-y:auto;border-right:1px solid var(--border);position:relative;z-index:10}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:4px 8px 16px;font-weight:600;font-size:14px;letter-spacing:-.01em;color:var(--ink);margin-bottom:4px;border-bottom:1px solid var(--border)}.sidebar-brand span{display:block;color:var(--text-secondary);font-size:11px;font-weight:500;letter-spacing:0;text-transform:none}.sidebar-brand .logo{width:30px;height:30px;border-radius:6px;background:var(--primary);display:flex;align-items:center;justify-content:center;color:var(--primary-contrast);font-weight:800;font-size:9px;flex-shrink:0}.sidebar-nav,.nav-group{display:flex;flex-direction:column;gap:1px}.sidebar-section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:18px 8px 6px}.sidebar-nav .nav-group:first-child .sidebar-section-label{padding-top:8px}.nav-item{display:flex;align-items:center;gap:8px;min-height:34px;padding:6px 8px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid transparent}.nav-item:hover{background:var(--sidebar-hover);color:var(--text);text-decoration:none}.nav-item.active{background:var(--sidebar-active);color:var(--ink);font-weight:600}.nav-item svg{width:16px;height:16px;opacity:.5;flex-shrink:0;transition:opacity .15s}.nav-item.active svg,.nav-item:hover svg{opacity:.8}.sidebar-footer{margin-top:auto;padding:12px 8px;border-top:1px solid var(--border);display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:12px}.admin-badge{display:inline-flex;align-items:center;flex-shrink:0;padding:1px 6px;border-radius:999px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--primary);background:var(--primary-soft);border:1px solid rgba(249,99,2,.15)}.sidebar-signout{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-secondary);padding:5px 8px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.sidebar-signout:hover{background:var(--sidebar-hover);color:var(--danger);border-color:var(--border)}.sidebar-signout svg{flex-shrink:0}.avatar{width:28px;height:28px;border-radius:50%;background:var(--primary);color:var(--primary-contrast);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;flex-shrink:0}.content{overflow:auto;min-width:0;position:relative;z-index:1;background:var(--bg)}.content::-webkit-scrollbar{width:6px}.content::-webkit-scrollbar-track{background:transparent}.content::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.content::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.topbar{height:52px;background:var(--sidebar);color:var(--text);border-bottom:1px solid var(--border);padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:0;z-index:30}.topbar-brand-block{display:flex;align-items:center;gap:10px}.topbar-eyebrow{color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.topbar-title{font-size:14px;font-weight:600;color:var(--text)}.topbar-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:flex-end;padding:3px 4px;border:1px solid var(--border);border-radius:999px;background:var(--surface)}.env-badge,.system-chip{min-height:24px;display:inline-flex;align-items:center;gap:5px;border-radius:999px;font-size:11px;font-weight:600}.env-badge{background:var(--primary-soft);color:var(--primary);border:1px solid rgba(249,99,2,.15);padding:2px 8px;letter-spacing:.02em}.system-chip{border:1px solid transparent;background:transparent;color:var(--text-secondary);padding:2px 7px}.system-chip.degraded{color:var(--danger)}.system-chip svg{flex-shrink:0}.system-chip .system-chip-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.system-chip .system-chip-dot.ok{background:var(--success)}.system-chip .system-chip-dot.bad{background:var(--danger)}.system-chip .system-chip-dot.unknown{background:var(--text-muted)}.system-chip .runner-bar{display:inline-block;width:34px;height:4px;border-radius:999px;background:var(--track);overflow:hidden;margin-left:2px;flex-shrink:0}.system-chip .runner-bar-fill{display:block;height:100%;border-radius:999px;transition:width .2s ease}.page-header{background:var(--sidebar);border-bottom:1px solid var(--border);padding:18px 28px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:52px;z-index:10;gap:16px}.page-title{margin:0;font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}.page-subtitle{color:var(--text-secondary);font-size:13px;margin-top:2px}.page-body{padding:20px 28px;max-width:1400px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;transition:border-color .18s ease}.card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm),inset 0 1px 0 var(--card-topline)}.card-header{padding:var(--s2) var(--s3);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.card-title{font-size:13px;font-weight:600;margin:0;color:var(--text)}.card-body{padding:var(--s3)}.card-body.flush{padding:0}.card+.card{margin-top:var(--s3)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:12px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow-xs),inset 0 1px 0 var(--card-topline);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.stat-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow),inset 0 1px 0 var(--card-topline);transform:translateY(-1px)}.stat-card.compact{padding:12px 14px}.stat-card.compact .stat-value{font-size:20px}.stat-label{color:var(--text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.stat-value{font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1;color:var(--ink)}.stat-delta{font-size:12px;margin-top:6px;color:var(--text-secondary)}.stat-delta.up{color:var(--success)}.stat-delta.down{color:var(--danger)}table{width:100%;border-collapse:collapse;font-size:var(--t-small)}table td.num,table th.num,table .mono{font-variant-numeric:tabular-nums}.table-scroll{overflow-x:auto}.table-scroll.capped{max-height:60vh;overflow-y:auto}thead th{text-align:left;padding:var(--s1) var(--s3);position:sticky;top:0;z-index:1;background:var(--surface);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);background:var(--surface-sunken);border-bottom:1px solid var(--border)}tbody td{padding:var(--s1) var(--s3);border-bottom:1px solid var(--border);color:var(--text)}tbody tr{transition:background .1s}tbody tr:hover{background:var(--hover-overlay)}tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;text-transform:capitalize;white-space:nowrap}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.badge.passed{color:var(--success);background:var(--success-soft)}.badge.failed,.badge.errored{color:var(--danger);background:var(--danger-soft)}.badge.healed{color:var(--warning);background:var(--warning-soft)}.badge.queued,.badge.running{color:var(--info);background:var(--info-soft)}.badge.skipped{color:var(--text-secondary);background:var(--chip-overlay)}.btn{display:inline-flex;align-items:center;gap:6px;background:var(--primary);color:var(--primary-contrast);border:none;padding:7px 14px;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:600;transition:all .15s ease;font-family:inherit}.btn:hover{background:var(--primary-hover)}.btn:active{opacity:.85}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn.secondary:hover{background:var(--surface-hover);border-color:var(--border-strong);color:var(--ink)}.btn.danger{background:var(--danger-soft);color:var(--danger);border:1px solid rgba(239,68,68,.15)}.btn.danger:hover{background:#ef444426}.btn.sm{padding:4px 10px;font-size:12px}.btn svg{width:14px;height:14px}.muted{color:var(--text-secondary)}.subtle{color:var(--text-muted)}.mono{font-family:JetBrains Mono,ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px}.row{display:flex;align-items:center;gap:8px}.wrap{flex-wrap:wrap}.col{display:flex;flex-direction:column;gap:4px}.spread{display:flex;justify-content:space-between;align-items:center}.empty-state{padding:48px 24px;text-align:center;color:var(--text-secondary)}.empty-state .icon{width:48px;height:48px;margin:0 auto 16px;color:var(--text-muted);opacity:.5}.empty-state h3{margin:0 0 6px;color:var(--text);font-size:15px}.empty-state p{margin:0 0 16px;font-size:13px}.split{display:grid;grid-template-columns:320px 1fr;gap:12px}.toolbar-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,220px);gap:10px}.runs-toolbar{grid-template-columns:minmax(260px,1fr) repeat(3,minmax(140px,180px))}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.check-row{display:flex;align-items:center;gap:8px;min-height:36px;color:var(--text);font-size:13px}.check-row input{width:16px;height:16px;accent-color:var(--primary)}.list-item{padding:10px 16px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.list-item:hover{background:var(--hover-overlay)}.list-item.active{background:var(--surface-active);border-left:3px solid var(--primary);padding-left:13px}.list-item:last-child{border-bottom:none}.list-item-title{font-weight:550;font-size:13px;color:var(--text)}.list-item-meta{font-size:12px;color:var(--text-secondary);margin-top:2px}pre.code{background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;margin:0;font-family:JetBrains Mono,ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px;overflow-x:auto;color:var(--text)}.tag{display:inline-block;padding:1px 6px;background:var(--chip-overlay);border:1px solid var(--border);border-radius:4px;font-size:11px;color:var(--text-secondary);font-weight:500}.insight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-bottom:16px}.attention-card{display:flex;gap:12px;align-items:flex-start;min-height:112px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color .15s}.attention-card:hover{border-color:var(--border-strong)}.attention-icon{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto;color:#fff}.attention-card.good .attention-icon{background:var(--success)}.attention-card.warn .attention-icon{background:var(--warning)}.attention-card.bad .attention-icon{background:var(--danger)}.attention-card.neutral .attention-icon{background:var(--primary)}.attention-title{font-weight:600;font-size:13px;margin-bottom:3px;color:var(--ink)}.attention-copy{color:var(--text-secondary);font-size:12px;line-height:1.4;margin-bottom:10px}.section-kicker{color:var(--text-secondary);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px}.input{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text);font-size:13px;font-family:inherit;transition:border-color .15s}.input:focus,.input:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.input::placeholder{color:var(--text-muted)}.toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-sunken);color:var(--text-secondary);padding:4px 10px 4px 4px;min-width:104px;cursor:pointer;font:inherit;font-size:12px;font-weight:600;transition:all .15s}.toggle span{width:22px;height:22px;border-radius:999px;background:var(--text-muted);transition:all .2s}.toggle.on{background:var(--success-soft);color:var(--success);border-color:#22c55e33}.toggle.on span{background:var(--success);transform:translate(2px)}.evidence-grid{display:grid;grid-template-columns:minmax(280px,720px) minmax(220px,1fr);gap:12px;align-items:start}.evidence-chip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.evidence-chip{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;background:var(--surface)}.release-readiness-card{border-top:2px solid var(--primary)}.readiness-banner{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:20px;align-items:center;border-radius:var(--radius);padding:18px 20px;margin-bottom:12px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.readiness-banner.good{border-color:#22c55e33}.readiness-banner.warn{border-color:#eab30833}.readiness-banner.bad{border-color:#ef444433}.readiness-kicker{color:var(--primary);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}.readiness-banner h2{margin:0;font-size:18px;line-height:1.2;color:var(--ink)}.readiness-banner p{margin:6px 0 0;max-width:720px;color:var(--text-secondary);font-size:13px}.readiness-score{width:88px;height:88px;border-radius:50%;background:var(--surface-sunken);border:4px solid var(--primary);display:flex;flex-direction:column;align-items:center;justify-content:center;justify-self:end}.readiness-score span{font-size:24px;font-weight:700;line-height:1;color:var(--ink)}.readiness-score em{color:var(--text-secondary);font-size:10px;font-style:normal;font-weight:700;text-transform:uppercase}.maintenance-stat-grid{grid-template-columns:repeat(6,minmax(120px,1fr))}.run-detail-body{max-width:none}.run-id-label{font-size:13px;font-weight:400;margin-left:8px;color:var(--text-secondary)}.run-stat-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.run-timeline{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(120px,1fr);gap:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:-4px 0 12px;overflow:hidden}.timeline-step{position:relative;min-height:42px;display:flex;align-items:center;gap:8px;padding:10px 12px;color:var(--text-secondary);font-size:12px;border-right:1px solid var(--border)}.timeline-step:last-child{border-right:0}.timeline-step span{width:10px;height:10px;border-radius:50%;border:2px solid var(--border-strong);background:transparent}.timeline-step strong{font-size:12px}.timeline-step.done span{background:var(--success);border-color:var(--success)}.timeline-step.done strong{color:var(--text)}.timeline-step.active span{background:var(--primary);border-color:var(--primary)}.timeline-step.bad span{background:var(--danger);border-color:var(--danger)}.timeline-step.bad strong{color:var(--danger)}.execution-workspace{min-height:720px;display:grid;grid-template-columns:minmax(560px,1fr) 340px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:12px}.execution-main-panel,.execution-summary-panel{background:var(--surface-sunken);min-width:0}.execution-main-panel{display:flex;flex-direction:column;background:var(--surface);min-width:0}.execution-summary-panel{border-left:1px solid var(--border);padding:18px}.execution-panel-header,.summary-header,.execution-canvas-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.execution-panel-header{padding:16px 16px 12px;border-bottom:1px solid var(--border)}.execution-panel-header h3,.execution-canvas-topbar h3,.summary-header h3{margin:0;font-size:14px;font-weight:600;color:var(--text)}.execution-panel-header p,.execution-canvas-topbar p{margin:2px 0 0;color:var(--text-secondary);font-size:12px}.execution-mini-status{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.execution-filter-row{display:grid;grid-template-columns:1fr 34px;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border)}.execution-search{min-height:32px;display:flex;align-items:center;color:var(--text-secondary);background:var(--surface-sunken)}.icon-btn{min-width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}.icon-btn:hover{color:var(--text);background:var(--surface-hover);border-color:var(--border-strong)}.icon-btn svg{width:14px;height:14px}.execution-step-list{overflow:auto;padding:4px 6px 16px}.execution-step-item{width:100%;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:background .1s}.execution-step-item:hover,.execution-step-item.active{background:var(--hover-overlay)}.execution-step-item.active{border-left:2px solid var(--primary)}.execution-step-check{width:18px;height:18px;border:2px solid currentColor;border-radius:4px;background:transparent;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:800}.execution-step-copy{min-width:0;display:flex;flex-direction:column;gap:1px}.execution-step-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;color:var(--text)}.execution-step-copy span{color:var(--text-secondary);font-size:11px}.execution-action-chip{border-radius:999px;padding:2px 7px;font-size:10px;font-weight:600;background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);white-space:nowrap}.execution-action-chip.green{color:var(--success);background:var(--success-soft)}.execution-action-chip.orange{color:var(--warning);background:var(--warning-soft)}.execution-action-chip.blue{color:var(--info);background:var(--info-soft)}.execution-action-chip.purple{color:var(--healed);background:var(--healed-soft)}.execution-canvas-topbar{padding:16px 20px 10px}.execution-canvas-tools{display:flex;align-items:center;gap:6px}.execution-map-scroll{flex:1;overflow:auto;padding:10px 20px 24px}.execution-map{position:relative;min-width:700px;margin:0 auto}.execution-map-lines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.execution-map-lines path{fill:none;stroke:var(--text-muted);stroke-width:2;stroke-linecap:round;opacity:.5}.execution-map-lines path.active{stroke:var(--primary);stroke-width:2;opacity:1}.execution-map-lines rect{fill:var(--track)}.execution-map-lines text{fill:var(--text);font-size:10px;font-weight:700}.flow-cap,.flow-node{position:absolute;transform:translate(-50%,-50%);border:0;color:#fff}.flow-cap{min-width:88px;height:36px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;letter-spacing:.02em}.flow-cap.start,.flow-cap.end-good{background:var(--success)}.flow-cap.end-bad{background:var(--danger)}.flow-node{width:240px;min-height:54px;border-radius:999px;padding:6px 14px 6px 6px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:8px;text-align:left;cursor:pointer;background:var(--primary);font:inherit;transition:opacity .15s}.flow-node.passed{background:var(--primary)}.flow-node.healed{background:var(--healed)}.flow-node.failed,.flow-node.errored{background:var(--danger)}.flow-node.running{background:var(--info)}.flow-node.queued,.flow-node.skipped{background:var(--muted-node)}.flow-node.active{outline:2px solid var(--primary);outline-offset:2px}.flow-node-percent{width:36px;height:36px;border-radius:50%;background:var(--track);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.flow-node-text{min-width:0;display:flex;flex-direction:column;gap:1px}.flow-node-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700;text-transform:uppercase}.flow-node-text span{color:#ffffffb3;font-size:10px;font-weight:600}.summary-header{margin-bottom:16px}.summary-tabs{display:flex;gap:18px;border-bottom:1px solid var(--border);margin-bottom:16px}.summary-tabs span{padding-bottom:8px;font-size:12px;color:var(--text-secondary);font-weight:600;transition:color .15s}.summary-tabs .active{color:var(--primary);border-bottom:2px solid var(--primary)}.summary-chart{position:relative;height:200px;border-bottom:1px solid var(--border);margin-bottom:16px}.summary-chart-placeholder{margin:0 0 16px;padding:12px 0;border-bottom:1px solid var(--border);font-size:var(--t-label);color:var(--text-muted)}.summary-chart-grid{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:repeat(6,1fr);color:var(--text-muted);font-size:10px;text-align:right}.summary-chart-grid span{border-top:1px solid var(--border)}.summary-chart-line{position:absolute;left:8%;right:8%;bottom:34%;height:2px;background:var(--primary)}.summary-chart-empty{position:absolute;left:0;right:0;top:44%;text-align:center;font-size:12px;color:var(--text-secondary)}.summary-coverage{display:grid;grid-template-columns:minmax(0,1fr) 80px;align-items:center;gap:14px;margin-bottom:16px}.summary-coverage strong{display:block;font-size:13px;margin-bottom:4px;color:var(--text)}.summary-coverage p{margin:0;color:var(--text-secondary);font-size:13px}.donut{--pct: 0;position:relative;width:72px;height:72px;border-radius:50%;background:conic-gradient(var(--primary) calc(var(--pct) * 1%),var(--border) 0);display:grid;place-items:center}.donut:before{content:"";width:56px;height:56px;border-radius:50%;background:var(--surface-sunken);position:absolute}.donut span{position:relative;font-weight:700;color:var(--text)}.summary-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.summary-metric{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:10px}.summary-metric span,.summary-metric em{display:block;color:var(--text-secondary);font-size:11px;font-style:normal}.summary-metric strong{display:block;font-size:20px;line-height:1;margin:6px 0 4px}.summary-metric.good strong{color:var(--success)}.summary-metric.warn strong{color:var(--warning)}.summary-metric.bad strong{color:var(--danger)}.selected-step-empty,.selected-step-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.selected-step-empty{padding:14px;color:var(--text-secondary);font-size:12px}.selected-step-card{padding:14px;display:flex;flex-direction:column;gap:12px}.selected-step-title{display:flex;flex-direction:column;gap:6px}.selected-step-title strong{font-size:13px;color:var(--text)}.selected-step-fields{display:grid;grid-template-columns:72px minmax(0,1fr);gap:6px 10px;font-size:12px}.selected-step-fields span,.selected-step-shot span,.healing-diff span,.step-error span{color:var(--text-secondary);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.selected-step-fields code,.healing-diff code,.step-error code{font-family:JetBrains Mono,ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px;color:var(--text);word-break:break-all}.step-error{border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-sm);background:var(--danger-soft);padding:10px;display:flex;flex-direction:column;gap:4px}.step-error code{color:var(--danger)}.healing-diff{border:1px solid rgba(234,179,8,.15);border-radius:var(--radius-sm);background:var(--warning-soft);padding:10px;display:flex;flex-direction:column;gap:8px}.healing-diff div{display:flex;flex-direction:column;gap:3px}.selected-step-shot{display:flex;flex-direction:column;gap:6px}.selected-step-shot img{max-width:100%;max-height:260px;border-radius:var(--radius-sm);border:1px solid var(--border);object-fit:contain;background:var(--surface-sunken)}.summary-risk{margin-top:12px;border:1px solid rgba(239,68,68,.2);background:var(--danger-soft);border-radius:var(--radius-sm);padding:10px 12px;display:flex;justify-content:space-between;color:var(--danger)}.metadata-grid{display:grid;grid-template-columns:auto 1fr;gap:6px 20px;font-size:13px}.landing-hero{position:relative;min-height:280px;margin:20px 28px 0;border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);color:var(--ink);border:1px solid var(--border)}.landing-hero-copy{position:relative;z-index:1;max-width:760px;padding:36px 40px}.landing-eyebrow{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}.landing-hero h1{margin:0;font-size:36px;line-height:1.1;letter-spacing:-.02em;color:var(--ink)}.landing-hero p{max-width:650px;margin:12px 0 0;color:var(--text-secondary);font-size:15px}.landing-actions{display:flex;gap:8px;margin-top:22px;flex-wrap:wrap}.landing-primary{background:var(--primary);color:var(--primary-contrast)}.landing-primary:hover{background:var(--primary-hover)}.landing-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.landing-secondary:hover{background:var(--surface-hover);color:var(--ink)}.landing-readiness{position:absolute;z-index:1;right:36px;top:40px;width:170px;min-height:170px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-sunken);display:flex;flex-direction:column;justify-content:center;padding:18px}.landing-readiness span,.landing-readiness em{color:var(--text-secondary);font-size:10px;font-style:normal;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.landing-readiness strong{font-size:44px;line-height:1;margin:6px 0}.landing-readiness.good strong{color:var(--success)}.landing-readiness.warn strong{color:var(--warning)}.landing-readiness.bad strong{color:var(--danger)}.landing-body{padding:16px 28px 28px;max-width:1500px}.landing-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px;margin-bottom:12px}.landing-kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;transition:border-color .15s}.landing-kpi:hover{border-color:var(--border-strong)}.landing-kpi div{color:var(--text-secondary);margin-bottom:6px}.landing-kpi div svg{width:16px;height:16px}.landing-kpi span,.landing-kpi em{display:block;color:var(--text-secondary);font-size:11px;font-style:normal;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.landing-kpi strong{display:block;color:var(--ink);font-size:24px;line-height:1;margin:6px 0 4px}.landing-kpi.good strong{color:var(--success)}.landing-kpi.bad strong{color:var(--danger)}.landing-kpi.orange strong{color:var(--primary);font-size:20px}.landing-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.8fr);gap:12px}.landing-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.landing-panel.large{min-height:320px}.landing-panel-header{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.landing-panel-header.compact{min-height:56px}.landing-panel h2{margin:0;font-size:14px;color:var(--text);font-weight:600}.landing-panel p{margin:2px 0 0;color:var(--text-secondary);font-size:13px}.focus-list{display:grid;gap:0}.focus-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border);color:var(--text);transition:background .1s}.focus-item:last-child{border-bottom:0}.focus-item:hover{background:var(--hover-overlay);text-decoration:none}.focus-icon{width:38px;height:38px;border-radius:8px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary)}.focus-item.good .focus-icon{background:var(--success-soft);color:var(--success)}.focus-item.bad .focus-icon{background:var(--danger-soft);color:var(--danger)}.focus-item.neutral .focus-icon{background:var(--chip-overlay);color:var(--text-secondary)}.focus-item strong{display:block;font-size:13px;color:var(--text)}.focus-item p{margin:2px 0 0;color:var(--text-secondary);font-size:13px}.focus-item>span{color:var(--primary);font-size:12px;font-weight:600}.recent-run-list{padding:6px}.recent-run-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 8px;border-radius:var(--radius-sm);color:var(--text);transition:background .1s}.recent-run-item:hover{background:var(--hover-overlay);text-decoration:none}.recent-run-item strong,.recent-run-item em,.recent-run-item small{font-size:12px}.recent-run-item em{color:var(--text-secondary);font-style:normal;text-transform:capitalize}.recent-run-item small{grid-column:2 / -1;color:var(--text-muted)}.run-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.run-dot.passed{background:var(--success)}.run-dot.failed,.run-dot.errored{background:var(--danger)}.run-dot.running,.run-dot.queued{background:var(--info)}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(400px,.8fr);background:var(--bg);color:var(--ink)}.login-brand-panel{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:#0c0c0e}.login-gradient-bg{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(ellipse 600px 400px at 20% 40%,rgba(249,99,2,.12),transparent),radial-gradient(ellipse 500px 350px at 70% 70%,rgba(249,99,2,.06),transparent),radial-gradient(ellipse 400px 300px at 50% 20%,rgba(255,140,60,.04),transparent);animation:login-gradient-drift 20s ease-in-out infinite alternate;pointer-events:none}@keyframes login-gradient-drift{0%{transform:translate(0) rotate(0)}33%{transform:translate(-3%,2%) rotate(1deg)}66%{transform:translate(2%,-1%) rotate(-.5deg)}to{transform:translate(-1%,3%) rotate(.5deg)}}.login-brand-content{position:relative;z-index:1;padding:56px 64px}.login-anim{opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}.login-entered .login-anim{opacity:1;transform:translateY(0)}.login-anim-1{transition-delay:.05s}.login-anim-2{transition-delay:.12s}.login-anim-3{transition-delay:.2s}.login-anim-4{transition-delay:.3s}.login-anim-5{transition-delay:.42s}.login-card{opacity:0;transform:translateY(12px) scale(.98);transition:opacity .5s cubic-bezier(.16,1,.3,1) .3s,transform .5s cubic-bezier(.16,1,.3,1) .3s}.login-card.login-card-entered{opacity:1;transform:translateY(0) scale(1)}.login-mark{width:48px;height:48px;border-radius:10px;background:var(--primary);color:var(--primary-contrast);display:grid;place-items:center;font-size:13px;font-weight:800;margin-bottom:28px;box-shadow:0 8px 24px #f9630240}.login-eyebrow{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}.login-brand-panel h1{margin:0;font-size:52px;line-height:1;letter-spacing:-.035em;font-weight:700;color:var(--ink)}.login-brand-panel p{max-width:520px;margin:16px 0 0;color:var(--text-secondary);font-size:16px;line-height:1.6}.login-signal-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:36px;max-width:640px}.login-feature-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--hover-overlay);padding:16px;transition:transform .25s cubic-bezier(.16,1,.3,1),border-color .25s ease,background .25s ease;cursor:default}.login-feature-card:hover{transform:translateY(-3px);border-color:#f9630233;background:#f9630208}.login-feature-num{display:inline-block;width:24px;height:24px;border-radius:6px;background:var(--primary-soft);color:var(--primary);font-size:10px;font-weight:800;line-height:24px;text-align:center;margin-bottom:10px}.login-feature-card strong{display:block;font-size:13px;font-weight:600;color:var(--ink)}.login-feature-card span{display:block;color:var(--text-secondary);font-size:12px;margin-top:4px;line-height:1.4}.login-card-wrap{display:flex;align-items:center;justify-content:center;padding:40px;background:var(--bg)}.login-card{width:100%;max-width:420px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text);padding:28px}.login-card-header{display:flex;gap:12px;align-items:flex-start;margin-bottom:22px}.login-card-icon{width:40px;height:40px;border-radius:8px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;transition:transform .3s cubic-bezier(.16,1,.3,1)}.login-card:hover .login-card-icon{transform:scale(1.05)}.login-card h2{margin:0;font-size:20px;color:var(--ink)}.login-card p{margin:2px 0 0;color:var(--text-secondary);font-size:13px}.login-sso-button{width:100%;min-height:44px;justify-content:center}.login-sso-button{position:relative;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-hover);color:var(--text);display:flex;align-items:center;gap:10px;font:inherit;font-weight:600;cursor:pointer;transition:all .2s ease;overflow:hidden}.login-sso-button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,var(--skeleton-highlight),transparent);transform:translate(-100%);transition:transform .4s ease}.login-sso-button:hover{background:var(--chip-overlay);border-color:var(--border-strong)}.login-sso-button:hover:after{transform:translate(100%)}.login-sso-button:active{transform:scale(.98)}.login-sso-button:disabled{opacity:.4;cursor:not-allowed}.login-sso-button:disabled:after{display:none}.microsoft-tile{width:24px;height:24px;border-radius:4px;background:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.login-config-note{border:1px solid rgba(234,179,8,.15);border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--warning);padding:10px;margin-top:10px;font-size:12px}.login-config-note code{font-family:JetBrains Mono,ui-monospace,SF Mono,Menlo,Consolas,monospace}button:focus-visible,a:focus-visible,.list-item:focus-visible,.nav-item:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media(max-width:1100px){.runs-toolbar,.toolbar-grid{grid-template-columns:1fr 1fr}.split,.evidence-grid,.execution-workspace{grid-template-columns:1fr}.execution-main-panel,.execution-summary-panel{border:0}.execution-main-panel{border-bottom:1px solid var(--border)}.execution-summary-panel{border-top:1px solid var(--border)}.run-stat-grid,.maintenance-stat-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}.readiness-banner{grid-template-columns:1fr}.readiness-score{justify-self:start}.landing-hero{margin:16px 16px 0}.landing-hero-copy{padding:28px 28px 200px}.landing-readiness{left:28px;right:auto;top:auto;bottom:24px}.landing-body{padding:16px}.landing-kpi-grid,.landing-grid{grid-template-columns:1fr 1fr}}@media(max-width:1500px){.execution-workspace{grid-template-columns:300px minmax(0,1fr)}.execution-summary-panel{grid-column:1 / -1;border-left:0;border-top:1px solid var(--border)}.summary-card-grid{grid-template-columns:repeat(4,minmax(120px,1fr))}.summary-chart{height:150px}}@media(max-width:900px){.app{grid-template-columns:1fr;grid-template-rows:auto 1fr}.sidebar{flex-direction:row;align-items:center;gap:4px;padding:8px 10px;overflow-x:auto;overflow-y:hidden;border-right:0;border-bottom:1px solid var(--border)}.sidebar-brand{padding:0 8px 0 0;flex-shrink:0}.sidebar-section-label,.sidebar-footer{display:none}.nav-item{flex-shrink:0;white-space:nowrap}.page-header{position:static;padding:14px 16px;align-items:flex-start;flex-direction:column}.topbar{position:static;height:auto;padding:8px 16px;align-items:flex-start;flex-direction:column}.topbar-actions{justify-content:flex-start}.page-body{padding:14px 16px}.run-timeline{grid-template-columns:1fr 1fr}.landing-hero h1{font-size:28px}.landing-kpi-grid,.landing-grid{grid-template-columns:1fr}.landing-readiness{width:150px;min-height:140px}.landing-readiness strong{font-size:36px}.login-page{grid-template-columns:1fr}.login-brand-panel{min-height:400px;border-right:0;border-bottom:1px solid var(--border)}.login-brand-content{padding:36px}.login-card-wrap{border-left:0}}@media(max-width:640px){.sidebar-brand div:last-child,.nav-item{font-size:12px}.sidebar-command-card{display:none}.login-brand-panel{min-height:auto}.login-brand-content{padding:28px 20px}.login-brand-panel h1{font-size:36px}.login-brand-panel p{font-size:14px}.login-signal-grid{grid-template-columns:1fr}.login-card-wrap,.login-card{padding:20px}.stat-grid,.run-stat-grid,.maintenance-stat-grid,.form-grid,.runs-toolbar,.toolbar-grid,.run-timeline{grid-template-columns:1fr}.card-header,.spread{align-items:flex-start;flex-direction:column;gap:8px}table{min-width:720px}}@media(max-width:760px){html,body,#root{height:auto;min-height:100%}.app{display:block;height:auto;min-height:100vh;overflow:visible}.sidebar{position:sticky;top:0;z-index:50;flex-direction:row;align-items:center;overflow-x:auto;overflow-y:hidden;padding:8px;gap:4px;border-bottom:1px solid var(--border)}.sidebar-brand{flex:0 0 auto;padding:2px 8px}.sidebar-command-card,.sidebar-section-label,.sidebar-footer{display:none}.nav-item{flex:0 0 auto;white-space:nowrap}.content{overflow:visible}.topbar{position:relative;top:auto;height:auto;padding:10px 16px;flex-direction:column;align-items:flex-start}.page-header{position:relative;top:auto;padding:16px;flex-direction:column;align-items:stretch}.page-body{padding:14px;max-width:none}.toolbar-grid,.runs-toolbar,.form-grid,.split,.evidence-grid{grid-template-columns:1fr}.card-body.flush{overflow-x:auto}.card-body.flush table{min-width:680px}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-opacity{0%,to{opacity:1}50%{opacity:.4}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes progress-bar{0%{width:0%}to{width:100%}}@keyframes step-appear{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.spinner-dark{border-color:var(--border);border-top-color:var(--primary)}.spinner-lg{width:36px;height:36px;border-width:3px}.pulse{animation:pulse-opacity 1.4s ease-in-out infinite}.shimmer-line{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:800px 100%;animation:shimmer 1.4s infinite linear;border-radius:4px}html[data-theme] body,html[data-theme] .card,html[data-theme] .sidebar,html[data-theme] .topbar,html[data-theme] .stat-card,html[data-theme] .input{transition:background-color .25s ease,border-color .25s ease,color .25s ease}@media(prefers-reduced-motion:reduce){html[data-theme] body,html[data-theme] .card,html[data-theme] .sidebar,html[data-theme] .topbar,html[data-theme] .stat-card,html[data-theme] .input{transition:none}}.theme-picker{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.theme-picker-label{flex-shrink:0;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.theme-picker-select{flex:1;min-width:0;padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text);font:inherit;font-size:12px;cursor:pointer;transition:border-color .15s,background .15s}.theme-picker-select:hover{border-color:var(--border-strong)}.theme-picker-select:focus,.theme-picker-select:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.skeleton{position:relative;overflow:hidden;border-radius:var(--radius-sm);background:var(--skeleton-base)}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,var(--skeleton-highlight),transparent);animation:skeleton-sweep 1.4s ease-in-out infinite}@keyframes skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-text{height:12px}.skeleton-title{height:18px;width:40%}.skeleton-card{height:96px;border-radius:var(--radius)}.skeleton-row{height:40px;border-radius:var(--radius-sm)}.toast-stack{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:1200;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;min-width:280px;max-width:420px;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text);font-size:13px;box-shadow:var(--shadow-md);animation:toast-in .22s cubic-bezier(.21,1.02,.73,1)}.toast.leaving{animation:toast-out .18s ease forwards}.toast .toast-dot{width:8px;height:8px;border-radius:50%;margin-top:5px;flex-shrink:0}.toast.success .toast-dot{background:var(--success)}.toast.error .toast-dot{background:var(--danger)}.toast.info .toast-dot{background:var(--info)}.toast .toast-close{margin-left:auto;background:none;border:0;cursor:pointer;color:var(--text-muted);font-size:14px;line-height:1;padding:2px}.toast .toast-close:hover{color:var(--ink)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-out{to{opacity:0;transform:translateY(8px) scale(.97)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:overlay-in .18s ease}.modal-box{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 64px);display:flex;flex-direction:column;animation:modal-in .2s cubic-bezier(.21,1.02,.73,1)}.modal-box.wide{width:min(760px,calc(100vw - 32px))}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-head h3{margin:0;font-size:15px;font-weight:600;color:var(--ink)}.modal-body{padding:20px;overflow-y:auto}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border)}@keyframes overlay-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px) scale(.97)}}.content{background:var(--bg)}.topbar,.page-header{background:var(--surface)}.sidebar-brand .logo{background:var(--primary)}.nav-item{position:relative}.nav-item.active{background:var(--sidebar-active);color:var(--ink)}.nav-item.active:before{content:"";position:absolute;left:0;top:var(--s2);bottom:var(--s2);width:2px;background:var(--primary)}.nav-item.active svg{color:var(--primary);opacity:1}.btn:not(.secondary):not(.danger){background:var(--primary);border:1px solid var(--primary);transition:background .12s ease}.btn:not(.secondary):not(.danger):hover{background:var(--primary-hover)}.stat-card:hover{border-color:var(--border-strong)}.stat-value{font-size:var(--t-display);color:var(--ink);font-variant-numeric:tabular-nums}.page-title,.topbar-title{color:var(--ink)}@keyframes pulse-ring{0%{box-shadow:0 0 color-mix(in srgb,currentColor 45%,transparent)}70%{box-shadow:0 0 0 5px transparent}to{box-shadow:0 0 0 0 transparent}}.badge.running:before,.badge.queued:before{animation:pulse-ring 1.6s ease-out infinite}.system-chip .system-chip-dot{animation:pulse-ring 2.4s ease-out infinite}tbody tr{transition:background .12s ease}tbody tr:hover td:first-child{box-shadow:inset 2px 0 0 var(--primary)}@media(prefers-reduced-motion:reduce){.badge.running:before,.badge.queued:before,.system-chip .system-chip-dot{animation:none}.login-gradient-bg{animation:none}.login-anim,.login-card{transition:none;opacity:1;transform:none}tbody tr{transition:none}}.section{display:flex;flex-direction:column;gap:var(--s3)}.section>.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);padding-bottom:var(--s2);border-bottom:1px solid var(--border-strong)}.section>.section-head h2,.section>.section-head h3{margin:0;font-size:var(--t-lead);font-weight:550;color:var(--ink)}.status-dot{width:7px;height:7px;border-radius:50%;flex:none;display:inline-block;background:var(--text-muted)}.status-dot.passed{background:var(--success)}.status-dot.healed{background:var(--healed)}.status-dot.failed,.status-dot.errored{background:var(--danger)}.status-dot.running{background:var(--info)}.status-dot.queued{background:var(--text-secondary)}.sev{border-left:3px solid transparent;padding-left:var(--s3)}.sev.critical{border-left-color:var(--danger)}.sev.warning{border-left-color:var(--warning)}.sev.ok{border-left-color:var(--success)}.sev.info{border-left-color:var(--info)}.facet-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:var(--s4);align-items:start}@media(max-width:900px){.facet-layout{grid-template-columns:1fr}}.facet-group+.facet-group{margin-top:var(--s4)}.facet-group>.facet-title{font-size:var(--t-label);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:var(--s2)}.facet-option{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);width:100%;padding:3px var(--s2);border:0;border-radius:var(--radius-sm);background:none;color:var(--text-secondary);font:inherit;font-size:var(--t-small);text-align:left;cursor:pointer}.facet-option:hover{background:var(--hover-overlay);color:var(--text)}.facet-option[aria-pressed=true]{background:var(--primary-soft);color:var(--ink)}.facet-option .facet-count{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:var(--t-label)}.toolbar{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;padding-bottom:var(--s3)}.toolbar .spacer{flex:1}.toolbar .result-count{font-size:var(--t-label);color:var(--text-muted);font-variant-numeric:tabular-nums}.run-progress{margin-bottom:16px}.run-progress-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3);margin-bottom:6px;flex-wrap:wrap}.run-progress-phase{font-size:var(--t-label);color:var(--text-secondary);font-weight:600}.run-progress-meta{font-size:var(--t-label);color:var(--text-muted);font-family:monospace;white-space:nowrap}.run-progress-track{position:relative;height:6px;border-radius:999px;background:var(--track);overflow:hidden}.run-progress-fill{height:100%;border-radius:999px;transition:width .4s ease}.run-progress-track.indeterminate .run-progress-fill{width:35%;animation:run-progress-slide 1.4s ease-in-out infinite}@keyframes run-progress-slide{0%{transform:translate(-100%)}to{transform:translate(285%)}}.run-activity{margin-bottom:16px}.run-activity-list{list-style:none;margin:var(--s2) 0 0;padding:10px 12px;max-height:260px;overflow-y:auto;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--t-label);font-family:monospace;line-height:1.7}.run-activity-list li{word-break:break-word}@media(prefers-reduced-motion:reduce){.run-progress-track.indeterminate .run-progress-fill{animation:none;width:100%;opacity:.55}.run-progress-fill{transition:none}}.execution-panel-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.execution-view-tabs{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.execution-view-tab{padding:5px 14px;font-size:var(--t-label);font-weight:600;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.execution-view-tab+.execution-view-tab{border-left:1px solid var(--border)}.execution-view-tab:hover{background:var(--hover-overlay);color:var(--ink)}.execution-view-tab.active{background:var(--primary);color:var(--primary-contrast)}.execution-view-panel{display:flex;flex-direction:column;flex:1;min-height:0}.run-progress-track{display:flex}.run-progress-segment{height:100%;transition:width .4s ease}.run-progress-segment:first-child{border-top-left-radius:999px;border-bottom-left-radius:999px}.run-progress-segment:last-child{border-top-right-radius:999px;border-bottom-right-radius:999px}.run-progress-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px;font-size:var(--t-label);color:var(--text-secondary)}.run-progress-legend-item{display:inline-flex;align-items:center;gap:6px}.run-progress-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.summary-verdict{margin:0 0 16px;font-size:var(--t-label);color:var(--text-secondary);line-height:1.6}@media(prefers-reduced-motion:reduce){.run-progress-segment,.execution-view-tab{transition:none}}.app.sidebar-collapsed{grid-template-columns:64px 1fr}.sidebar-collapse-toggle{margin-left:auto;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:12px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.sidebar-collapse-toggle:hover{background:var(--sidebar-hover);color:var(--ink)}.app.sidebar-collapsed .sidebar{padding-left:6px;padding-right:6px;align-items:stretch}.app.sidebar-collapsed .sidebar-brand{justify-content:center;gap:6px;padding-left:0;padding-right:0}.app.sidebar-collapsed .nav-item{justify-content:center;padding-left:0;padding-right:0}.app.sidebar-collapsed .nav-item-label{display:none}.app.sidebar-collapsed .nav-item.active{background:var(--sidebar-active);border-color:var(--primary)}.app.sidebar-collapsed .sidebar-footer{padding-left:6px!important;padding-right:6px!important}.app.sidebar-collapsed .sidebar-signout{padding-left:0;padding-right:0}@media(prefers-reduced-motion:reduce){.app,.sidebar-collapse-toggle{transition:none}}
