:root{color-scheme:light;--ink:#30343b;--muted:#6c727b;--accent:#296aa0;--line:#e5e7eb}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font:17px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #5498ce;outline-offset:4px}.wrap{max-width:1060px;margin:auto;padding:0 30px}.paper-header{max-width:1080px;margin:auto;text-align:center;padding:70px 26px 38px}h1{font-size:clamp(29px,3.4vw,44px);line-height:1.25;letter-spacing:-1.15px;font-weight:650;margin:0 0 28px}h2{font-size:29px;line-height:1.3;font-weight:600;letter-spacing:-.5px;margin:0 0 26px;text-align:center}h3{font-size:19px;font-weight:600;margin:0 0 9px}p{margin:0 0 20px}.actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.button,button{font:inherit;font-size:14px;line-height:1.4;border:1px solid #d9dde2;background:#fff;color:var(--ink);border-radius:5px;padding:9px 17px;cursor:pointer;text-decoration:none}.button:hover,button:hover{background:#f4f6f8;text-decoration:none}.button.primary{background:#343a42;border-color:#343a42;color:white}.primary:hover{background:#454e59}section{padding:45px 0;border-top:1px solid var(--line);scroll-margin-top:25px}section>p{max-width:830px;margin-left:auto;margin-right:auto}figure{margin:28px 0 30px}img{display:block;width:100%;height:auto}figcaption{font-size:14px;line-height:1.6;color:var(--muted);margin:14px auto 0;text-align:center;max-width:850px}.teaser{margin:8px 0 44px}.abstract{max-width:830px;margin:auto;border-top:0;padding:20px 0 44px}.abstract p{text-align:justify;font-size:16px;line-height:1.85}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:30px 0 0}.card p{font-size:15px;line-height:1.7;margin-bottom:0}.equation{background:#f7f8fa;border-radius:4px;text-align:center;padding:20px 12px;margin:25px 0;font:20px/1.8 Georgia,serif;overflow-wrap:anywhere}.scroll{overflow:auto;max-width:100%;margin:26px 0 12px}table{border-collapse:collapse;width:100%;font-size:14px;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;border-top:2px solid #707781;border-bottom:2px solid #707781}th,td{padding:12px 13px;border-bottom:1px solid var(--line)}th{font-weight:600;background:#f6f7f8;color:#444b55}th:first-child,td:first-child{text-align:left}.ours{background:#f0f5f9}.ours td:nth-child(2){font-weight:600}.source{font-size:13px;color:var(--muted)}.tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:25px 0}button[aria-selected=true],button[aria-pressed=true]{background:#edf4f9;border-color:#6795b8;color:#205c88}.video-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.video-pair video{display:block;width:100%;aspect-ratio:16/9;background:#f1f3f5;border-radius:3px}.video-label{display:flex;justify-content:space-between;align-items:center;font-size:14px;margin-bottom:8px}.video-label span:last-child,.video-label b:last-child{font-weight:400;color:var(--muted);font-size:12px}.video-label b:first-child{font-weight:600;color:var(--accent)}.player-tools{display:flex;align-items:center;gap:12px;margin:16px 0 24px}.player-tools button{padding:7px 12px;white-space:nowrap}.player-tools input{min-width:40px;flex:1;accent-color:var(--accent)}.clock{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.sample-picks{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.sample-picks button{padding:4px;border-radius:4px;overflow:hidden;background:white}.sample-picks button img{aspect-ratio:16/9;object-fit:cover;border-radius:2px}.sample-picks button span{display:block;font-size:12px;padding:7px 2px 3px}.sample-picks button[aria-pressed=true]{border-color:var(--accent);background:#edf4f9}.gallery-meta{text-align:center;color:var(--muted);font-size:13px;margin-top:15px}.player-status{font-size:14px;color:#a03636;text-align:center}.player-status:empty{margin:0}.benchmark-details{margin-top:30px;border-top:1px solid var(--line);padding-top:18px}.benchmark-details summary{cursor:pointer;font-size:16px;font-weight:500}footer.wrap{border-top:1px solid var(--line);text-align:center;padding-top:28px;padding-bottom:36px;font-size:13px;color:var(--muted)}[hidden]{display:none!important}@media(max-width:650px){.wrap{padding:0 20px}.paper-header{padding:45px 20px 28px}h1{letter-spacing:-.7px}h1 br{display:none}h2{font-size:25px}.abstract p{text-align:left}.teaser{margin-bottom:25px}section{padding:34px 0}.grid{grid-template-columns:1fr;gap:20px}.video-pair{grid-template-columns:1fr;gap:20px}.player-tools{flex-wrap:wrap;gap:9px}.player-tools input{flex-basis:40%}.sample-picks{grid-template-columns:repeat(2,1fr);gap:10px}th,td{padding:10px}figcaption{font-size:12px}.equation{font-size:16px}.button,button{font-size:13px}.gallery-meta{font-size:12px}}

/* Publication finish: retain the academic page's content geometry. */
:root {
  --ink: #293b4b;
  --muted: #62788a;
  --accent: #1675ad;
  --line: #dceaf4;
  --tint: #eaf6ff;
}
body {
  background: linear-gradient(180deg, #eaf6ff 0, #f7fbff 380px, #fff 760px) no-repeat;
  border-top: 4px solid var(--accent);
}
body.world { --accent: #1675ad; --tint: #eaf6ff; }
.paper-header { position: relative; }
.paper-header::before {
  content: "";
  display: block;
  width: 42px;
  height: 3px;
  background: #79c7f2;
  margin: -18px auto 23px;
}
h1 { color: #203d53; text-wrap: balance; }
.paper-name { color: var(--accent); }
h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  color: #294d66;
  letter-spacing: -.6px;
}
h2::after {
  content: "";
  display: block;
  width: 28px;
  height: 2px;
  background: #79c7f2;
  margin: 13px auto 0;
}
h3 { color: #315d7a; }
.button, button {
  border-color: #cddfed;
  border-radius: 7px;
  background: #ffffffd9;
  transition: background-color .15s, border-color .15s, box-shadow .15s;
}
.button:hover, button:hover {
  background: var(--tint);
  border-color: #84bee2;
}
.button.primary {
  background: var(--accent);
  border-color: var(--accent);
  box-shadow: 0 3px 8px #227db014;
}
.button.primary:hover { background: #11618f; border-color: #11618f; }
section { border-top-color: var(--line); }
figure > img {
  border: 1px solid #deebf5;
  border-radius: 9px;
  padding: 14px;
  background: white;
  box-shadow: 0 5px 22px #245d8806;
}
.teaser > img {
  padding: 20px;
  box-shadow: 0 12px 36px #246d9e0c, 0 1px 3px #246d9e05;
}
figcaption { color: #627b8c; }
.grid .card { border-top: 2px solid #add8f2; padding-top: 15px; }
.equation {
  background: var(--tint);
  border: 1px solid #d3e8f7;
  border-radius: 8px;
  color: #2c5b79;
}
.scroll { border: 1px solid var(--line); border-radius: 8px; }
table { border-top: 0; border-bottom: 0; background: #fff; }
th { background: #eff8fe; color: #365e7a; }
tbody tr:last-child td { border-bottom: 0; }
.ours { background: var(--tint); }
.ours td:nth-child(2) { color: var(--accent); }
.language table th:last-child, .language table td:last-child { background: var(--tint); color: var(--accent); font-weight: 600; }
.tabs { gap: 6px; }
.tabs button { background: #f3f9fe; border-color: transparent; }
button[aria-selected=true], button[aria-pressed=true] {
  background: var(--tint);
  color: var(--accent);
  border-color: #8dc7ed;
  box-shadow: inset 0 -2px 0 var(--accent);
}
.video-pair video { border: 1px solid #d2e5f3; border-radius: 8px; box-shadow: 0 5px 20px #246d9e0a; }
.video-label { padding: 0 2px 7px; border-bottom: 1px solid var(--line); }
.video-pair > div:last-child .video-label { border-bottom-color: #8dc7ed; }
.player-tools { background: #f1f8fe; padding: 10px 12px; border: 1px solid #dcecf7; border-radius: 8px; }
.sample-picks button { border-radius: 7px; }
.sample-picks button img { border-radius: 4px; }
.sample-picks button[aria-pressed=true] { background: var(--tint); border-color: var(--accent); }
.benchmark-details summary { color: var(--accent); }
footer.wrap { border-top-color: #d5e7f4; }
@media(max-width:650px) {
  .paper-header::before { margin-top: -8px; margin-bottom: 19px; }
  figure > img, .teaser > img { padding: 7px; border-radius: 6px; }
  .player-tools { padding: 10px; }
}
@media(prefers-reduced-motion:reduce) {
  .button, button { transition: none; }
}
