/* Benchmark navigation and layout. Card appearance and hover live in benchmark-catalog.css. */
.benchmark-workspace{--workspace-header:76px;background:#ffffff;color:#203447}
body.benchmark-workspace .header .header-inner{flex-direction:row!important}
.workspace-layout{display:grid;grid-template-columns:258px minmax(0,1fr);max-width:1600px;margin:0 auto;align-items:start}
.workspace-sidebar{position:sticky;top:var(--workspace-header);height:calc(100dvh - var(--workspace-header));overflow:auto;overscroll-behavior:contain;padding:32px 18px 40px 24px;border-right:1px solid #d7ded8;scrollbar-width:thin;scrollbar-color:#c2cecb transparent}
.workspace-nav-title{font-family:Sora,Arial,sans-serif;font-size:16px;font-weight:650;margin:0 0 20px;color:#203447}
.workspace-sidebar a,.workspace-sidebar button,#task-drawer a,#task-drawer button{font-family:Arial,sans-serif}
.workspace-overview{display:block;padding:10px 12px;margin:0 0 20px;border-radius:5px;font-size:15px;color:#536d78}
.workspace-nav-group{margin:0 0 14px}
.workspace-group-row{display:flex;align-items:center;gap:3px}
.workspace-group-row>a{flex:1;display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 12px;font-weight:600;font-size:15px;color:#203447;border-radius:5px}
.workspace-count{margin-left:auto;color:#718188;font-size:12px;font-weight:400}
.workspace-group-row button{border:0;border-radius:4px;background:transparent;color:#536d78;cursor:pointer;width:34px;min-height:38px;font-size:22px;line-height:1}
.workspace-group-row button[aria-expanded=false] span{display:inline-block;transform:rotate(-90deg)}
.workspace-case-list{list-style:none;margin:5px 0 0 12px;padding:0 0 0 8px;border-left:1px solid #d7ded8}
.workspace-case-list a{display:flex;align-items:baseline;gap:8px;padding:9px 8px;min-height:40px;border-radius:5px;color:#536d78;font-size:13px;line-height:1.45}
.workspace-case-id{flex:0 0 32px;font-size:12px;color:#718188;letter-spacing:.1px}
.workspace-sidebar a:hover,.workspace-group-row button:hover,#task-drawer nav a:hover{background:#edf0ea;text-decoration:none}
.workspace-sidebar a[aria-current=page],#task-drawer nav a[aria-current=page]{color:#234c5b;background:#e3ebe5;font-weight:600;box-shadow:inset 3px 0 #376b80}
.workspace-sidebar a[aria-current=page] .workspace-case-id,#task-drawer a[aria-current=page] .workspace-case-id{color:#315f72}
body.benchmark-workspace main.workspace-content{width:100%;min-width:0;max-width:none;padding:42px 44px 80px;margin:0}
.workspace-page-head{margin:0 0 36px}
.workspace-kicker{font-size:14px;color:#637d85;margin:0 0 12px}
.workspace-content .benchmark-description{max-width:760px;font-size:18px;margin:0 0 18px}
.workspace-meta{font-size:14px;color:#63737a;margin:0;line-height:1.6}
.workspace-meta span{padding:0 8px;color:#a1afad}
.workspace-content h2{font:600 23px/1.4 Sora,Arial,sans-serif;letter-spacing:-.5px;margin:0 0 22px}
.workspace-content .workspace-section{border-top:1px solid #cfdad7;padding:30px 0 0;margin:34px 0 0}
.workspace-suites{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.workspace-suite-link{display:block;color:#203447;padding:8px 0 14px;text-decoration:none;border-bottom:2px solid #d7ded8}
.workspace-suite-link:hover{border-color:#376b80;text-decoration:none}
.workspace-suite-link h3{font:650 25px/1.3 Sora,Arial,sans-serif;letter-spacing:-.6px;margin:0 0 10px}
.workspace-suite-link p{font-size:15px;line-height:1.65;color:#63737a;margin:0 0 17px}
.workspace-suite-link .workspace-suite-label{font-size:16px;font-weight:600;line-height:1.45;color:#315f72;min-height:46px;margin:0 0 12px}
.workspace-suite-link>span{font-size:14px;color:#315f72}
.workspace-section-heading{margin-bottom:24px}
.workspace-section-heading h2{margin-bottom:5px}
.workspace-section-heading p{font-size:15px;color:#63737a;margin:0}
.workspace-task-index{display:grid;grid-template-columns:140px minmax(0,1fr);gap:24px;margin:24px 0 0}
.workspace-task-index h3{font:600 18px/1.5 Sora,Arial,sans-serif;margin:10px 0}
.workspace-task-index ul{list-style:none;margin:0;padding:0}
.workspace-task-index li+li{border-top:1px solid #e2e7e0}
.workspace-task-index li a{display:flex;gap:14px;align-items:baseline;padding:12px 2px;font-size:15px;color:#315267}
.workspace-task-index li a>span:last-child{margin-left:auto}
.workspace-breadcrumb{font-size:13px;color:#718188;margin:0 0 20px;line-height:1.5}
.workspace-breadcrumb a{color:#536d78}
.workspace-content .workspace-suite-subtitle{font-size:22px;line-height:1.4;color:#315f72;margin:-8px 0 18px}
.workspace-question{border-left:3px solid #8ba397;padding:4px 0 4px 22px;margin:0 0 36px}
.workspace-question h2{font:600 14px/1.5 Arial,sans-serif;letter-spacing:0;color:#63737a;margin:0 0 7px}
.workspace-question p{font-size:19px;line-height:1.6;margin:0;max-width:700px}
.workspace-comparison{margin:0}
.workspace-comparison>div{display:grid;grid-template-columns:minmax(180px,1fr) 1.6fr;gap:30px;padding:17px 0}
.workspace-comparison>div+div{border-top:1px solid #e2e7e0}
.workspace-comparison dt{font-size:15px;font-weight:600;line-height:1.6}
.workspace-comparison dd{font-size:15px;color:#63737a;line-height:1.65;margin:0}
body.benchmark-workspace.task-detail .task-head h1{max-width:none;padding:0;font-size:clamp(26px,2.4vw,36px)}
body.benchmark-workspace.task-detail .task-head p{font-size:17px}
body.benchmark-workspace.task-detail .demo-layout{grid-template-columns:minmax(0,1fr) 260px}
body.benchmark-workspace.task-detail .brief{padding:24px 20px}
body.benchmark-workspace.task-detail .instruction p{font-size:16px}
body.benchmark-workspace.task-detail .task-footer{flex-wrap:wrap}
body.benchmark-workspace.task-detail .task-footer a{max-width:36%}
.workspace-mobile-bar{display:none}
.workspace-skip{position:fixed;top:8px;left:20px;z-index:200;transform:translateY(-180%);padding:10px 18px;background:#ffffff;border:2px solid #376b80;border-radius:5px}
.workspace-skip:focus{transform:none}
#task-drawer{width:min(360px,calc(100% - 32px));height:100dvh;max-height:100dvh;margin:0 auto 0 0;padding:20px 18px 32px;border:0;border-right:1px solid #d7ded8;background:#ffffff;color:#203447;overflow:auto}
#task-drawer::backdrop{background:#102b3e66}
.workspace-drawer-head{position:sticky;top:0;z-index:2;background:#ffffff;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px;padding-bottom:8px}
.workspace-drawer-head h2{font:600 18px Sora,Arial,sans-serif;margin:0}
.workspace-drawer-head button,.workspace-mobile-bar button{border:1px solid #b9c9c5;border-radius:5px;background:transparent;color:#315f72;min-height:42px;padding:8px 12px;font:15px Arial,sans-serif;cursor:pointer}
.workspace-drawer-head button:hover,.workspace-mobile-bar button:hover{background:#e3ebe5}
[hidden]{display:none!important}
@media(max-width:1200px){.workspace-layout{grid-template-columns:236px minmax(0,1fr)}body.benchmark-workspace main.workspace-content{padding:32px 28px 60px}.workspace-sidebar{padding-left:16px;padding-right:12px}.workspace-content .task-explanations{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-suites{gap:18px}.workspace-suite-link h3{font-size:23px}body.benchmark-workspace.task-detail .demo-layout{grid-template-columns:minmax(0,1fr)}body.benchmark-workspace.task-detail .brief{border-left:0;border-top:1px solid #d6dfd9}.workspace-task-index{grid-template-columns:110px minmax(0,1fr);gap:14px}}
@media(max-width:1040px){.benchmark-workspace{--workspace-header:68px}}
@media(max-width:850px){.workspace-layout{display:block}.workspace-sidebar{display:none}.workspace-mobile-bar{display:flex;align-items:center;gap:16px;padding:10px 20px;border-bottom:1px solid #d7ded8;background:#ffffff}.workspace-mobile-bar>span{font-size:13px;line-height:1.4;color:#63737a;min-width:0}.workspace-mobile-bar button{flex-shrink:0}body.benchmark-workspace main.workspace-content{padding:28px 24px 50px}.workspace-suites{gap:24px}}
@media(max-width:560px){body.benchmark-workspace main.workspace-content{padding:24px 20px 44px}.workspace-content .task-explanations{grid-template-columns:1fr}.workspace-suites{grid-template-columns:1fr;gap:14px}.workspace-suite-link{padding-bottom:20px}.workspace-suite-link .workspace-suite-label{min-height:0;margin-bottom:8px}.workspace-task-index{grid-template-columns:1fr;gap:0}.workspace-comparison>div{grid-template-columns:1fr;gap:5px}.workspace-content h2{font-size:21px}.workspace-page-head{margin-bottom:28px}.workspace-question p{font-size:17px}.workspace-mobile-bar{padding-inline:20px}body.benchmark-workspace.task-detail .task-footer a{max-width:100%}}

/* Shared task-page geometry for original and expansion demonstrations. */
body.benchmark-workspace.task-detail .task-head{display:grid;grid-template-rows:auto auto;gap:10px;margin-bottom:22px}
body.benchmark-workspace.task-detail .task-head h1{min-height:2.36em;line-height:1.18;margin:0;align-content:start}
body.benchmark-workspace.task-detail .task-head>p{min-height:3.1em;line-height:1.55;margin:0;max-width:900px}
body.benchmark-workspace.task-detail .demo-layout>div:first-child{align-items:stretch}
body.benchmark-workspace.task-detail .expansion-demo{display:flex;flex-direction:column;width:100%;margin:0}
body.benchmark-workspace.task-detail .expansion-demo .video-shell{flex:1}
body.benchmark-workspace.task-detail .expansion-demo figcaption{margin:0;min-height:34px;box-sizing:border-box}
body.benchmark-workspace.task-detail .brief{display:flex;flex-direction:column}
body.benchmark-workspace.task-detail .brief .dimensions{margin-top:24px;padding-top:20px}
body.benchmark-workspace.task-detail .brief .instruction{margin-bottom:24px}
@media(max-width:1200px){body.benchmark-workspace.task-detail .brief .dimensions{margin-top:0}}
@media(max-width:760px){body.benchmark-workspace.task-detail .task-head h1,body.benchmark-workspace.task-detail .task-head>p{min-height:0}body.benchmark-workspace.task-detail .task-head h1{align-content:normal}}

/* Keep the task introduction compact and size media to the remaining viewport. */
body.benchmark-workspace.task-detail main.workspace-content{padding-top:20px;padding-bottom:18px}
body.benchmark-workspace.task-detail .workspace-breadcrumb{margin-bottom:14px}
body.benchmark-workspace.task-detail .task-head{gap:8px;margin-bottom:16px}
body.benchmark-workspace.task-detail .task-head h1,body.benchmark-workspace.task-detail .task-head>p{min-height:0}
body.benchmark-workspace.task-detail .brief .instruction{margin-bottom:16px}
body.benchmark-workspace.task-detail .brief .dimensions{margin-top:0;padding-top:16px}
@media(min-width:851px){
 body.benchmark-workspace.task-detail .demo-layout{grid-template-columns:minmax(0,1fr) 280px}
 body.benchmark-workspace.task-detail .demo-layout video{height:var(--task-fit-video-height,calc(100svh - 340px));min-height:0}
 body.benchmark-workspace.task-detail .brief{padding:20px;border-top:0;border-left:1px solid #d6dfd9}
 body.benchmark-workspace.task-detail .instruction h2{font-size:17px;margin-bottom:12px}
 body.benchmark-workspace.task-detail .instruction p{font-size:15px;line-height:1.55}
 body.benchmark-workspace.task-detail .dimension-list span{font-size:13px;padding-bottom:5px}
 body.benchmark-workspace.task-detail .task-footer{margin-top:12px}
}
@media(min-width:851px) and (max-height:800px){body.benchmark-workspace.task-detail .brief{padding:16px}body.benchmark-workspace.task-detail .instruction p{font-size:14px}body.benchmark-workspace.task-detail .dimension-list span{font-size:12px}body.benchmark-workspace.task-detail .task-head h1{font-size:29px}body.benchmark-workspace.task-detail .task-head>p{font-size:16px}}

/* Task identity is centered; the green return action occupies its own left column. */
body.benchmark-workspace.task-detail .task-head{grid-template-columns:150px minmax(0,1fr) 150px;column-gap:16px;row-gap:7px;align-items:center;margin-bottom:18px}
body.benchmark-workspace.task-detail .task-head h1{grid-column:2;grid-row:1;text-align:center;font-size:clamp(23px,2.1vw,32px);line-height:1.2}
body.benchmark-workspace.task-detail .task-head>p{grid-column:2;grid-row:2;text-align:center;font-size:15px;justify-self:center}
body.benchmark-workspace.task-detail .task-back-home{grid-column:1;grid-row:1;display:flex;align-items:center;gap:8px;justify-content:center;min-height:42px;padding:9px 12px;box-sizing:border-box;border:1px solid #507e72;border-radius:6px;background:#507e72;color:white;font-size:13px;font-weight:600;line-height:1.4;text-decoration:none}
body.benchmark-workspace.task-detail .task-back-home:hover{background:#416b60}
body.benchmark-workspace.task-detail .task-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:12px}
body.benchmark-workspace.task-detail .task-footer a.task-adjacent{display:flex;flex-direction:column;gap:2px;max-width:none;min-width:0;min-height:0;padding:8px 14px;border:1px solid #bbcec5;border-radius:6px;background:#f0f5f1!important;color:#365f53;text-decoration:none;line-height:1.35}
body.benchmark-workspace.task-detail .task-footer a.task-adjacent:hover{background:#e3eee7!important;border-color:#74998a}
.task-adjacent-label,.task-adjacent-meta{font-size:11px;color:#607c70}
.task-adjacent strong{font-size:13px;font-weight:600;overflow-wrap:anywhere}
.task-adjacent-next{text-align:right;align-items:flex-end}
@media(max-width:1100px){body.benchmark-workspace.task-detail .task-head{grid-template-columns:125px minmax(0,1fr) 125px;column-gap:10px}body.benchmark-workspace.task-detail .task-back-home{font-size:12px;padding:8px}}
@media(max-width:760px){body.benchmark-workspace.task-detail .task-head{grid-template-columns:44px minmax(0,1fr) 44px;column-gap:8px}body.benchmark-workspace.task-detail .task-back-home{width:44px;font-size:0;padding:8px;overflow:hidden}body.benchmark-workspace.task-detail .task-back-home>span{font-size:22px}body.benchmark-workspace.task-detail .task-head h1{font-size:24px}body.benchmark-workspace.task-detail .task-head>p{grid-column:1/-1;font-size:15px}body.benchmark-workspace.task-detail .task-footer{gap:10px}body.benchmark-workspace.task-detail .task-footer a.task-adjacent{padding:9px} .task-adjacent strong{font-size:12px}}
body.benchmark-workspace.task-detail .task-footer a.task-adjacent-previous{align-items:flex-start;text-align:left}
body.benchmark-workspace.task-detail .task-footer a.task-adjacent-next{align-items:flex-end;text-align:right}

/* A compact, quiet return control aligned with the task title. */
body.benchmark-workspace.task-detail .task-back-home{justify-self:start;align-self:center;width:auto;min-height:34px;padding:7px 12px;gap:7px;background:#e8efea;border-color:#cbd9d0;color:#41685b;font-size:13px;font-weight:500;line-height:1.4;white-space:nowrap}
body.benchmark-workspace.task-detail .task-back-home:hover{background:#dce8df;border-color:#adc5b7}
@media(max-width:760px){body.benchmark-workspace.task-detail .task-head{grid-template-columns:100px minmax(0,1fr) 100px}body.benchmark-workspace.task-detail .task-back-home{font-size:12px;min-height:32px;padding:6px 9px}body.benchmark-workspace.task-detail .task-back-home>span{font-size:15px}body.benchmark-workspace.task-detail .task-head h1{font-size:22px}}
@media(max-width:480px){body.benchmark-workspace.task-detail .task-head{grid-template-columns:1fr}.task-head .task-back-home{grid-column:1;grid-row:1}body.benchmark-workspace.task-detail .task-head h1{grid-column:1;grid-row:2}body.benchmark-workspace.task-detail .task-head>p{grid-column:1;grid-row:3}}

/* Task heading reads left to right; return action sits at the upper right. */
body.benchmark-workspace.task-detail .task-head{grid-template-columns:minmax(0,1fr) auto;column-gap:20px}
body.benchmark-workspace.task-detail .task-head h1{grid-column:1;grid-row:1;text-align:left}
body.benchmark-workspace.task-detail .task-head>p{grid-column:1;grid-row:2;text-align:left;justify-self:start}
body.benchmark-workspace.task-detail .task-back-home{grid-column:2;grid-row:1;justify-self:end;align-self:center}
@media(max-width:760px){body.benchmark-workspace.task-detail .task-head{grid-template-columns:minmax(0,1fr) auto;column-gap:12px}body.benchmark-workspace.task-detail .task-head>p{grid-column:1/-1}}

/* Catalog navigation owns desktop return; mobile keeps a quiet contextual link. */
body.benchmark-workspace.task-detail .task-head{grid-template-columns:minmax(0,1fr)}
body.benchmark-workspace.task-detail .task-head h1{grid-column:1;grid-row:1}
body.benchmark-workspace.task-detail .task-head>p{grid-column:1;grid-row:2}
body.benchmark-workspace.task-detail .task-back-home{display:none}
body.benchmark-workspace.task-detail .workspace-sidebar{padding-top:0}
body.benchmark-workspace.task-detail .workspace-sidebar .workspace-nav-title{display:none}
body.benchmark-workspace.task-detail .workspace-sidebar .workspace-overview{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:8px;margin:0 0 12px;padding:20px 10px 16px;border-bottom:1px solid #d7e1da;border-radius:0;background:#fff;color:#41685b;font-size:14px;font-weight:600;box-shadow:0 6px 0 #fff}
body.benchmark-workspace.task-detail .workspace-sidebar .workspace-overview:hover{background:#f0f5f1}
@media(max-width:850px){body.benchmark-workspace.task-detail .task-back-home{display:inline-flex;grid-column:1;grid-row:1;justify-self:start;min-height:32px;padding:4px 0;border:0;background:none;border-radius:0;font-size:13px;color:#41685b;text-decoration:none}body.benchmark-workspace.task-detail .task-back-home:hover{background:none;text-decoration:underline}body.benchmark-workspace.task-detail .task-head h1{grid-row:2}body.benchmark-workspace.task-detail .task-head>p{grid-row:3}}

/* Quiet adjacent-task navigation beneath the player. */
body.benchmark-workspace.task-detail .task-footer{border-top:1px solid #d7e1da;padding-top:8px;gap:24px}
body.benchmark-workspace.task-detail .task-footer a.task-adjacent{justify-content:flex-start;padding:5px 0;min-height:44px;border:0!important;border-radius:0;background:transparent!important;box-shadow:none;gap:3px}
body.benchmark-workspace.task-detail .task-footer a.task-adjacent:hover{background:transparent!important;border:0;color:#416b61;text-decoration:none}
.task-adjacent-label{font-size:11px;font-weight:400;color:#73877e}
.task-adjacent strong{font-size:13px;font-weight:500;line-height:1.4}
.task-adjacent:hover strong{text-decoration:underline;text-underline-offset:4px}
.task-adjacent:focus-visible{outline:2px solid #416b61;outline-offset:4px}
/* Keep search available while scrolling the task directory. */
.workspace-nav-tools{position:sticky;top:0;z-index:5;background:#fff;padding-bottom:12px}
body.benchmark-workspace.task-detail .workspace-sidebar .workspace-nav-tools .workspace-overview{position:static;margin-bottom:10px;box-shadow:none}
.workspace-task-search input{box-sizing:border-box;width:100%;min-width:0;min-height:38px;padding:8px 12px;border:1px solid #ccd8d0;border-radius:20px;background:#fff;color:#203447;font:13px/1.4 Arial,sans-serif}
.workspace-task-search input::placeholder{color:#718188;opacity:1}
.workspace-task-search input:focus{outline:2px solid #416b6126;outline-offset:1px;border-color:#416b61}
.workspace-task-search p{margin:8px 8px 0;color:#63776e;font:12px/1.5 Arial,sans-serif}
#task-drawer .workspace-nav-tools .workspace-overview{margin-bottom:10px}
@media(max-width:560px){body.benchmark-workspace.task-detail .task-footer{gap:16px}.task-adjacent strong{font-size:12px}}
