:root{--paper:#f4f0e6;--paper-2:#ece6d8;--ink:#16130e;--ink-2:#3b352b;--muted:#6e6656;--rule:#d9d1bf;--mark:#ffcb3d;--mark-soft:rgba(255,203,61,0.55);--mark-ink:#16130e;--card:#f9f6ef;--shadow:0 1px 0 rgba(22,19,14,0.06),0 12px 30px -18px rgba(22,19,14,0.35);--disp:"Bricolage Grotesque",Georgia,serif;--sans:"Hanken Grotesk",system-ui,-apple-system,sans-serif;--mono:"JetBrains Mono",ui-monospace,Menlo,monospace;--wrap:1180px;--gut:clamp(16px,4vw,40px);--ease:cubic-bezier(0.2,0.7,0.1,1);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--paper:#12100c;--paper-2:#1b1812;--ink:#efe9dc;--ink-2:#cfc6b4;--muted:#998f7c;--rule:#2e2920;--card:#18150f;--mark-soft:rgba(255,203,61,0.32);--shadow:0 1px 0 rgba(0,0,0,0.4),0 14px 34px -20px rgba(0,0,0,0.9);color-scheme:dark}}:root[data-theme="dark"]{--paper:#12100c;--paper-2:#1b1812;--ink:#efe9dc;--ink-2:#cfc6b4;--muted:#998f7c;--rule:#2e2920;--card:#18150f;--mark-soft:rgba(255,203,61,0.32);--shadow:0 1px 0 rgba(0,0,0,0.4),0 14px 34px -20px rgba(0,0,0,0.9);color-scheme:dark}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--sans);font-feature-settings:"ss01","kern";-webkit-font-smoothing:antialiased;overflow-x:clip}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}a:hover{text-decoration-color:var(--mark);text-decoration-thickness:3px}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:3px}::selection{background:var(--mark);color:var(--mark-ink)}kbd{font:500 11px var(--mono);border:1px solid var(--rule);border-bottom-width:2px;border-radius:5px;padding:1px 5px;color:var(--muted);background:var(--card)}button{font:inherit;color:inherit}.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--paper);padding:8px 12px;z-index:100}.skip:focus{left:8px}.grain{position:fixed;inset:0;pointer-events:none;z-index:60;opacity:.06;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvgxmlns='http://www.w3.org/2000/svg'width='160'height='160'%3E%3Cfilterid='n'%3E%3CfeTurbulencetype='fractalNoise'baseFrequency='.9'numOctaves='3'stitchTiles='stitch'/%3E%3C/filter%3E%3Crectwidth='100%25'height='100%25'filter='url(%23n)'/%3E%3C/svg%3E")}:root[data-theme="dark"] .grain{mix-blend-mode:screen;opacity:.05}@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .grain{mix-blend-mode:screen;opacity:.05}}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--gut);background:color-mix(in srgb,var(--paper) 82%,transparent);backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);border-bottom:1px solid transparent;transition:border-color .3s}.topbar.scrolled{border-bottom-color:var(--rule)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:600 15px var(--disp);letter-spacing:-0.01em}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:6px;background:var(--ink);color:var(--paper);font:700 17px/1 var(--disp);position:relative;overflow:hidden}.brand-mark::after{content:"";position:absolute;left:3px;right:3px;bottom:4px;height:7px;background:var(--mark);z-index:-0;mix-blend-mode:multiply;opacity:.9}.nav{display:flex;align-items:center;gap:clamp(10px,2.2vw,26px);font:500 14px var(--mono)}.nav a{text-decoration:none;color:var(--ink-2)}.nav a:hover,.nav a[aria-current]{color:var(--ink);box-shadow:inset 0 -6px 0 var(--mark-soft)}.cmdk-btn,.theme-btn{background:0;border:0;padding:4px;cursor:pointer;color:var(--ink-2);display:inline-flex;align-items:center}.theme-btn:hover,.cmdk-btn:hover{color:var(--ink)}@media(max-width:640px){.brand-name{display:none}.cmdk-btn{display:none}.nav{gap:14px}}main{position:relative}.eyebrow{font:500 12.5px/1.4 var(--mono);letter-spacing:.04em;text-transform:lowercase;color:var(--muted);margin:0 0 14px}.eyebrow a{color:var(--ink-2)}.idx{display:inline-block;color:var(--ink);background:var(--mark);padding:0 5px;margin-right:8px;border-radius:2px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;text-decoration:none;background:var(--ink);color:var(--paper);font:600 15px var(--sans);border:1px solid var(--ink);transition:transform .2s var(--ease),box-shadow .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 0 -3px var(--mark);text-decoration:none}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--rule);font-family:var(--mono);font-size:13.5px;font-weight:500}.btn.ghost:hover{border-color:var(--ink)}.mark{background:linear-gradient(100deg,transparent .4em,var(--mark-soft) .4em,var(--mark-soft) calc(100% - .2em),transparent calc(100% - .2em)) no-repeat 0 62% / 100% 58%;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.sense{all:unset;cursor:help;position:relative;white-space:nowrap;background-image:radial-gradient(circle,var(--muted) .8px,transparent 1.2px);background-size:5px 2px;background-position:0 96%;background-repeat:repeat-x}.sense::after{content:"?";font:600 .5em var(--mono);vertical-align:super;margin-left:1px;color:var(--muted)}.sense:hover,.sense:focus-visible{background-image:linear-gradient(var(--mark-soft),var(--mark-soft));background-size:100% 100%;outline:0}.sense-card{position:absolute;z-index:70;max-width:290px;padding:14px 16px;border-radius:10px;background:var(--ink);color:var(--paper);font:400 14px/1.45 var(--sans);box-shadow:var(--shadow);pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity .18s,transform .18s var(--ease)}.sense-card.on{opacity:1;transform:none}.sense-card b{font:700 18px var(--disp);display:block}.sense-card i{font:500 11.5px var(--mono);font-style:normal;color:var(--mark);display:block;margin:2px 0 6px}.hero{position:relative;max-width:var(--wrap);margin:0 auto;padding:clamp(40px,8vh,96px) var(--gut) clamp(56px,10vh,120px);display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(32px,6vw,96px);align-items:start}.hero-name{font:800 clamp(46px,7vw,104px)/0.88 var(--disp);letter-spacing:-0.045em;margin:0 0 clamp(26px,4vh,44px);font-variation-settings:"opsz" 96}.hero-name span{display:block}.hero-name span:last-child{color:transparent;-webkit-text-stroke:1.5px var(--ink)}.answer{max-width:680px}.prompt{font:500 14px var(--mono);color:var(--muted);margin:0 0 10px}.caret{color:var(--ink)}.answer-text{font:400 clamp(20px,2.2vw,27px)/1.5 var(--sans);letter-spacing:-0.012em;margin:0;color:var(--ink)}.claim{cursor:default;border-radius:3px;box-decoration-break:clone;-webkit-box-decoration-break:clone;background:linear-gradient(var(--mark),var(--mark)) no-repeat 0 100% / 0% 3px;padding-bottom:3px;transition:background-size .45s var(--ease)}.claim.hot{background-size:100% 3px}.claim.scan{background:linear-gradient(90deg,transparent,var(--mark-soft) 40%,var(--mark) 50%,var(--mark-soft) 60%,transparent) no-repeat;background-size:40% 100%;animation:scan .75s var(--ease) both}@keyframes scan{from{background-position:-60% 0}to{background-position:160% 0}}.cite{display:inline-grid;place-items:center;min-width:1.35em;height:1.35em;margin-left:3px;border-radius:4px;padding:0 3px;font:600 .5em/1 var(--mono);vertical-align:.9em;text-decoration:none;background:var(--ink);color:var(--paper);transition:transform .35s var(--ease),opacity .35s,background .2s}.cite:hover,.cite.hot{background:var(--mark);color:var(--mark-ink);text-decoration:none}.verdict{display:flex;align-items:center;gap:10px;font:500 13px var(--mono);color:var(--muted);margin:22px 0 0}.verdict .dot{width:8px;height:8px;border-radius:50%;background:#2f8a55;box-shadow:0 0 0 4px rgba(47,138,85,0.18);transition:background .3s}.ticks{display:inline-flex;gap:4px}.ticks i{width:14px;height:14px;border:1.5px solid var(--rule);border-radius:3px;position:relative;transition:background .25s,border-color .25s}.ticks i::after{content:"";position:absolute;left:4px;top:1px;width:4px;height:7px;border:solid var(--mark-ink);border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .3s var(--ease) .1s}.ticks i,.js .animate .ticks i.on{background:var(--mark);border-color:var(--mark)}.ticks i::after,.js .animate .ticks i.on::after{transform:rotate(45deg) scale(1)}.js .animate .ticks i{background:transparent;border-color:var(--rule)}.js .animate .ticks i::after{transform:rotate(45deg) scale(0)}.ticks i.active{border-color:var(--mark);animation:pulse .6s infinite}.verdict.pending .dot{background:var(--mark);animation:pulse 1s infinite;box-shadow:0 0 0 4px var(--mark-soft)}@keyframes pulse{50%{opacity:.35}}.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(28px,5vh,44px)}.hero-main{position:relative;z-index:2}.hero-side{position:relative;z-index:2}.portrait{margin:0 0 22px;position:relative;aspect-ratio:3 / 4;border-radius:4px;overflow:hidden;background:var(--paper-2);transform:rotate(1.2deg);box-shadow:var(--shadow)}.portrait img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08) brightness(1.03);mix-blend-mode:multiply;transition:filter .6s}.portrait:hover img{filter:grayscale(0) contrast(1)}:root[data-theme="dark"] .portrait img{mix-blend-mode:normal}@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .portrait img{mix-blend-mode:normal}}.sources{list-style:none;margin:0;padding:0;display:grid;gap:8px}.sources a{display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:start;text-decoration:none;padding:10px 12px;border-radius:8px;border:1px solid var(--rule);background:var(--card);font-size:13.5px;line-height:1.4;color:var(--ink-2);transition:border-color .2s,transform .25s var(--ease),background .2s}
.sources b{display:block;color:var(--ink);font:600 14px var(--sans)}.sources a{position:relative;grid-template-columns:26px 1fr auto}.sources .ev{display:block;max-height:0;overflow:hidden;opacity:0;font:400 12px/1.45 var(--mono);color:var(--ink-2);transition:max-height .4s var(--ease),opacity .3s,margin .3s}.sources li.hot .ev,.sources li.checking .ev{max-height:140px;opacity:1;margin-top:6px;color:var(--mark)}:root[data-theme="light"] .sources li.hot .ev,:root[data-theme="light"] .sources li.checking .ev{color:#8a5a00}@media(prefers-color-scheme:light){:root:not([data-theme="dark"]) .sources li.hot .ev,:root:not([data-theme="dark"]) .sources li.checking .ev{color:#8a5a00}}.stamp{align-self:start;font:600 10px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:#2f8a55;border:1.5px solid currentColor;border-radius:3px;padding:2px 5px;opacity:0;transform:rotate(-8deg) scale(1.6);transition:opacity .25s,transform .35s cubic-bezier(.2,1.6,.4,1)}.sources li.hot .stamp,.sources li.checking.stamped .stamp{opacity:1;transform:rotate(-8deg) scale(1)}.sources li.checking a{border-color:var(--mark)}.sources .n{display:grid;place-items:center;width:22px;height:22px;border-radius:5px;background:var(--ink);color:var(--paper);font:600 11px var(--mono)}.sources li.hot a,.sources a:hover{border-color:var(--ink);transform:translateX(-4px)}.sources li.hot .n{background:var(--mark);color:var(--mark-ink)}.ground-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:0}.ground-lines path{fill:none;stroke:var(--ink);stroke-width:1;opacity:.35;stroke-dasharray:var(--len);stroke-dashoffset:var(--len);transition:stroke-dashoffset 1s var(--ease),opacity .2s,stroke-width .2s}.ground-lines path.drawn{stroke-dashoffset:0}.ground-lines .gone:not(.hot){opacity:0;transition:opacity .7s}.ground-lines path.hot{opacity:.9;stroke-width:1.5;stroke:var(--mark)}.ground-lines circle{fill:var(--mark);stroke:var(--ink);stroke-width:1;opacity:0;transition:opacity .3s .8s}.ground-lines circle.drawn{opacity:1}.ground-lines circle.hot{opacity:1}.js .animate .answer-text .w{opacity:0;filter:blur(4px);transition:opacity .35s,filter .35s}.js .animate .answer-text .w.in{opacity:1;filter:none}.js .animate .answer-text .sense:not(.in){background-image:none}.js .animate .answer-text .sense:not(.in)::after{opacity:0}.sense::after{transition:opacity .3s}.js .animate .cite{opacity:0;transform:scale(0.4)}.js .animate .cite.on{opacity:1;transform:none}.js .animate .sources li{opacity:0;transform:translateX(14px);transition:opacity .5s var(--ease),transform .5s var(--ease)}.js .animate .sources li.on{opacity:1;transform:none}.js .animate .hero-name span{opacity:0;transform:translateY(0.25em);transition:opacity .9s var(--ease),transform .9s var(--ease)}.js .animate .hero-name span:last-child{transition-delay:.12s}.js .animate.loaded .hero-name span{opacity:1;transform:none}@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-side{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:start}.portrait{margin:0}.ground-lines{display:none}}@media(max-width:480px){.hero-side{grid-template-columns:1fr}.portrait{width:140px}}.block{max-width:var(--wrap);margin:0 auto;padding:clamp(64px,11vh,130px) var(--gut) 0}.block-head{max-width:760px;margin-bottom:clamp(32px,5vh,56px)}.block h2{font:750 clamp(36px,5.4vw,68px)/0.98 var(--disp);letter-spacing:-0.035em;margin:0 0 18px}.lede{font-size:clamp(17px,1.5vw,19.5px);color:var(--ink-2);margin:0;max-width:660px}.more{margin:28px 0 0;font:500 14px var(--mono)}.more a{text-decoration:none;box-shadow:inset 0 -7px 0 var(--mark-soft)}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.js .reveal.in{opacity:1;transform:none}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.work-card{background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:22px 22px 24px;transition:border-color .25s,transform .35s var(--ease),box-shadow .35s}.work-card:hover{border-color:var(--ink);transform:translateY(-3px);box-shadow:var(--shadow)}.work-card h3{font:700 22px/1.15 var(--disp);letter-spacing:-0.02em;margin:6px 0 10px}.work-card p{margin:0;color:var(--ink-2);font-size:15.5px}.wc-n{font:500 12px var(--mono)!important;color:var(--muted)!important}.work-card.feature{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(20px,4vw,48px);padding:clamp(24px,3.4vw,40px)}.work-card.feature h3{font-size:clamp(28px,3.2vw,40px)}.metric{display:grid;grid-template-columns:auto auto 1fr;align-items:end;gap:0 10px;margin-top:26px!important}.metric-num{font:800 clamp(64px,8vw,104px)/0.8 var(--disp);letter-spacing:-0.05em;color:var(--ink)}.metric-pct{font:700 32px/1 var(--disp);align-self:start;margin-top:4px}.metric-label{font:500 12.5px/1.4 var(--mono);color:var(--muted);padding-bottom:6px}
.run{background:#17140f;color:#efe9dc;border:1px solid #2e2920;border-radius:10px;padding:16px 18px;font:400 13px/1.5 var(--mono);align-self:stretch;min-height:240px}.run-head{display:flex;justify-content:space-between;margin:0 0 12px;color:#a69d8b;font-size:11.5px}.run-state::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--mark);margin-right:6px;animation:pulse 1.2s infinite}.run-log{list-style:none;margin:0;padding:0;display:grid;gap:7px}.run-log li{display:grid;grid-template-columns:72px 1fr;gap:10px;color:#d8cfbd}.run-log li::before{content:none}.run-log b{color:var(--mark);font-weight:500}.run-log li.ok b{color:#7fd39b}.js .run-log li{opacity:.12;transition:opacity .3s}.js .run-log li.on{opacity:1}@media(max-width:900px){.work-grid{grid-template-columns:1fr 1fr}.work-card.feature{grid-template-columns:1fr}}@media(max-width:600px){.work-grid{grid-template-columns:1fr}}.ribbon{position:sticky;top:58px;z-index:20;margin:0 0 36px;padding:14px 16px 12px;background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--rule);border-radius:14px;box-shadow:var(--shadow)}.rb-grid{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);row-gap:7px;align-items:center}.rb-name{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.rb-name.rb-work{color:var(--ink)}.rb-name.rb-study{color:var(--mark)}:root[data-theme="light"] .rb-name.rb-study{color:#8a5a00}@media(prefers-color-scheme:light){:root:not([data-theme="dark"]) .rb-name.rb-study{color:#8a5a00}}.rb-axis{position:relative;height:16px}.rb-tick{position:absolute;left:var(--x);top:0;font:500 10.5px var(--mono);color:var(--muted);transform:translateX(-50%)}.rb-track{position:relative;height:22px;border-radius:6px;background:repeating-linear-gradient(90deg,var(--rule) 0 1px,transparent 1px 100%);background-color:color-mix(in srgb,var(--rule) 35%,transparent)}.rb-bar{all:unset;position:absolute;top:3px;bottom:3px;left:var(--x);width:max(calc(var(--w) - 2px),6px);border-radius:4px;background:var(--ink);cursor:pointer;transform-origin:left center;transition:opacity .35s,box-shadow .35s,transform .9s var(--ease) calc(var(--k,0) * 90ms)}.rb-study .rb-bar{background:var(--mark)}.rb-bar.open{background:linear-gradient(90deg,transparent,var(--mark) 45%)}.ribbon.has-active .rb-bar{opacity:.32}.ribbon.has-active .rb-bar.lit{opacity:1}.rb-bar.active{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--ink)}.rb-study .rb-bar.active{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--mark)}.rb-bar.now::after{content:"";position:absolute;right:-3px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--mark);box-shadow:0 0 0 0 var(--mark);animation:nowpulse 1.6s infinite}@keyframes nowpulse{0%{box-shadow:0 0 0 0 var(--mark-soft)}100%{box-shadow:0 0 0 10px transparent}}.js .ribbon .rb-bar{transform:scaleX(0)}.js .ribbon.drawn .rb-bar{transform:none}.rb-play{position:absolute;left:52px;right:0;top:0;bottom:0;pointer-events:none}.rb-head{position:absolute;top:14px;bottom:-4px;left:var(--px,100%);width:2px;margin-left:-1px;background:var(--ink);opacity:0;transition:left .55s var(--ease),opacity .3s}.ribbon.has-active .rb-head{opacity:1}.rb-head::before{content:"";position:absolute;top:-5px;left:-4px;width:10px;height:10px;border-radius:50%;background:var(--ink)}.rb-date{position:absolute;top:-20px;left:50%;transform:translateX(-50%);white-space:nowrap;font:600 10.5px var(--mono);background:var(--ink);color:var(--paper);padding:2px 6px;border-radius:4px}.rb-readout{display:grid;gap:3px;margin:12px 0 0;padding-top:10px;border-top:1px dashed var(--rule);font:500 12.5px/1.4 var(--mono);color:var(--ink-2);min-height:2.9em}.rb-readout span{display:flex;gap:10px}.rb-readout span::before{flex:0 0 52px;color:var(--muted);text-transform:uppercase;font-size:11px;letter-spacing:.06em;padding-top:1px}.ro-work::before{content:"work"}.ro-study::before{content:"study"}.rb-readout .idle{color:var(--muted)}@media(max-height:620px){.ribbon{position:relative;top:0}}@media(max-width:600px){.ribbon{padding:12px 12px 10px;top:54px}.rb-grid,.rb-readout span::before{grid-template-columns:40px minmax(0,1fr);flex-basis:40px}.rb-play{left:40px}.rb-tick:nth-child(even){visibility:hidden}.rb-readout{font-size:11.5px}}.entries{list-style:none;margin:0;padding:0;max-width:860px;border-left:2px solid var(--rule)}.entry{position:relative;display:grid;grid-template-columns:130px minmax(0,1fr);gap:6px 24px;padding:18px 0 18px 26px;transition:background .35s;border-radius:0 12px 12px 0}.entry::before{content:"";position:absolute;left:-7px;top:26px;width:12px;height:12px;border-radius:50%;background:var(--paper);border:2px solid var(--ink);transition:background .3s,transform .3s var(--ease)}
.entry.on-study::before{border-color:var(--mark)}.entry.active{background:linear-gradient(90deg,var(--mark-soft),transparent 75%)}.entry.active::before{background:var(--ink);transform:scale(1.25)}.entry.on-study.active::before{background:var(--mark)}.entry.current::after{content:"";position:absolute;left:-9px;top:24px;width:16px;height:16px;border-radius:50%;border:2px solid var(--mark);animation:ripple 1.8s var(--ease) infinite}@keyframes ripple{from{transform:scale(0.8);opacity:.9}to{transform:scale(2.4);opacity:0}}.entry time{font:500 13px/1.7 var(--mono);color:var(--muted)}.entry-who{font:650 19px/1.3 var(--disp);margin:0 0 6px;letter-spacing:-0.01em;color:var(--ink)}.entry-who a{text-decoration:none}.entry p{margin:0;color:var(--ink-2);font-size:16px}.entry .entry-who{color:var(--ink)}.lane-tag{display:inline-block;font:500 10.5px/1 var(--mono);text-transform:uppercase;letter-spacing:.06em;padding:4px 6px 3px;border-radius:3px;margin-right:10px;vertical-align:3px;background:var(--ink);color:var(--paper)}.on-study .lane-tag{background:var(--mark);color:var(--mark-ink)}.running{font:500 11px var(--mono);background:var(--mark);color:var(--mark-ink);padding:2px 6px;border-radius:3px;vertical-align:3px;margin-left:6px}.running::after{content:"…";animation:pulse 1s infinite}@media(max-width:640px){.entry{grid-template-columns:1fr;gap:2px;padding-left:20px}}.papers{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}.paper{display:grid;grid-template-columns:260px minmax(0,1fr) auto;gap:6px 32px;padding:26px 0;border-bottom:1px solid var(--rule);align-items:baseline;position:relative}.paper::before{content:"";position:absolute;inset:0 auto 0 -12px;width:3px;background:var(--mark);transform:scaleY(0);transition:transform .35s var(--ease)}.paper:hover::before{transform:scaleY(1)}.paper .venue{font:500 12.5px/1.5 var(--mono);color:var(--muted);margin:0;grid-row:span 2}.paper h3{font:700 clamp(22px,2.4vw,30px)/1.1 var(--disp);letter-spacing:-0.02em;margin:0}.paper h3 a{text-decoration:none}.paper h3 a:hover{box-shadow:inset 0 -0.35em 0 var(--mark-soft)}.paper>p:not(.venue):not(.links){margin:0;color:var(--ink-2);grid-column:2;max-width:620px}.paper .links{grid-column:3;grid-row:1 / span 2;display:flex;gap:12px;margin:0;font:500 13px var(--mono)}.paper .links a{color:var(--muted)}@media(max-width:860px){.paper{grid-template-columns:1fr}.paper .venue,.paper .links{grid-row:auto;grid-column:auto}.paper>p:not(.venue):not(.links){grid-column:auto}}.repos{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.repo{display:flex;flex-direction:column;gap:6px;padding:20px;border:1px solid var(--rule);border-radius:14px;background:var(--card);text-decoration:none;transition:border-color .25s,transform .35s var(--ease);min-height:200px}.repo:hover{border-color:var(--ink);transform:translateY(-3px) rotate(-0.4deg);text-decoration:none}.repo-name{font:700 24px/1.1 var(--disp);letter-spacing:-0.02em}.repo-owner{font:500 12px var(--mono);color:var(--muted)}.repo-desc{color:var(--ink-2);font-size:15px;margin-top:6px}.repo-meta{margin-top:auto;font:500 12.5px var(--mono);color:var(--muted)}.post-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}.post-list a{display:grid;grid-template-columns:110px minmax(0,1fr);gap:4px 28px;padding:22px 0;border-bottom:1px solid var(--rule);text-decoration:none;transition:padding .3s var(--ease),background .3s}.post-list a:hover{padding-left:12px;background:linear-gradient(90deg,var(--mark-soft),transparent 60%)}.post-list time{font:500 13px/1.8 var(--mono);color:var(--muted);grid-row:span 2}.pl-title{font:700 clamp(20px,2vw,25px)/1.2 var(--disp);letter-spacing:-0.015em}.pl-desc{color:var(--ink-2);font-size:15.5px}@media(max-width:600px){.post-list a{grid-template-columns:1fr}.post-list time{grid-row:auto}}.doc{max-width:760px;margin:0 auto;padding:clamp(40px,8vh,90px) var(--gut) 40px}.doc-head{margin-bottom:40px}.doc-title{font:800 clamp(40px,6.6vw,76px)/0.95 var(--disp);letter-spacing:-0.04em;margin:0 0 18px}.post .doc-title{font-size:clamp(32px,4.4vw,54px);line-height:1.02;letter-spacing:-0.03em}.doc-lede{font-size:clamp(18px,1.7vw,21px);color:var(--ink-2);margin:0}.tags{display:flex;flex-wrap:wrap;gap:6px 12px;font:500 12.5px var(--mono);margin:18px 0 0}.tags a{color:var(--muted);text-decoration:none}.tags a:hover{color:var(--ink)}.read-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:55;pointer-events:none}.read-progress span{display:block;height:100%;width:100%;background:var(--mark);transform-origin:left;transform:scaleX(var(--p,0))}.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:64px}.post-nav a{padding:18px;border:1px solid var(--rule);border-radius:12px;text-decoration:none;font:650 17px/1.3 var(--disp)}.post-nav a span{display:block;font:500 12px var(--mono);color:var(--muted);margin-bottom:6px}
.post-nav a.next{text-align:right;grid-column:2}.post-nav a:hover{border-color:var(--ink)}.center-links{display:flex;gap:12px;flex-wrap:wrap}.prose{font-size:18px;line-height:1.72}.prose>*+*{margin-top:1.1em}.prose h2{font:750 clamp(28px,3.2vw,36px)/1.1 var(--disp);letter-spacing:-0.025em;margin-top:2.2em}.prose h3{font:700 22px/1.2 var(--disp);margin-top:1.8em}.prose h4{font:600 18px var(--sans);margin-top:1.6em}.prose p,.prose li{color:var(--ink-2)}.prose strong{color:var(--ink)}.prose a{color:var(--ink);text-decoration-color:var(--mark);text-decoration-thickness:2px}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.35em}.prose blockquote{margin-left:0;padding:4px 0 4px 20px;border-left:3px solid var(--mark);color:var(--ink-2);font-style:italic}.prose hr{border:0;border-top:1px solid var(--rule);margin:3em 0}.prose img{border-radius:8px;margin:0 auto}.prose table{width:100%;border-collapse:collapse;font-size:15px;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--rule)}.prose th{font:600 13px var(--mono);color:var(--muted)}.prose code{font:.86em var(--mono);background:var(--paper-2);padding:.15em .4em;border-radius:4px}.prose pre{background:#17140f;color:#e9e2d2;padding:18px 20px;border-radius:10px;overflow-x:auto;font:13.5px/1.6 var(--mono)}.prose pre code{background:0;padding:0;font-size:inherit;color:inherit}.prose .row{display:block}.prose .caption{font:400 14px/1.5 var(--sans);color:var(--muted);text-align:center;margin-top:.4em}.fig{margin:1.6em 0}.fig figcaption{font-size:14px;color:var(--muted);text-align:center;margin-top:8px}.highlight .c,.highlight .c1,.highlight .cm{color:#8a8170;font-style:italic}.highlight .k,.highlight .kd,.highlight .kn,.highlight .kc,.highlight .ow{color:#ffcb3d}.highlight .s,.highlight .s1,.highlight .s2,.highlight .sd{color:#a8d49a}.highlight .nf,.highlight .nc{color:#8ec3ff}.highlight .mi,.highlight .mf,.highlight .m{color:#f59f72}.highlight .nb,.highlight .bp{color:#d7a8ff}.highlight .o,.highlight .p{color:#cfc6b4}.pubs h2.bibliography{font:700 15px var(--mono);color:var(--muted);margin:2.4em 0 .6em;letter-spacing:.04em}.pubs ol.bibliography{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}.pubs ol.bibliography li{padding:20px 0;border-bottom:1px solid var(--rule);margin:0}.pub-title{font:700 21px/1.25 var(--disp);letter-spacing:-0.015em;margin:0 0 6px;color:var(--ink)}.pub-authors{font-size:15px;margin:0 0 8px;color:var(--muted)}.pub-authors strong{color:var(--ink);background:var(--mark-soft);padding:0 2px}.pub-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font:500 13px var(--mono);margin:0;color:var(--muted)}.pub-meta .venue{color:var(--ink-2)}.repo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:14px;margin:1rem 0}.repo-card{display:flex;flex-direction:column;gap:.4rem;padding:18px 20px;border:1px solid var(--rule);border-radius:12px;background:var(--card);color:var(--ink);text-decoration:none!important}.repo-card:hover{border-color:var(--ink)}.repo-card-name{font:700 18px var(--disp)}.repo-card-desc{font-size:15px;color:var(--ink-2)}.repo-card-meta{font:500 12.5px var(--mono);color:var(--muted);margin-top:auto}.footer{margin-top:clamp(90px,16vh,180px);border-top:1px solid var(--rule)}.footer-inner{max-width:var(--wrap);margin:0 auto;padding:clamp(48px,9vh,96px) var(--gut) 40px}.footer-big{font:750 clamp(30px,5vw,64px)/1.02 var(--disp);letter-spacing:-0.035em;margin:0 0 36px}.footer-big .mail{text-decoration:none;background:linear-gradient(var(--mark),var(--mark)) no-repeat 0 88% / 0% 30%;transition:background-size .5s var(--ease);cursor:copy;word-break:break-all}.footer-big .mail:hover{background-size:100% 30%}.footer-links{list-style:none;padding:0;margin:0 0 30px;display:flex;flex-wrap:wrap;gap:10px 26px;font:500 14px var(--mono)}.footer-links a{text-decoration:none;color:var(--ink-2)}.footer-links a:hover{color:var(--ink);box-shadow:inset 0 -6px 0 var(--mark-soft)}.footer-meta{font:400 12.5px var(--mono);color:var(--muted);margin:0}.cmdk{padding:0;border:0;background:transparent;width:min(620px,calc(100vw - 32px));margin:12vh auto auto;color:var(--ink)}.cmdk::backdrop{background:rgba(18,16,12,0.45);backdrop-filter:blur(3px)}.cmdk-box{background:var(--paper);border:1px solid var(--rule);border-radius:14px;box-shadow:0 30px 80px -20px rgba(0,0,0,0.5);overflow:hidden}.cmdk-input{width:100%;border:0;border-bottom:1px solid var(--rule);background:transparent;padding:18px 20px;font:400 18px var(--sans);color:var(--ink);outline:0}.cmdk-list{list-style:none;margin:0;padding:6px;max-height:50vh;overflow-y:auto}.cmdk-list li{display:flex;justify-content:space-between;gap:16px;padding:10px 14px;border-radius:8px;cursor:pointer;font-size:15.5px}.cmdk-list li span{font:500 11.5px var(--mono);color:var(--muted)}.cmdk-list li[aria-selected="true"]{background:var(--mark);color:var(--mark-ink)}.cmdk-list li[aria-selected="true"] span{color:var(--mark-ink)}
.cmdk-hint{margin:0;padding:10px 16px;border-top:1px solid var(--rule);font:400 12px var(--mono);color:var(--muted);display:flex;gap:6px;align-items:center}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:999px;font:500 13.5px var(--mono);opacity:0;pointer-events:none;transition:opacity .25s,transform .3s var(--ease);z-index:90}.toast.on{opacity:1;transform:translate(-50%,0)}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .reveal{opacity:1;transform:none}}@media print{.topbar,.grain,.footer,.cmdk,.toast,.ground-lines{display:none!important}.js .reveal{opacity:1;transform:none}}:root{--c-a:#2a78d6;--c-b:#eda100}:root[data-theme="dark"]{--c-a:#3987e5;--c-b:#c98500}.chart{margin:2em 0}.chart svg{display:block;font-family:var(--mono);overflow:visible}.chart text{fill:var(--ink-2);font-size:12px}.chart .ch-label{fill:var(--ink);font-family:var(--sans);font-size:13.5px}.chart .ch-val{font-size:11.5px;fill:var(--ink-2)}.chart .ch-tick{fill:var(--muted);font-size:11px}.chart .ch-grid{stroke:var(--rule);stroke-width:1}.chart .ch-stem{stroke:var(--muted);stroke-width:2;opacity:.55}.chart .ch-a{fill:var(--c-a);stroke:var(--paper);stroke-width:2}.chart .ch-b{fill:var(--c-b);stroke:var(--paper);stroke-width:2}.chart .ch-hit{fill:transparent}.chart .ch-row:hover .ch-hit{fill:var(--mark-soft);opacity:.35}.chart figcaption,.flow figcaption{font-size:14px;color:var(--muted);margin-top:10px}.flow{margin:2em 0}.flow ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;counter-reset:step}.flow li{position:relative;padding:14px 14px 16px;border:1px solid var(--rule);border-radius:12px;background:var(--card);margin:0!important}.flow li::before{counter-increment:step;content:"step " counter(step);display:block;font:500 11px var(--mono);color:var(--muted);margin-bottom:6px}.flow li:not(:last-child)::after{content:"→";position:absolute;right:-11px;top:50%;transform:translateY(-50%);font:600 14px var(--mono);color:var(--muted);background:var(--paper);padding:0 1px;z-index:1}.flow b{display:block;font:800 26px/1.05 var(--disp);color:var(--ink);letter-spacing:-0.02em}.flow span{display:block;font-size:13.5px;line-height:1.4;color:var(--ink-2);margin-top:6px}.flow li:last-child{border-color:var(--ink)}@media(max-width:640px){.flow ol{grid-template-columns:1fr 1fr}.flow li:nth-child(2)::after{content:none}}