:root{color-scheme:light;--bg: #ffffff;--text: #0b0b0b;--muted: #666666;--line: #d8d8d8;--soft: #f6f6f3;--soft-2: #eeeeea;--accent: #0b0b0b;--highlight: #f8261f;--header-bg: rgba(255, 255, 255, .92);--interaction-duration: .16s;--interaction-easing: ease;--header-font: "Gowun Batang", Georgia, serif;--body-font: "Gowun Batang", Georgia, serif;--nav-height: 76px;--footer-height: 72px;--page-top-gap: 34px;--content-bottom-gap: 24px}:root[data-theme=dark]{color-scheme:dark;--bg: #0b0b0b;--text: #f4f2ec;--muted: #aaa9a3;--line: #3a3a38;--soft: #181816;--soft-2: #242421;--accent: #f4f2ec;--header-bg: rgba(11, 11, 11, .92)}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--bg: #0b0b0b;--text: #f4f2ec;--muted: #aaa9a3;--line: #3a3a38;--soft: #181816;--soft-2: #242421;--accent: #f4f2ec;--header-bg: rgba(11, 11, 11, .92)}}*{box-sizing:border-box}html{background:var(--bg);color:var(--text);font-family:var(--body-font);font-size:16px;letter-spacing:0;scroll-behavior:smooth;scrollbar-color:var(--highlight) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--highlight);border:2px solid var(--bg);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--highlight)}body{min-width:320px;margin:0;background:var(--bg);color:var(--text);overflow:hidden;text-transform:lowercase}button,a{font:inherit}a{color:inherit;text-decoration:none}button{border:0;background:transparent;color:inherit;cursor:pointer}img{display:block;max-width:100%}:focus-visible{outline:2px solid var(--text);outline-offset:3px}[data-interaction]{transition:background var(--interaction-duration) var(--interaction-easing),border-color var(--interaction-duration) var(--interaction-easing),color var(--interaction-duration) var(--interaction-easing),opacity var(--interaction-duration) var(--interaction-easing),transform var(--interaction-duration) var(--interaction-easing)}.interaction-icon{transition:transform var(--interaction-duration) var(--interaction-easing)}[data-interaction=text][aria-current=page],[data-interaction=text][aria-pressed=true]{color:var(--highlight);font-style:italic;text-decoration:line-through;text-decoration-thickness:1px}[data-interaction=text]:focus-visible{color:var(--highlight);font-style:italic}[data-interaction=row]:focus-visible .interaction-label,[data-interaction=surface]:focus-visible .interaction-label{color:var(--highlight);font-style:italic}[data-interaction]:focus-visible .interaction-icon--external{transform:translate(3px,-3px)}[data-interaction]:focus-visible .interaction-icon--internal{transform:translate(3px)}[data-interaction=surface]:focus-visible{background:var(--soft)}[data-interaction=control][aria-pressed=true]{border-color:var(--text);background:var(--text);color:var(--bg)}[data-interaction=control]:not([aria-pressed=true]):focus-visible{border-color:var(--text);background:var(--soft);color:var(--text)}[data-interaction=icon]:focus-visible{background:var(--soft);color:var(--highlight)}[data-interaction=media]:focus-visible{opacity:.84;transform:translateY(-2px)}@media(hover:hover){[data-interaction=text]:not([aria-current=page]):not([aria-pressed=true]):hover{color:var(--highlight);font-style:italic}[data-interaction=row]:hover .interaction-label,[data-interaction=surface]:hover .interaction-label{color:var(--highlight);font-style:italic}[data-interaction]:hover .interaction-icon--external{transform:translate(3px,-3px)}[data-interaction]:hover .interaction-icon--internal{transform:translate(3px)}[data-interaction=surface]:hover{background:var(--soft)}[data-interaction=control]:not([aria-pressed=true]):hover{border-color:var(--text);background:var(--soft);color:var(--text)}[data-interaction=icon]:hover{background:var(--soft);color:var(--highlight)}[data-interaction=media]:hover{opacity:.84;transform:translateY(-2px)}}.site-header{position:fixed;inset:0 0 auto 0;z-index:20;display:flex;align-items:center;justify-content:space-between;min-height:var(--nav-height);padding:14px clamp(18px,3vw,44px);background:var(--header-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.site-footer{position:fixed;inset:auto 0 0;z-index:20;display:flex;justify-content:space-between;gap:18px;min-height:var(--footer-height);padding:20px clamp(18px,3vw,44px) 16px;background:var(--bg);color:var(--text);font-family:var(--body-font);font-size:.82rem;line-height:1;pointer-events:none}.site-footer:before{position:absolute;top:0;right:clamp(18px,3vw,44px);left:clamp(18px,3vw,44px);height:1px;background:var(--line);content:""}.brand-lockup{display:inline-flex;align-items:center}.brand-mark{display:block;flex:0 0 35px;width:35px;height:35px;background:var(--highlight);border-radius:50%}.nav-menu{display:flex;align-items:center;gap:5px}.header-actions{display:flex;align-items:center;gap:6px}.nav-link{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 10px;border:1px solid transparent;border-radius:8px;color:var(--text);font-family:var(--header-font);font-size:1.32rem;text-transform:lowercase;white-space:nowrap}.nav-link-out{margin-left:6px;border-color:var(--line)}.icon-button{display:inline-grid;width:42px;height:42px;place-items:center;border:0;border-radius:8px;background:var(--bg)}.menu-toggle{display:none}.page-track{--page-jump-enter-offset: 34px;display:flex;width:100vw;height:100dvh;overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--highlight) transparent;transform:translate(0);transition:opacity .18s ease-in,transform .18s cubic-bezier(.22,1,.36,1)}.page-track.is-page-jumping{opacity:0;pointer-events:none;transition-duration:.12s;transition-timing-function:ease-out}.page-track.is-page-jump-entering{transition:none}.page-track.is-page-jump-entering.is-page-jump-forward{transform:translate(var(--page-jump-enter-offset))}.page-track.is-page-jump-entering.is-page-jump-backward{transform:translate(calc(var(--page-jump-enter-offset) * -1))}.mobile-page{min-height:100dvh}.page-panel{flex:0 0 100vw;width:100vw;height:100dvh;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always}.page-shell{display:grid;grid-template-columns:minmax(250px,.42fr) minmax(420px,.58fr);gap:clamp(44px,7vw,120px);align-items:start;height:100dvh;overflow:hidden;padding:calc(var(--nav-height) + var(--page-top-gap)) clamp(28px,6vw,112px) calc(var(--footer-height) + var(--content-bottom-gap))}.page-heading{max-width:560px}.page-content{min-width:0}.stacked-content{display:grid;gap:24px}.eyebrow,.card-eyebrow,.reading-item span,.talk-card span,.thought-card span{margin:0 0 14px;color:var(--muted);font-size:.86rem;font-weight:400;letter-spacing:0;text-transform:lowercase}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--header-font);font-weight:400;letter-spacing:0}h1{max-width:900px;margin-bottom:28px;font-size:clamp(3.2rem,6.4vw,7rem);line-height:.98}h2{margin-bottom:10px;font-size:clamp(1.45rem,2.2vw,2.3rem);line-height:1.16}p{color:var(--muted);line-height:1.42}.page-intro{max-width:420px;margin-bottom:30px;font-size:clamp(.94rem,1.05vw,1.08rem)}.me-hero{position:static}.hero-copy{max-width:720px;color:var(--text);font-size:clamp(.98rem,1.1vw,1.16rem);line-height:1.42}.capability-row,.skill-strip{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0}.capability-row span,.skill-strip span{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--soft);font-size:.9rem;line-height:1}.primary-link{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 14px;border:1px solid var(--text);border-radius:8px;background:var(--text);color:var(--bg);font-weight:700}.about-columns{columns:2 220px;column-gap:34px;padding-top:8px}.about-columns p{break-inside:avoid;margin-bottom:12px}.about-columns .ambition{color:var(--text);font-family:var(--header-font);font-size:1.02rem;line-height:1.25}.index-list{display:grid;border-top:1px solid var(--line)}.index-row{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(120px,.8fr) minmax(90px,.55fr);gap:clamp(18px,3vw,44px);align-items:center;min-height:58px;padding:13px 0;border-bottom:1px solid var(--line);color:var(--text)}.index-row--single{grid-template-columns:1fr}.index-row:has(.index-thumb){grid-template-columns:64px 1fr auto;gap:16px}.book-row{grid-template-columns:minmax(180px,1.3fr) minmax(120px,.8fr) minmax(90px,.55fr) auto}.index-row>.interaction-icon{justify-self:end}.index-thumb{width:52px;height:52px;object-fit:cover}.index-row strong,.index-row span{font-family:var(--header-font);font-size:clamp(1.05rem,1.45vw,1.45rem);font-weight:400;line-height:1.1}.index-row span{color:var(--muted)}.index-row .interaction-meta{color:var(--muted);font-family:var(--body-font);font-size:clamp(.78rem,.9vw,.9rem)}.filtered-index{display:grid;grid-template-rows:auto minmax(0,1fr);gap:30px;max-height:calc(100dvh - var(--nav-height) - var(--page-top-gap) - var(--footer-height) - var(--content-bottom-gap));min-height:0}.filtered-index>.vertical-scroll{max-height:none;min-height:0}.vertical-scroll{max-height:calc(100dvh - var(--nav-height) - var(--page-top-gap) - var(--footer-height) - var(--content-bottom-gap));overflow-y:auto;overscroll-behavior:contain;padding-right:12px;scrollbar-width:thin;scrollbar-color:var(--highlight) transparent}.social-grid,.reading-list,.talk-list,.thought-list,.influence-grid{display:grid;gap:16px}.external-card,.reading-item,.talk-card,.thought-card,.github-panel,.influence-grid section{position:relative;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.external-card{min-height:152px}.external-card strong{align-self:end;color:var(--text);font-family:var(--header-font);font-size:.84rem}.external-card span:not(.card-eyebrow){color:var(--muted);line-height:1.55}.external-card svg{position:absolute;top:18px;right:18px}.social-grid{grid-template-columns:repeat(3,minmax(170px,1fr));max-width:none}.social-embed-stack{display:grid;gap:34px;max-height:calc(100dvh - var(--nav-height) - var(--page-top-gap) - var(--footer-height) - var(--content-bottom-gap));overflow-y:auto;overscroll-behavior:contain;padding-right:12px;scrollbar-width:thin;scrollbar-color:var(--highlight) transparent}.social-embed-group{display:grid;gap:14px}.social-embed-group .eyebrow{margin-bottom:0}.github-contrib-card{display:block;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.github-contrib-chart{width:100%;max-width:760px;height:auto}.github-contrib-chart--dark{display:none}:root[data-theme=dark] .github-contrib-chart--light{display:none}:root[data-theme=dark] .github-contrib-chart--dark{display:block}.contact-link{display:inline-block;color:var(--text);font-family:var(--header-font);font-size:clamp(2.4rem,5vw,5.5rem);line-height:.98}.instagram-grid{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:14px}.instagram-tile{display:grid;gap:10px;color:var(--text)}.instagram-tile img{width:100%;aspect-ratio:1;object-fit:cover}.instagram-tile span{font-family:var(--header-font);font-size:clamp(.95rem,1.1vw,1.18rem);line-height:1.1}.logo-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:0;width:100%}.logo-card{margin:0;background:var(--bg)}.logo-card img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}:root[data-theme=dark] .logo-card img{filter:grayscale(1) invert(1);mix-blend-mode:screen}.reading-list,.talk-list,.thought-list{grid-template-columns:repeat(3,minmax(170px,1fr));max-width:none}.reading-item,.talk-card,.thought-card{display:grid;align-content:start;gap:18px;min-height:224px;padding:22px}.reading-item h2,.talk-card h2,.thought-card h2{font-size:1.02rem}.byline{margin-bottom:14px;color:var(--text);font-weight:700}.github-panel{display:grid;grid-template-columns:auto minmax(260px,1fr) auto;gap:24px;align-items:center;max-width:1050px;padding:clamp(22px,4vw,42px)}.github-panel p{max-width:640px}.skill-strip{max-width:920px}.page-shell--text{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(320px,.8fr);gap:clamp(32px,6vw,92px);align-items:start}.page-shell--text .page-heading{position:sticky;top:calc(var(--nav-height) + 48px)}.essay-block{max-width:700px;padding-top:22px}.essay-block p{color:var(--text);font-size:clamp(1.12rem,1.6vw,1.36rem);line-height:1.75}.influence-grid{grid-template-columns:1fr;max-width:680px;padding-top:22px}.influence-grid section{padding:22px}.influence-grid h2{font-size:.95rem}.talk-index{display:grid;gap:30px}.filter-list{display:flex;flex-wrap:wrap;gap:8px}.filter-control{display:flex;grid-template-columns:max-content 4ch;gap:0;align-items:center;min-height:38px;padding:0 6px;color:var(--text);font-family:var(--header-font);font-size:1rem}.filter-empty{margin:0;padding:20px 0;border-bottom:1px solid var(--line)}.talk-rows{display:grid;border-top:1px solid var(--line)}.talk-row{display:grid;gap:9px;padding:20px 0;border-bottom:1px solid var(--line);color:var(--text)}.talk-row__meta,.talk-row__title{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.talk-row__meta{color:var(--muted);font-size:.78rem;letter-spacing:.04em}.talk-row__title strong{max-width:720px;font-family:var(--header-font);font-size:clamp(1.3rem,2.15vw,2.15rem);font-weight:400;line-height:1.1}.talk-row__title svg{flex:0 0 auto}.talk-row__context{color:var(--muted);font-size:.94rem;line-height:1.35}.talk-detail-shell{grid-template-columns:minmax(320px,.86fr) minmax(360px,.74fr);gap:clamp(38px,6vw,96px)}.talk-detail-heading h1{margin-bottom:32px;font-size:clamp(2.5rem,4.5vw,5.25rem)}.talk-back{display:inline-flex;gap:8px;align-items:center;margin-bottom:34px;color:var(--muted);font-size:.9rem}.talk-status{display:block;margin-bottom:13px;color:var(--highlight);font-size:.8rem;letter-spacing:.04em}.talk-facts{display:grid;gap:12px;margin:0}.talk-facts div{display:grid;grid-template-columns:76px 1fr;gap:14px}.talk-facts dt,.talk-facts dd{margin:0;line-height:1.35}.talk-facts dt{color:var(--muted);font-size:.82rem}.talk-facts dd{color:var(--text);font-size:.94rem}.talk-detail-content{display:grid;gap:28px}.talk-video{width:100%;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--soft)}.talk-video iframe{display:block;width:100%;aspect-ratio:16 / 9;border:0}.talk-video-link{display:flex;gap:10px;align-items:center;justify-content:center;min-height:180px;padding:24px;color:var(--text)}.talk-article{margin:0;color:var(--text);font-size:clamp(1.1rem,1.5vw,1.35rem);line-height:1.65}.talk-links{display:flex;flex-wrap:wrap;gap:10px}.talk-links a{display:inline-flex;gap:8px;align-items:center;min-height:42px;padding:0 13px;border:1px solid var(--text);border-radius:8px}.talk-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:8px}.talk-gallery a:first-child:nth-last-child(odd){grid-column:1 / -1}.talk-gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover}@media(max-width:1180px){.nav-menu{gap:2px}.nav-link{padding:0 8px;font-size:1.23rem}.me-layout,.page-shell--text{grid-template-columns:1fr}.me-hero,.page-shell--text .page-heading{position:static}}@media(max-width:900px){body{overflow:auto}.site-header{min-height:68px;padding:12px 18px}.menu-toggle{display:inline-grid}.nav-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;display:none;align-content:center;justify-items:center;min-height:100dvh;padding:88px 24px 72px;border:0;border-radius:0;background:var(--bg);overflow:hidden;scrollbar-width:none}.nav-menu::-webkit-scrollbar{display:none}.nav-menu.is-open{display:grid;grid-template-columns:1fr;gap:12px}.nav-link,.nav-link-out{justify-content:center;width:auto;min-height:52px;margin-left:0;padding:0 12px;font-size:clamp(2rem,12vw,4.25rem)}.page-track{display:block;width:auto;height:auto;overflow:visible;scroll-snap-type:none}.page-panel{width:auto;height:auto;min-height:auto;overflow:visible;scroll-snap-align:none}.mobile-page{min-height:100dvh}.page-shell{display:block;grid-template-columns:none;height:auto;min-height:auto;overflow:visible;padding:104px 20px calc(var(--footer-height) + var(--content-bottom-gap))}.page-heading{max-width:none}.page-content{margin-top:26px}.page-panel+.page-panel .page-shell{padding-top:76px;border-top:1px solid var(--line)}h1{font-size:clamp(2.1rem,12.6vw,3.29rem)}.page-intro{margin-bottom:28px}.about-columns{columns:auto;padding-top:8px}.github-panel,.social-grid,.instagram-grid,.reading-list,.talk-list,.thought-list{grid-template-columns:1fr}.index-row{grid-template-columns:1fr;gap:6px;min-height:auto;padding:16px 0}.index-row strong,.index-row span{font-size:clamp(1.25rem,6vw,1.8rem)}.book-row{grid-template-columns:1fr auto}.book-row .interaction-label{grid-column:1;grid-row:1}.book-row .interaction-icon{grid-column:2;grid-row:1}.book-row .interaction-meta{grid-column:1 / -1}.vertical-scroll{max-height:none;overflow:visible;padding-right:0}.filtered-index{grid-template-rows:none;max-height:none}.social-embed-stack{max-height:none;overflow:visible;padding-right:0}.github-panel .primary-link{justify-self:start}.talk-detail-heading h1{font-size:clamp(2.2rem,11vw,3.75rem)}.talk-detail-content{margin-top:34px}}@media(prefers-reduced-motion:reduce){.page-track{transition:none}}@media(max-width:520px){.brand-mark{width:30px;height:30px;flex-basis:30px}.page-shell{padding-right:16px;padding-left:16px}.capability-row span,.skill-strip span{width:100%}.contact-link{font-size:clamp(2rem,12vw,3.5rem)}.talk-row__meta{align-items:baseline}.talk-row__context{font-size:.88rem}.talk-facts div{grid-template-columns:1fr;gap:2px}.talk-gallery{grid-template-columns:1fr}.talk-gallery a:first-child:nth-last-child(odd){grid-column:auto}}
