@font-face{font-family:DM Sans;src:url('font.ttf') format('truetype');font-weight:100 1000;font-display:swap}
:root{font-family:'DM Sans',-apple-system,sans-serif;color:#282d29;background:#f7f8f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bca333;outline-offset:4px}[hidden]{display:none!important}/* Fixed workspace frame */
:root{--rail:68px;--context:256px;--topbar:72px;color:#282d29;background:#f6f7f4}
.icon{width:20px;height:20px;flex:none;vertical-align:middle}
.skip-link{position:fixed;top:-100px;left:80px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:10px}
.app-shell{min-height:100vh}.workspace{margin-left:var(--rail);padding-top:0;min-width:0}
.icon-rail{position:fixed;inset:0 auto 0 0;z-index:40;width:var(--rail);background:#fff;border-right:1px solid #dcded8;display:flex;align-items:center;flex-direction:column;padding:18px 10px 20px;--rail-gap:24px;gap:var(--rail-gap)}
.rail-brand{display:grid;place-items:center;width:40px;height:40px;background:#fff;border-radius:10px;color:#282d29;text-decoration:none;border:1px solid #e4e7df}.rail-brand img{display:block;width:34px;height:34px;object-fit:contain}.rail-brand[aria-current="page"]{border-color:#aebc9d;background:#f6f8f1}.icon-rail nav{display:flex;flex-direction:column;gap:10px;width:100%}
.rail-link{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:10px;background:transparent;color:#5e665a;text-decoration:none;position:relative}
.rail-link:hover{color:#30362d;background:#f5f5f2}.rail-link.active{background:#eeefea;color:#343c2e;box-shadow:inset 0 0 0 1px #e1e3db}.rail-link.active:before{content:'';position:absolute;left:-10px;height:23px;width:3px;border-radius:0 3px 3px 0;background:#77816e}.rail-bottom{margin-top:auto}
.context-sidebar{position:fixed;inset:0 auto 0 var(--rail);width:var(--context);z-index:30;background:#fff;border-right:1px solid #dcded8;display:flex;flex-direction:column}
#navigation{overflow-y:auto;overscroll-behavior:contain;padding:10px 12px 24px;flex:1;scrollbar-width:thin;scrollbar-color:#dce1d5 transparent}
.nav-label{font-size:10px;letter-spacing:1.1px;color:#7f8877;font-weight:600;margin:24px 12px 12px}.nav-label:first-child{margin-top:6px}
.nav-link{padding:13px 12px;text-decoration:none;font-size:14px;display:flex;gap:12px;align-items:center;justify-content:space-between;border-radius:8px;margin:3px 0}.nav-link:hover{background:#f6f7f2}.nav-link.active,.context-overview.active{background:#eff2e8;color:#404f35;font-weight:600}.nav-count{font-size:11px;color:#737c68}.future-areas>span{display:block;margin:17px 12px;font-size:13px;color:#838b7b}
.context-case{display:flex;gap:10px;padding:12px 11px;border-radius:8px;text-decoration:none;align-items:flex-start;margin:2px 0}.context-case:hover{background:#f7f7f4}.context-case.active{background:#f0f1eb;box-shadow:inset 3px 0 #858d7d}.context-case>span:last-child{font-size:12px;line-height:1.55}.context-case small{display:block;font-size:9px;letter-spacing:.45px;color:#78836d;margin-bottom:3px}.context-case.active>span:last-child{font-weight:550;color:#3d4a32}
.status-dot{width:6px;height:6px;flex:none;display:block;border-radius:50%;background:#d3d8cc;margin-top:7px}.status-dot.passed{background:#87a36c}.status-dot.failed{background:#ca8a58}.status-dot.blocked,.status-dot.partial{background:#c3ae68}.status-dot.planned{background:transparent;border:1px solid #b8c0ae}
.topbar{position:fixed;top:0;left:var(--rail);right:0;z-index:25;height:var(--topbar);border-bottom:1px solid #e4e7df;background:#fff;display:flex;align-items:center;gap:20px;padding:0 32px}
#breadcrumb{min-width:0;flex:1}#breadcrumb ol{display:flex;align-items:center;gap:10px;list-style:none;padding:0;margin:0;min-width:0}#breadcrumb li{display:flex;align-items:center;gap:10px;min-width:0;font-size:12px;white-space:nowrap;color:#7b8275}#breadcrumb a{text-decoration:none;overflow:hidden;text-overflow:ellipsis}#breadcrumb a:hover{color:#303b27}#breadcrumb li:last-child{color:#38432e;font-weight:550}#breadcrumb .icon{width:12px;height:12px;color:#b1b8a8}
.run-control{display:flex;align-items:center;gap:10px;flex:none}.run-control label{font-size:11px;color:#838a7a}.run-control select{font-size:12px;color:#44513a;border:1px solid #dfe4d8;border-radius:8px;padding:10px 30px 10px 12px;background:#fff;max-width:235px}.icon-button{display:grid;place-items:center;width:32px;height:36px;border:0;background:transparent;color:#7c8870}.icon-button .icon{width:16px;height:16px}
.subtle-button{border:1px solid #dfe3d7;border-radius:8px;padding:8px 12px;background:#fff;color:#5e6950}.nav-toggle{display:none;padding:6px}.nav-backdrop{display:none}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-size:25px;font-weight:650;letter-spacing:-1.1px}
main{max-width:1250px;margin:auto;padding:44px 48px 64px;min-height:80vh}.eyebrow{font-size:11px;letter-spacing:1.5px;font-weight:650;color:#76855e;margin:0 0 13px}h1{font-size:clamp(30px,3.1vw,43px);font-weight:550;letter-spacing:-1.45px;line-height:1.18;margin:0 0 16px;max-width:880px}.intro{font-size:16px;color:#6d7a5f;line-height:1.7;max-width:780px;margin:0}h2{font-size:21px;font-weight:550;letter-spacing:-.5px}h3{font-size:15px;font-weight:600}.stats{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid #e2e6db;border-radius:16px;margin:30px 0;padding:27px 0}.stat{padding:0 26px;border-right:1px solid #edf0e7}.stat:last-child{border:0}.stat strong{display:block;font-size:33px;font-weight:500;letter-spacing:-1px;font-variant-numeric:tabular-nums}.stat span{display:block;margin-top:7px;font-size:12px;color:#758266}.stat.passed strong{color:#71855e}.stat.failed strong{color:#a97948}.attention-card{display:flex;align-items:flex-start;gap:20px;background:#fcf8ef;border:1px solid #ece2ca;padding:26px;border-radius:14px}.attention-icon{display:grid;place-items:center;width:32px;height:32px;flex:none;background:#f1e6cc;border-radius:50%;color:#977541}.attention-copy h2{margin:3px 0 14px;font-size:16px}.issue-link{font-size:17px;font-weight:550;text-underline-offset:5px;display:block}.attention-copy p{color:#897651;font-size:13px;line-height:1.6;margin-bottom:0}.section-heading{margin:37px 0 18px}.area-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.area-card{border:1px solid #e2e6db;border-radius:15px;padding:27px;background:#fff;text-decoration:none;transition:border-color .15s}.area-card:hover{border-color:#afbca0}.area-icon{display:grid;place-items:center;width:37px;height:37px;border:1px solid #e0e7d7;border-radius:10px;font-size:12px;color:#7b8d67;background:#f5f8f0}.area-card h2{margin:20px 0 10px}.area-card p{color:#707f62;font-size:14px;line-height:1.7}.area-meta{font-size:11px;color:#778665;margin:23px 0 15px}.area-card>strong{font-size:13px;font-weight:550}.disclosure{border:1px solid #e1e6d9;background:#fff;border-radius:12px;margin-top:25px;padding:0 22px}.disclosure>summary{padding:20px 0;cursor:pointer;font-size:13px;font-weight:550;list-style:none}.disclosure>summary:after{content:'+';float:right;font-size:18px;font-weight:400;color:#82946e}.disclosure[open]>summary:after{content:'−'}.disclosure p{font-size:13px;line-height:1.8;color:#728263}.disclosure[open]{padding-bottom:18px}.disclosure summary::-webkit-details-marker{display:none}.toolbar{display:flex;gap:12px;margin:24px 0 15px}.toolbar input{flex:1;min-width:0}.toolbar input,.toolbar select,.video-caption select{border:1px solid #dfe4d5;background:#fff;border-radius:9px;padding:12px 14px;font-size:13px;color:#5c694c}.case-list{border:1px solid #e2e6dc;border-radius:14px;overflow:hidden;background:#fff}.case-row{display:grid;grid-template-columns:1fr 90px 105px 16px;align-items:center;gap:20px;padding:23px 24px;border-bottom:1px solid #edf0e7;text-decoration:none}.case-row:last-child{border:0}.case-row:hover{background:#fafbf6}.case-name strong{font-size:15px;font-weight:550;line-height:1.45}.case-name small{display:block;margin-top:8px;font-size:11px;color:#7c8b69}.scenario-count{font-size:11px;color:#7f8e6d}.row-arrow{color:#839473}.status{display:inline-flex;align-items:center;justify-content:center;width:max-content;border-radius:20px;padding:6px 10px;background:#f1f3ed;font-size:10px;letter-spacing:.1px;font-weight:600;color:#718356;white-space:nowrap}.status.passed{background:#ecf2e4;color:#607c44}.status.failed,.status.timedOut,.status.interrupted{background:#fbecdf;color:#956334}.status.blocked{background:#f6efda;color:#8c7538}.back-link{display:inline-block;text-decoration:none;color:#748861;font-size:12px;margin-bottom:28px}.definition{margin:23px 0 30px}.definition-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.definition-grid h3{color:#657454}.definition-grid ol{font-size:13px;line-height:1.8;color:#6b7e59;padding-left:19px}.variants h2{font-size:15px;margin:0 0 15px}.tabs{display:flex;gap:4px;border-bottom:1px solid #dfe5d5;margin-bottom:20px}.tab{padding:12px 25px;font-size:13px;text-decoration:none;color:#778965;border-bottom:2px solid transparent;margin-bottom:-1px}.tab.active{color:#344528;border-color:#7d9561;font-weight:650}.scenario-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.scenario-tab{padding:9px 14px;border:1px solid #e0e5d6;border-radius:8px;font-size:12px;text-decoration:none;background:#fff;color:#6e8459}.scenario-tab.active{border-color:#9aaa85;background:#eff4e7;color:#5b7441}.scenario-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0 17px}.scenario-heading h2{font-size:20px;margin:0 0 8px}.scenario-heading p{font-size:12px;color:#72875d;margin:0;overflow-wrap:anywhere}.video-stage{position:relative;background:#e8ecdf;border:1px solid #dde3d2;border-radius:15px;overflow:hidden;aspect-ratio:16/9;display:grid;place-items:center}.video-stage video{width:100%;height:100%;max-height:620px;object-fit:contain;background:#e8ecdf}.play-overlay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:17px 24px;border:1px solid #ffffff80;border-radius:30px;background:#283425ed;color:#fff;font-size:14px;box-shadow:0 8px 30px #27322330;white-space:nowrap}.video-caption{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:14px 0 24px;font-size:12px;color:#7a8d62}.video-caption select{padding:7px 10px;font-size:11px}.outcome{border-left:3px solid #b7c5a2;background:#f0f4e9;border-radius:0 9px 9px 0;padding:19px 23px}.outcome.failed{border-color:#c9a272;background:#faf4e9}.outcome.blocked{border-color:#c2b480;background:#f6f3e9}.outcome h3{margin:0 0 8px}.outcome p{font-size:13px;color:#728160;line-height:1.8;margin:0}.evidence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.evidence-grid figure{margin:0;min-width:0}.evidence-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;border:1px solid #e1e6d8;border-radius:7px}.evidence-grid figcaption{font-size:11px;color:#7b8d66;margin-top:7px}.file-link{display:inline-block;margin:5px 10px 5px 0;padding:9px 12px;border-radius:7px;background:#f0f4e8;text-decoration:none;font-size:11px;color:#687f4f}.error-output{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;color:#8b714a}.service{border-top:1px solid #edf0e5;padding:15px 0}.service strong{font-size:13px}.service p{margin:5px 0 0}.empty,.empty-state{padding:35px;color:#7b8e65;font-size:14px;line-height:1.7}.empty-state{border:1px dashed #d4deca;border-radius:12px}footer{max-width:1250px;margin:auto;padding:0 48px 28px;font-size:11px;color:#8a9976}.login-body{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{background:#fff;border:1px solid #dfe6d7;border-radius:20px;padding:40px;width:420px;max-width:100%}.login-card .brand{margin-bottom:38px}.login-card h1{font-size:29px;letter-spacing:-.9px}.login-card p{font-size:14px;line-height:1.7;color:#738660}.login-card label{display:block;margin:28px 0 8px;font-size:12px}.login-card input{width:100%;padding:14px;border:1px solid #d8e0cf;border-radius:9px}.login-card button{width:100%;padding:14px;margin-top:16px;background:#34442a;border:0;color:#fff;border-radius:9px}.login-error{color:#a46c4a!important}

/* Scenario detail: recording first, compact context alongside it. */
main{max-width:1500px;padding:36px 32px 56px}
.scenario-hero{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:28px;align-items:start}.recording-column{min-width:0}.variant-controls{min-height:46px;margin-bottom:16px}.tabs{border:0;gap:6px;margin:0;display:flex}.tab{display:flex;align-items:center;gap:8px;padding:9px 15px;border:1px solid transparent;border-radius:8px;margin:0;font-size:12px}.tab .icon{width:15px;height:15px}.tab.active{border-color:#dee5d5;background:#fff;color:#414e35;font-weight:550}.scenario-tabs{margin:10px 0 0;gap:6px}.scenario-tab{font-size:11px;padding:7px 11px}
.video-stage{border-radius:12px;background:#e9ece4;aspect-ratio:16/10;border-color:#dde3d4;box-shadow:0 8px 30px #27322305}.video-stage video{max-height:none;background:#e9ece4;min-height:0}.play-overlay{display:flex;align-items:center;gap:9px;padding:13px 20px;background:#2b342af0;font-size:13px;font-weight:500}.play-overlay .icon{width:17px;height:17px;fill:currentColor;stroke-width:0}.video-caption{font-size:11px;margin:13px 0 24px;color:#7d8773;line-height:1.5;align-items:center}.video-caption select{max-width:140px}
.scenario-context{padding-top:10px}.scenario-context .eyebrow{font-size:10px;line-height:1.6;letter-spacing:.55px;margin-bottom:12px}.scenario-context h1{font-size:25px;line-height:1.27;letter-spacing:-.65px;margin:0 0 17px}.scenario-context .status{font-size:11px;padding:6px 11px}.expected-summary{border-top:1px solid #e0e5d8;margin-top:24px;padding-top:20px}.expected-summary h2{font-size:12px;letter-spacing:0;margin:0 0 9px}.expected-summary p{font-size:13px;line-height:1.75;color:#718065;margin:0}.scenario-facts{font-size:11px;display:grid;grid-template-columns:62px 1fr;gap:12px 10px;line-height:1.5;margin:24px 0 0}.scenario-facts dt{color:#909883}.scenario-facts dd{margin:0;color:#596b49;overflow-wrap:anywhere}.detail-page .definition{margin:16px 0 0}.detail-page .evidence-disclosure{margin-top:16px}.outcome{padding:18px 22px}.outcome p{font-size:12px}.outcome h3{font-size:13px}
.status.partial{background:#f6efda;color:#8c7538}.coverage-list{display:grid;gap:8px;margin:12px 0}.coverage-line{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid #edf0e5;font-size:12px}.coverage-line small{display:block;color:#7a8570;font-size:11px;margin-top:3px}
.login-card{min-height:0}.login-card .brand img{width:33px;height:33px}
@media(min-width:1700px){:root{--context:280px}.scenario-hero{grid-template-columns:minmax(0,1fr) 285px;gap:36px}main{padding:40px}.topbar{padding-inline:40px}.scenario-context h1{font-size:28px}.company-heading img{width:195px}}
@media(max-width:1250px){:root{--context:230px}.topbar{padding:0 24px;gap:14px}.run-control label{display:none}main{padding-inline:24px}.scenario-hero{grid-template-columns:minmax(0,1fr) 210px;gap:22px}.scenario-context h1{font-size:22px}.stat{padding:0 18px}.case-row{grid-template-columns:1fr 95px 12px;gap:12px}.scenario-count{display:none}.area-grid{grid-template-columns:1fr}.company-heading img{width:175px}#breadcrumb ol,#breadcrumb li{gap:6px}}
@media(max-width:1080px){.scenario-hero{grid-template-columns:1fr}.scenario-context{display:grid;grid-template-columns:1.2fr 1fr;gap:0 30px;padding:0 0 24px}.scenario-context .eyebrow,.scenario-context h1,.scenario-context>.status{grid-column:1}.scenario-context .expected-summary{grid-column:1;border:0;padding-top:0;margin-top:18px}.scenario-facts{grid-column:2;grid-row:1/5;align-content:start;margin-top:0}.run-control select{max-width:185px}#breadcrumb li:first-child{display:none}#breadcrumb li:nth-child(2)>.icon{display:none}.evidence-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){:root{--rail:56px;--context:260px;--topbar:100px}.workspace{margin-left:var(--rail)}.icon-rail{padding:17px 6px;--rail-gap:22px;gap:var(--rail-gap)}.rail-brand img{width:32px;height:32px}.rail-link{width:44px;height:44px}.rail-link.active:before{left:-6px}.context-sidebar{transform:translateX(calc(-100% - var(--rail)));transition:transform .2s;box-shadow:15px 0 40px #25302018;z-index:35}.company-heading{height:72px;min-height:72px}.navigation-open .context-sidebar{transform:none}.nav-backdrop{position:fixed;inset:0 0 0 var(--rail);z-index:32;display:block;border:0;background:#222b2338}.topbar{left:var(--rail);height:100px;padding:12px 18px;gap:10px;display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-rows:28px 36px}.nav-toggle{display:grid;place-items:center;border:0;width:28px;height:28px;background:none}#breadcrumb ol{justify-content:flex-end}#breadcrumb li{font-size:11px}#breadcrumb li:first-child{display:none}.run-control{grid-column:1/-1;justify-content:space-between}.run-control label{display:block;font-size:10px}.run-control select{max-width:none;min-width:0;width:100%;font-size:11px;padding:8px 20px 8px 10px}.run-control .icon-button{width:24px;height:32px;flex:none}.run-control label{white-space:nowrap}main,main.detail-page{padding:22px 18px 40px}.scenario-hero{gap:0}.scenario-context{display:block;padding-top:8px}.scenario-context h1{font-size:25px}.scenario-facts{margin:22px 0 0}.video-stage{aspect-ratio:4/3}.video-caption{font-size:10px;gap:7px;flex-wrap:wrap}.play-overlay{font-size:11px;padding:12px 15px;gap:7px}.play-overlay .icon{width:14px;height:14px}.tab{padding:9px 12px}.variant-controls{margin-bottom:12px}.stats{grid-template-columns:repeat(2,1fr);gap:22px 0;padding:20px 0}.stat:nth-child(2){border:0}.stat{padding:0 18px}.stat strong{font-size:29px}.stat span{font-size:11px}.intro{font-size:14px}h1{font-size:30px}.attention-card{padding:18px;gap:12px}.issue-link{font-size:14px}.case-row{grid-template-columns:1fr auto;padding:18px 14px;gap:10px}.case-name strong{font-size:13px}.case-name small{font-size:10px}.row-arrow{display:none}.status{font-size:9px;padding:5px 8px}.toolbar{flex-wrap:wrap;gap:8px}.toolbar input{width:100%;flex:auto}.toolbar select{width:100%;font-size:12px}.definition-grid{grid-template-columns:1fr;gap:8px}.disclosure{padding-inline:16px}.disclosure>summary{font-size:12px;line-height:1.6}.evidence-grid{grid-template-columns:1fr}.outcome{padding:17px}.area-card{padding:22px}footer{padding-inline:18px;font-size:10px}.login-card{padding:28px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Only test detail routes reserve space for the list of cases. */
@media(min-width:801px){.has-context .workspace{margin-left:calc(var(--rail) + var(--context))}.has-context .topbar{left:calc(var(--rail) + var(--context))}}
@media(max-width:800px){body:not(.has-context) #breadcrumb{grid-column:1/-1}body:not(.has-context) #breadcrumb li:first-child{display:flex}body:not(.has-context) #breadcrumb ol{justify-content:flex-start}.context-sidebar #navigation{padding-top:10px}.navigation-open .context-sidebar{visibility:visible}.context-sidebar{visibility:hidden}.rail-brand{width:36px;height:36px}}

/* A compact case header, with the shared definition beside the recording. */
.case-nav-heading{font-size:15px;font-weight:650;letter-spacing:-.15px;line-height:1.4;margin:0;padding:25px 22px 23px;min-height:var(--topbar);flex:none}
.detail-heading{margin:2px 0 23px}.detail-heading .eyebrow{font-size:10px;letter-spacing:.7px;margin-bottom:10px;color:#78836d}
.detail-title-row{display:flex;align-items:center;gap:20px;justify-content:space-between}.detail-title-row h1{font-size:28px;letter-spacing:-.75px;line-height:1.25;margin:0;max-width:900px}.detail-title-row>.status{font-size:11px;padding:7px 13px;flex:none}
.scenario-context{display:block;padding:20px;background:#fff;border:1px solid #e2e6db;border-radius:12px;margin-top:62px}.context-definition+.context-definition{border-top:1px solid #e6e9e0;margin-top:23px;padding-top:20px}.context-definition h2{font-size:13px;letter-spacing:0;font-weight:650;margin:0 0 13px}.context-definition ol,.context-definition ul{padding-left:19px;margin:0;font-size:12px;color:#67745b;line-height:1.8}.context-definition li+li{margin-top:10px}.context-definition li::marker{color:#899879;font-size:11px}.unrecorded .scenario-context{margin-top:0}.evidence-metadata{overflow-wrap:anywhere}
@media(min-width:1700px){.detail-title-row h1{font-size:32px}.context-definition ol,.context-definition ul{font-size:13px}}
@media(max-width:1080px){.scenario-context{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:0 0 24px;padding:22px}.context-definition+.context-definition{border-top:0;border-left:1px solid #e6e9e0;margin-top:0;padding-top:0;padding-left:24px}.detail-title-row h1{font-size:26px}}
@media(max-width:800px){.case-nav-heading{min-height:64px;padding:22px;font-size:15px}.detail-heading{margin:0 0 20px}.detail-title-row{align-items:flex-start;gap:12px;flex-wrap:wrap}.detail-title-row h1{font-size:25px;letter-spacing:-.6px}.detail-title-row>.status{font-size:10px;padding:6px 10px}.scenario-context{display:block;margin:0 0 20px;padding:20px}.context-definition+.context-definition{border:0;border-top:1px solid #e6e9e0;margin-top:20px;padding:18px 0 0}.context-definition ol,.context-definition ul{font-size:13px}.detail-heading .eyebrow{font-size:10px}}

/* Run selection belongs to the bottom of the rail; content has no top bar. */
.rail-bottom{position:relative}.run-panel{position:absolute;left:calc(100% + 12px);bottom:0;width:300px;max-width:calc(100vw - 88px);padding:18px;background:#fff;border:1px solid #dfe3d8;border-radius:12px;box-shadow:0 10px 40px #2732231c;color:#343c2e}
.run-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.run-panel h2{font-size:14px;letter-spacing:0;margin:0;font-weight:600}.run-panel select{width:100%;min-width:0;background:#fff;border:1px solid #dce1d3;border-radius:8px;padding:11px 9px;font-size:12px;color:#49533f}.run-panel p{font-size:11px;line-height:1.5;color:#7c8571;margin:12px 0 0}
#run-switcher[aria-expanded="true"]{background:#eeefea;color:#343c2e}#run-switcher.historical:after{content:'';position:absolute;right:7px;top:7px;width:5px;height:5px;border-radius:50%;background:#b29852}
@media(max-width:800px){.icon-rail .nav-toggle{display:flex;width:44px;height:44px;padding:0;margin-top:0}.run-panel{left:calc(100% + 10px);max-width:calc(100vw - 78px)}.icon-rail{padding-bottom:max(17px,env(safe-area-inset-bottom))}}

/* Keep the area heading close to its case list. */
.case-nav-heading{padding:23px 22px 11px;min-height:0}.context-sidebar #navigation{padding-top:4px}
@media(max-width:800px){.case-nav-heading{padding:20px 22px 10px;min-height:0}}

.case-nav-heading a{text-decoration:none;display:block}.case-nav-heading a:hover{color:#59664b}

.rail-brand{position:relative}.rail-brand:after{content:'';position:absolute;left:50%;top:calc(100% + var(--rail-gap) / 2 + .5px);width:inherit;height:1px;transform:translateX(-50%);background:#e2e4dc}

/* Shared typography across report overviews, case lists and case details. */
:root{--report-title:32px;--report-body:14px;--report-meta:12px;--report-status:11px}
.page-heading h1,.detail-title-row h1{font-size:var(--report-title);font-weight:550;letter-spacing:-.8px;line-height:1.25}
.area-card p,.attention-copy p,.disclosure p,.context-definition ol,.context-definition ul,.outcome p{font-size:var(--report-body);line-height:1.75}
.case-name strong{font-size:15px}
.case-name small,.scenario-count,.area-meta,.stat span,.detail-heading .eyebrow,.video-caption,.evidence-grid figcaption{font-size:var(--report-meta)}
.status,.detail-title-row>.status{font-size:var(--report-status);padding:6px 10px}
.context-definition h2,.outcome h3{font-size:var(--report-body)}
.workspace main{padding-top:16px}.detail-heading{margin-top:0}.detail-heading .eyebrow{margin:0 0 10px}
@media(max-width:800px){:root{--report-title:28px}.page-heading h1,.detail-title-row h1{letter-spacing:-.6px}}

/* Business journeys and evidence-based video chapters. */
.execution-summary{font-size:12px;color:#717966;line-height:1.7;margin:14px 0 24px}
.stats+.execution-summary{margin-top:-15px}.case-row{grid-template-columns:minmax(0,1fr) 110px 105px 16px}
.recording-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:#66735b;margin-top:12px}.caption-toggle{border:1px solid #dce2d4;background:#fff;border-radius:7px;padding:7px 10px;color:#56644c;font-size:12px}
.live-checkpoint{border:1px solid #e0e5d9;border-radius:9px;background:#fff;padding:14px 16px;margin-top:12px;min-height:78px}.checkpoint-state{font-size:10px;text-transform:uppercase;letter-spacing:.6px;font-weight:650;color:#79826f}.live-checkpoint p{font-size:13px;line-height:1.6;margin:5px 0 0}.live-checkpoint.passed{border-color:#c9d7bd}.live-checkpoint.failed{border-color:#d7b397}.live-checkpoint.blocked,.live-checkpoint.partial{border-color:#dacfaa}
.chapter-list{margin-top:12px}.chapter-list ol{list-style:none;padding:0;margin:0}.chapter-button{width:100%;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;text-align:left;background:none;border:0;border-top:1px solid #edf0e7;padding:12px 0;font-size:12px;color:#3d4735}.chapter-button:hover{color:#687952}.chapter-time{font-variant-numeric:tabular-nums;color:#7b8570;font-size:11px}.chapter-button:disabled{cursor:default}.chapter-button .status{font-size:10px}
.checkpoint-results{margin:24px 0}.checkpoint-results h2{margin:0 0 10px}.checkpoint-list{border:1px solid #e2e6dc;background:#fff;border-radius:12px;overflow:hidden}.checkpoint-row{padding:0 20px}.checkpoint-row+.checkpoint-row{border-top:1px solid #edf0e7}.checkpoint-row summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;padding:17px 0;font-size:14px;list-style:none}.checkpoint-row summary::-webkit-details-marker{display:none}.checkpoint-row p{font-size:13px;line-height:1.7;color:#647059;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 18px}.checkpoint-row small{display:block;font-size:11px;color:#7a846e;margin-bottom:18px}.outcome.partial{background:#f6f3e9;border-color:#c2b480}.status.not-run,.status.running{color:#7e8476;background:#f0f1ed}
@media(max-width:1250px){.case-row{grid-template-columns:minmax(0,1fr) 105px 16px}}
@media(max-width:800px){.case-row{grid-template-columns:minmax(0,1fr) auto}.recording-tools{align-items:flex-start}.chapter-button{grid-template-columns:36px 1fr;gap:8px}.chapter-button .status{grid-column:2}.checkpoint-row{padding:0 14px}.checkpoint-row summary{font-size:13px;align-items:flex-start}.live-checkpoint p{font-size:12px}}

/* Match the captured frame on desktop and mobile without cropping evidence. */
.video-stage{aspect-ratio:1440/1000;display:block;background:#fff}
.video-stage video{display:block;width:100%;height:100%;max-height:none;object-fit:contain;background:#fff}

.video-stage{container-type:inline-size}
.journey-caption{position:absolute;left:5%;right:5%;bottom:54px;height:104px;display:grid;grid-template-rows:16px 1fr;justify-items:center;align-items:center;gap:6px;padding:12px 18px;border-radius:10px;background:#202820ed;color:#fff;text-align:center;pointer-events:none;opacity:0;box-shadow:0 4px 20px #0002}
.journey-caption-number{font-size:clamp(10px,1.55cqw,12px);font-weight:600;letter-spacing:.07em;color:#dce5d2;line-height:1.2}
.journey-caption-text{font-size:clamp(12px,2.3cqw,18px);font-weight:500;line-height:1.4;max-width:660px}
@media(prefers-reduced-motion:reduce){.journey-caption{opacity:1!important}}

@container(max-width:380px){.journey-caption{padding:10px 12px}}

/* Public company login, shared with private report links. */
.login-body{background:#f7f7f2;color:#2d322a}
.login-card{width:450px;border-color:#e1e4db;box-shadow:0 12px 38px #2d322a06}
.login-card .brand{color:#2d322a;text-decoration:none}
.login-card h1{font-size:30px;line-height:1.2}
.login-card p{color:#6b7462}
.login-card label{font-size:13px;margin-top:22px;color:#3f4738}
.login-card input{font-size:16px;color:#2d322a;background:#fff;border-color:#d5dacc}
.login-card input:focus-visible{outline:2px solid #82916f;outline-offset:2px}
.login-card button{background:#2d322a;font-size:14px;cursor:pointer}
.login-card button:disabled{opacity:.65;cursor:wait}
.login-card button:focus-visible,.login-card a:focus-visible{outline:2px solid #82916f;outline-offset:4px}
.login-card .login-help{font-size:12px;margin:24px 0 0}
.login-card .login-help a{text-underline-offset:3px}
.login-card .login-error:empty{margin:0}
@media(max-width:480px){.login-body{padding:18px}.login-card{padding:28px 22px}.login-card h1{font-size:27px}}

/* Company navigation stays global; the second column belongs to one report. */
.icon-rail{height:100dvh}.rail-bottom{display:flex;flex-direction:column;gap:8px}.rail-link{color:#565e56}
.rail-link::after{content:attr(aria-label);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);padding:7px 10px;border-radius:6px;background:#29312b;color:#fff;font-size:12px;font-weight:500;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s;box-shadow:0 3px 12px #0001}
.rail-link:hover::after,.rail-link:focus-visible::after{opacity:1}
.report-context{flex:none;padding:20px 18px 16px}.report-context .case-nav-heading{padding:0;font-size:16px;line-height:1.4;margin:0 0 16px}

.report-context select{width:100%;min-width:0;font-size:12px;color:#42493e;border:1px solid #e0e3db;background:#fff;border-radius:7px;padding:10px 8px;text-overflow:ellipsis}
.nav-area+.nav-area{margin-top:8px}.nav-area-heading{display:flex;align-items:center;gap:2px}.area-link{display:flex;align-items:center;gap:10px;flex:1;min-width:0;text-decoration:none;font-size:13px;font-weight:600;padding:12px 10px;border-radius:8px}.area-link .icon{width:17px;height:17px}.area-link:hover{background:#f3f4f0;color:#30392b}.area-toggle{display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:#78816f;width:28px;height:36px;flex:none;padding:0}.area-toggle:hover{background:#f3f4f0}.area-toggle .icon{width:14px;height:14px}.area-toggle[aria-expanded="true"] .icon{transform:rotate(90deg)}
.context-cases{padding-top:4px}.context-case{margin-bottom:3px}.context-case small{font-size:10px}.context-case>span:last-child>span{font-size:12px;line-height:1.5}.context-sidebar #navigation{padding-top:0}
.plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0 36px}.plan-card{background:#fff;border:1px solid #e0e3da;border-radius:14px;padding:26px;max-width:620px}.plan-card h2{font-size:22px;margin:0 0 16px}.plan-card p{color:#747d6b;font-size:13px}.plan-card .primary-button{margin-top:14px}.plan-card .plan-summary{font-size:14px;color:#515d48}
.section-title-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:28px 0 16px}.section-title-row h2{font-size:19px;margin:0}.text-link{font-size:13px;text-underline-offset:4px}
.report-list{border:1px solid #e0e3da;border-radius:12px;background:#fff;overflow:hidden}.report-row{display:grid;grid-template-columns:minmax(0,1fr) 155px 115px 16px;align-items:center;gap:22px;text-decoration:none;padding:22px 24px}.report-row+.report-row{border-top:1px solid #eceee7}.report-row:hover{background:#fafbf8}.report-copy{display:grid;gap:8px;min-width:0}.report-copy strong{font-size:16px;font-weight:550}.report-copy>span,.report-count{font-size:12px;color:#747d6b}.report-row>.status{justify-self:start}.report-row>.icon{width:16px;height:16px;color:#8a927f}
.settings-card{max-width:680px;margin:24px 0;background:#fff;border:1px solid #e0e3da;border-radius:12px;padding:26px}.settings-card h2{font-size:19px;margin:0 0 18px}.settings-card>p{font-size:13px;color:#747d6b;line-height:1.7}.company-facts{display:grid;grid-template-columns:130px 1fr;gap:18px;font-size:14px;margin:0}.company-facts dt{color:#737c6c}.company-facts dd{margin:0;overflow-wrap:anywhere}.settings-card label{display:block;font-size:14px;margin:24px 0 10px}.settings-card .checkbox-label{display:flex;gap:12px;align-items:center;cursor:pointer}.checkbox-label input{width:18px;height:18px;accent-color:#626d58}.settings-card select{width:100%;border:1px solid #d9dfd1;border-radius:8px;background:#fff;padding:12px;color:#343c2e;font-size:14px}.primary-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;background:#303b2e;color:#fff;border:0;border-radius:8px;font-size:13px;font-weight:550;padding:12px 18px;text-decoration:none}.primary-button .icon{width:15px;height:15px}.settings-card .primary-button{margin-top:24px}.settings-message:empty{display:none}
.workspace-message{position:fixed;bottom:20px;left:calc(var(--rail) + 20px);z-index:60;max-width:calc(100vw - var(--rail) - 40px);background:#fff;border:1px solid #d8dfcc;box-shadow:0 5px 30px #0002;border-radius:9px;padding:14px 18px;font-size:13px}
@media(min-width:801px){#toggle-navigation{display:none}}
@media(max-width:1000px){.report-row{grid-template-columns:minmax(0,1fr) 110px 16px;gap:14px}.report-count{display:none}}
@media(max-width:800px){.plan-grid{grid-template-columns:1fr;margin:24px 0}.plan-card{padding:22px}.report-row{grid-template-columns:minmax(0,1fr) auto;padding:18px 16px;gap:12px}.report-row>.icon{display:none}.report-copy strong{font-size:14px}.report-copy>span{font-size:11px}.report-row>.status{font-size:10px}.report-context{padding:20px 18px 14px}.settings-card{padding:22px 18px}.company-facts{grid-template-columns:1fr;gap:8px}.company-facts dd+dt{margin-top:14px}.settings-card select{font-size:16px}.rail-link::after{display:none}}

.context-overview{display:flex;align-items:center;gap:10px;padding:12px 10px;border-radius:8px;font-size:13px;font-weight:550;text-decoration:none;margin-bottom:8px}.context-overview .icon{width:17px;height:17px}.context-overview:hover{background:#f5f5f2}.context-overview.active{background:#eeefea;color:#343c2e}

/* Screenshot replay uses the same evidence area, with an independent playback clock. */
.replay-viewport{position:relative;container-type:inline-size;background:#f4f5ef}
.replay-image{display:block;width:100%;height:100%;object-fit:contain}
.replay-unavailable{position:absolute;inset:0;display:grid;place-items:center;padding:30px;text-align:center;color:#66705e}
.replay-caption{bottom:16px}
.replay-controls{display:flex;gap:8px;align-items:center;padding:8px 10px;background:#fff;border:1px solid #dde3d4;border-radius:10px;margin-top:8px}
.replay-control{display:grid;place-items:center;flex:none;width:36px;height:36px;padding:8px;border:0;background:transparent;border-radius:6px;color:#394634;cursor:pointer}
.replay-control:hover{background:#f0f2e9}.replay-control:disabled{opacity:.35;cursor:default}
.replay-control .icon{width:18px;height:18px}.replay-previous .icon{transform:rotate(180deg)}
.replay-controls input{flex:1;min-width:30px;accent-color:#7b8d65;cursor:pointer}
.replay-time{font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums;color:#68745b}
.replay-explanation{font-size:12px;line-height:1.6;color:#727c68;margin:12px 0 20px}
.screenshot-replay .journey-caption[hidden],.screenshot-replay [hidden]{display:none!important}
@media(max-width:800px){.replay-controls{gap:3px;flex-wrap:wrap}.replay-control{width:40px;height:40px}.replay-time{width:100%;text-align:right;padding:0 5px 3px}.replay-caption{left:3%;right:3%;bottom:12px;height:112px}.replay-controls input{min-width:50px}}

/* Definitions follow the replay; checkpoint navigation sits alongside it. */
.case-definition{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:24px 0;padding:22px 24px;border:1px solid #e0e5d9;background:#fff;border-radius:12px}
.case-definition .context-definition{margin:0;padding:0;border:0}
.case-definition .context-definition+.context-definition{border:0;margin:0;padding:0}
.case-definition h2{font-size:14px;margin:0 0 12px}
.case-definition ol,.case-definition ul{font-size:13px;line-height:1.7;margin:0;padding-left:18px}
.case-definition li+li{margin-top:7px}
.checkpoint-sidebar{min-width:0;background:#fff;border:1px solid #e0e5d9;border-radius:12px;padding:18px}
.checkpoint-sidebar h2{font-size:14px;margin:0 0 8px}.checkpoint-sidebar ol{list-style:none;padding:0;margin:0}
.checkpoint-sidebar .chapter-button{grid-template-columns:1fr;gap:7px;padding:14px 9px;line-height:1.5;border-radius:7px;font-size:12px}
.checkpoint-sidebar .chapter-time{font-size:10px}.checkpoint-sidebar .chapter-button .status{grid-column:auto}
.checkpoint-sidebar .chapter-button.active{background:#f0f3e9;color:#33432a}.checkpoint-sidebar .chapter-button:disabled{opacity:.7}
.scenario-hero.without-checkpoints{grid-template-columns:1fr}
@media(max-width:800px){.case-definition{grid-template-columns:1fr;gap:22px;padding:18px}.checkpoint-sidebar{margin-top:20px}.checkpoint-sidebar .chapter-button{grid-template-columns:1fr auto}.checkpoint-sidebar .chapter-time{grid-column:1/-1}}

.portrait-recording .screenshot-replay,.portrait-recording>.video-stage,.portrait-recording>.video-caption{width:100%;max-width:min(320px,calc(clamp(420px,65vh,600px) * var(--recording-ratio,.462)));margin-inline:auto}
.portrait-recording .replay-controls{gap:3px;flex-wrap:wrap}.portrait-recording .replay-time{width:100%;text-align:right;padding:0 5px 3px}
.case-definition .outcome-list{list-style:none;padding:0}.outcome-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}.outcome-list .status{margin-top:2px;white-space:nowrap}.status.not-applicable{background:#f1f2ee;color:#72796b}
@media(max-width:800px){.outcome-list li{grid-template-columns:1fr;gap:5px}.outcome-list .status{justify-self:start}.outcome-list li+li{margin-top:16px}}

.checkpoint-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.checkpoint-header h2{margin:0}
.caption-switch{display:inline-flex;align-items:center;gap:5px;cursor:pointer;flex:none}.caption-switch>span{font-size:9px;letter-spacing:-.3px;font-weight:650;border:1px solid currentColor;border-radius:2px;padding:0 2px;line-height:1.25;color:#6b7463}
.caption-switch input{appearance:none;position:relative;width:28px;height:16px;min-width:28px;margin:0;border:0;border-radius:20px;background:#d9ddd4;cursor:pointer;transition:background .15s}.caption-switch input:checked{background:#798970}.caption-switch input:before{content:'';position:absolute;left:2px;top:2px;width:12px;height:12px;border-radius:50%;background:white;box-shadow:0 1px 2px #0002;transition:transform .15s}.caption-switch input:checked:before{transform:translateX(12px)}.caption-switch input:focus-visible{outline:2px solid #526249;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.caption-switch input,.caption-switch input:before{transition:none}}

.checkpoint-sidebar .chapter-button{grid-template-columns:minmax(0,1fr) 22px;column-gap:10px;row-gap:6px;padding:13px 10px;border-top-color:#ebede7}
.checkpoint-sidebar .chapter-button>.chapter-time{grid-column:1;grid-row:1}.checkpoint-sidebar .chapter-button>span:nth-child(2){grid-column:1;grid-row:2}.checkpoint-result{grid-column:2;grid-row:1/3;align-self:start;display:grid;place-items:center;width:22px;height:22px;border:1px solid #c9d6c3;border-radius:50%;background:#fff;color:#3b6539}.checkpoint-result .icon{width:13px;height:13px;stroke-width:2.2}.checkpoint-result.failed{color:#974d28;border-color:#dcb9a5}.checkpoint-sidebar .chapter-button.active{background:#eef0ea;color:#283725;box-shadow:inset 2px 0 #7a876f}.checkpoint-sidebar .chapter-button.active .checkpoint-result{color:#31582f;border-color:#9caf92;background:#fff}
.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}

.reports-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.reports-heading .page-heading{margin-bottom:0}.reports-heading .primary-button{flex:none}
.plan-card .run-button{margin-left:10px}.primary-button:disabled{opacity:.5;cursor:not-allowed}
.execution-panel{padding:18px 22px;background:#fff;border:1px solid #e0e3da;border-radius:12px;margin:20px 0;display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px;font-size:14px}.execution-panel[hidden]{display:none}.execution-panel p{margin:0;color:#697362;font-size:13px}.execution-panel progress{flex-basis:100%;height:6px;accent-color:#77876b}.execution-panel .text-link{margin-left:auto}
.report-list-item{display:flex;align-items:center}.report-list-item+.report-list-item{border-top:1px solid #eceee7}.report-list-item .report-row{flex:1;min-width:0}.delete-run{display:grid;place-items:center;width:40px;height:40px;margin-right:16px;border:0;border-radius:7px;background:transparent;color:#7d8377;cursor:pointer;flex:none}.delete-run .icon{width:17px;height:17px}.delete-run:hover{color:#974d3d;background:#f8eeea}
.confirmation-dialog{border:1px solid #dce1d5;border-radius:16px;padding:28px;max-width:460px;width:calc(100vw - 36px);color:#2d3529;box-shadow:0 18px 70px #17201022}.confirmation-dialog::backdrop{background:#20271e60}.confirmation-dialog h2{font-size:23px;margin:0 0 20px}.confirmation-dialog p{font-size:14px;line-height:1.6}.delete-run-name{font-weight:600}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.dialog-actions button{font-size:13px;border-radius:8px;padding:11px 15px;cursor:pointer}.delete-confirm{border:1px solid #9a4f3d;color:#fff;background:#9a4f3d}.dialog-error{color:#984632}.dialog-error:empty{display:none}
@media(max-width:800px){.reports-heading{align-items:flex-start;flex-direction:column;gap:0}.reports-heading .run-button{margin-top:18px}.plan-card .run-button{margin-left:0;display:flex}.delete-run{margin-right:8px;width:36px}.report-list-item .report-row{padding-right:8px}.execution-panel{padding:18px}.execution-panel .text-link{margin-left:0}}
