@font-face{font-family:Inter;src:url(../fonts/InterVariable.woff2) format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--oi-accent:#003cff;--oi-ink:#101114;--oi-muted:#62666e;--oi-paper:#fff;--oi-line:#51555e;--oi-soft:#e1e3e7;--oi-body:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--oi-content-width:46rem;--oi-wide-width:68rem;--oi-gutter:clamp(1.25rem,4.2vw,5rem)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;text-size-adjust:100%;-webkit-text-size-adjust:100%;color-scheme:light}
body{margin:0;background:var(--oi-paper);color:var(--oi-ink);font-family:var(--gh-font-body,var(--oi-body));font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;text-underline-offset:.22em}
a:hover{text-decoration:underline}
button,input,textarea,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
img{display:block;max-width:100%;height:auto}
svg{max-width:100%}
h1,h2,h3,h4,h5,h6,p,figure{margin:0}
h1,h2,h3,h4,h5,h6{font-family:var(--gh-font-heading,var(--oi-body))}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--oi-accent);outline-offset:5px}
::selection{background:#e4eaff;color:var(--oi-ink)}
.site-shell{max-width:1600px;margin-inline:auto;padding:1.8rem var(--oi-gutter) 0}
.skip-link{position:fixed;top:-5rem;left:1rem;z-index:100;padding:.65rem 1rem;background:var(--oi-accent);color:white}
.skip-link:focus{top:1rem}
.site-header{border-bottom:2px solid var(--oi-ink);padding-bottom:1.5rem;margin-bottom:2rem}
.site-utility{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.1rem;min-height:2rem}
.site-label{font-size:.76rem;line-height:1.4;font-weight:750;letter-spacing:.12em;text-transform:uppercase;overflow-wrap:anywhere}
.site-navigation{min-width:0;max-width:100%}
.nav{display:flex;align-items:center;flex-wrap:wrap;gap:1.55rem;list-style:none;margin:0;padding:0}
.nav a{display:inline-flex;align-items:center;min-height:2.25rem;font-size:.85rem;font-weight:450}
.nav-current a{color:var(--oi-accent);text-decoration:underline;text-decoration-thickness:1px}
.masthead{font-size:clamp(3rem,17.7vw,19rem);line-height:1.01;letter-spacing:-.07em;font-weight:800;white-space:nowrap;color:var(--oi-accent);margin-left:-.025em;overflow:visible}
.masthead a{display:inline-block;max-width:100%;text-decoration:none}
.site-description{margin-top:.55rem;font-size:clamp(1.2rem,3.45vw,3rem);font-weight:700;letter-spacing:-.05em;line-height:1.15}
.site-header-compact .masthead{font-size:clamp(2rem,4.3vw,4rem);letter-spacing:-.065em}
.site-header-compact .site-description{font-size:1rem;line-height:1.45;letter-spacing:-.02em;font-weight:450;color:var(--oi-muted)}
.site-header-compact{padding-bottom:1.3rem;margin-bottom:3rem}
.index-layout{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(18rem,1fr);gap:2rem;align-items:start}
.writing-index,.sidebar{min-width:0}
.eyebrow{font-size:.73rem;line-height:1.5;font-weight:650;letter-spacing:.13em;text-transform:uppercase;color:var(--oi-accent)}
.index-toolbar{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;margin-bottom:.95rem}
.topic-navigation{display:flex;align-items:center;flex-wrap:wrap;gap:1.3rem}
.topic-navigation a{font-size:.78rem;padding:.25rem 0;min-height:1.7rem}
.topic-navigation [aria-current]{color:var(--oi-accent);text-decoration:underline;text-decoration-thickness:1px}
.archive-header{margin-bottom:2rem}
.archive-header h1{font-size:clamp(2rem,4.2vw,4rem);line-height:1.05;letter-spacing:-.055em}
.archive-header p{margin-top:.8rem;max-width:42rem;color:var(--oi-muted);font-size:1rem}
.post-list{counter-reset:oi-post var(--oi-post-offset,0);list-style:none;padding:0;margin:0}
.post-row{position:relative;display:grid;grid-template-columns:5rem minmax(0,1fr);gap:1.1rem;padding:1.1rem 0 1.35rem;border-bottom:1px solid var(--oi-line);counter-increment:oi-post}
.post-row::before{content:counter(oi-post,decimal-leading-zero);font-size:3.15rem;line-height:1;font-weight:750;letter-spacing:-.065em;color:var(--oi-accent);font-variant-numeric:tabular-nums;padding-top:.1rem}
.post-row-content{min-width:0;padding-right:2.1rem}
.post-category{display:inline-block;font-size:.65rem;font-weight:650;line-height:1.4;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.25rem}
.post-row-title{font-size:clamp(1.18rem,1.7vw,1.6rem);line-height:1.16;font-weight:700;letter-spacing:-.025em;overflow-wrap:break-word}
.post-row-title>a{display:block}
.post-row-arrow{position:absolute;right:0;top:1.75rem;color:var(--oi-accent);font-size:1.65rem;font-weight:400;line-height:1}
.post-row-title a:hover{color:var(--oi-accent);text-decoration:none}
.post-row-excerpt{margin-top:.55rem;font-size:1rem;line-height:1.4;letter-spacing:-.015em;max-width:42rem}
.empty-index{padding:2rem 0;border-bottom:1px solid var(--oi-line);color:var(--oi-muted)}
.sidebar{border-left:1px solid var(--oi-line);padding-left:1.55rem}
.sidebar-portrait{width:100%;aspect-ratio:1;object-fit:cover}
.portrait-link{display:block}
.about-link{display:inline-flex;gap:.5rem;align-items:center;color:var(--oi-accent);margin-top:.65rem;min-height:2rem}
.bluesky-feed{margin-top:1.15rem;border-top:1px solid var(--oi-line);padding-top:1rem}
.bluesky-header{margin-bottom:1rem}
.bluesky-profile{font-size:.94rem;overflow-wrap:anywhere}
.text-link{color:var(--oi-accent)}
.bluesky-status{font-size:.85rem;color:var(--oi-muted);line-height:1.45;margin:.7rem 0}
html:not(.js) .bluesky-feed>.bluesky-status{display:none}
.bluesky-post{padding:.8rem 0 .9rem;border-bottom:1px solid var(--oi-line)}
.bluesky-post:first-child{padding-top:0}
.bluesky-date{display:block;font-size:.75rem;color:var(--oi-muted);margin-bottom:.2rem;line-height:1.5}
.bluesky-text{font-size:.95rem;line-height:1.32;letter-spacing:-.018em;white-space:pre-wrap;overflow-wrap:anywhere}
.bluesky-text a{color:var(--oi-accent);font-size:.87em}
.bluesky-post-footer{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:.45rem;align-items:center;color:var(--oi-accent);font-size:.77rem;line-height:1.45}
.bluesky-quote-label{font-size:.72rem;color:var(--oi-muted);margin-bottom:.2rem}
.bluesky-link-card{display:block;padding:.6rem 0;margin-top:.4rem;font-size:.8rem;font-weight:600;line-height:1.35;color:var(--oi-accent);overflow-wrap:anywhere}
.bluesky-more{display:inline-block;font-size:.9rem;margin-top:.5rem;min-height:2rem}
.pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin-top:1.5rem;font-size:.85rem}
.pagination>div:last-child{text-align:right}
.pagination a{color:var(--oi-accent);display:inline-block;padding:.6rem 0}
.page-number{color:var(--oi-muted);font-variant-numeric:tabular-nums}
.site-footer{margin-top:3rem;border-top:1px solid var(--oi-line);padding:1rem 0 1.5rem;display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;font-size:.7rem}
.footer-links{display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap}
.footer-links .nav{gap:1.35rem}
.footer-links .nav a{font-size:.7rem;min-height:1.6rem}
.powered-by{color:var(--oi-muted)}
.reading-layout{padding-bottom:.5rem}
.article-header{max-width:var(--oi-content-width);margin:0 auto 2rem}
.article-title{font-size:clamp(2.1rem,5.5vw,4.7rem);font-weight:750;line-height:1.04;letter-spacing:-.055em;margin-top:.45rem;overflow-wrap:break-word}
.article-deck{max-width:54rem;font-size:clamp(1.12rem,2vw,1.5rem);line-height:1.45;margin-top:1.2rem;color:var(--oi-muted);letter-spacing:-.02em}
.article-meta{display:flex;gap:.4rem 1.4rem;flex-wrap:wrap;font-size:.8rem;margin-top:1.25rem;color:var(--oi-muted)}
.article-meta a:hover{color:var(--oi-accent)}
.article-feature{max-width:var(--oi-content-width);margin:0 auto 2.8rem}
.article-feature img{width:100%;height:auto}
.article-feature figcaption,.gh-content figcaption{font-size:.8rem;text-align:center;color:var(--oi-muted);line-height:1.5;margin:.6rem auto 0;max-width:var(--oi-content-width)}
.gh-content{display:grid;grid-template-columns:1fr minmax(0,var(--oi-content-width)) 1fr;column-gap:1.5rem;font-size:1.16rem;line-height:1.75;letter-spacing:-.011em}
.gh-content>*{grid-column:2;min-width:0}
.gh-content>*+*{margin-top:1.35rem}
.gh-content>:first-child{margin-top:0}
.gh-content p,.gh-content li{overflow-wrap:break-word}
.gh-content a{color:var(--oi-accent);text-decoration:underline;text-decoration-thickness:1px}
.gh-content a:hover{text-decoration-thickness:2px}
.gh-content h2{font-size:clamp(1.65rem,3vw,2.25rem);line-height:1.2;letter-spacing:-.035em;margin-top:2.8rem}
.gh-content h3{font-size:1.4rem;line-height:1.3;letter-spacing:-.03em;margin-top:2rem}
.gh-content h4{font-size:1.15rem;line-height:1.4;margin-top:1.6rem}
.gh-content :is(h2,h3,h4)+*{margin-top:.7rem}
.gh-content ul,.gh-content ol{padding-left:1.4rem}
.gh-content li+li{margin-top:.35rem}
.gh-content blockquote{border-left:3px solid var(--oi-accent);padding:.15rem 0 .15rem 1.25rem;margin-left:0;letter-spacing:-.025em;font-size:1.3rem}
.gh-content blockquote p+p{margin-top:1rem}
.gh-content hr{height:1px;background:var(--oi-soft);border:0;width:100%;margin-block:2rem}
.gh-content pre{padding:1.3rem;background:#f5f6f8;overflow:auto;max-width:100%;line-height:1.6;font-size:.87rem;letter-spacing:0}
.gh-content code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}
.gh-content :not(pre)>code{font-size:.88em;padding:.15em .3em;background:#f5f6f8}
.gh-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:.95rem}
.gh-content th,.gh-content td{padding:.6rem .8rem;border-bottom:1px solid var(--oi-soft);text-align:left;white-space:normal}
.gh-content th{font-weight:650;border-bottom-color:var(--oi-line)}
.gh-content iframe{max-width:100%;border:0}
.gh-content video,.gh-content audio{max-width:100%}
.gh-content .kg-width-wide{grid-column:1/-1;width:min(100%,var(--oi-wide-width));justify-self:center}
.gh-content .kg-width-full{grid-column:1/-1;width:100%;justify-self:center}
.kg-image{margin-inline:auto;height:auto}
.kg-gallery-container{display:flex;flex-direction:column;gap:.8rem}
.kg-gallery-row{display:flex;gap:.8rem;justify-content:center}
.kg-gallery-image{flex:1 1 0;min-width:0}
.kg-gallery-image img{width:100%;height:100%;object-fit:cover}
.kg-bookmark-card{width:100%}
.kg-bookmark-container{display:flex;min-height:9rem;border:1px solid var(--oi-soft);color:var(--oi-ink)!important;text-decoration:none!important;overflow:hidden}
.kg-bookmark-content{flex:1;min-width:0;padding:1.1rem}
.kg-bookmark-title{font-size:1rem;font-weight:650;line-height:1.4}
.kg-bookmark-description{margin-top:.5rem;font-size:.85rem;line-height:1.5;color:var(--oi-muted)}
.kg-bookmark-metadata{display:flex;align-items:center;gap:.5rem;font-size:.75rem;margin-top:.6rem;flex-wrap:wrap}
.kg-bookmark-icon{width:1.1rem;height:1.1rem}
.kg-bookmark-thumbnail{flex:0 0 28%;min-width:0}
.kg-bookmark-thumbnail img{width:100%;height:100%;object-fit:cover}
.kg-callout-card{font-size:1rem;line-height:1.6}
.kg-toggle-card{font-size:1rem;line-height:1.6}
.kg-header-card,.kg-signup-card{overflow:hidden}
.kg-button-card a{color:var(--oi-accent)}
.content-cta,.article-comments{max-width:var(--oi-content-width);margin:2rem auto}
.content-cta{padding:1.5rem 0;border-top:1px solid var(--oi-line);border-bottom:1px solid var(--oi-line)}
.content-cta h2{font-size:1.5rem;letter-spacing:-.035em;line-height:1.3}
.content-cta p{margin:.5rem 0 1rem;color:var(--oi-muted)}
.outline-button{display:inline-flex;gap:1rem;align-items:center;padding:.65rem 1rem;color:var(--oi-accent);border:1px solid var(--oi-accent)}
.article-navigation{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:var(--oi-content-width);margin:3rem auto 0;border-top:1px solid var(--oi-line);padding-top:1rem}
.article-navigation>a{display:flex;flex-direction:column;gap:.5rem;font-size:1.1rem;font-weight:600;line-height:1.3}
.article-navigation>a:hover{color:var(--oi-accent)}
.error-page{padding:3rem 0 6rem;max-width:45rem}
.error-page h1{font-size:clamp(2rem,5vw,4rem);line-height:1.1;letter-spacing:-.05em}
.error-page p{margin:1rem 0}
@media(min-width:1400px){.index-layout{gap:2.5rem}.sidebar{padding-left:2rem}.post-row{grid-template-columns:5.5rem minmax(0,1fr);gap:1.4rem}.post-row-title{font-size:1.7rem}.post-row::before{font-size:3.65rem}.post-row{padding-block:1.25rem 1.55rem}.bluesky-text{font-size:1rem}}
@media(max-width:899px){.site-shell{padding-top:1.25rem}.index-layout{grid-template-columns:1fr;gap:2.5rem}.sidebar{border-left:0;border-top:1px solid var(--oi-line);padding:1.5rem 0 0;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:2rem}.bluesky-feed{margin-top:0;border-top:0;padding-top:0}.post-row-title{font-size:1.35rem}.post-row{grid-template-columns:4.5rem minmax(0,1fr)}.post-row::before{font-size:2.9rem}.gh-content{grid-template-columns:1fr minmax(0,var(--oi-content-width)) 1fr;gap:0}.article-feature{margin-bottom:2rem}.site-header-compact{margin-bottom:2rem}}
@media(max-width:619px){.site-utility{flex-direction:column;align-items:flex-start;gap:.35rem;margin-bottom:.7rem}.site-navigation{width:100%}.site-navigation .nav{justify-content:space-between;gap:.3rem}.site-navigation .nav a{min-height:2.6rem;font-size:.82rem;padding:.2rem 0}.site-description{font-size:1.18rem;letter-spacing:-.035em;line-height:1.25;margin-top:.45rem}.site-header{padding-bottom:1.2rem;margin-bottom:1.25rem}.site-header-compact .masthead{font-size:2rem}.site-header-compact .site-description{font-size:.86rem}.index-toolbar{gap:.45rem;margin-bottom:.5rem}.index-toolbar .eyebrow{width:100%;font-size:.69rem}.topic-navigation{gap:1rem;row-gap:.25rem}.topic-navigation a{font-size:.78rem;min-height:2.1rem;padding:.35rem 0}.post-row{grid-template-columns:3.1rem minmax(0,1fr);gap:.75rem;padding-block:1rem 1.2rem}.post-row::before{font-size:2.35rem;padding-top:.15rem}.post-row-content{padding-right:1.55rem}.post-row-title{font-size:1.17rem;line-height:1.2;letter-spacing:-.035em}.post-row-arrow{font-size:1.3rem;top:1.65rem}.post-category{font-size:.62rem}.post-row-excerpt{font-size:.96rem;line-height:1.5;margin-top:.55rem}.sidebar{grid-template-columns:1fr;gap:1.25rem;padding-top:1.5rem}.sidebar-profile{width:100%;max-width:none}.bluesky-feed{border-top:1px solid var(--oi-line);padding-top:1rem}.bluesky-text{font-size:1.05rem;line-height:1.45}.bluesky-date{font-size:.8rem}.bluesky-post{padding-block:1rem}.bluesky-post-footer{font-size:.85rem}.bluesky-profile{font-size:1rem}.bluesky-more{font-size:.96rem;min-height:2.75rem;display:flex;align-items:center}.bluesky-post-footer a{min-height:2rem;display:inline-flex;align-items:center}.site-footer{margin-top:2rem;font-size:.72rem;gap:.45rem;padding-bottom:1.2rem}.footer-links{gap:.3rem 1.2rem;width:100%}.footer-links .nav{gap:1rem}.footer-links .nav a{font-size:.72rem;min-height:2.3rem}.powered-by{padding:.3rem 0}.article-title{font-size:2.25rem;line-height:1.1;letter-spacing:-.045em}.article-deck{font-size:1.12rem;line-height:1.5}.article-meta{font-size:.76rem;gap:.3rem .9rem}.gh-content{font-size:1.08rem;line-height:1.75}.gh-content>*+*{margin-top:1.15rem}.gh-content h2{font-size:1.65rem;margin-top:2.2rem}.gh-content h3{font-size:1.3rem}.gh-content blockquote{font-size:1.17rem;padding-left:1rem}.article-navigation{grid-template-columns:1fr;gap:1.5rem}.article-navigation>a{font-size:1.04rem}.kg-bookmark-thumbnail{flex-basis:24%}.kg-gallery-container,.kg-gallery-row{gap:.35rem}.pagination{gap:.5rem;font-size:.76rem}.error-page{padding:2rem 0 3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{.site-utility,.sidebar,.site-footer,.article-navigation,.article-comments,.pagination{display:none}.site-shell{padding:0;max-width:none}.site-header{border-bottom:1px solid #000}.masthead{font-size:2rem!important;color:#000}.site-description{font-size:1rem}.gh-content{display:block;font-size:11pt;line-height:1.5}.gh-content a{color:#000}.article-title{font-size:28pt}.article-feature{max-width:100%}.kg-width-wide,.kg-width-full{width:100%}.reading-article{break-inside:auto}}
