.alt{--ink:#0e0d0b;--paper:#f4ece0;--paper-dim:#b8ad9d;--accent:#4ade80;--accent-2:#6c5ce7;--line:#f4ece024;--on-accent:#0e0d0b;background:var(--ink);color:var(--paper);font-family:var(--font-fraunces), Georgia, serif;min-height:100vh;overflow-x:clip}.alt.light{--ink:#f6f1e9;--paper:#1b1714;--paper-dim:#6f675b;--line:#1b171429}.alt ::selection{background:var(--accent);color:var(--on-accent)}.alt-mono{font-family:var(--font-syne), ui-sans-serif, system-ui, sans-serif}.alt-display{font-family:var(--font-fraunces), Georgia, serif;letter-spacing:-.02em;line-height:.92}.alt-accent{color:var(--accent)}.alt-marquee{width:max-content;animation:28s linear infinite alt-marquee;display:flex}.alt-marquee.reverse{animation-direction:reverse}@keyframes alt-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.alt-row{transition:padding-left .4s cubic-bezier(.22,1,.36,1);position:relative}.alt-row:before{content:"→";opacity:0;color:var(--accent);transition:opacity .3s,transform .3s;position:absolute;left:-1.6rem;transform:translate(-.5rem)}.alt-row:hover{color:var(--accent);padding-left:1.6rem}.alt-row:hover:before{opacity:1;transform:translate(0)}.alt-navrow:before{font-size:1.5rem;top:50%;left:.15rem;transform:translateY(-50%)translate(-.5rem)}.alt-navrow:hover{padding-left:2.75rem}.alt-navrow:hover:before{transform:translateY(-50%)translate(0)}.alt-portrait{aspect-ratio:4/5;object-fit:cover;object-position:center 28%;border:1px solid var(--line);filter:grayscale(.15)contrast(1.02);border-radius:1.25rem;width:100%;transition:filter .5s,transform .5s cubic-bezier(.22,1,.36,1);box-shadow:0 24px 70px #0000008c}.alt-portrait:hover{filter:grayscale(0)contrast();transform:translateY(-4px)rotate(-.5deg)}.alt-portrait-wrap{isolation:isolate;position:relative}.alt-portrait-wrap:before{content:"";z-index:-1;background:radial-gradient(circle at 32% 30%, color-mix(in srgb, var(--accent) 60%, transparent), transparent 68%);filter:blur(30px);opacity:.5;pointer-events:none;border-radius:50%;transition:transform .7s cubic-bezier(.22,1,.36,1),opacity .7s;position:absolute;inset:-16%;transform:translate(0)}.alt-portrait-wrap:after{content:"";z-index:2;border:1px solid color-mix(in srgb, var(--accent) 70%, transparent);opacity:0;pointer-events:none;border-radius:1.1rem;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .5s;position:absolute;inset:8px;transform:translate(10px,10px)}.alt-portrait-wrap:hover:before{opacity:.85;transform:translate(12px,-10px)scale(1.08)}.alt-portrait-wrap:hover:after{opacity:1;transform:translate(14px,14px)}.alt-prose{font-family:var(--font-fraunces), Georgia, serif;color:var(--paper);counter-reset:sidenote;font-size:1.15rem;line-height:1.8}.alt-prose>*+*{margin-top:1.5em}.alt-prose h2,.alt-prose h3,.alt-prose h4{font-family:var(--font-fraunces), Georgia, serif;letter-spacing:-.01em;margin-top:1.8em;margin-bottom:.1em;scroll-margin-top:6rem;font-weight:600;line-height:1.12}.alt-prose h2{font-size:2.1rem}.alt-prose h3{font-size:1.5rem}.alt-prose a{color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 50%, transparent);text-decoration-color:color-mix(in srgb, var(--accent) 50%, transparent);text-underline-offset:.15em}.alt-prose a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.alt-prose strong{font-weight:700}.alt-prose blockquote{border-left:3px solid var(--accent);color:var(--paper-dim);padding-left:1.2rem;font-style:italic}.alt-prose ul,.alt-prose ol{padding-left:1.4rem}.alt-prose ul{list-style:outside}.alt-prose ol{list-style:decimal}.alt-prose li+li{margin-top:.4em}.alt-prose img{border-radius:.6rem;margin:2rem auto;box-shadow:0 16px 50px #0006}.alt-prose code:not(pre code){font-family:var(--font-mono,ui-monospace, monospace);background:color-mix(in srgb, var(--accent) 18%, transparent);border-radius:.35rem;padding:.15em .4em;font-size:.85em}.alt-prose pre{color:#e9e4da;border:1px solid var(--line);border-radius:.6rem;padding:1.1rem 1.2rem;font-size:.9rem;line-height:1.6;overflow-x:auto;background:#161412!important}.alt-prose pre code{font-family:var(--font-mono,ui-monospace, monospace);display:grid}.alt-prose [data-line]{border-left:2px solid #0000;padding:0 .25rem}.alt-prose [data-highlighted-line]{background:color-mix(in srgb, var(--accent) 16%, transparent);border-left-color:var(--accent)}.alt-prose .katex-display{padding:.5rem 0;overflow:auto hidden}.alt-prose sup[id^=user-content-fnref]{font-family:var(--font-syne), sans-serif;line-height:0}.alt-prose sup a[data-footnote-ref]{padding:0 .1em;font-weight:700;text-decoration:none}.alt-prose .footnotes{border-top:1px solid var(--line);color:var(--paper-dim);margin-top:3.5rem;padding-top:1.5rem;font-size:.95rem}.alt-prose .footnotes h2{letter-spacing:0;text-transform:none;color:var(--paper);margin-bottom:.25rem;font-size:1.4rem;font-weight:600}.alt-prose .footnotes h2 a,.alt-prose .footnotes h2 a.heading-anchor{color:inherit;text-decoration:none}.alt-prose .footnotes ol{margin-top:1rem}.alt-prose .footnotes li+li{margin-top:.6em}.alt-prose .footnotes li p{margin:0;display:inline}.alt-prose a[data-footnote-backref]{color:var(--accent);font-family:var(--font-syne), sans-serif;margin-left:.35em;font-weight:700;text-decoration:none}.alt-sidenote-marker{position:relative}.alt-sidenote-toggle{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.alt-sidenote-ref{font-family:var(--font-syne), sans-serif;color:var(--accent);cursor:pointer;font-weight:700}.alt-sidenote-ref:after{counter-increment:sidenote;content:counter(sidenote);vertical-align:super;padding:0 .1em;font-size:.7em;line-height:0}.alt-sidenote{font-family:var(--font-syne), ui-sans-serif, system-ui, sans-serif;color:var(--paper-dim);font-size:.85rem;line-height:1.5}.alt-sidenote-num:before{content:counter(sidenote);color:var(--accent);margin-right:.4em;font-weight:700}@media (min-width:1100px){.alt-sidenote{float:right;clear:right;text-align:left;width:15rem;margin-top:.2rem;margin-bottom:1rem;margin-right:-17rem}}@media (max-width:1099px){.alt-sidenote{border-left:2px solid var(--accent);opacity:0;max-height:0;margin:0;padding-left:.9rem;transition:max-height .3s,opacity .3s,margin .3s;display:block;overflow:hidden}.alt-sidenote-toggle:checked~.alt-sidenote{opacity:1;max-height:40rem;margin:.75rem 0}}.alt-pill{border:1px solid var(--line);color:var(--paper-dim);border-radius:9999px;align-items:center;padding:.4rem .9rem;font-size:.8rem;transition:color .25s,border-color .25s;display:inline-flex}.alt-pill:hover{color:var(--accent);border-color:var(--accent)}.alt-scroller{scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;gap:1.25rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.alt-scroller::-webkit-scrollbar{display:none}.alt-scroller>*{scroll-snap-align:start;flex:none}.alt-shelf-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.alt-shelf-track{width:max-content;animation:60s linear infinite alt-shelf-scroll;display:flex}.alt-shelf-track>a{margin-right:1.25rem}.alt-shelf-marquee:hover .alt-shelf-track{animation-play-state:paused}@keyframes alt-shelf-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.alt-shelf-track{flex-wrap:wrap;row-gap:1.25rem;animation:none}}@keyframes alt-reveal-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.alt-reveal{animation:.7s cubic-bezier(.22,1,.36,1) both alt-reveal-up}@keyframes alt-quote-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.alt-quote-fade{animation:.6s both alt-quote-fade}.alt-shine{isolation:isolate;position:relative;overflow:hidden}.alt-shine:after{content:"";pointer-events:none;background:linear-gradient(120deg,#0000 30%,#ffffff8c 50%,#0000 70%);transition:transform .65s;position:absolute;inset:0;transform:translate(-130%)}.alt-shine:hover:after,.alt-shine:focus-visible:after{transform:translate(130%)}@media (prefers-reduced-motion:reduce){.alt-marquee,.alt-reveal,.alt-quote-fade{animation:none!important}.alt-shine:after{transition:none;display:none}}
