:root{--blue: #2563eb;--indigo: #4f46e5;--violet: #7c3aed;--green: #059669;--amber: #d97706;--red: #dc2626;--ink: #0b1220;--ink2: #1e293b;--slate: #51607a;--mute: #8a97ad;--line: #e6e9f2;--line2: #eef1f7;--bg: #ffffff;--bg-soft: #f6f8fc;--bg-dark: #0b1220;--grad: linear-gradient(95deg, #4f46e5, #2563eb 55%, #0ea5e9);--maxw: 1080px;--e1: 0 1px 2px rgba(11,18,32,.06), 0 1px 3px rgba(11,18,32,.05);--e2: 0 2px 6px rgba(11,18,32,.06), 0 6px 16px -6px rgba(11,18,32,.12);--e3: 0 10px 30px -12px rgba(11,18,32,.22), 0 4px 10px -4px rgba(11,18,32,.1);--nav-h: 60px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--ink2);background:var(--bg);line-height:1.62;-webkit-font-smoothing:antialiased}a{color:var(--blue);text-decoration:none}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}section{padding:80px 0;scroll-margin-top:var(--nav-h)}.nav{position:sticky;top:0;z-index:50;height:var(--nav-h);background:#ffffffdb;-webkit-backdrop-filter:saturate(1.6) blur(10px);backdrop-filter:saturate(1.6) blur(10px);border-bottom:1px solid transparent;transition:box-shadow .2s,border-color .2s}.nav.scrolled{box-shadow:var(--e1);border-bottom-color:var(--line)}.nav .row{max-width:var(--maxw);margin:0 auto;height:var(--nav-h);padding:0 24px;display:flex;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:17px;letter-spacing:-.02em;color:var(--ink)}.brand .mark{width:22px;height:22px;border-radius:6px;background:var(--grad);display:inline-block}.nav .links{display:flex;gap:4px;margin-left:auto;align-items:center}.nav .links a{padding:7px 12px;border-radius:8px;font-size:14px;font-weight:600;color:var(--slate);transition:background .15s,color .15s}.nav .links a:hover{background:var(--bg-soft);color:var(--ink)}.nav .links a.active{color:var(--indigo)}.nav .links a.cta{background:var(--ink);color:#fff;padding:8px 15px}.nav .links a.cta:hover{background:var(--indigo)}@media (max-width: 820px){.nav .links a:not(.cta){display:none}}.gradient-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--indigo);margin-bottom:14px}.eyebrow:before{content:"";display:inline-block;width:18px;height:2px;background:var(--indigo);vertical-align:middle;margin-right:8px;opacity:.6}h2.section-title{font-size:32px;font-weight:800;letter-spacing:-.03em;margin:0 0 12px;color:var(--ink)}.section-head{text-align:center;margin-bottom:44px}.section-sub{color:var(--slate);max-width:700px;margin:0 auto;font-size:16.5px}.section-soft{background:var(--bg-soft);border-top:1px solid var(--line2);border-bottom:1px solid var(--line2)}.hero{position:relative;padding:84px 0 60px;text-align:center;overflow:hidden;background:linear-gradient(180deg,#fbfcff,#fff),radial-gradient(60% 60% at 50% 0%,#4f46e50d,#4f46e500 70%)}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;opacity:.5;background-image:radial-gradient(circle at 1px 1px,#dfe4f0 1px,transparent 0);background-size:26px 26px;-webkit-mask-image:radial-gradient(70% 60% at 50% 30%,#000,transparent 75%);mask-image:radial-gradient(70% 60% at 50% 30%,#000,transparent 75%)}.hero .wrap{position:relative;z-index:1}.hero h1{font-size:47px;line-height:1.08;font-weight:800;letter-spacing:-.035em;margin:0 0 22px;color:var(--ink)}.authors{font-size:16.5px;color:var(--ink2);margin:8px auto;max-width:820px}.authors a{font-weight:600;color:var(--ink2)}.authors a:hover{color:var(--indigo)}.affil{color:var(--slate);margin:6px 0;font-size:14.5px}.venue{display:inline-block;margin-top:14px;font-weight:700;letter-spacing:.08em;font-size:12px;color:var(--indigo);border:1px solid var(--line);background:#fff;padding:5px 13px;border-radius:999px;box-shadow:var(--e1)}.btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 21px;border-radius:10px;font-weight:650;font-size:15px;transition:transform .12s,box-shadow .14s,background .14s}.btn svg{width:17px;height:17px}.btn.primary{background:var(--ink);color:#fff;box-shadow:var(--e2)}.btn.primary:hover{transform:translateY(-1px);background:var(--indigo)}.btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:var(--e1)}.btn.ghost:hover{transform:translateY(-1px);border-color:#c9d2ec}.tagline{text-align:center;font-size:23px;font-weight:700;max-width:800px;margin:0 auto;line-height:1.4;color:var(--ink)}.tagline .hl{color:var(--indigo)}.prose{max-width:760px;margin:0 auto;color:var(--ink2);font-size:17px}.prose b{font-weight:700;color:var(--ink)}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:var(--e2)}.card.hoverable{transition:transform .16s,box-shadow .16s}.card.hoverable:hover{transform:translateY(-2px);box-shadow:var(--e3)}.fig-cap{color:var(--slate);font-size:14px;margin-top:12px;text-align:center}img.fig{width:100%;border-radius:12px;border:1px solid var(--line);box-shadow:var(--e2)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:840px;margin:0 auto}.stat{text-align:center;padding:30px 20px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--e2)}.stat .num{font-size:46px;font-weight:800;letter-spacing:-.03em;color:var(--indigo);line-height:1}.stat .lbl{color:var(--slate);font-size:14px;margin-top:10px}@media (max-width: 760px){.stats{grid-template-columns:1fr}.hero h1{font-size:32px}h2.section-title{font-size:25px}}pre.bibtex{background:var(--bg-dark);color:#cbd5e1;border-radius:14px;padding:22px;overflow-x:auto;font-family:JetBrains Mono,monospace;font-size:13px;line-height:1.6;max-width:840px;margin:0 auto;box-shadow:var(--e3)}footer{padding:40px 0;text-align:center;color:var(--mute);font-size:13px;border-top:1px solid var(--line);background:var(--bg-soft)}.controls{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:18px}.toggle{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--bg-soft);padding:3px;gap:3px}.toggle button{border:none;background:transparent;padding:8px 16px;font-weight:650;font-size:14px;color:var(--slate);cursor:pointer;display:inline-flex;align-items:center;gap:7px;border-radius:7px;transition:background .15s,color .15s,box-shadow .15s}.toggle button svg{width:15px;height:15px}.toggle button.active{background:#fff;color:var(--indigo);box-shadow:var(--e1)}.pill-btn{border:1px solid var(--line);background:#fff;border-radius:9px;padding:9px 17px;font-weight:650;font-size:14px;cursor:pointer;color:var(--ink);display:inline-flex;gap:7px;align-items:center;box-shadow:var(--e1);transition:transform .12s,border-color .12s}.pill-btn:hover{transform:translateY(-1px);border-color:#c9d2ec}.pill-btn svg{width:14px;height:14px}.pill-btn.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.pill-btn.primary:hover{background:var(--indigo);border-color:var(--indigo)}@keyframes fadeSwap{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.fade-swap{animation:fadeSwap .45s cubic-bezier(.22,1,.36,1)}@keyframes popIn{0%{opacity:0;transform:scale(.9) translateY(6px)}to{opacity:1;transform:none}}.pop-in{animation:popIn .34s cubic-bezier(.22,1,.36,1) both}@keyframes pulseRing{0%{box-shadow:0 0 #10b98180}to{box-shadow:0 0 0 14px #10b98100}}.pulse-exit{animation:pulseRing 1.1s ease-out}.dots{display:flex;gap:8px;justify-content:center;margin-top:16px}.dots button{width:9px;height:9px;border-radius:999px;border:none;background:#cfd6e6;cursor:pointer;padding:0;transition:all .2s}.dots button.on{background:var(--indigo);width:24px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1)}.reveal.in{opacity:1;transform:none}input[type=range]{accent-color:var(--indigo)}
