.bench{--bn-bone: #ffffff;--bn-night: #000000;--bn-ink: #121212;--bn-sub: rgba(0,0,0, .74);--bn-mut: rgba(0, 0, 0, .58);--bn-faint: rgba(0,0,0, .36);--bn-line: rgba(0,0,0, .16);--bn-line-strong: rgba(0,0,0, .3);--bn-acc: #121212;--bn-serif: "Charis SIL", Charter, "Bitstream Charter", Georgia, serif;--bn-sans: "Charis SIL", Charter, "Bitstream Charter", Georgia, serif;--bn-mono: ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--bn-ease: cubic-bezier(.16, 1, .3, 1);--app-bg: #fafafa;--app-surface: #ffffff;--app-ink: #161616;--app-sub: rgba(0,0,0, .68);--app-mut: rgba(0,0,0, .45);--app-line: rgba(0,0,0, .12);--app-line-strong: rgba(0,0,0, .24);--app-accent: #161616;--app-accent-ink: #ffffff;--app-ok: #2e6b3f;position:fixed;inset:0;z-index:var(--z-modal, 1100);display:flex;flex-direction:column;font-family:var(--bn-sans);color:var(--bn-ink)}.bench-scrim{position:absolute;inset:0;background:#000000b8;opacity:0;transition:opacity .25s var(--bn-ease)}.bench-stage{position:relative;margin:auto;width:min(1120px,calc(100vw - 48px));height:min(760px,calc(100dvh - 48px));background:var(--bn-bone);display:flex;flex-direction:column;box-shadow:0 32px 96px #0000008c,0 1px #000000a6;opacity:0;transform:translateY(16px);transition:opacity .28s var(--bn-ease),transform .28s var(--bn-ease)}.bench.is-open .bench-scrim{opacity:1}.bench.is-open .bench-stage{opacity:1;transform:translateY(0)}.bench-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;border-bottom:1px solid var(--bn-line-strong);flex:none}.bench-mn{font-family:var(--bn-serif);font-size:13px;letter-spacing:0;color:var(--bn-mut);line-height:1.7}.bench-mn b{color:var(--bn-ink);font-weight:600}.bench-mn .acc{color:var(--bn-acc)}.bench-controls{display:flex;gap:8px;flex:none}.bench-btn{font-family:var(--bn-serif);font-size:13px;letter-spacing:0;color:var(--bn-sub);background:var(--bn-bone);border:1px solid var(--bn-line);padding:6px 10px;cursor:pointer}.bench-btn:hover{color:var(--bn-ink);border-color:var(--bn-line-strong)}.bench-btn:focus-visible{outline:2px solid var(--bn-acc);outline-offset:1px}.bench-well{flex:1;min-height:0;padding:22px;display:flex;background:radial-gradient(90% 70% at 50% 30%,rgba(0,0,0,.045),transparent 70%)}.bench-well>*{flex:1;min-width:0}.bench-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-top:1px solid var(--bn-line-strong);flex:none}.bench-cta{font-family:var(--bn-serif);font-size:14px;letter-spacing:0;color:var(--bn-bone);background:var(--bn-ink);padding:10px 14px;text-decoration:none;white-space:nowrap}.bench-cta:focus-visible{outline:2px solid var(--bn-acc);outline-offset:2px}.bench-live{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.bench .app-frame{--bn-sans: "Geist", system-ui, sans-serif;--bn-mono: "Geist Mono", ui-monospace, monospace;background:var(--app-bg);border:1px solid var(--bn-line-strong);display:flex;flex-direction:column;font-family:var(--bn-sans);color:var(--app-ink);font-size:13.5px;line-height:1.55;overflow:hidden}.bench .app-titlebar{display:flex;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--app-line);background:var(--app-surface);flex:none}.bench .app-titlebar .dots{display:flex;gap:5px}.bench .app-titlebar .dots i{width:8px;height:8px;border-radius:50%;background:var(--app-line-strong);display:block}.bench .app-titlebar .name{font-family:var(--bn-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--app-mut)}.bench .app-main{flex:1;min-height:0;display:flex}.bench .app-main [data-lenis-prevent]{overscroll-behavior:contain}.bench .app-surface{background:var(--app-surface);border:1px solid var(--app-line)}.bench .app-btn{font-family:var(--bn-sans);font-size:12.5px;font-weight:560;letter-spacing:.01em;color:var(--app-ink);background:var(--app-surface);border:1px solid var(--app-line-strong);padding:8px 14px;cursor:pointer}.bench .app-btn.primary{background:var(--app-ink);color:var(--app-accent-ink);border-color:var(--app-ink)}.bench .app-btn:disabled{opacity:.45;cursor:not-allowed}.bench .app-btn:focus-visible{outline:2px solid var(--app-accent);outline-offset:1px}.bench .app-k{font-family:var(--bn-mono);font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--app-mut)}.bench .app-badge{display:inline-block;font-family:var(--bn-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--app-line-strong);padding:1px 6px;color:var(--app-sub)}.bench .app-badge.acc{color:var(--app-accent);border-color:var(--app-accent)}.bench .app-badge.ok{color:var(--app-ok);border-color:var(--app-ok)}.bench .app-stream{white-space:pre-wrap}.bench .app-stream.is-live:after{content:"";display:inline-block;width:7px;height:1em;vertical-align:text-bottom;background:var(--app-accent);margin-left:1px;animation:bench-caret .9s steps(1) infinite}@keyframes bench-caret{50%{opacity:0}}.bench .app-stage-row{display:flex;align-items:baseline;gap:10px;padding:7px 0;border-bottom:1px solid var(--app-line)}.bench .app-stage-row .st{flex:none;width:84px}.bench .app-stage-row[data-st=idle]{opacity:.45}.bench .app-stage-row[data-st=run] .st{color:var(--app-accent)}.bench .app-stage-row[data-st=done] .st{color:var(--app-ok)}@media(prefers-reduced-motion:reduce){.bench-scrim,.bench-stage{transition:none}.bench .app-stream.is-live:after{animation:none}}.bench.is-reduced .bench-scrim,.bench.is-reduced .bench-stage{transition:none}.bench.is-reduced .app-stream.is-live:after{animation:none}.bench.is-reduced *,.bench.is-reduced *:before,.bench.is-reduced *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(max-width:767px){.bench-stage{width:100vw;height:100dvh}.bench-well{padding:12px}.bench-head,.bench-foot{padding:10px 14px}.bench-mn .opt{display:none}.bench-head{flex-direction:column;align-items:flex-start;gap:8px}.bench-head .bench-mn{white-space:nowrap}.bench-controls{width:100%}.bench-controls .bench-btn{flex:1;padding:6px 4px;text-align:center}.bench-foot{flex-direction:column;align-items:stretch;gap:10px}.bench-cta{text-align:center}}.bench{--bn-exc: #c00000;--bn-line-faint: rgba(0, 0, 0, .07)}.bench.has-story .bench-well{padding:20px;background:none}.bench-btn.is-idle{visibility:hidden}.bs-kicker,.bs-label{display:block;font-family:var(--bn-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--bn-mut)}.bs-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:11px 18px;font-family:var(--bn-serif);font-size:15px;line-height:1.2;color:var(--bn-ink);background:var(--bn-bone);border:1px solid var(--bn-ink);text-decoration:none;cursor:pointer;transition:background-color .18s var(--bn-ease),color .18s var(--bn-ease)}.bs-btn:hover,.bs-btn.is-primary{background:var(--bn-ink);color:var(--bn-bone)}.bs-btn.is-primary:after{content:"→";transition:transform .22s var(--bn-ease)}.bs-btn.is-primary:hover{background:var(--bn-night)}.bs-btn.is-primary:hover:after{transform:translate(3px)}.bs-btn.is-quiet{border-color:transparent;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--bn-line-strong)}.bs-btn.is-quiet:hover{background:none;color:var(--bn-ink);text-decoration-color:var(--bn-ink)}.bs-btn:focus-visible,.bs-act h2:focus-visible{outline:2px solid var(--bn-ink);outline-offset:3px}.bs-act h2:focus:not(:focus-visible),.bs-rail-focus:focus{outline:none}.bs-n{display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid var(--bn-line-strong);font-family:var(--bn-mono);font-size:12px;color:var(--bn-sub);flex:none}.bs-stamp{display:inline-block;font-family:var(--bn-serif);font-size:13px;line-height:1.4;padding:1px 7px;border:1px solid var(--bn-ink);color:var(--bn-ink)}.bs-stamp.is-estimate{border-color:var(--bn-line-strong);color:var(--bn-mut)}@keyframes bs-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes bs-fade{0%{opacity:0}}@keyframes bs-land{0%{opacity:0;transform:scale(1.12)}}.bs-act{flex:1;min-width:0;overflow-y:auto;overscroll-behavior:contain;animation:bs-rise .32s var(--bn-ease) both}.bs-brief{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:56px;align-items:center;padding:12px 36px}.bs-brief h2,.bs-result h2{font-family:var(--bn-serif);font-weight:400;font-size:clamp(30px,3.6vw,46px);line-height:1.08;letter-spacing:-.01em;color:var(--bn-ink);margin:14px 0 26px;max-width:19ch}.bs-before{border-left:2px solid var(--bn-ink);padding-left:18px;max-width:52ch}.bs-before p{margin-top:8px;font-family:var(--bn-serif);font-size:17px;line-height:1.6;color:var(--bn-sub)}.bs-start{margin-top:30px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.bs-start small{font-family:var(--bn-serif);font-size:13px;color:var(--bn-mut)}.bs-brief-steps{border-top:1px solid var(--bn-ink);padding-top:12px}.bs-brief-steps ol{list-style:none;margin-top:6px}.bs-brief-steps li{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--bn-line);font-family:var(--bn-serif);font-size:18px;color:var(--bn-ink)}.bs-brief-steps em{font-style:italic;color:var(--bn-mut)}.bs-run{display:grid;grid-template-columns:264px minmax(0,1fr);gap:20px;min-height:0}.bs-scene{min-width:0;min-height:0;display:flex}.bs-scene>*{flex:1;min-width:0}.bs-rail{display:flex;flex-direction:column;min-height:0;padding:4px 4px 0 0}.bs-rail-count{font-family:var(--bn-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--bn-mut);padding-bottom:10px;border-bottom:1px solid var(--bn-ink)}.bs-rail ol{list-style:none}@media(min-width:768px){.bs-rail ol{flex:0 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 4px 4px 0;margin:-4px -4px -4px 0}}.bs-rail li{padding:12px 0;border-bottom:1px solid var(--bn-line)}.bs-step{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;align-items:center;width:100%;padding:2px 0;background:none;border:0;text-align:left;cursor:pointer;transition:opacity .2s var(--bn-ease)}.bs-rail li[data-state=next] .bs-step{opacity:.45}.bs-rail li[data-state=next] .bs-step:hover{opacity:.8}.bs-step:hover strong{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--bn-line-strong)}.bs-step:focus-visible{outline:2px solid var(--bn-ink);outline-offset:3px}.bs-step strong{font-family:var(--bn-serif);font-weight:700;font-size:16px;line-height:1.35;color:var(--bn-ink)}.bs-rail li[data-state=active] .bs-n{background:var(--bn-ink);border-color:var(--bn-ink);color:var(--bn-bone)}.bs-rail li[data-state=done] .bs-n{border-color:var(--bn-ink);color:var(--bn-ink)}.bs-rail li p{margin:8px 0 0 38px;font-family:var(--bn-serif);font-size:15px;line-height:1.55;color:var(--bn-sub);animation:bs-fade .4s var(--bn-ease) both}.bs-rail li p.is-turn{color:var(--bn-ink);border-left:2px solid var(--bn-ink);padding-left:10px}.bs-rail-next{flex:none;margin-top:18px;animation:bs-rise .32s var(--bn-ease) both}@media(min-width:768px)and (max-height:820px){.bs-rail-count{padding-bottom:8px}.bs-rail li{padding:8px 0}.bs-step strong{font-size:15px;line-height:1.3}.bs-rail li p{margin-top:6px;font-size:14px;line-height:1.45}.bs-rail-next{margin-top:12px}}@media(min-width:768px)and (max-height:640px){.bs-rail li{padding:5px 0}.bs-rail li p{margin-top:4px}.bs-rail-next{margin-top:8px}}.bs-rail-title{display:none}.bs-rail-focus{display:block;width:0;height:0;overflow:hidden}.bs-cue{position:relative;outline:2px solid var(--bn-ink);outline-offset:3px}.bs-cue:after{content:"";position:absolute;inset:-3px;border:2px solid var(--bn-ink);pointer-events:none;animation:bs-pulse 1.6s var(--bn-ease) infinite}@keyframes bs-pulse{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.06,1.14)}}.bs-result{padding:8px 36px 20px}.bs-result h2{margin-bottom:14px;max-width:22ch}.bs-result-body{font-family:var(--bn-serif);font-size:17px;line-height:1.6;color:var(--bn-sub);max-width:62ch}.bs-figures{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.bs-figures li{border:1px solid var(--bn-line-strong);padding:16px 18px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;animation:bs-rise .4s var(--bn-ease) both}.bs-figures li:nth-child(2){animation-delay:.08s}.bs-figures li:nth-child(3){animation-delay:.16s}.bs-figures strong{font-family:var(--bn-serif);font-weight:400;font-size:40px;line-height:1;color:var(--bn-ink)}.bs-figures strong span{font-size:22px}.bs-figures p{font-family:var(--bn-serif);font-size:14px;line-height:1.5;color:var(--bn-sub);flex:1}.bs-figures .bs-stamp{animation:bs-land .36s var(--bn-ease) .35s both}.bs-pitch{border-top:1px solid var(--bn-line);padding-top:14px;max-width:70ch}.bs-pitch p{margin-top:6px;font-family:var(--bn-serif);font-size:16px;line-height:1.6;color:var(--bn-ink)}.bs-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px}@media(max-width:767px){.bench.has-story .bench-well{padding:12px}.bs-brief{grid-template-columns:minmax(0,1fr);gap:26px;align-items:start;padding:6px 4px}.bs-brief h2,.bs-result h2{font-size:30px;margin:10px 0 18px}.bs-before p,.bs-result-body{font-size:16px}.bs-start .bs-btn{width:100%}.bs-brief-steps li{font-size:16px;padding:10px 0}.bs-run{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:10px}.bs-rail{padding:0}.bs-rail-count{padding-bottom:6px}.bs-rail-title{display:inline;text-transform:none;letter-spacing:0;font-family:var(--bn-serif);font-size:14px;font-weight:700;color:var(--bn-ink)}.bs-rail ol{display:grid;grid-template-columns:repeat(4,40px) minmax(0,1fr);gap:0 6px;padding-top:8px}.bs-rail li{display:contents}.bs-step{grid-row:1;display:grid;place-items:center;width:40px;height:40px}.bs-step strong{display:none}.bs-rail li p{grid-row:2;grid-column:1 / -1;margin:8px 0 0;font-size:14px;line-height:1.45}.bs-rail-next{margin-top:6px;width:100%}.bs-result{padding:4px 4px 12px}.bs-figures{grid-template-columns:minmax(0,1fr);gap:10px;margin:18px 0}.bs-figures strong{font-size:32px}.bs-ctas .bs-btn{flex:1 1 100%}}@media(prefers-reduced-motion:reduce){.bs-act,.bs-rail li p,.bs-rail-next,.bs-figures li,.bs-figures .bs-stamp,.bs-cue:after{animation:none}.bs-cue:after{opacity:0}}.bench.is-reduced .bs-cue:after{opacity:0}
