:root{--ink:#222036;--muted:#777386;--paper:#fbfaf8;--purple:#7551b5;--blue:#3c87b2;--line:#e5e1eb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Avenir Next",Avenir,"Trebuchet MS",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.preview-note{background:#eae6f2;padding:8px 20px;text-align:center;font-size:10px;letter-spacing:1.5px}.preview-note span{margin-left:14px;letter-spacing:.2px;color:#655d73}header{height:78px;max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 50px;border-bottom:1px solid var(--line)}.wordmark{font-weight:800;font-size:23px;letter-spacing:-1px}.wordmark sup{font-size:.55em}.mark-dot{display:inline-block;width:7px;height:7px;background:var(--purple);border-radius:50%;margin:0 0 2px 8px}nav{display:flex;gap:30px;font-size:13px;color:#686372}nav a:hover,.paper-link:hover{color:var(--purple)}.paper-link{font-size:13px}main{max-width:1220px;margin:auto;padding:0 40px}.hero{text-align:center;padding:65px 0 45px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--purple);margin:0 0 20px}.hero h1{font-size:clamp(68px,9vw,116px);letter-spacing:-7px;line-height:1;margin:0 0 20px;font-weight:800}.hero h1 sup{font-size:.48em;vertical-align:super;letter-spacing:-2px;color:var(--purple)}.hero h2{font-weight:500;font-size:clamp(22px,3vw,33px);line-height:1.3;margin:0;letter-spacing:-.6px}.hero-summary{font-size:17px;line-height:1.7;max-width:760px;margin:25px auto;color:#5f596d}.hero-summary span{color:var(--purple)}.authors{font-size:13px;line-height:1.9;margin:24px 0 5px}.authors sup,.affiliations sup{font-size:9px}.affiliations{font-size:11px;color:var(--muted);line-height:1.8;margin:0}.hero-actions{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:27px}.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:6px;font-size:12px;font-weight:600}.primary{background:var(--ink);color:#fff}.primary:hover{background:var(--purple)}.secondary{border:1px solid var(--line);background:#fff}.code-label{font-size:11px;color:var(--muted);padding:0 10px}.featured{display:grid;grid-template-columns:1fr 1fr;gap:18px}.featured-task{position:relative;overflow:hidden;border-radius:10px;height:290px;background:#25222d}.featured-task img{width:100%;height:100%;object-fit:cover;transition:transform .6s;image-rendering:auto}.featured-task:hover img{transform:scale(1.04)}.featured-overlay{position:absolute;inset:0;background:linear-gradient(transparent 20%,rgba(22,19,32,.86));display:flex;flex-direction:column;justify-content:flex-end;padding:27px;color:#fff}.tiny-label{font-size:9px;letter-spacing:1.7px;color:#ded3f7}.featured h3{font-size:30px;letter-spacing:-1px;margin:10px 0 5px}.featured p{font-size:12px;margin:0 0 13px;color:#e1dce7}.media-label{font-size:9px;letter-spacing:.5px;color:#d5cadd}.corner-arrow{position:absolute;right:24px;top:22px;color:white;font-size:24px}.metric-strip{display:grid;grid-template-columns:1fr 1fr 1fr;padding:35px 0;border-bottom:1px solid var(--line);text-align:center}.metric-strip>div+div{border-left:1px solid var(--line)}.metric-strip strong{font-size:42px;letter-spacing:-2px;font-weight:600}.metric-strip strong span{font-size:19px;letter-spacing:-.5px;color:var(--purple)}.metric-strip p{font-size:11px;color:var(--muted);margin:8px 8px 0}.section{padding:85px 0;border-bottom:1px solid var(--line)}.section-heading{max-width:720px;margin-bottom:32px}.section-heading h2{font-family:Georgia,serif;font-size:44px;font-weight:400;letter-spacing:-1.6px;line-height:1.12;margin:0 0 20px}.section-intro{font-size:15px;line-height:1.8;color:#726c7c;margin:0;max-width:590px}.horizontal{max-width:none;display:flex;align-items:flex-end;justify-content:space-between;gap:50px}.horizontal .section-intro{max-width:380px;margin-bottom:20px}.paper-figure{margin:0;background:#fff;border:1px solid var(--line);padding:22px;border-radius:8px}.figure-open{display:block;background:#fff;border:0;width:100%;padding:0;position:relative}.figure-open img{width:100%;display:block}.figure-open>span{position:absolute;right:0;bottom:0;background:#fff;padding:8px 12px;font-size:10px;color:var(--purple);box-shadow:0 0 0 1px var(--line);border-radius:4px}figcaption{font-size:11px;line-height:1.6;color:var(--muted);margin-top:18px}.benefits{display:flex;justify-content:space-between;gap:15px;margin-top:25px;font-size:11px}.benefits span{margin-right:9px;color:var(--purple);font-size:10px}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:22px}.gallery-toolbar button{border:0;background:transparent;padding:12px 18px;color:var(--muted);border-radius:5px;font-size:13px}.gallery-toolbar button.active{background:var(--ink);color:white}.gallery-toolbar button span{margin-left:9px;opacity:.65;font-size:10px}.gallery-note{font-size:10px;color:var(--muted)}.gallery-feature{display:grid;grid-template-columns:1.25fr 1fr;background:#efecf3;overflow:hidden;border-radius:8px;min-height:320px}.gallery-feature>img{width:100%;height:100%;object-fit:cover;max-height:365px}.gallery-caption{padding:34px}.gallery-caption h3{font-size:32px;letter-spacing:-1px;margin:0 0 14px}.gallery-caption>p:not(.eyebrow){font-size:13px;line-height:1.7;color:#766c83}.video-placeholder{border:1px dashed #c4b7d6;padding:16px;margin:24px 0 15px;font-size:12px;line-height:1.7;color:#665078}.video-placeholder small{font-size:10px;color:var(--muted)}.slot-status{font-size:10px!important}.gallery-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:18px}.recording{border:1px solid var(--line);background:#fff;border-radius:5px;padding:0;overflow:hidden;text-align:left}.recording[aria-pressed=true]{border-color:var(--purple);box-shadow:0 0 0 1px var(--purple)}.recording-top{aspect-ratio:16/9;background:#e8e4ed;display:flex;justify-content:center;align-items:center;color:#b3a7c6;font-size:22px}.recording-bottom{padding:11px;display:flex;justify-content:space-between;align-items:center;gap:4px;font-size:10px}.recording-bottom small{color:var(--muted);font-size:9px}.footnote{font-size:10px;line-height:1.7;color:var(--muted);margin-top:16px}.method-steps{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}.method-steps article{padding:28px;border-radius:8px;position:relative}.repair{background:#eaf3f9}.reject{background:#eee8f6}.step-number{position:absolute;right:24px;top:20px;font-family:Georgia,serif;font-size:50px;opacity:.13}.method-steps h3{font-size:22px;margin:0 0 15px;letter-spacing:-.5px}.method-steps p{font-size:13px;line-height:1.85;color:#71697a;max-width:430px}.step-tag{display:block;font-size:10px;font-weight:600;color:var(--purple);margin-top:23px}.results-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.result-chart{background:white;border:1px solid var(--line);padding:30px;border-radius:8px}.result-chart h3{font-size:22px;margin:0 0 8px}.chart-subtitle{font-size:11px;color:var(--muted);margin:0 0 28px}.bar-row{margin:20px 0}.bar-row>div:first-child{display:flex;justify-content:space-between;font-size:11px;gap:10px;margin-bottom:9px}.bar-row strong{font-size:11px}.track{height:10px;background:#f1eef5;border-radius:2px;overflow:hidden}.track span{display:block;height:100%;background:#c4b1de}.ours{color:var(--purple);font-weight:700}.ours .track span{background:var(--purple)}.result-highlight{background:var(--ink);color:white;border-radius:8px;padding:34px;display:flex;flex-direction:column;justify-content:center}.result-highlight .eyebrow{color:#cbb6ef}.result-highlight>strong{font-size:80px;line-height:1.2;font-weight:500;letter-spacing:-4px}.result-highlight>strong span{font-size:38px;color:#cbb6ef}.result-highlight>p:not(.eyebrow){font-size:13px;line-height:1.8;color:#c9c2d5;max-width:320px}.comparison{border-top:1px solid #51495f;display:flex;justify-content:space-between;padding-top:18px;margin-top:14px;font-size:12px}.result-highlight .footnote{font-size:10px!important;margin-top:25px}.qualitative{margin-top:22px}.qualitative summary{display:flex;justify-content:space-between;padding:20px 0;cursor:pointer;font-size:13px}.qualitative summary span{font-size:10px;color:var(--purple)}.citation{text-align:center;padding:65px 0}.citation h2{font-size:58px;letter-spacing:-2px;margin:0 0 15px}.citation>p:not(.eyebrow):not(.footnote){font-size:16px;margin-bottom:25px}footer{max-width:1220px;display:flex;align-items:center;justify-content:space-between;margin:auto;padding:30px 40px 45px}footer p,footer>a:last-child{font-size:11px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:10px;width:min(1300px,95vw);max-height:90vh;padding:50px 20px 20px;background:white}dialog::backdrop{background:#171322bd}dialog img{display:block;width:100%}.dialog-close{position:absolute;right:20px;top:12px;border:0;background:#eee8f6;padding:8px 15px;border-radius:4px;font-size:12px}@media(max-width:760px){header{padding:0 20px;height:65px}nav{gap:12px;font-size:10px}.paper-link{display:none}main{padding:0 20px}.hero{padding-top:45px}.hero h1{letter-spacing:-4px}.hero-summary{font-size:16px}.hero-actions{flex-wrap:wrap}.code-label{width:100%}.featured{gap:10px}.featured-task{height:220px}.featured-overlay{padding:17px}.featured h3{font-size:24px}.featured p{display:none}.tiny-label{font-size:8px}.metric-strip strong{font-size:30px}.metric-strip strong span{font-size:13px}.metric-strip p{font-size:9px;line-height:1.5}.section{padding:55px 0}.section-heading h2{font-size:36px}.horizontal{display:block}.horizontal .section-intro{max-width:none}.paper-figure{padding:10px}.benefits{flex-direction:column;gap:0}.gallery-toolbar{align-items:flex-start;gap:12px;flex-direction:column}.gallery-feature{grid-template-columns:1fr}.gallery-feature>img{height:220px}.gallery-caption{padding:24px}.gallery-grid{grid-template-columns:repeat(3,1fr)}.method-steps,.results-grid{grid-template-columns:1fr}.qualitative summary{gap:15px}.qualitative summary span{white-space:nowrap}footer{padding:30px 20px;flex-wrap:wrap;gap:12px}.preview-note span{display:block;margin:5px 0 0;font-size:9px}.result-highlight>strong{font-size:70px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.featured-task img{transition:none}}

/* Citation block */
.bibtex-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.bibtex-heading h2{font-family:Georgia,serif;font-size:42px;font-weight:400;margin:0}
.bibtex-section pre{background:#eeeaf3;border:1px solid var(--line);border-radius:8px;padding:28px;overflow-x:auto;margin:0;font-size:16px;line-height:1.7}
.bibtex-section code{font-family:Menlo,Consolas,monospace}
#copy-status{min-height:24px;font-size:15px;color:var(--purple);margin:12px 0 0}
@media(max-width:600px){nav{gap:8px;font-size:14px}.bibtex-heading h2{font-size:34px}.bibtex-heading .button{font-size:15px;padding:11px 15px}.bibtex-section pre{padding:18px;font-size:13px}}

/* Shared paper wordmark asset */
.wordmark{display:inline-flex;align-items:center}.wordmark img{display:block;width:114px;height:auto}.hero h1.hero-logo{margin:-16px 0 12px;line-height:0}.hero-logo img{display:block;width:min(480px,85%);height:auto;margin:auto}@media(max-width:760px){.wordmark img{width:88px}.hero h1.hero-logo{margin:-8px 0 16px}.hero-logo img{width:min(350px,90%)}}

/* Readable research-page typography and persistent navigation */
html{scroll-padding-top:100px}
header{position:sticky;top:0;z-index:20;max-width:none;height:84px;padding:0 max(32px,calc((100vw - 1480px)/2));background:rgba(251,250,248,.96);backdrop-filter:blur(12px)}
nav{gap:30px;font-size:18px;font-weight:500}
.paper-link{font-size:18px;font-weight:600;padding:10px 18px;border:1px solid var(--line);border-radius:8px}
main{max-width:1520px;padding:0 40px}
.hero{padding:38px 0 48px}
.hero-logo img{width:min(440px,70%)}
.hero h2{font-size:clamp(30px,3.1vw,46px);font-weight:600;line-height:1.25;letter-spacing:-1px;text-wrap:balance}
.hero-summary{font-size:22px;line-height:1.65;max-width:1120px;margin:28px auto}
.authors{font-size:22px;line-height:1.8;margin:26px 0 8px;text-wrap:balance}
.affiliations{font-size:19px;line-height:1.8;text-wrap:balance}
.authors sup,.affiliations sup{font-size:.65em}
.corresponding-note{margin-top:8px;font-size:16px}
.button{font-size:18px;padding:13px 25px}
.eyebrow{font-size:18px;letter-spacing:1.4px}
.section-intro{font-size:19px;line-height:1.7}
.horizontal .section-intro{max-width:480px}
.section-heading{max-width:900px}
.section-heading h2{font-size:48px}
.tiny-label{font-size:14px}
.featured p{font-size:17px}
.media-label{font-size:18px;font-weight:700;color:white}
.metric-strip p{font-size:16px}
figcaption,.footnote{font-size:15px}
.figure-open>span{font-size:15px}
.gallery-toolbar button{font-size:20px}
.gallery-note{font-size:22px;font-weight:700;color:var(--ink);padding:8px 16px;border-radius:6px;background:#eee8f6}
.method-steps h3,.result-chart h3{font-size:28px}
.method-steps p{font-size:18px;max-width:none;line-height:1.7}
.step-tag{font-size:16px}
.chart-subtitle{font-size:16px}
.bar-row>div:first-child,.bar-row strong{font-size:17px}
.result-highlight>p:not(.eyebrow){font-size:18px;max-width:none}
.result-highlight .footnote{font-size:15px!important}
.comparison{font-size:18px}
.qualitative summary{font-size:20px}
.qualitative summary span{font-size:16px}
footer p,footer>a:last-child{font-size:16px}
@media(min-width:1400px){.hero h2,.authors,.affiliations{white-space:nowrap}}
@media(max-width:900px){header{padding:0 20px;gap:16px}nav{gap:16px;font-size:16px}.paper-link{font-size:16px}main{padding:0 24px}.authors{font-size:20px}.affiliations{font-size:17px}.horizontal{display:block}}
@media(max-width:600px){header{height:auto;min-height:76px;flex-wrap:wrap;padding:12px 16px;gap:10px}.wordmark img{width:85px}nav{order:3;width:100%;justify-content:space-between;font-size:15px;gap:12px}.paper-link{display:block;margin-left:auto;padding:6px 12px}.hero{padding-top:30px}.hero h2{font-size:30px}.hero-summary{font-size:19px}.authors{font-size:18px}.affiliations{font-size:16px}.eyebrow{font-size:16px}.section-heading h2{font-size:36px}.section-intro{font-size:18px}.metric-strip p{font-size:13px}.media-label{font-size:17px}.gallery-note{font-size:19px}.gallery-toolbar{flex-direction:row;align-items:center}.gallery-toolbar button{font-size:17px}.bar-row>div:first-child,.bar-row strong{font-size:15px}.qualitative summary{font-size:18px}}

.figure-open img{height:auto}
.results-subheading,.feedback-analysis>h3{font-size:30px;line-height:1.3;margin:0 0 24px}
.simulation-analysis,.result-takeaway{font-size:19px;line-height:1.75;color:#5f596d;max-width:1100px;margin:24px 0 0}
.feedback-analysis{margin-top:48px;padding:40px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.feedback-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;column-gap:32px}
.feedback-grid article{display:grid;grid-row:span 3;grid-template-rows:subgrid;min-width:0}
.feedback-grid h4{font-size:23px;line-height:1.4;margin:0 0 12px}
.feedback-grid p{font-size:18px;line-height:1.65;color:#5f596d;margin:0 0 20px}
.feedback-grid table{width:100%;border-collapse:collapse;font-size:17px;font-variant-numeric:tabular-nums}
.feedback-grid caption{text-align:left;font-size:15px;color:var(--muted);padding-bottom:10px}
.feedback-grid th,.feedback-grid td{text-align:right;padding:13px 10px;border-bottom:1px solid var(--line)}
.feedback-grid th:first-child{text-align:left;padding-left:0;font-weight:500}
.feedback-grid thead th{font-size:15px;color:var(--muted);font-weight:600}
.feedback-grid .ours{background:#eee8f6}
.feedback-grid .ours th:first-child{padding-left:10px;font-weight:600}
@media(max-width:760px){.feedback-grid{grid-template-columns:1fr;grid-template-rows:none;gap:30px}.feedback-grid article{display:block;grid-row:auto}.feedback-analysis{padding:30px 0}.feedback-grid table{font-size:15px}.feedback-grid th,.feedback-grid td{padding:12px 6px}.feedback-grid thead th{font-size:14px}}
@media(max-width:600px){.results-subheading,.feedback-analysis>h3{font-size:26px}.simulation-analysis,.result-takeaway{font-size:18px}}
.real-world-analysis{margin-top:48px}
.real-world-analysis h3{font-size:30px;line-height:1.3;margin:0 0 20px}
.real-world-analysis>p{font-size:19px;line-height:1.75;color:#5f596d;max-width:1100px;margin:20px 0 28px}
@media(max-width:600px){.real-world-analysis h3{font-size:26px}.real-world-analysis>p{font-size:18px}}

.shared-objective{font-size:19px;line-height:1.7;color:#5f596d;margin:0 0 30px}
.horizontal>div{flex-shrink:0}
@media(min-width:900px){.horizontal h2{white-space:nowrap}.horizontal .section-intro{flex:1;min-width:0}}
@media(max-width:600px){.shared-objective{font-size:18px}}

.demos .gallery-toolbar{position:relative;display:block;padding-top:12px}
.demos .gallery-toolbar [role=tablist]{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.demos .gallery-toolbar [role=tab]{justify-self:start}
.demos .gallery-note{position:absolute;right:0;top:12px}
@media(max-width:760px){.demos .gallery-toolbar [role=tablist]{gap:10px}.demos .gallery-note{position:static;display:block;width:max-content;margin:12px 0 0 auto}}

/* Six-trial video galleries */
/* Keep playback controls below the image, never over the lower trial row. */
.demo-player{width:min(calc(100% + 80px),calc(100vw - 48px),1640px);margin-left:50%;transform:translateX(-50%)}
.video-controls{display:flex;align-items:center;gap:18px;min-height:72px;padding:12px 22px;background:#fff;color:var(--ink);border-top:1px solid var(--line)}
.video-controls[hidden]{display:none}
.video-controls button{flex-shrink:0;min-width:64px;min-height:44px;border:0;border-radius:6px;background:#eee8f6;color:var(--ink);font-size:16px;font-weight:600}
.video-controls button:hover{background:#e1d7ef}
.video-controls input{flex:1;min-width:0;accent-color:var(--purple);cursor:pointer}
.video-controls output{font-size:16px;font-variant-numeric:tabular-nums;white-space:nowrap}
#video-fullscreen{min-width:44px;font-size:28px}
.demo-player:fullscreen{width:100%;height:100%;margin:0;transform:none;display:flex;flex-direction:column;justify-content:center;background:#17151e}
.demo-player:fullscreen video{min-height:0;flex:1;width:100%;height:calc(100% - 72px);aspect-ratio:auto;object-fit:contain}
.demo-player:fullscreen .video-controls{flex-shrink:0}
@media(max-width:900px){.demo-player{width:100%;margin-left:0;transform:none}}
@media(max-width:600px){.video-controls{gap:10px;min-height:64px;padding:10px}.video-controls button{min-width:54px;font-size:14px}.video-controls output{font-size:13px}}
.demo-player{background:#222036;border-radius:8px;overflow:hidden}.demo-player video{display:block;width:100%;aspect-ratio:8/3}.video-meta{display:flex;justify-content:space-between;gap:25px;margin-top:22px}.video-meta h3{margin:0;font-size:24px;letter-spacing:-.5px}.video-meta .eyebrow{font-size:9px;margin-bottom:10px}.video-meta>p{font-size:12px;line-height:1.8;color:var(--muted);max-width:340px;margin:0}.gallery-grid{grid-template-columns:repeat(4,1fr)}.recording img{display:block;width:100%;aspect-ratio:8/3;object-fit:cover}.recording-bottom{font-size:12px;padding:13px}.gallery-grid.clean-groups{grid-template-columns:minmax(0,280px)}@media(max-width:760px){.gallery-grid{grid-template-columns:repeat(2,1fr)}.video-meta{display:block}.video-meta>p{margin-top:13px}.recording-bottom{font-size:11px}.gallery-toolbar button{padding:12px}.gallery-toolbar button span{font-size:9px;margin-left:4px}}
