:root{--text:#303030;--muted:#686868;--accent:#5b4c78;--line:#e8e8e8}
body{background:#fff;color:var(--text);font-family:Arial,Helvetica,sans-serif}
.commercial-header{background:#fff;color:var(--text)}
.commercial-header .page-width{width:min(1060px,calc(100% - 40px))}
.paper-identity{text-align:center;padding:51px 0 0}
.paper-identity h1{margin:0;color:#303030;font-size:56px;font-weight:700;line-height:1.05;letter-spacing:-.055em}
.paper-identity h1 span{color:#5b4c78}
.paper-identity h1 em{font-style:normal;color:#303030}
.identity-title{max-width:960px;margin:10px auto 17px;color:#383838;font-size:clamp(24px,2.7vw,32px);font-weight:500;line-height:1.2;letter-spacing:-.02em}
.identity-authors{display:flex;justify-content:center;flex-wrap:wrap;gap:0 1.1rem;margin:0 0 8px;color:#404040;font-size:clamp(1.25rem,2.4vw,1.55rem);font-weight:500;line-height:1.5}
.identity-authors a{color:#3273dc;text-decoration:none}
.identity-authors a:hover,.identity-authors a:focus-visible{text-decoration:underline;text-underline-offset:.18em}
.identity-authors sup{font-size:.57em;margin-left:2px;color:#686868}
.identity-affiliation{margin:5px 0 3px;color:#646464;font-size:clamp(14px,1.25vw,16px);line-height:1.5}
.paper-identity sup{font-size:.62em;vertical-align:super;line-height:0}
.identity-status{margin:0;color:#777;font-size:14px;line-height:1.5}
.identity-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:12px}
.identity-links a{display:inline-block;padding:10px 18px;border-radius:4px;background:#363636;color:#fff!important;text-decoration:none;font-size:14px;font-weight:600;line-height:1.3}
.identity-links a:hover{background:#222}
.commercial-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.07fr);align-items:center;gap:45px;padding:62px 0 63px}
.hero-copy h2{margin:0;max-width:560px;color:#303030;font-size:clamp(30px,3vw,36px);line-height:1.18;letter-spacing:-.035em;font-weight:700}
.hero-copy h2 em{color:#5b4c78;font-style:normal}
.hero-lead{max-width:505px;margin:25px 0 0;color:#555;font-size:16px;line-height:1.65}
.hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:27px}
.hero-actions a{text-decoration:none;font-size:17px;font-weight:600}
.primary-action{display:inline-block;padding:10px 18px;border-radius:4px;background:#363636;color:#fff!important}
.primary-action:hover{background:#222}
.secondary-action{color:var(--accent)!important}
.secondary-action:hover{text-decoration:underline}
.commercial-media{margin:0;min-width:0}
.commercial-media video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#061624;border:1px solid #dce1e4;border-radius:3px}
.commercial-media figcaption{margin:11px 0 0;color:#777;text-align:center;font-size:12px;line-height:1.5}
.abstract{box-shadow:none;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;margin-bottom:72px;padding:49px 0 55px;overflow:visible}
.abstract h2{margin:0 0 17px;color:#303030;font-size:25px;line-height:1.3;font-weight:650}
.abstract-text{max-width:900px;padding:0;border:0}
.abstract-text p{margin:0 0 13px;color:#444;font-size:15px;line-height:1.78}
.abstract-text p:last-child{margin-bottom:0}
.paper-section h2{color:#303030;font-size:clamp(23px,2.2vw,26px)}
.paper-section>p{color:#555}
.paper-figure img{border-radius:2px}
.method-animation{max-width:790px;margin:24px auto 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.method-animation summary{padding:12px 0;color:#5b4c78;font-size:14px;cursor:pointer}
.method-animation video{display:block;width:100%;margin:8px auto 20px;border:1px solid #dedede}
.demo-section{border-top:1px solid var(--line);padding-top:65px}
.demo-section>p:first-of-type{max-width:790px}
.demo-shell{margin-top:30px;padding:22px 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.demo-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:19px}
.demo-heading h3,.demo-view h3{margin:0;color:#303030;font-size:16px;font-weight:600;line-height:1.3}
.demo-heading button{border:0;background:none;color:#5b4c78;font:inherit;font-size:13px;cursor:pointer;padding:3px 0}
.demo-heading button:hover{text-decoration:underline}
.demo-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:32px}
.demo-controls label{display:block;color:#444;font-size:12px;font-weight:600;line-height:1.35}
.demo-controls output{float:right;color:#5b4c78;font-variant-numeric:tabular-nums}
.demo-controls input{display:block;width:100%;margin:14px 0 0;accent-color:#5b4c78}
.extent-control{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin:-9px 0 24px;color:#38464a;font-size:13px;font-weight:600;cursor:pointer}
.extent-control input{width:16px;height:16px;margin:0;accent-color:#5b4c78}
.extent-control output{min-width:22px;color:#5b4c78;font-variant-numeric:tabular-nums}
.extent-control small{margin-left:7px;color:#777;font-size:12px;font-weight:400}
.demo-drag-hint{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:0 0 16px;color:#666;font-size:12px;line-height:1.5}
.demo-drag-hint output{color:#5b4c78;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.demo-views{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.demo-view{margin:0;min-width:0}
.demo-view h3{margin-bottom:11px}
.demo-view h3 small{margin-left:5px;color:#777;font-size:12px;font-weight:400}
.demo-view svg,.demo-view canvas{display:block;width:100%;height:auto;border:1px solid #e3e7e8;background:#fff}
.demo-view svg{touch-action:none}
.heatmap-stack{position:relative}
.heatmap-stack img{display:block;width:100%;height:auto;border:1px solid #e3e7e8}
.heatmap-stack canvas{position:absolute;inset:0;width:100%;height:100%;background:transparent}
.demo-view figcaption{margin:10px 0 0;color:#777;font-size:12px;line-height:1.5;text-align:left}
.demo-legend{display:flex;align-items:center;gap:9px;margin-top:10px;color:#777;font-size:11px;font-variant-numeric:tabular-nums}
.demo-gradient{display:block;flex:1;height:7px;background:linear-gradient(90deg,#faf9fc,#5b4c78);border:1px solid #e3e7e8}
.demo-status{margin:18px 0 0;color:#454545;font-size:13px;font-variant-numeric:tabular-nums;line-height:1.5}
.demo-note{margin:15px 0 0!important;color:#727272!important;font-size:12px!important;line-height:1.6!important}
.demo-assumptions{margin-top:5px;color:#727272;font-size:12px;line-height:1.55}
.demo-assumptions summary{display:inline-block;color:#5b4c78;cursor:pointer}
.demo-assumptions p{max-width:790px;margin:8px 0 0}
thead th{background:#f3f6f7}
tbody .ours th,tbody .ours td{background:#f2eff6;color:#4d4068}
@media(max-width:900px){
 .commercial-hero{grid-template-columns:1fr;gap:40px;padding:60px 0 53px}
 .hero-copy h2{font-size:clamp(32px,5vw,36px)}
 .hero-lead{max-width:700px}
 .commercial-media{max-width:720px}
 .demo-controls{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:620px){
 .commercial-header .page-width{width:calc(100% - 30px)}
 .paper-identity{padding-top:35px}
 .paper-identity h1{font-size:clamp(44px,11vw,56px)}
 .identity-title{margin:13px auto 19px;font-size:clamp(22px,5vw,27px)}
 .identity-affiliation{font-size:14px}
 .identity-status{font-size:14px}
 .commercial-hero{padding:50px 0 44px}
 .hero-copy h2{font-size:clamp(30px,7.5vw,36px)}
 .hero-lead{font-size:16px}
 .abstract{padding:39px 0 43px;margin-bottom:60px}
 .extent-control{align-items:flex-start;flex-wrap:wrap}
 .extent-control small{flex-basis:100%;margin-left:24px}
 .demo-section{padding-top:50px}
 .demo-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 12px}
 .demo-views{grid-template-columns:1fr;gap:28px}
}
