@font-face{font-family:Plex;src:url('/assets/plex-sans-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Plex;src:url('/assets/plex-sans-500.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Plex;src:url('/assets/plex-sans-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:PlexMono;src:url('/assets/plex-mono.ttf') format('truetype');font-weight:400;font-display:swap}
*{box-sizing:border-box}html{color:var(--ink);background:var(--ground);font:14px/1.55 Plex,Arial,sans-serif;scrollbar-color:var(--scrollbar) var(--ground);scrollbar-width:thin}body{margin:0}::selection{background:var(--selection);color:var(--ink)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button,input,select{font:inherit;color:inherit}button,select{cursor:pointer}a{color:inherit;text-underline-offset:4px}button{min-height:44px;border:0;background:transparent}button:disabled{opacity:.45;cursor:not-allowed}button:not(:disabled):hover{background:var(--button-hover)}button,select{border-radius:6px}p{margin:8px 0 18px;color:var(--muted)}h1,h2,h3{line-height:1.25;text-wrap:balance}h1{font-size:24px;font-weight:600;letter-spacing:-.025em;margin:0 0 10px}h2{font-size:16px;font-weight:600;margin:0 0 12px}h3{font-size:14px;font-weight:600}pre,code{font:12px/1.65 PlexMono,monospace}pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:16px;background:var(--raised);border-radius:6px;color:var(--code-ink)}code{font-size:13px}.sidebar{position:fixed;inset:0 auto 0 0;width:228px;padding:26px 20px;display:flex;flex-direction:column}.brand{font-size:18px;letter-spacing:-.02em;text-decoration:none;white-space:nowrap}.brand strong{font-weight:600}.brand span{color:var(--signal-active)}nav{display:flex;flex-direction:column;margin-top:44px;gap:6px}.nav{text-align:left;padding:8px 12px;min-height:44px;color:var(--muted);display:flex;justify-content:space-between;align-items:center}.nav.active{color:var(--ink);font-weight:600;background:var(--nav-active)}.nav span{font-size:12px}.sidebar-bottom{margin-top:auto;font-size:12px;color:var(--muted)}.sidebar-bottom p{font-size:13px;line-height:1.8;margin:10px 0 18px}.environment{color:var(--environment-ink);font-weight:500}.topbar{height:48px;margin-left:228px;padding:0 32px 0 0;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}.sheet{margin:0 8px 8px 228px;background:var(--surface);border:1px solid var(--rule);border-radius:16px;min-height:calc(100vh - 56px);padding:28px 28px 16px;overflow:hidden}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.page-head p{max-width:69ch;margin:0}.launch{display:flex;flex-direction:column;gap:8px;min-width:240px}.launch select{height:40px;background:var(--surface);border:1px solid var(--control);padding:0 12px;font-size:13px}.primary{background:var(--ink);color:var(--on-primary);padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:500}.primary:not(:disabled):hover{background:var(--primary-hover)}.secondary{border:1px solid var(--control);padding:8px 14px;background:var(--surface)}.quiet{padding:8px 14px}.run-line{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--rule);padding:12px 0;font-size:12px;color:var(--muted);gap:12px}.report-links{display:flex;gap:20px}.notice{padding:12px 16px;background:var(--notice-bg);border-radius:6px;margin:12px 0;color:var(--notice-ink)}.notice.error{background:var(--notice-error-bg);color:var(--notice-error-ink)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 275px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.network{padding:20px 24px 16px 0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.section-head h2{margin:0}.section-head>span{font-size:12px;color:var(--muted)}#graph{width:100%;max-height:380px;display:block}.edges{color:var(--graph-edge);stroke-width:1.5}.edges path{transition:stroke .18s}.edges path.active{stroke:var(--signal-active);stroke-width:3;stroke-dasharray:8 5;animation:travel 1s linear infinite}.graph-node rect{fill:var(--surface);stroke:var(--graph-border);stroke-width:1}.graph-node text{font:500 15px Plex,Arial,sans-serif;fill:var(--ink)}.graph-node .node-sub{font-size:12px;font-weight:400;fill:var(--muted)}.graph-node circle{fill:var(--positive)}.graph-node.active rect{fill:var(--signal-fill);stroke:var(--signal-border);stroke-width:1.5}.graph-node.error rect{fill:var(--error-fill);stroke:var(--negative)}.moved rect{stroke-dasharray:5 4}.network-note{font-size:12px;margin:4px 0 0;color:var(--muted)}.inspector{border-left:1px solid var(--rule);padding:22px 0 20px 24px;overflow-wrap:anywhere}.inspector h2{font-size:16px;line-height:1.4}.inspector p{font-size:13px;line-height:1.7}#step-meta{font-size:12px;color:var(--muted);line-height:1.7}details summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;font-size:13px}details summary:before{content:'+';font-size:18px}details[open] summary:before{content:'−'}#payload{max-height:250px;overflow:auto;font-size:12px}.playback{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule);font-size:12px;color:var(--muted)}.playback>div{display:flex;gap:4px}.playback input{min-width:50px;flex:1;accent-color:var(--signal-active);min-height:44px}.playback label{white-space:nowrap}.replay-label{font-size:12px}.lower-grid{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:24px;margin-top:24px}.timeline .section-head{margin-bottom:14px}#events{max-height:345px;overflow:auto;padding-right:4px}.event-row{display:flex;gap:12px;text-align:left;align-items:flex-start;width:100%;padding:10px 8px;border-bottom:1px solid var(--rule);border-radius:0;min-height:56px}.event-row.selected{background:var(--event-selected)}.event-index{font:12px/1.7 PlexMono,monospace;color:var(--muted);min-width:24px;padding-top:2px}.event-copy{flex:1;min-width:0}.event-copy strong{display:block;font-size:13px;font-weight:500;line-height:1.5}.event-copy span{font-size:12px;color:var(--muted)}.event-status{font-size:12px;color:var(--positive);padding-top:3px}.event-status.error{color:var(--negative)}.empty{padding:20px 0;max-width:65ch}.outcome{padding-left:0}.outcome>h2{margin-bottom:16px}.result-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--rule);font-size:12px}.badge{font-size:12px;line-height:1.5;padding:3px 7px;border-radius:4px;white-space:nowrap;background:var(--badge-neutral-bg);color:var(--badge-neutral-ink)}.badge.pass{background:var(--badge-pass-bg);color:var(--positive)}.badge.partial{background:var(--badge-partial-bg);color:var(--badge-partial-ink)}.badge.fail{background:var(--badge-fail-bg);color:var(--badge-fail-ink)}.badge.running{background:var(--badge-running-bg);color:var(--badge-running-ink)}.text-button{padding:8px 0;text-align:left;text-decoration:underline;text-underline-offset:4px;font-size:13px;margin-top:6px}.recommendations{margin-top:24px}.recommendations ol{padding-left:18px;color:var(--muted);font-size:12px;line-height:1.65}.recommendations li{margin:10px 0}.verdict-summary{padding:16px 0;margin-bottom:12px;border-top:1px solid var(--rule);font-size:14px}.hypothesis{border-bottom:1px solid var(--rule);padding:0 0 8px}.hypothesis summary{gap:14px;min-height:64px}.hypothesis summary strong{flex:1;font-size:15px;font-weight:500}.hypothesis .hid{font:12px PlexMono,monospace;color:var(--muted);width:30px}.hypothesis>p,.hypothesis ul{max-width:75ch}.hypothesis ul{padding-left:18px;font-size:13px;line-height:1.9}.limitation{color:var(--limitation-ink);font-size:13px}.prose{max-width:80ch}.prose p,.prose li{font-size:14px;line-height:1.8}.prose h2{margin-top:32px}.prose li{margin:10px 0}.long-id{display:block;overflow-wrap:anywhere}.graph-mobile{display:none}footer{margin-top:32px;padding-top:16px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);border:0}[hidden]{display:none!important}button,a,select{touch-action:manipulation}@keyframes travel{to{stroke-dashoffset:-26}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:1250px){.page-head{flex-wrap:wrap}.launch{flex-direction:row;min-width:0;width:100%}.launch select{flex:1;height:44px}.workspace{grid-template-columns:minmax(0,1fr) 235px}.inspector{padding-left:18px}.lower-grid{grid-template-columns:minmax(0,1fr) 235px}.replay-label{display:none}}@media(max-width:960px){.sidebar{width:180px;padding:24px 14px}.brand{font-size:16px}.topbar{margin-left:180px;padding:0 20px}.topbar>span:first-child{display:none}.sheet{margin-left:180px;padding:24px 20px}.workspace{display:block}.network{padding-right:0}.inspector{padding:20px 0;border-left:0;border-top:1px solid var(--rule);min-height:140px}.lower-grid{grid-template-columns:1fr}.outcome{margin-top:12px}.playback{flex-wrap:wrap}.playback input{min-width:120px}.report-links{gap:12px}}@media(max-width:600px){.sidebar{position:relative;width:100%;height:auto;padding:16px 16px 0}.brand{font-size:18px}.sidebar nav{flex-direction:row;gap:4px;margin-top:16px;overflow:auto}.nav{font-size:13px;padding:8px 9px;white-space:nowrap;justify-content:center}.nav.active{background:transparent;border-radius:0;border-bottom:2px solid var(--signal-active)}.nav span,.sidebar-bottom{display:none}.topbar{margin:0;padding:8px 16px;height:34px}.sheet{margin:0;border:0;border-radius:0;padding:24px 16px 16px;min-height:calc(100vh - 150px)}h1{font-size:23px}.page-head{margin-bottom:20px;gap:18px}.page-head p{font-size:13px}.desktop-only{display:none}.launch{flex-direction:column}.launch select{width:100%;flex:auto}.primary{min-height:46px}.run-line{flex-wrap:wrap;padding:12px 0}.report-links{width:100%;font-size:12px}.section-head>span{font-size:12px}#graph{display:none}.graph-mobile{display:block;padding:12px 0}.graph-mobile p{color:var(--ink);padding:10px 12px;background:var(--mobile-cell);margin:5px 0;border-radius:6px;font-size:13px}.network-note{font-size:12px}.playback{gap:8px}.playback>div{width:auto}.playback input{min-width:100%;order:3}.playback label{margin-left:auto}.hypothesis summary{gap:7px}.hypothesis summary strong{font-size:14px}.hypothesis .hid{width:24px}.badge{font-size:12px}.prose pre{font-size:12px;padding:12px}footer{font-size:12px;flex-wrap:wrap}}

html{font-variant-numeric:tabular-nums}@media(min-width:601px) and (max-width:960px){.sidebar{padding-left:18px;padding-right:18px}}@media(max-width:600px){.badge,footer{font-size:12px}}

.scope-note{font-size:12px;margin:12px 0 0;color:var(--muted)}.mobile-route{padding:12px 0;font-weight:500;color:var(--ink)}.mobile-participants{display:grid;grid-template-columns:1fr 1fr;gap:8px}.graph-mobile .mobile-participant{margin:0;border:1px solid var(--rule);background:var(--surface);padding:12px 10px}.graph-mobile .mobile-participant.active{background:var(--signal-fill);border-color:var(--signal-border)}.graph-mobile .mobile-participant.error{background:var(--error-fill);border-color:var(--negative)}
.nav-group{margin:18px 12px 2px;font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.nav-group:first-child{margin-top:0}
a.nav{text-decoration:none;border-radius:6px}
a.nav:hover{background:var(--button-hover);color:var(--ink)}
.nav-sub{padding-left:24px;min-height:36px;font-size:13px}
.skip-link{position:absolute;left:12px;top:-60px;padding:8px 12px;background:var(--ink);color:var(--on-primary);border-radius:6px;z-index:5}
.skip-link:focus{top:12px}
.sheet:focus{outline:none}
@media(max-width:600px){.nav-group{display:none}
.nav-sub{padding-left:9px;min-height:44px}
}
.public-only{display:none}
[data-mode="public"] .public-only{display:block}
[data-mode="public"] .operator-only{display:none!important}
.public-note{font-size:13px;color:var(--muted);max-width:32ch;margin:0}
