:root{--spacing:.25rem;--shadow-color-rgb:0 0 0;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--blur-sm:4px;--blur-md:8px;--blur-lg:16px;--font-weight-semibold:600;--alpha-low:.1;--alpha-medium:.3;--alpha-high:.82;--alpha-higher:.88;--alpha-highest:.94;--alpha-hover:.78;--alpha-focus-ring:.45;--alpha-bg-hover:.08;--alpha-bg-active:.12;--alpha-border:.25;--alpha-inset-shadow:.06;--alpha-ring-offset:.25;--alpha-muted-hover:.92;--color-primary:18 84 105;--color-primary-strong:16 78 98;--color-secondary:72 83 100;--color-accent:3 94 66;--color-background-rgb:248 250 252;--color-surface-rgb:255 255 255;--color-component-rgb:241 245 249;--color-skeleton-rgb:203 213 225;--color-skeleton-soft-rgb:226 232 240;--color-component-hover-rgb:226 232 240;--color-component-active-rgb:203 213 225;--color-border-rgb:203 213 225;--color-control-border-rgb:100 116 139;--color-muted-rgb:241 245 249;--color-text-base:15 23 42;--color-text-muted:70 84 103;--color-text-emphasis:2 6 23;--color-text-inverted:248 250 252;--color-text-link:8 78 98;--color-text-link-hover:4 85 105;--color-text-link-active:18 84 105;--color-text-link-visited:88 28 135;--color-text-link-focus-ring:8 145 178;--color-danger-strong:112 15 15;--color-warning-strong:97 45 4;--color-success-strong:2 68 49;--color-info-strong:1 63 96;--color-danger:150 20 20;--color-warning:135 62 6;--color-success:3 94 68;--color-info:2 87 133;--color-bg-default:241 245 249;--color-bg-success:209 250 229;--color-bg-info:207 250 254;--color-bg-warning:254 243 199;--color-bg-danger:254 226 226;--color-bg-fatal:254 202 202;--color-text-on-danger:255 255 255;--color-text-on-warning:255 255 255;--color-text-on-success:255 255 255;--color-text-on-info:255 255 255;--color-text-on-primary:255 255 255;--color-primary-button:21 94 117}.dark{--color-primary:34 211 238;--color-primary-strong:34 211 238;--color-secondary:168 181 198;--color-accent:52 211 153;--color-background-rgb:2 6 23;--color-surface-rgb:15 23 42;--color-skeleton-rgb:71 85 105;--color-skeleton-soft-rgb:51 65 85;--color-component-rgb:30 41 59;--color-component-hover-rgb:51 65 85;--color-component-active-rgb:71 85 105;--color-border-rgb:51 65 85;--color-control-border-rgb:148 163 184;--color-muted-rgb:30 41 59;--color-text-base:226 232 240;--color-text-muted:169 181 198;--color-text-emphasis:248 250 252;--color-text-inverted:15 23 42;--color-text-link:34 211 238;--color-text-link-hover:103 232 249;--color-text-link-active:55 196 220;--color-text-link-visited:206 160 252;--color-text-link-focus-ring:34 211 238;--color-danger-strong:252 199 199;--color-warning-strong:253 215 119;--color-success-strong:149 232 202;--color-info-strong:160 224 252;--color-danger:250 154 154;--color-warning:251 191 36;--color-success:52 211 153;--color-info:65 192 248;--color-bg-default:30 41 59;--color-bg-success:6 78 59;--color-bg-info:22 78 99;--color-bg-warning:120 53 15;--color-bg-danger:127 29 29;--color-bg-fatal:153 27 27;--color-text-on-danger:15 23 42;--color-text-on-warning:15 23 42;--color-text-on-success:15 23 42;--color-text-on-info:15 23 42;--color-text-on-primary:15 23 42;--color-primary-button:8 145 178}:root{--font-sans:"Segoe UI Variable Text","Segoe UI",ui-sans-serif,system-ui,Roboto,"Helvetica Neue",Arial,sans-serif;--font-display:"Segoe UI Variable Display","Segoe UI",ui-sans-serif,system-ui,Roboto,"Helvetica Neue",Arial,sans-serif;--pass:rgb(var(--color-success));--pass-strong:rgb(var(--color-success-strong));--fail:rgb(var(--color-danger));--fail-strong:rgb(var(--color-danger-strong));--fail-bg:rgb(var(--color-bg-danger));--warn:rgb(var(--color-warning));--rule:rgb(var(--color-border-rgb)/var(--alpha-border));--control-border:rgb(var(--color-control-border-rgb));--page:rgb(var(--color-background-rgb));--surface:rgb(var(--color-surface-rgb));--well:rgb(var(--color-component-rgb));--ink:rgb(var(--color-text-base));--ink-strong:rgb(var(--color-text-emphasis));--ink-soft:rgb(var(--color-text-muted));--primary:rgb(var(--color-primary));--primary-strong:rgb(var(--color-primary-strong));--primary-button:rgb(var(--color-primary-button));--on-primary:rgb(var(--color-text-on-primary));--link:rgb(var(--color-text-link));--focus-ring:rgb(var(--color-primary)/var(--alpha-focus-ring));--shadow:0 1px 2px rgb(var(--shadow-color-rgb)/.06),0 8px 24px -12px rgb(var(--shadow-color-rgb)/.18);--tape-pass:var(--pass);--tape-fail:var(--fail);--tape-todo:rgb(var(--color-skeleton-rgb));--topbar-height:3.5rem;font-family:var(--font-sans);color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:16px;line-height:1.5}.dark{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html{transition:background-color .3s ease-in-out,color .3s ease-in-out}body{background:var(--page);min-height:100dvh;color:var(--ink);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:var(--font-weight-semibold);color:var(--ink-strong);letter-spacing:-.01em;margin:0;line-height:1.2}h1{font-size:1.05rem}h2{font-size:1.25rem}h3{margin-top:1.5rem;font-size:1rem}h4{color:var(--ink-soft);letter-spacing:0;margin-top:1rem;font-size:.85rem}h5{letter-spacing:0;margin-bottom:.4rem;font-size:.85rem}p{margin:0}.muted{color:var(--ink-soft)}.topbar{z-index:30;height:var(--topbar-height);background:var(--primary);color:var(--on-primary);justify-content:space-between;align-items:center;gap:1rem;padding:0 1rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.65rem;min-width:0;display:flex}.brand h1{color:inherit;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mark{background:var(--on-primary);width:.9rem;height:.9rem;box-shadow:0 0 0 3px rgb(var(--color-text-on-primary)/.25);border-radius:50%;flex:none}.topbar button{white-space:nowrap;border:1px solid rgb(var(--color-text-on-primary)/var(--alpha-medium));min-height:0;color:inherit;background:0 0;border-radius:999px;padding:.35rem .7rem;font-size:.85rem}.layout{grid-template-columns:minmax(0,1fr);gap:1rem;padding:1rem;display:grid}.rail{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-xl);min-width:0;box-shadow:var(--shadow);flex-direction:column;gap:1rem;padding:1.25rem;display:flex}form{flex-direction:column;gap:1.25rem;display:flex}fieldset{border:0;flex-direction:column;gap:.75rem;min-width:0;margin:0;padding:0;display:flex}legend{font-family:var(--font-display);font-weight:var(--font-weight-semibold);color:var(--ink-soft);margin-bottom:.5rem;padding:0;font-size:.75rem}fieldset+fieldset{border-top:1px solid var(--rule);padding-top:1.25rem}label{color:var(--ink-strong);flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:500;display:flex}.source-mapping{border-radius:var(--radius-lg);background:var(--well);grid-column:1/-1;margin-top:.5rem;padding:.85rem 1rem;font-size:.85rem}.source-mapping .source-summary{margin:0}.mapping-dialog{border-radius:var(--radius-lg);background:var(--surface);width:min(72rem,100vw - 2rem);max-height:calc(100vh - 2rem);color:var(--ink);border:none;grid-template-rows:auto auto minmax(0,1fr) auto;padding:0;display:none;box-shadow:0 24px 64px #00000059}.mapping-dialog[open]{display:grid}.mapping-dialog::backdrop{background:#0a141e8c}.mapping-top{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem .75rem;display:flex}.mapping-top h3{font-family:var(--font-display);overflow-wrap:anywhere;margin:0 0 .25rem;font-size:1.15rem}.mapping-top .hint{max-width:60ch;margin:0}.mapping-sheets{border-bottom:1px solid var(--rule);flex-wrap:wrap;gap:.5rem;padding:0 1.5rem .9rem;display:flex}label.sheet-toggle{border:1px solid var(--control-border);background:var(--well);color:var(--ink);cursor:pointer;border-radius:999px;flex-direction:row;align-items:baseline;gap:.5rem;padding:.35rem .75rem .35rem .6rem;font-size:.85rem;font-weight:400;display:inline-flex}label.sheet-toggle:has(input:checked){border-color:var(--primary);background:rgb(var(--color-primary)/.08);color:var(--ink-strong)}.sheet-toggle:has(input:focus-visible){outline:2px solid var(--focus-ring);outline-offset:2px}label.sheet-toggle input{align-self:center}.sheet-toggle .sheet-count{color:var(--ink-soft);font-size:.78rem}.mapping-body{grid-template-columns:minmax(0,1.6fr) minmax(16rem,1fr);min-height:0;display:grid;overflow:hidden}.mapping-columns,.mapping-ledger{min-height:0;padding:1rem 1.5rem;overflow-y:auto}.mapping-ledger{border-left:1px solid var(--rule);background:var(--well)}.mapping-body h4{color:var(--ink-strong);margin:0 0 .6rem;font-size:.85rem;font-weight:600}.mapping-empty{color:var(--ink-soft);margin:0;font-size:.85rem}.column-list{flex-direction:column;display:flex}.column{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(14rem,18rem);align-items:center;gap:.35rem 1rem;padding:.5rem 0;display:grid}.column.ignored .column-name>span{color:var(--ink-soft)}.column-name{min-width:0;color:var(--ink-strong);overflow-wrap:anywhere;flex-direction:column;gap:.1rem;font-size:.9rem;font-weight:500;display:flex}.column-name small{color:var(--ink-soft);font-size:.78rem;font-weight:400}.column select{width:100%;font-size:.85rem}.column-warning{color:var(--fail-strong);grid-column:1/-1;font-size:.78rem}.ledger-group+.ledger-group{margin-top:1rem}.ledger-group h5{color:var(--ink);margin:0 0 .35rem;font-size:.8rem;font-weight:600}.ledger-group ul{margin:0;padding:0;font-size:.82rem;list-style:none}.ledger-group li{flex-wrap:wrap;align-items:baseline;gap:0 .5rem;padding:.15rem 0;display:flex}.ledger-group .mark{border:1.5px solid var(--control-border);border-radius:50%;flex:none;align-self:center;width:.55rem;height:.55rem}.ledger-group li.have .mark{border-color:var(--pass-strong);background:var(--pass)}.ledger-group li.lack .need{color:var(--ink-soft)}.ledger-group .from{color:var(--ink-soft);font-size:.78rem}.mapping-bottom{border-top:1px solid var(--rule);background:var(--surface);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.5rem;display:flex}.mapping-state{color:var(--ink-soft);margin:0;font-size:.85rem}@media (max-width:52rem){.mapping-body{grid-template-columns:1fr;overflow-y:auto}.mapping-columns,.mapping-ledger{overflow:visible}.mapping-ledger{border-left:none;border-top:1px solid var(--rule)}.column{grid-template-columns:1fr}}label:has(>.rows-pick){grid-column:1/-1}.rows-pick{grid-template-columns:minmax(0,1fr) 5rem;gap:.4rem;display:grid}.rows-pick input[name=rows]{grid-column:1/-1}.rows-pick button{min-height:2.75rem;padding:.5rem .8rem;font-size:.85rem}button.link{color:var(--link);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}label.check{color:var(--ink);flex-direction:row;align-items:flex-start;gap:.6rem;font-weight:400;line-height:1.35}label.check input{accent-color:var(--primary);margin-top:.2rem}.hint{color:var(--ink-soft);font-size:.8rem;font-weight:400;line-height:1.45}.pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem;display:grid}input,select,button{font:inherit;color:inherit}input,select{border:1.5px solid var(--control-border);border-radius:var(--radius-md);background:var(--surface);width:100%;min-width:0;min-height:2.75rem;color:var(--ink);padding:.5rem .75rem;font-weight:400}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring);outline:none}input[type=checkbox]{width:1rem;height:1rem;min-height:0;accent-color:var(--primary);border:none;flex:none;margin:0;padding:0}input[type=checkbox]:focus{box-shadow:none}input[type=checkbox]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}input[type=file]{border-style:dashed;padding:.45rem .5rem;font-size:.85rem}input[type=file]::-webkit-file-upload-button{font:inherit;border:1px solid var(--control-border);background:var(--well);color:var(--ink-strong);cursor:pointer;border-radius:999px;margin-right:.6rem;padding:.35rem .7rem}input[type=file]::file-selector-button{font:inherit;border:1px solid var(--control-border);background:var(--well);color:var(--ink-strong);cursor:pointer;border-radius:999px;margin-right:.6rem;padding:.35rem .7rem}button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.actions{background:var(--surface);box-shadow:0 -10px 10px -6px var(--surface);margin-top:.5rem;padding:.75rem 0;position:sticky;bottom:0}button{border:1px solid var(--primary-button);border-radius:var(--radius-md);background:var(--primary-button);min-height:2.75rem;color:var(--on-primary);cursor:pointer;padding:.6rem 1.1rem;font-weight:500;transition:background-color .15s,border-color .15s,opacity .15s}button:hover:not(:disabled){background:var(--primary-strong);border-color:var(--primary-strong)}.actions button{width:100%;font-size:1rem}button.secondary{background:var(--surface);color:var(--ink-strong);border-color:var(--control-border)}button.secondary:hover:not(:disabled){background:var(--well);border-color:var(--control-border)}button:disabled{opacity:.5;cursor:default}.error{border-radius:var(--radius-md);background:var(--fail-bg);color:var(--fail-strong);padding:.75rem 1rem;font-size:.9rem}.progress{color:var(--ink-soft);font-variant-numeric:tabular-nums;flex-direction:column;gap:.35rem;font-size:.85rem;display:flex}progress{width:100%;height:.4rem;accent-color:var(--primary)}main{flex-direction:column;gap:1.25rem;min-width:0;display:flex}.empty-state{max-width:52ch;color:var(--ink-soft);padding:2rem 0}.empty-state h2{margin-bottom:.75rem;font-size:1.5rem}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-xl);box-shadow:var(--shadow);padding:1.25rem}.run-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.run-head .muted{font-variant-numeric:tabular-nums;margin-top:.25rem;font-size:.9rem}.run-side{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.run-controls{gap:.5rem;display:flex}.run-controls button,.dock-stop{min-height:2.25rem;padding:.35rem .9rem}button.danger{color:var(--fail-strong);border-color:var(--fail)}button.danger:hover:not(:disabled){background:var(--fail-bg);border-color:var(--fail)}.dock-progress-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.run-count{font-family:var(--font-display);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:baseline;gap:.35rem;display:flex}.run-count span:first-child{font-size:2rem;font-weight:var(--font-weight-semibold);color:var(--ink-strong);letter-spacing:-.02em}.run-count .of,.run-count span:last-child{color:var(--ink-soft)}.tape{background:var(--tape-todo);border-radius:6px;width:100%;height:28px;display:block}.live-rows{margin-top:1rem}.live-rows .section-head{margin-bottom:.5rem}.live-rows h3{margin:0;font-size:1rem}.incidents{margin:1rem 0}section.incidents{border:1px solid var(--rule);border-left:4px solid var(--warn);border-radius:var(--radius-lg);background:var(--surface);padding:1rem 1.1rem}.incidents h3{margin:0 0 .25rem;font-size:1rem}.incidents .table-scroll{overflow-x:auto}.incidents table{border-collapse:collapse;width:100%;font-size:.85rem}.incidents th,.incidents td{border-top:1px solid var(--rule);text-align:left;vertical-align:top;padding:.35rem .5rem}.incidents .nowrap{white-space:nowrap}.incidents .said{color:var(--ink-soft);margin-top:.2rem}.incidents .url{overflow-wrap:anywhere;color:var(--ink-soft)}.incidents .go-to{border:1px solid var(--control-border);border-radius:var(--radius-lg);background:var(--page);color:var(--link);font:inherit;cursor:pointer;padding:.15rem .55rem}.server-runs{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);margin:0 0 1rem;padding:1rem 1.1rem}.server-runs h2{margin:0 0 .25rem;font-size:1rem}.server-runs ul{margin:.5rem 0 0;padding:0;list-style:none}.server-run{border-top:1px solid var(--rule);flex-wrap:wrap;align-items:center;gap:.4rem .8rem;padding:.45rem 0;font-size:.85rem;display:flex}.server-run-what{overflow-wrap:anywhere;flex:18rem;min-width:0}.server-run-state{color:var(--ink-soft)}.server-run.running .server-run-state{color:var(--pass-strong)}.open-report{color:var(--ink-strong);gap:.35rem;margin-top:1rem;font-weight:600;display:grid}.open-report .hint{font-weight:400}.problems{border:1px solid var(--rule);border-left:4px solid var(--fail);border-radius:var(--radius-lg);background:var(--surface);margin:1rem 0;padding:1rem 1.1rem}.problems h3{color:var(--fail-strong);margin:0 0 .25rem;font-size:1rem}.problem-group{margin-top:.5rem}.problem-group>summary{cursor:pointer;color:var(--ink-strong);font-weight:600}.problem-group.recovered>summary{color:var(--ink-soft);font-weight:500}.problem-group .count{background:var(--fail-bg);min-width:1.5rem;color:var(--fail-strong);text-align:center;border-radius:999px;margin-left:.35rem;padding:0 .4rem;font-size:.8rem;display:inline-block}.problem-group.recovered .count{background:var(--well);color:var(--ink-soft)}.problem-group.acceptable>summary{color:var(--pass-strong);font-weight:500}.problem-group.acceptable .count{background:var(--well);color:var(--pass-strong)}.problem-group ul{margin:.4rem 0 0;padding:0;list-style:none}.problem-group li{border-top:1px solid var(--rule);align-items:baseline;gap:.6rem;padding:.3rem 0;display:flex}.problem-group .go-to{border:1px solid var(--control-border);border-radius:var(--radius-lg);background:var(--page);color:var(--link);font:inherit;cursor:pointer;flex:none;padding:.15rem .55rem;font-size:.85rem}.problem-group .go-to:hover{border-color:var(--primary)}.problem-group .go-to:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.problem-text{overflow-wrap:anywhere;min-width:0;color:var(--ink);font-size:.85rem}.run-failure{border-radius:var(--radius-lg);background:var(--fail-bg);color:var(--fail-strong);margin-top:1rem;padding:1rem 1.1rem}.run-failure h3{color:inherit;margin:0 0 .35rem;font-size:1rem}.run-failure details{margin-top:.75rem}.run-failure summary{cursor:pointer;font-size:.85rem}.run-failure pre{background:var(--surface);max-height:20rem;color:var(--ink);margin:.5rem 0 0;overflow:auto}.tape-hint{margin:.35rem 0 0;font-size:.78rem}.row-dialog{border-radius:var(--radius-lg);background:var(--surface);width:min(64rem,100vw - 2rem);max-height:calc(100vh - 2rem);color:var(--ink);border:none;padding:1.25rem 1.5rem;overflow:hidden auto;box-shadow:0 24px 64px #00000059}.row-dialog::backdrop{background:#0a141e8c}.row-dialog-top{justify-content:flex-end;margin-bottom:.5rem;display:flex}.row-dialog .detail{border-top:none;padding:0}.row-dialog h3{margin:0 0 .75rem}.row .saved{position:relative}.row .saved.wrong{color:var(--fail-strong);font-weight:var(--font-weight-semibold)}.row .saved .flag{background:var(--fail);vertical-align:middle;border-radius:50%;width:.5rem;height:.5rem;margin-left:.35rem;display:inline-block}.why{border-radius:var(--radius-lg);background:var(--fail-bg);color:var(--fail-strong);margin:0 0 1rem;padding:.75rem 1rem}.why.pass{background:var(--well);color:var(--ink)}.why h5{margin:0 0 .35rem}.why p{margin:.25rem 0}.why .recorded{opacity:.85;font-size:.85rem}.tape-key{color:var(--ink-soft);flex-wrap:wrap;gap:1rem;margin-top:.6rem;font-size:.8rem;display:flex}.key:before{content:"";vertical-align:-1px;background:var(--tape-todo);border-radius:2px;width:.7rem;height:.7rem;margin-right:.4rem;display:inline-block}.key.pass:before{background:var(--tape-pass)}.key.fail:before{background:var(--tape-fail)}.key.warn:before{background:var(--warn)}.chart{background:var(--well);border-radius:6px;width:100%;height:120px;margin-top:1rem;display:block}#load-live .figures{margin-top:0}#videos{margin-top:.5rem}.section-head{flex-direction:column;gap:.2rem;margin-bottom:.75rem;display:flex}.section-head .muted{font-size:.9rem}.verdict{border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow);padding:1.5rem 1.25rem;position:relative;overflow:hidden}.verdict:before{content:"";background:var(--pass);width:8px;position:absolute;top:0;bottom:0;left:0;right:auto}.verdict.fail:before{background:var(--fail)}.verdict .count{font-family:var(--font-display);font-variant-numeric:tabular-nums;align-items:baseline;gap:.5rem;line-height:1;display:flex}.verdict .count strong{font-size:3.25rem;font-weight:var(--font-weight-semibold);letter-spacing:-.03em;color:var(--pass-strong)}.verdict.fail .count strong{color:var(--fail-strong)}.verdict .count .of{color:var(--ink-soft);font-size:1.1rem}.verdict h2{margin-top:.5rem;font-size:1.35rem}.verdict .note{border-radius:var(--radius-md);background:rgb(var(--color-bg-warning));color:rgb(var(--color-warning-strong));margin-top:.75rem;padding:.5rem .75rem;font-size:.9rem}.strip{background:var(--tape-todo);border-radius:999px;height:14px;margin-top:1.25rem;display:flex;overflow:hidden}.seg{background:var(--pass);flex:none;min-width:2px}.seg.no-score-match{opacity:.55}.seg.fail{background:var(--fail)}.seg.error{background:var(--warn)}.figures{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1.5rem;margin:1.25rem 0 0;display:grid}.figures dt{color:var(--ink-soft);font-size:.78rem}.figures dd{font-family:var(--font-display);font-size:1.5rem;font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;color:var(--ink-strong);letter-spacing:-.01em;margin:0}.figures button.figure{border-radius:var(--radius-sm,6px);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.figures button.figure:hover dd{color:var(--accent,var(--ink-strong))}.figures button.figure:focus-visible dd{color:var(--accent,var(--ink-strong))}.figures button.figure:focus-visible{outline:2px solid var(--accent,currentColor);outline-offset:3px}.meta{border-top:1px solid var(--rule);grid-template-columns:max-content minmax(0,1fr);gap:.3rem 1rem;margin:1.25rem 0 0;padding-top:1rem;font-size:.85rem;display:grid}.meta div{display:contents}.meta dt{color:var(--ink-soft)}.meta dd{overflow-wrap:anywhere;color:var(--ink);margin:0}.exports{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}.export{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;gap:.75rem;padding:1rem 1.1rem;display:flex}.export h3{margin:0;font-size:1rem}.export-text p{color:var(--ink-soft);margin-top:.25rem;font-size:.85rem}.export-status{font-variant-numeric:tabular-nums;color:var(--ink)}.export[data-state=ready] .export-status{color:var(--pass-strong)}.export[data-state=failed] .export-status{color:var(--fail-strong)}.export-bar{background:var(--tape-todo);border-radius:999px;height:.4rem;margin-top:.5rem;overflow:hidden}.export-bar span{background:var(--primary);border-radius:999px;width:0;height:100%;transition:width .2s;display:block}.export-bar.busy span{width:40%;animation:1.2s ease-in-out infinite export-slide}@keyframes export-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}.export button{align-self:flex-start}.exports a{color:var(--link);font-size:.9rem}@media (min-width:60rem){.exports{grid-template-columns:repeat(3,minmax(0,1fr))}.export button{margin-top:auto}}@media (prefers-reduced-motion:reduce){.export-bar.busy span{opacity:.5;width:100%;animation:none}}.breakdown{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);padding:0 1rem}.breakdown>summary{cursor:pointer;color:var(--ink-strong);padding:.85rem 0;font-weight:500}.breakdown[open]>summary{border-bottom:1px solid var(--rule)}.breakdown>div{padding-bottom:1rem}.breakdown table{width:100%}table{border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums;max-width:100%;margin:.5rem 0;font-size:.85rem}td,th{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;overflow-wrap:anywhere;padding:.35rem 1rem .35rem 0}th{color:var(--ink-soft);font-weight:500}.filters{flex-direction:column;gap:.75rem;display:flex}.filters input{max-width:14rem}.forms{flex-direction:column;grid-column:1/-1;gap:.4rem;display:flex}.forms-label{color:var(--ink-strong);font-size:.85rem;font-weight:500}.chip.toggle{cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:row;align-items:center;gap:.4rem;padding-left:.85rem;display:inline-flex;position:relative}.chip.toggle input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;top:0;bottom:0;left:0;right:0}.chip.toggle:before{content:"";border:1.5px solid var(--control-border);border-radius:50%;flex:none;width:.45rem;height:.45rem;transition:background-color .15s,border-color .15s}.chip.toggle:has(input:checked):before{border-color:var(--page);background:var(--page)}.chip.toggle:has(input:focus-visible){outline:2px solid var(--focus-ring);outline-offset:2px}.chip.toggle:has(input:checked){background:var(--ink-strong);border-color:var(--ink-strong);color:var(--page)}.chip.toggle.all:has(input:checked){background:var(--primary);border-color:var(--primary)}.forms-other,.forms-mode{max-width:20rem}.run-queue{flex-wrap:wrap;gap:.4rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.run-queue li{border:1px solid var(--control-border);background:var(--surface);cursor:default;border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .7rem;font-size:.8rem;display:inline-flex}.run-queue li.running{border-color:var(--primary);color:var(--primary-strong)}.run-queue li.done{border-color:var(--pass);cursor:pointer}.run-queue li.done.fail{border-color:var(--fail)}.run-queue li.failed{border-color:var(--fail);color:var(--fail-strong)}.run-queue li.current{background:var(--well)}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip{border:1px solid var(--control-border);background:var(--surface);min-height:0;color:var(--ink);border-radius:999px;padding:.35rem .75rem;font-size:.85rem;font-weight:400}.chip b{font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;margin-left:.15rem}.chip:hover:not(:disabled){background:var(--well);border-color:var(--control-border)}.chip.active,.chip.active:hover:not(:disabled){background:var(--ink-strong);border-color:var(--ink-strong);color:var(--page)}.chip.fail b{color:var(--fail-strong)}.chip.fail.active b{color:inherit}.ledger{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);overflow:hidden}.row{border-bottom:1px solid var(--rule);display:block}.row:last-child{border-bottom:0}.row.head{display:none}.row>summary{cursor:pointer;font-variant-numeric:tabular-nums;grid-template-columns:3.5rem minmax(0,1fr);gap:.2rem .75rem;padding:.7rem 1rem;list-style:none;display:grid}.row>summary:hover,.row[open]>summary{background:var(--well)}.row>summary::-webkit-details-marker{display:none}.row .index{font-weight:var(--font-weight-semibold);color:var(--ink-strong);grid-area:1/1}.row .outcome,.row .num,.row .message{grid-column:2}.row .outcome{color:var(--ink);align-items:center;gap:.45rem;display:flex}.dot{background:var(--pass);border-radius:50%;flex:none;width:.55rem;height:.55rem}.row.fail .dot{background:var(--fail)}.row.fail .outcome{color:var(--fail-strong);font-weight:500}.row .num[data-label]:before{content:attr(data-label);color:var(--ink-soft);margin-right:.35rem;font-size:.78rem}.row .num.diff:empty{display:none}.row .message{color:var(--warn);overflow-wrap:anywhere;font-size:.85rem}.row .message:empty{display:none}.detail{border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr);gap:1rem;padding:.75rem 1rem 1.25rem;font-size:.85rem;display:grid}.detail table{width:100%}.detail table th{width:55%}.detail .frame{min-width:0}.detail .frame img,.detail .frame video{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--well);max-width:100%;display:block}.detail .frame img{cursor:zoom-in}.detail .frame.full{max-height:80vh;overflow:auto}.detail .frame.full img{cursor:zoom-out;max-width:none}.frame-hint{color:var(--ink-soft);margin:.35rem 0 0;font-size:.78rem}pre{border-radius:var(--radius-md);background:var(--well);white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 .75rem;padding:.6rem .75rem;font-size:.78rem}.empty{color:var(--ink-soft);padding:1rem}.more{margin:.75rem 1rem 1rem}.tiles{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}.tile{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);margin:0;overflow:hidden}.tile .view,.tile img,.tile video{aspect-ratio:16/10;object-fit:contain;object-position:top;background:var(--well);width:100%;height:auto;display:block}.tile{position:relative}.tile .fps:empty{display:none}.tile .fps{background:rgb(var(--shadow-color-rgb)/.55);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;padding:.1rem .45rem;font-size:.7rem;position:absolute;top:.5rem;right:.5rem}.tile figcaption a{color:var(--link)}.tile figcaption{color:var(--ink-soft);font-variant-numeric:tabular-nums;border-top:1px solid var(--rule);padding:.5rem .75rem;font-size:.8rem}.frame-shell{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.signin-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}#domino-status.ok{color:var(--pass-strong)}.alt-signin>summary{cursor:pointer;color:var(--ink-soft);font-size:.85rem}.alt-signin[open]>summary{margin-bottom:.75rem}#embed-frame{background:#fff;border:0;width:100%;height:min(78vh,900px);display:block}#live-frame{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface);max-width:100%}.menu,.scrim{display:none}.dock{z-index:20;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--rule);box-shadow:0 -4px 16px rgb(var(--shadow-color-rgb)/.12);position:fixed;bottom:0;left:0;right:0}.dock-progress{color:var(--ink-soft);font-variant-numeric:tabular-nums;flex-direction:column;gap:.35rem;font-size:.85rem;display:flex}.dock-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}@media (min-width:60rem){.layout{grid-template-columns:23rem minmax(0,1fr);align-items:start;gap:1.5rem;padding:1.5rem}.rail{top:calc(var(--topbar-height) + 1.5rem);max-height:calc(100dvh - var(--topbar-height) - 3rem);scrollbar-width:thin;position:sticky;overflow:auto}.panel,.verdict{padding:1.75rem 2rem}.verdict .count strong{font-size:4.5rem}.verdict h2{font-size:1.6rem}.figures{grid-template-columns:repeat(4,minmax(0,1fr))}.filters{flex-direction:row;justify-content:space-between;align-items:center}.row.head,.row>summary{grid-template-columns:4.5rem 15rem 6.5rem 6.5rem 6rem minmax(0,1fr);align-items:center;gap:.75rem;padding:.55rem 1rem;display:grid}.row-list.with-saved .row.head,.row-list.with-saved .row>summary{grid-template-columns:4.5rem 15rem 6.5rem 6.5rem 8.5rem 6rem minmax(0,1fr)}.row.head{color:var(--ink-soft);background:var(--well);border-bottom:1px solid var(--rule);font-size:.8rem;font-weight:500}.row.head .message{color:inherit;font-size:inherit}.row .index,.row .outcome,.row .num,.row .message{grid-area:auto}.row .num{text-align:right}.row .num[data-label]:before{content:none}.row .num.diff:empty,.row .message:empty{display:block}.detail{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.detail .frame{grid-column:1/-1}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.dock{display:none}}@media (min-width:90rem){.tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}.live-head{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:1rem}.live-controls{flex:none;gap:.5rem;display:flex}.live-controls button{min-height:2.25rem;padding:.4rem .9rem;font-size:.85rem}body.watching{overflow:hidden}#live.watch{z-index:50;color:#e6edf0;background:#0d1418;flex-direction:column;gap:.75rem;padding:1rem 1.25rem 1.25rem;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}#live.watch .live-head h2,#live.watch .live-head .muted,#live.watch .watch-hint{color:#e6edf0;margin:0}#live.watch .live-head .muted,#live.watch .watch-hint{color:#9fb0b8}#live.watch .live-controls button{color:#e6edf0;background:0 0;border-color:#3a4a52}#live.watch .live-controls button:hover:not(:disabled){background:#1b262c;border-color:#56676f}#live.watch .tiles{flex:1;grid-template-columns:repeat(auto-fit,minmax(min(28rem,100%),1fr));grid-auto-rows:minmax(0,1fr);align-content:stretch;min-height:0}#live.watch .tile{cursor:zoom-in;background:#121c21;border-color:#223038;flex-direction:column;min-height:0;display:flex}#live.watch .tile .view{aspect-ratio:auto;object-fit:contain;background:#000;flex:1;width:100%;height:100%;min-height:0}#live.watch .tile figcaption{color:#9fb0b8;border-top-color:#223038}#live.watch .tiles:has(.tile.focus){flex-direction:column;display:flex}#live.watch .tile.focus{cursor:zoom-out;flex:1 1 0;min-height:0}#live.watch .watch-strip{flex:none;gap:.75rem;padding-bottom:.25rem;display:flex;overflow-x:auto}#live.watch .watch-strip .tile{opacity:.85;flex:none;width:max(9rem,min(15vw,15rem));display:block}#live.watch .watch-strip .tile .view{aspect-ratio:16/10;flex:none;height:auto}#live.watch .watch-strip .tile:hover{opacity:1}#live.watch .watch-strip .tile figcaption,#live.watch .watch-strip .tile .fps{display:none}#live.watch .tile .view{object-position:center}#live.watch #live-frame,#live.watch .videos{display:none}#live:-webkit-full-screen{padding:1rem}#live:fullscreen{padding:1rem}@media (max-width:59.99rem){.menu{display:inline-block}.layout{padding-bottom:6rem}.rail{inset:var(--topbar-height)0 0 0;z-index:15;box-shadow:none;border:0;border-radius:0;transition:transform .2s ease-out;position:fixed;overflow:auto;transform:translate(-100%)}.layout.rail-open .rail{transform:none}.layout.rail-open .scrim{inset:var(--topbar-height)0 0 0;z-index:10;background:rgb(var(--shadow-color-rgb)/.3);display:block;position:fixed}.rail .progress{display:none}}@media (prefers-reduced-motion:reduce){html,.rail,button{transition:none}}