:root{--bg:#151715;--bg-alt:#1b1e1b;--text:#f0eee7;--text-2:#b9beb4;--text-3:#929a8e;--maxw:1280px;--grad:linear-gradient(110deg,#e6dac0,#c0d2c6);--font-d:'Inter',sans-serif;--radius:18px}
body{font-family:var(--font-b);background:var(--bg)}
.bg-fx,.bg-grid{display:none}nav{background:rgba(21,23,21,.9);backdrop-filter:blur(18px)}
.nav-inner{max-width:var(--maxw)}.nav-logo{letter-spacing:-.6px}.nav-logo img{width:30px;height:30px}.nav-links a{font-size:12px}.nav-cta{background:#e5ddcc!important;color:#252b26!important;border:0!important;padding:9px 18px!important}
section{padding:100px 24px;scroll-margin-top:60px}.wrap{max-width:var(--maxw)}
h2{font-family:var(--font-b);font-size:clamp(30px,3.6vw,48px);font-weight:500;letter-spacing:-1.9px;line-height:1.14;text-align:left}
h2 em{font-family:var(--font-s);font-weight:400;color:#c7cebe;letter-spacing:-1px}.kicker{font:500 10px var(--font-m);letter-spacing:2px;text-align:left;color:#bac5b4;margin-bottom:24px}
#hero{padding:142px 24px 74px;text-align:left;overflow:hidden}.hero-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:32px;align-items:center}.hero-copy{padding:10px 0 26px}.eyebrow{font:500 10px var(--font-m);letter-spacing:1.4px;color:#b2c0ad;display:flex;align-items:center;gap:10px;margin-bottom:30px}.status-dot{height:6px;width:6px;border-radius:50%;background:#c1cdb5}
#hero h1{font:500 clamp(58px,6.8vw,94px)/.99 var(--font-b);letter-spacing:-6px;margin:0 0 28px;color:#f0eee7}#hero h1 em{font-family:var(--font-s);font-weight:400;color:#c8d5bd;letter-spacing:-4px}.hero-description{font-size:15px;line-height:1.9;color:#b7bcb3;max-width:400px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin:32px 0}.btn{font:500 12px var(--font-b);border-radius:7px;letter-spacing:0;padding:15px 21px}.btn.primary{background:#e6ddc8;color:#242c26;border:0;box-shadow:none}.btn.primary:hover{background:#f5eddc;transform:translateY(-2px)}.btn.primary span{margin-left:20px}.text-link{font-size:12px;color:#e0e2d9;display:flex;align-items:center;gap:9px}.text-link small{font:10px var(--font-m);color:#8b9788}.play-small{font-size:9px}.hero-proof{display:flex;gap:12px;align-items:center;font:9px var(--font-m);letter-spacing:1px;color:#82917e}.hero-proof i{height:3px;width:3px;border-radius:50%;background:#788570}
.hero-art{position:relative;border-radius:18px;overflow:hidden;min-width:0;background:#b9b3a4;box-shadow:0 28px 85px #0003}.hero-art>img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}.hero-art-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:18px 22px;color:#333b36;background:linear-gradient(transparent,#d1c8b8b8);font:8px var(--font-m);letter-spacing:1px}.hero-art-caption span:last-child{font:italic 12px var(--font-s);letter-spacing:0}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:36px}.section-heading h2{margin:0}.section-heading>p{max-width:390px;font-size:13px;line-height:1.9;color:var(--text-2);margin-bottom:3px}.section-intro{font-size:14px;color:var(--text-2);max-width:650px;margin:22px 0 32px;line-height:1.8}
#demo{padding-top:74px}.card.ws-viewer{border:1px solid #d2c8b626;box-shadow:0 20px 50px #0002;overflow:hidden}.viewer-shell{background:#b5b0a7 url('../images/studio-background.webp?v=paper-20260911') center/cover no-repeat}.ws-canvas{background:transparent;height:620px}.asset-heading{position:absolute;top:28px;left:30px;z-index:3;pointer-events:none;color:#343e39}.asset-heading>span{font:8px var(--font-m);letter-spacing:1.6px;opacity:.7}.asset-heading h3{font:500 24px var(--font-b);letter-spacing:-.8px;margin:5px 0}.viewer-hud{top:100px;left:28px}.hud-chip{color:#39423d;background:#f5f0e58f;border:1px solid #6d75672b;font:10px var(--font-m);padding:6px 11px}.input-reference{position:absolute;top:27px;right:28px;width:96px;z-index:3;padding:7px;background:#f7f5edc9;border:1px solid #f8f6edb8;border-radius:9px;box-shadow:0 3px 15px #343a3210}.input-reference img{display:block;width:80px;height:80px;object-fit:contain;border-radius:4px;background:#fff}.input-reference figcaption{font:7px var(--font-m);letter-spacing:1px;text-align:center;color:#667065;margin-top:7px}.input-reference[hidden]{display:none}
.viewer-tip{font:10px var(--font-b);color:#424b44;background:#f4efe1ac;border-color:#76786522;bottom:20px;padding:9px 16px;max-width:calc(100% - 26px);white-space:normal;text-align:center;line-height:1.5}.ws-tooltip{color:#eef1e9;background:#343f35eb;border-color:#fff2;font-size:11px}.viewer-bar{padding:20px;background:#1f241f;gap:20px;border:0}.viewer-ctrl{margin-left:auto;gap:12px}.ctrl-lbl{font-size:9px;color:#b8bfb0}.icon-btn{background:#ffffff08;border-color:#ffffff1c;color:#d2dacb;border-radius:7px}.icon-btn.on{background:#d8dccb;color:#283327}.explode{accent-color:#d9dfce}.ws-viewer[data-scenes='scenes'] .viewer-bar{flex-direction:column-reverse;align-items:stretch}.ws-viewer[data-scenes='scenes'] .viewer-ctrl{justify-content:flex-end;width:100%;padding-bottom:2px}.ws-viewer[data-scenes='scenes'] .scene-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;width:100%}.ws-viewer[data-scenes='scenes'] .scene-tab{padding:0 0 12px;background:#282e28;border:1px solid #ffffff09;border-radius:9px;overflow:hidden;text-align:left;transition:border-color .2s,transform .2s}.ws-viewer[data-scenes='scenes'] .scene-tab img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;background:#b9b3a6;margin-bottom:10px;opacity:.87;transition:opacity .2s}.ws-viewer[data-scenes='scenes'] .scene-tab span{display:block;color:#e8e9e0;font-size:11px;margin:0 11px 3px}.ws-viewer[data-scenes='scenes'] .scene-tab small{display:block;font:8px var(--font-m);color:#9fae99;margin:0 11px;letter-spacing:.2px}.ws-viewer[data-scenes='scenes'] .scene-tab.active{border-color:#c2ccb3;box-shadow:0 0 0 1px #c2ccb360}.ws-viewer[data-scenes='scenes'] .scene-tab.active img,.scene-tab:hover img{opacity:1}.scene-tab:hover{transform:translateY(-2px)}.scene-tab:focus-visible,.btn:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid #b9cfa6;outline-offset:4px}.ws-loader{background:#c8c2b585;backdrop-filter:blur(8px);text-align:center;padding:30px}.ws-loader-label{color:#3c483d;font:12px var(--font-b);letter-spacing:0}.ws-loader-bar{background:#33473322;height:3px}.ws-loader-fill{background:#5b7766}
#method .viewer-hud{top:20px;left:22px}#method .ws-canvas{height:520px}#method h2{margin:0}#method .fig-cap{font:13px/1.9 var(--font-b);text-align:left;color:#aeb7a7}
#showcase{background:#1c201c;border-block:1px solid #e8e0cc0c}.film-frame{overflow:hidden;border-radius:14px;border:1px solid #e9debd26;box-shadow:0 24px 65px #0004;background:#100d1b}.film-frame video{display:block;width:100%;aspect-ratio:1920/1088}.film-caption{display:flex;justify-content:space-between;gap:30px;margin:17px 0 50px}.film-caption>span{font:9px var(--font-m);letter-spacing:1px;color:#c6ceb9;white-space:nowrap}.film-caption i{font-style:normal;padding:0 8px;color:#64725e}.film-caption p{font-size:10px;color:#8e9a86;text-align:right;max-width:540px;line-height:1.8}.use-cases{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.use-cases>div{border-top:1px solid #d5dfc32b;padding-top:20px}.use-cases span{font:9px var(--font-m);letter-spacing:1px;color:#8f9f84}.use-cases h3{font:400 21px var(--font-s);margin:16px 0 10px;color:#dbe3ce}.use-cases p{font-size:12px;line-height:1.9;color:#a7b19e;max-width:320px}
#research{text-align:center;border-top:1px solid #fff1}#research h2,#research .kicker{text-align:center}#research h2{font-size:30px;margin:0 auto 34px;letter-spacing:-1px}#research .authors{font-size:13px;max-width:950px;line-height:2.2;margin:auto}#research .affil{font-size:10px;line-height:2;margin:16px auto 28px;color:#899782}#research .btn-row{justify-content:center}#results{border-top:1px solid #fff1}#results h2{margin-bottom:25px}#bibtex h2{text-align:center;font-size:32px}.res-note{font-family:var(--font-b);font-size:13px!important}.method-fig{margin-top:40px}.fig-cap{font-family:var(--font-b)}footer{padding:36px 24px}footer p{font-size:12px}.nav-links{gap:22px}
@media(min-width:1500px){#hero h1{font-size:100px}.hero-grid{gap:55px}}
@media(max-width:1000px){#hero{padding-top:120px}.hero-grid{gap:24px}#hero h1{font-size:68px;letter-spacing:-4px}.hero-description{font-size:13px}.hero-actions{gap:16px}.hero-proof{font-size:7px;gap:8px}.ws-viewer[data-scenes='scenes'] .scene-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.section-heading>p{max-width:300px}.nav-links{gap:17px}}
@media(max-width:700px){section{padding:65px 18px}#hero{padding:105px 18px 30px}.hero-grid{grid-template-columns:1fr;gap:14px}.hero-copy{padding-bottom:10px}#hero h1{font-size:65px;letter-spacing:-4px;line-height:1.02;margin-bottom:20px}#hero h1 br:nth-of-type(2){display:none}#hero h1 em{margin-left:8px}.eyebrow{margin-bottom:22px;font-size:8px}.hero-description{max-width:355px;font-size:13px}.hero-actions{margin:25px 0}.hero-proof{font-size:8px;gap:12px}.hero-art{max-height:440px}.hero-art>img{aspect-ratio:1.13;object-fit:cover}.hero-art-caption{font-size:6px;padding:14px}.hero-art-caption span:last-child{font-size:10px}.nav-links{display:flex;gap:14px}.nav-links a{font-size:10px}.nav-links a[href='#method'],.nav-links a[href='#results'],.nav-links a[href='#bibtex']{display:none}.nav-logo span{font-size:17px}.nav-inner{padding:0 18px}.section-heading{display:block;margin-bottom:26px}.section-heading>p{font-size:12px;margin-top:20px;max-width:100%}h2{letter-spacing:-1.2px}.kicker{font-size:8px;margin-bottom:18px}#demo{padding-top:40px}.ws-canvas{height:430px}#method .ws-canvas{height:420px}.asset-heading{top:20px;left:18px}.asset-heading h3{font-size:20px}.asset-heading>span{font-size:7px}.viewer-hud{top:85px;left:17px}.input-reference{top:17px;right:16px;width:68px;padding:5px}.input-reference img{width:56px;height:56px}.input-reference figcaption{font-size:5px;letter-spacing:.4px}.viewer-tip{font-size:8px;padding:7px 10px;bottom:12px}.viewer-bar{padding:13px;gap:14px}.ws-viewer[data-scenes='scenes'] .scene-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ws-viewer[data-scenes='scenes'] .scene-tab span{font-size:9px;margin:0 7px 3px}.ws-viewer[data-scenes='scenes'] .scene-tab small{font-size:6px;margin:0 7px}.ws-viewer[data-scenes='scenes'] .scene-tab{padding-bottom:9px}.ws-viewer[data-scenes='scenes'] .scene-tab img{margin-bottom:8px}.viewer-ctrl{gap:10px}.viewer-ctrl .explode{width:115px}.ctrl-lbl{font-size:8px}.film-caption{display:block;margin-bottom:32px}.film-caption p{text-align:left;font-size:10px;margin-top:12px}.use-cases{grid-template-columns:1fr;gap:22px}.use-cases h3{margin-top:12px}.use-cases p{max-width:100%}.scene-tab{font-size:11px;padding:8px 11px}.film-frame{border-radius:9px}#research h2{font-size:24px}#research .authors{font-size:11px}.btn{padding:13px 17px;font-size:11px}.text-link{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:700px){#hero h1 br:nth-of-type(2){display:initial}#hero h1 em{margin-left:0}.nav-links a[href='#demo'],.nav-links a[href='#showcase']{display:inline-block}}
.viewer-shell{scroll-margin-top:86px}
@media(max-width:700px){.nav-inner{gap:12px;padding:12px 18px}.nav-links{gap:12px;flex-wrap:nowrap;align-items:center}.nav-links a{padding:5px 0;font-size:10px}.nav-links .nav-cta{padding:8px 12px!important;margin-left:0}.nav-logo{gap:7px}.nav-logo img{width:25px;height:25px}.nav-logo span{font-size:16px}.viewer-shell{scroll-margin-top:76px}}
@media(max-width:380px){.nav-links a[href='#showcase']{display:none}}

/* Paper-first opening: title, authors and resources precede interactive results. */
#hero{padding:128px 24px 34px;text-align:center;background:#f8f7f3;color:#25322f}
#hero .paper-header{max-width:1100px}
#hero h1{font:500 clamp(26px,3.5vw,44px)/1.2 var(--font-b);letter-spacing:-1.3px;color:#263832;margin:0 auto 28px}
#hero h1 span{display:inline-block;font-size:1.3em;letter-spacing:-2px;margin-bottom:13px;color:#46776f}
#hero .authors{font-size:16px;line-height:2.1;color:#41534c;max-width:1000px}
#hero .authors a,#hero .authors sup{color:#415f56}
#hero .affil{font-size:13px;line-height:1.9;color:#65716c;margin:12px auto 25px}
#hero .btn-row{justify-content:center;gap:10px}
#hero .btn{background:#354b43;color:#fff;border:0;padding:12px 18px;border-radius:24px;font-size:13px}
#hero .btn small{font-size:10px;color:#d5dfda}
.paper-summary{max-width:810px;margin:32px auto 8px;font-size:17px;line-height:1.8;color:#53635b}
#demo{padding-top:52px}
@media(max-width:700px){#hero{padding:100px 18px 25px}#hero h1{font-size:27px;letter-spacing:-.8px}#hero h1 br:nth-of-type(2){display:block}#hero h1 span{letter-spacing:-1px}#hero .authors{font-size:13px;line-height:2}#hero .affil{font-size:11px}#hero .btn{padding:10px 13px;font-size:11px}.paper-summary{font-size:14px;margin-top:24px}#hero .btn-row{gap:8px}}

/* Warm graphite surrounds the unchanged yellow-gray paper studio. */
:root{--bg:#191918;--bg-alt:#20201e;--surface:rgba(239,228,209,.045);--surface-2:rgba(239,228,209,.08);--stroke:rgba(239,228,209,.11);--stroke-2:rgba(239,228,209,.21);--text:#f2efe9;--text-2:#b7b4ad;--text-3:#96928a;--accent-blue:#a9d8f4;--accent-pink:#efb6d5;--brand-grad:linear-gradient(110deg,#efb6d5 5%,#d2c7ed 48%,#a9d8f4 95%);--violet:#fff;--cyan:#fff;--pink:#fff;--grad:linear-gradient(100deg,#fff,#fff);--grad-soft:linear-gradient(100deg,rgba(255,255,255,.10),rgba(255,255,255,.07))}
nav{background:rgba(25,25,24,.88);border-color:var(--stroke)}.nav-logo img{filter:invert(1) brightness(1.4)}.nav-cta{background:#e9e1d3!important;color:#242420!important}.nav-links a{color:var(--text-2)}.nav-links a:hover{color:var(--text)}
#hero,#demo{background:var(--bg);color:var(--text)}#hero h1,#hero h1 span,#hero .authors a,#hero .authors sup{color:var(--text)}#hero .authors,#hero .affil,.paper-summary{color:var(--text-2)}
#hero .btn{background:var(--surface);border:1px solid var(--stroke-2);color:var(--text)}#hero .btn small{color:var(--text-2)}#hero a.btn:hover{background:var(--surface-2);border-color:rgba(255,255,255,.3)}#hero .resource-soon{cursor:default;opacity:1;transform:none;box-shadow:none}
.section-heading>p,.section-intro,.kicker,#method .fig-cap{color:var(--text-2)}h2 em{color:var(--text)}
.card.ws-viewer{border:1px solid #bdb3a0;box-shadow:0 20px 60px #0002;background:#d6cbbb;padding:8px}.viewer-shell{background-color:#ead9b8}
.viewer-bar{background:#282824;border-radius:0 0 10px 10px;border-top:1px solid #cfc1a74d}.ctrl-lbl{color:var(--text-2)}.icon-btn{color:var(--text);background:var(--surface);border-color:var(--stroke-2)}.icon-btn.on{background:var(--text);color:var(--bg)}.explode{accent-color:var(--accent-blue)}.ws-tooltip{background:rgba(25,25,24,.96);color:#f2efe9;border-color:#d6cbbb66}
.ws-viewer[data-scenes='scenes'] .scene-tab{background:var(--surface);border-color:var(--stroke)}.ws-viewer[data-scenes='scenes'] .scene-tab span{color:var(--text)}.ws-viewer[data-scenes='scenes'] .scene-tab small{color:var(--text-2)}.ws-viewer[data-scenes='scenes'] .scene-tab img{opacity:1}.ws-viewer[data-scenes='scenes'] .scene-tab.active{border-color:var(--accent-blue);box-shadow:0 0 0 1px #a9d8f440;background:rgba(169,216,244,.07)}
#showcase{background:var(--bg-alt);border-color:var(--stroke)}.film-frame{border-color:var(--stroke-2);background:var(--bg)}.film-caption>span,.film-caption p,.use-cases span,.use-cases p{color:var(--text-2)}.film-caption i{color:var(--text-3)}.use-cases>div{border-color:var(--stroke-2)}.use-cases h3{color:var(--text)}
#results{border-color:var(--stroke)}.scene-tab:focus-visible,.btn:focus-visible,button:focus-visible,a:focus-visible{outline-color:#eef0f4}

#hero .authors{display:flex;flex-wrap:wrap;justify-content:center;column-gap:15px;row-gap:3px}#hero .authors .author{white-space:nowrap;display:inline-block}#hero .authors .author sup{font-size:.7em;margin-left:2px}@media(max-width:700px){#hero .authors{column-gap:12px;row-gap:3px}}

/* The pink-blue accent belongs to the name and selected controls. */
#hero h1 span,.nav-logo span{background:var(--brand-grad);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
#hero h1 span{filter:drop-shadow(0 0 22px rgba(169,216,244,.09))}
.card.ws-viewer .viewer-shell{border-radius:10px 10px 0 0;overflow:hidden}
#hero a.btn:hover{border-color:var(--accent-blue)}
.scene-tab:focus-visible,.btn:focus-visible,button:focus-visible,a:focus-visible{outline-color:var(--accent-blue)}
@media(max-width:700px){.card.ws-viewer{padding:5px}.card.ws-viewer .viewer-shell{border-radius:12px 12px 0 0}}
@media(forced-colors:active){#hero h1 span,.nav-logo span{background:none;color:CanvasText;-webkit-text-fill-color:CanvasText;filter:none}}

/* A continuous warm, light surface throughout the interactive gallery. */
:is(#demo,#method) .ws-viewer{--text:#3f403b;--text-2:#66655d;--text-3:#747168;--surface:#f2ebdf;--surface-2:#e8dece;--stroke:#cfc4b2;--stroke-2:#b9ad98}
:is(#demo,#method) .ws-viewer .viewer-bar{background:#e4dac9;border-top-color:#c9bda8}
:is(#demo,#method) .ws-viewer .icon-btn{background:#f4eee4;color:#4b504b;border-color:#c1b7a5}
:is(#demo,#method) .ws-viewer .icon-btn:hover{background:#fff9ef;border-color:#8d9b98}
:is(#demo,#method) .ws-viewer .icon-btn.on{background:#c8dde3;color:#344f59;border-color:#91afb9}
:is(#demo,#method) .ws-viewer .explode{accent-color:#749cac;background:#c4b9a5}
:is(#demo,#method) .ws-viewer .explode::-webkit-slider-thumb{background:#83acbd;border:2px solid #f7f0e5;box-shadow:0 0 0 1px #7895a0}
:is(#demo,#method) .ws-viewer .explode::-moz-range-thumb{background:#83acbd;border:2px solid #f7f0e5;box-shadow:0 0 0 1px #7895a0}
:is(#demo,#method) .ws-viewer .scene-tab{background:#f2ebdf;border-color:#c8bead}
:is(#demo,#method) .ws-viewer .scene-tab:hover{background:#f8f2e8;border-color:#93a6a7}
:is(#demo,#method) .ws-viewer .scene-tab.active{background:#e2edf0;border-color:#7296a4;box-shadow:0 0 0 1px #7296a455}
:is(#demo,#method) .ws-viewer .ws-tooltip{background:rgba(247,241,231,.97);color:#3f403b;border-color:#b9ad98;box-shadow:0 4px 18px #61574422}
:is(#demo,#method) .ws-viewer button:focus-visible,:is(#demo,#method) .ws-viewer input:focus-visible{outline-color:#547f90}
