:root{--color-paper:oklch(96.6% .004 250);--color-paper-2:oklch(93.6% .006 250);--color-paper-3:oklch(89.6% .009 250);--color-ink:oklch(21% .02 255);--color-muted:oklch(45% .02 255);--color-faint:oklch(60% .015 255);--color-rule:oklch(86% .007 250);--color-rule-strong:oklch(74% .01 250);--color-accent:oklch(53% .19 31);--color-accent-ink:oklch(98% .004 250);--color-focus:oklch(55% .21 31);--color-mark:oklch(89% .06 38);--color-clip:oklch(93% .028 35);--color-clip-edge:oklch(80% .07 35);--color-code-bg:oklch(93.6% .006 250);--color-glow:oklch(88% .12 75);color-scheme:light;--font-display:"Rethink Sans", ui-sans-serif, system-ui, sans-serif;--font-body:"Newsreader", ui-serif, Georgia, serif;--font-mono:"Azeret Mono", ui-monospace, monospace;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-snap:cubic-bezier(.2, .9, .1, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--radius:6px;--radius-pill:999px;--bg-color:var(--color-paper);--bg-color-muted:var(--color-paper-2);--text-color:var(--color-ink);--text-muted:var(--color-muted);--link-color:var(--color-accent);--accent-color:var(--color-accent);--accent-strong:var(--color-accent);--border-color:var(--color-rule);--hover-bg:color-mix(in oklab, var(--color-accent) 8%, transparent);--samvad-bg:var(--color-clip);--samvad-border:var(--color-clip-edge);--font-sans:var(--font-body);--font-heading:var(--font-display);--transition-base:.2s cubic-bezier(.4, 0, .2, 1)}:root[data-theme=dark]{--color-paper:oklch(18% .012 262);--color-paper-2:oklch(22% .014 262);--color-paper-3:oklch(27% .016 262);--color-ink:oklch(94% .006 262);--color-muted:oklch(74% .014 262);--color-faint:oklch(60% .014 262);--color-rule:oklch(31% .014 262);--color-rule-strong:oklch(42% .016 262);--color-accent:oklch(80% .15 75);--color-accent-ink:oklch(18% .012 262);--color-focus:oklch(82% .16 75);--color-mark:oklch(44% .09 75);--color-clip:oklch(31% .04 75);--color-clip-edge:oklch(52% .08 75);--color-code-bg:oklch(22% .014 262);--color-glow:oklch(80% .15 75);color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-paper:oklch(18% .012 262);--color-paper-2:oklch(22% .014 262);--color-paper-3:oklch(27% .016 262);--color-ink:oklch(94% .006 262);--color-muted:oklch(74% .014 262);--color-faint:oklch(60% .014 262);--color-rule:oklch(31% .014 262);--color-rule-strong:oklch(42% .016 262);--color-accent:oklch(80% .15 75);--color-accent-ink:oklch(18% .012 262);--color-focus:oklch(82% .16 75);--color-mark:oklch(44% .09 75);--color-clip:oklch(31% .04 75);--color-clip-edge:oklch(52% .08 75);--color-code-bg:oklch(22% .014 262);--color-glow:oklch(80% .15 75);color-scheme:dark}}.theme-transition{--theme-transition:var(--transition-base)}.theme-transition button,.theme-transition input,.theme-transition textarea,.theme-transition select,.theme-transition pre,.theme-transition code,.theme-transition blockquote,.theme-transition .card{transition:background-color var(--theme-transition), border-color var(--theme-transition), box-shadow var(--theme-transition)}.theme-transition *{transition-property:background-color,border-color,box-shadow;transition-duration:var(--theme-transition)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.initial-load{animation:none!important}.initial-load .animate-fade{animation:fadeIn .5s var(--transition-base) both}.initial-load .animate-slide-up{animation:slideUpFade .5s var(--transition-base) both}.initial-load .animate-scale{animation:scaleIn .3s var(--transition-base) both}.initial-load .stagger-1{animation-delay:.1s}.initial-load .stagger-2{animation-delay:.15s}.initial-load .stagger-3{animation-delay:.2s}@media (prefers-reduced-motion:no-preference){.hover-lift{transition:transform var(--transition-base)}.hover-lift:hover{transform:translateY(-2px)}.hover-scale{transition:transform var(--transition-base)}.hover-scale:hover{transform:scale(1.02)}.link-underline{position:relative}.link-underline:after{content:"";transform-origin:100%;width:100%;height:1px;transition:transform var(--transition-base);background:currentColor;position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.link-underline:hover:after{transform-origin:0;transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.cut{background:var(--color-rule);height:1px;position:relative;container-type:inline-size}.cut i{left:0;top:calc(var(--space-2xs) * -1);width:9px;height:9px;margin-left:calc(var(--space-2xs) * -1);background:var(--color-accent);opacity:0;border-radius:50%;position:absolute}.cut:after{content:"";background:var(--color-accent);opacity:0;position:absolute;inset:0}.content .cut{margin:var(--space-3xl) 0 var(--space-xl)}.content>.cut:first-child{margin-top:0}mark.q{z-index:0;color:inherit;padding-inline:var(--space-3xs);background:0 0;position:relative}mark.q:before{content:"";z-index:-1;background:var(--color-mark);transform-origin:0;border-radius:2px;position:absolute;inset:0}@keyframes cut-dot{0%{opacity:1;transform:translate(0)}75%{opacity:1;transform:translate(100cqw)}to{opacity:0;transform:translate(100cqw)}}@keyframes cut-line{0%{opacity:1;clip-path:inset(0 100% 0 0)}75%{opacity:1;clip-path:inset(0)}to{opacity:0;clip-path:inset(0)}}@keyframes word{0%{opacity:0;transform:translateY(.35em)}to{opacity:1;transform:none}}@keyframes sweep{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.cut.is-in i{animation:cut-dot .9s var(--ease-in-out) both}.cut.is-in:after{animation:cut-line .9s var(--ease-in-out) both}.cap .w{opacity:0;display:inline-block;transform:translateY(.35em)}.cap.is-in .w{animation:word .38s var(--ease-out) forwards;animation-delay:calc(var(--wi) * 55ms + .3s)}.js .reveal{opacity:0;transform:translateY(16px)}.js .reveal.is-in{animation:rise-in .6s var(--ease-out) forwards}.js [data-searchable] mark.q:before{transform:scaleX(0)}.lit[data-searchable] mark.q:before,.lit [data-searchable] mark.q:before{animation:sweep .42s var(--ease-out) both;animation-delay:calc(var(--mi,0) * 90ms + .25s)}}:root{--font-primary:var(--font-body);--text-xs:.85rem;--text-sm:1rem;--text-base:1.1rem;--text-lg:1.25rem;--text-xl:1.4rem;--text-2xl:1.7rem;--text-3xl:2rem;--link-animation-duration:.3s}@keyframes linkUnderline{0%{width:0}to{width:100%}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;scrollbar-gutter:stable;font-size:16px;line-height:1.6;overflow-x:clip}body{background:var(--bg-color);width:100%;min-height:100vh;font-family:var(--font-primary);color:var(--text-color);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-weight:400;position:relative;overflow-x:clip}.astro-code *{font-size:var(--text-xs)}main{width:100%;max-width:680px;margin:0 auto;padding:2rem 1.5rem;position:relative;overflow-x:clip}body:has(.home) main{max-width:none;padding:0}body:has(.index-page) main,body:has(.home-story) .site-footer,body:has(.index-page) .site-footer{max-width:1160px}body:has(.index-page) main{max-width:none;padding:0}.index-head{padding-top:var(--space-2xl)}.index-head h1{font-family:var(--font-display);letter-spacing:-.045em;color:var(--color-ink);margin:0;font-size:clamp(3rem,6vw + .5rem,6.5rem);font-weight:800;line-height:.92}.index-head p{margin:var(--space-lg) 0 0;max-width:54ch;color:var(--color-muted);font-size:clamp(1.125rem,.45vw + 1rem,1.4375rem);line-height:1.45}.index-section{padding-top:var(--space-3xl)}.index-section h2+.index-blurb{margin:calc(var(--space-lg) * -1) 0 var(--space-xl);color:var(--color-muted);max-width:60ch}.index-jump{gap:var(--space-xs);margin-top:var(--space-xl);flex-wrap:wrap;display:flex}.index-jump a{align-items:center;gap:var(--space-xs);min-height:44px;padding-inline:var(--space-md);border:1px solid var(--color-rule-strong);border-radius:var(--radius-pill);font-family:var(--font-display);color:var(--color-ink);transition:border-color var(--dur-short) var(--ease-out);font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.index-jump a:after{display:none}.index-jump a:hover{border-color:var(--color-ink)}.index-jump a span{font-family:var(--font-mono);color:var(--color-muted);font-size:.8125rem;font-weight:400}.clip-part{font-family:var(--font-display);color:var(--color-accent);font-size:.8125rem;font-weight:600}.index-section .cut{margin-bottom:var(--space-xl)}.index-section h2{margin:0 0 var(--space-xl);font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-ink);font-size:clamp(2rem,2vw + 1rem,3rem);font-weight:800;line-height:1}.chips{gap:var(--space-2xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.chips li{padding:var(--space-2xs) var(--space-sm);border:1px solid var(--color-rule-strong);border-radius:var(--radius-pill);font-family:var(--font-display);color:var(--color-muted);font-size:.8125rem;font-weight:600}.tc{padding:var(--space-3xs) var(--space-xs);background:var(--color-paper-2);font-family:var(--font-mono);color:var(--color-ink);border-radius:3px;font-size:.8125rem;display:inline-block}.frame-built{align-content:center;gap:var(--space-2xs);padding:var(--space-lg) var(--space-xl) var(--space-2xl);display:grid;position:absolute;inset:0}.frame-built strong{font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-ink);font-size:clamp(1.75rem,1.6vw + 1rem,2.5rem);font-weight:800;line-height:1}.frame-built strong:not(:first-child){margin-top:var(--space-sm)}.frame-built span{font-family:var(--font-display);color:var(--color-muted);font-size:.875rem;font-weight:600}.clip-grid{gap:var(--space-2xl) 32px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.clip-card{gap:var(--space-sm);flex-direction:column;display:flex}.clip-card>a,.study-card>a{color:inherit;text-decoration:none;display:block}.clip-card>a:after,.study-card>a:after{display:none}.clip-frame{aspect-ratio:720/378;border-radius:var(--radius);background:var(--color-paper-2);outline:1px solid var(--color-rule);outline-offset:-1px;display:block;position:relative;overflow:hidden}.clip-frame img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-long) var(--ease-out)}a:hover .clip-frame img{transform:scale(1.03)}.clip-tc{left:var(--space-xs);bottom:var(--space-xs);padding:var(--space-3xs) var(--space-xs);background:var(--color-ink);color:var(--color-paper);font-family:var(--font-mono);border-radius:3px;font-size:.8125rem;position:absolute}.clip-kind{min-height:1.25rem;margin-top:var(--space-md);display:block}.clip-state{font-family:var(--font-display);color:var(--color-accent);font-size:.8125rem;font-weight:600}.clip-title{margin-top:var(--space-2xs);font-family:var(--font-display);letter-spacing:-.01em;color:var(--color-ink);transition:color var(--dur-short) var(--ease-out);font-size:1.25rem;font-weight:600;line-height:1.25;display:block}.clip-card>a:hover .clip-title,.study-card>a:hover .clip-title{color:var(--color-accent)}.clip-text{margin-top:var(--space-xs);color:var(--color-muted);line-height:1.5;display:block}.clip-card .clip-frame+.clip-title{margin-top:var(--space-md)}.clip-foot{justify-content:space-between;align-items:center;gap:var(--space-xs) var(--space-md);flex-wrap:wrap;display:flex}.study-list{gap:var(--space-2xl);margin:0;padding:0;list-style:none;display:grid}.study-card{gap:var(--space-md);padding-top:var(--space-xl);border-top:1px solid var(--color-ink);display:grid}.study-card>a{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:center;gap:32px;display:grid}.study-card .clip-title{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(1.75rem,1.5vw + 1rem,2.5rem);font-weight:800}.study-card .clip-text{color:var(--color-ink);max-width:56ch;font-size:1.125rem}.study-more{margin-top:var(--space-md);font-family:var(--font-display);color:var(--color-ink);text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:.3em;font-weight:600;display:inline-block}.role-list{margin:0;padding:0;list-style:none;display:grid}.role-list .role{gap:var(--space-md) 32px;padding-block:var(--space-xl);border-top:1px solid var(--color-rule);grid-template-columns:minmax(0,4fr) minmax(0,8fr);display:grid}.role-list .role:first-child{border-top-color:var(--color-ink)}.role-co{align-items:center;gap:var(--space-sm);font-family:var(--font-display);letter-spacing:-.025em;color:var(--color-ink);font-size:1.953rem;font-weight:800;line-height:1.1;display:flex}.role-co img{border-radius:4px}.role-title{margin-top:var(--space-xs);font-family:var(--font-display);color:var(--color-ink);font-weight:600}.role-when{margin-top:var(--space-xs);color:var(--color-muted);font-size:.875rem}.role-body p{margin:0 0 var(--space-md);max-width:62ch;color:var(--color-ink);line-height:1.65}.role-points{margin:0 0 var(--space-md);gap:var(--space-sm);max-width:62ch;color:var(--color-ink);padding-left:1.1em;line-height:1.6;display:grid}.role-points li::marker{color:var(--color-accent)}.book-list{margin:0;padding:0;list-style:none;display:grid}.book{gap:var(--space-md) 32px;padding-block:var(--space-xl);border-top:1px solid var(--color-rule);grid-template-columns:minmax(0,4fr) minmax(0,8fr);display:grid}.book:first-child{border-top-color:var(--color-ink)}.book-head{gap:var(--space-2xs);align-content:start;display:grid}.book-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);font-size:1.5625rem;font-weight:800;line-height:1.15}.book-author{color:var(--color-muted)}.book-state{font-family:var(--font-display);color:var(--color-muted);font-size:.8125rem;font-weight:600}.book-state.now{color:var(--color-accent)}.book-rating{color:var(--color-accent);letter-spacing:.1em}.book-body p{max-width:62ch;color:var(--color-ink);margin:0;line-height:1.65}@media (width<=60rem){.clip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.study-card>a,.role-list .role,.book{grid-template-columns:minmax(0,1fr)}}@media (width<=40rem){.clip-grid{grid-template-columns:minmax(0,1fr)}}html.theming::view-transition-old(root),html.theming::view-transition-new(root){mix-blend-mode:normal;animation:none}html.theming::view-transition-new(root){z-index:2}.text-link{min-height:44px;font-family:var(--font-display);color:var(--color-ink);text-decoration:underline;text-decoration-color:var(--color-rule-strong);text-underline-offset:.3em;transition:color var(--dur-short) var(--ease-out), text-decoration-color var(--dur-short) var(--ease-out);align-items:center;font-weight:600;display:inline-flex}.text-link:hover{color:var(--color-accent);text-decoration-color:currentColor}.text-link:after{display:none}.tag{z-index:2;left:var(--space-sm);top:var(--space-sm);padding:var(--space-3xs) var(--space-xs);background:var(--color-accent);color:var(--color-accent-ink);font-family:var(--font-display);border-radius:3px;font-size:.8125rem;font-weight:600;position:absolute}.tag:empty{display:none}.bridge{margin:var(--space-2xl) 0 0;max-width:44ch;font-family:var(--font-display);letter-spacing:-.01em;color:var(--color-muted);font-size:1.25rem;font-weight:600;line-height:1.35}.bridge a{color:var(--color-ink);text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:.2em;text-decoration-thickness:2px}.bridge a:hover{color:var(--color-accent)}.bridge a:after{display:none}@keyframes tag-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.tag:not(:empty){animation:tag-in .42s var(--ease-snap) both .2s}}.shell{width:100%;max-width:1360px;padding-inline:var(--gutter,64px);box-sizing:border-box;margin-inline:auto}.site-header .shell{align-items:center;gap:var(--space-lg);min-height:76px;display:flex}.wordmark{font-family:var(--font-display);letter-spacing:-.03em;color:var(--color-ink);view-transition-name:wordmark;margin-right:auto;font-size:1.25rem;font-weight:800;text-decoration:none}.wordmark:after{display:none}@media (width<=60rem){:root{--gutter:24px}.site-header .shell{gap:var(--space-sm)}}@media (width<=40rem){:root{--gutter:16px}}@media (width<=640px){main{padding:1rem}}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.04em;margin-bottom:.75rem;font-weight:400;line-height:1.2}h1{font-size:var(--text-3xl);letter-spacing:-.02em;font-weight:500}h2{font-size:var(--text-2xl);letter-spacing:-.01em;font-weight:400}h3{font-size:var(--text-xl);letter-spacing:-.01em;font-weight:400}h4{font-size:var(--text-lg);letter-spacing:0;font-weight:400}h5{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;font-weight:400}h6{font-size:var(--text-sm);letter-spacing:0;font-weight:400}p{max-width:70ch;margin-bottom:1rem;line-height:1.7}a{color:var(--link-color);transition:opacity var(--link-animation-duration);text-decoration:none;position:relative}a:not(.category-link):after{content:"";width:0;height:1px;transition:width var(--link-animation-duration) ease;background:currentColor;position:absolute;bottom:-2px;left:0}a:not(.category-link):hover:after{width:100%}.section-header a{color:var(--text-color);text-decoration:none}.content-list>:is(.blog-card,.experience-card,.project-card,.reading-card){position:relative}.content-list>:is(.blog-card,.experience-card,.project-card,.reading-card):before{content:"";background:var(--accent-strong);transform-origin:top;width:2px;position:absolute;inset:1.25rem auto 1.25rem -.8rem;transform:scaleY(0)}.content-list>:is(.blog-card,.experience-card,.project-card,.reading-card):is(:hover,:focus-within):before{transform:scaleY(1)}@media (prefers-reduced-motion:no-preference){.content-list>:is(.blog-card,.experience-card,.project-card,.reading-card):before{transition:transform var(--transition-base)}}.social-link-pill:after{content:none!important}ul,ol{margin:1.5rem 0;padding-left:1.5rem}li{margin-bottom:.5rem}code,pre{font-family:var(--font-mono);font-weight:400;font-size:var(--text-xs);letter-spacing:0}pre{background:#202a350d;border-radius:.5rem;margin:1.5rem 0;padding:1rem;overflow-x:auto}code{background:#202a350d;border-radius:.25rem;padding:.2em .4em}pre code{background:0 0;border-radius:0;padding:0}img{border-radius:.5rem;max-width:100%;height:auto;display:block}figure{margin:2rem 0}figcaption{font-size:var(--text-xs);opacity:.8;text-align:center;margin-top:.5rem}input,textarea,select,button{font-family:var(--font-primary);font-size:var(--text-xs);letter-spacing:-.02em;color:inherit;border:1px solid var(--border-color);background:0 0;border-radius:.375rem;padding:.375rem .75rem;font-weight:300}.muted-text{color:var(--text-muted);margin-top:.25rem}button{cursor:pointer;font-weight:400}table{border-collapse:collapse;width:100%;margin:1.5rem 0}th,td{text-align:left;border-bottom:1px solid var(--border-color);padding:.75rem}.subtitle{font-size:var(--text-lg);margin-top:.5rem}th{font-weight:500}blockquote{border-left:3px solid var(--border-color);margin:1.5rem 0;padding-left:1.5rem;font-style:italic}hr{border:none;border-top:1px solid var(--border-color);margin:2rem 0}::selection{background:var(--hover-bg)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--hover-bg)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-color);opacity:.2}:focus-visible{box-shadow:0 0 0 2px var(--accent-strong);outline:none}.card{background:var(--hover-bg);border:1px solid var(--border-color);border-radius:.75rem;padding:1.5rem;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #202a3514}h1,h2,h3{color:var(--text-color)}h1 .highlight{background:linear-gradient(120deg, var(--text-color) 40%, var(--accent-color) 100%);-webkit-text-fill-color:transparent;background-clip:text}.image-modal-overlay{z-index:10000;cursor:zoom-out;opacity:0;pointer-events:none;background:#000000d9;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity .2s;display:flex;position:fixed;top:0;left:0}.image-modal-overlay.active{opacity:1;pointer-events:auto}.image-modal-overlay img{border-radius:.5rem;max-width:90vw;max-height:90vh;box-shadow:0 4px 32px #00000080}.site-footer{margin-top:var(--space-3xl);border-top:1px solid var(--color-rule)}.site-footer .foot{justify-content:space-between;gap:var(--space-md) var(--space-xl);padding-block:var(--space-xl);font-family:var(--font-body);color:var(--color-muted);flex-wrap:wrap;font-size:.875rem;display:flex}.site-footer ul{gap:var(--space-xs) var(--space-lg);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.site-footer a{padding-block:var(--space-2xs);color:var(--color-ink);transition:color var(--dur-short) var(--ease-out);text-decoration:none;display:inline-block}.site-footer a:hover{color:var(--color-accent)}.site-footer a:after{display:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;color:var(--color-ink);background:var(--color-paper);position:absolute;overflow:hidden}body.has-scrubber{padding-bottom:52px}.scrubber{z-index:300;background:var(--color-paper);border-top:1px solid var(--color-rule);height:52px;position:fixed;bottom:0;left:0;right:0}.scrubber[hidden]{display:none}.scrub{align-items:center;gap:var(--space-lg);grid-template-columns:13rem minmax(0,1fr) auto;height:100%;display:grid}.chapter-now{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-family:var(--font-display);color:var(--color-ink);font-size:.875rem;font-weight:600;overflow:hidden}.chapter-now b{margin-right:var(--space-xs);font-family:var(--font-mono);color:var(--color-accent);font-weight:400}.chapter-now>*{display:inline-block}.chapters-wrap{height:100%;position:relative}.chapters{gap:var(--space-2xs);align-items:center;height:100%;margin:0;padding:0;list-style:none;display:flex}.chapters li{flex:var(--len,1);height:100%}.chapters a{height:100%;display:block;position:relative}.chapters a:before{content:"";background:var(--color-paper-3);height:4px;transition:transform var(--dur-short) var(--ease-out);border-radius:2px;margin-top:-2px;position:absolute;top:50%;left:0;right:0}.chapters a:hover:before{transform:scaleY(2)}.chapters a:after{content:attr(data-label);bottom:calc(100% + var(--space-xs));padding:var(--space-2xs) var(--space-xs);background:var(--color-ink);color:var(--color-paper);font-family:var(--font-display);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out);border-radius:3px;font-size:.8125rem;font-weight:600;position:absolute;left:0;transform:translateY(4px)}.chapters a:hover:after,.chapters a:focus-visible:after{opacity:1;transform:none}.progress{z-index:1;background:var(--color-accent);pointer-events:none;height:4px;clip-path:inset(0 calc((1 - var(--progress,0)) * 100%) 0 0);border-radius:2px;margin-top:-2px;position:absolute;top:50%;left:0;right:0}.scrub .tc{font-family:var(--font-mono);color:var(--color-muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.8125rem}.next-ch{display:none}@keyframes lower{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.chapter-now.swap>*{animation:lower .38s var(--ease-snap) both}.chapter-now.swap>span{animation-delay:60ms}}@media (width<=60rem){.scrub{grid-template-columns:minmax(0,1fr) auto}.chapters{display:none}.chapters-wrap{height:4px;position:absolute;top:-2px;left:0;right:0}.scrub .tc{display:none}.next-ch{min-height:44px;font-family:var(--font-display);color:var(--color-accent);white-space:nowrap;align-items:center;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.next-ch:after{display:none}}.content .term{background:var(--samvad-bg);border:1px solid var(--samvad-border);white-space:nowrap;cursor:help;transition:border-color var(--transition-base);border-radius:999px;padding:.05em .4em;position:relative}.content .term:is(:hover,:focus-within){border-color:var(--accent-color)}.content .term:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px;border-radius:2px}.content .term-tip{transform:translateX(calc(-50% + var(--tip-shift,0px)));background:var(--bg-color-muted);width:max-content;max-width:min(18rem,85vw);color:var(--text-color);border:1px solid var(--border-color);font-family:var(--font-sans);text-align:left;white-space:normal;z-index:20;border-radius:6px;padding:.6rem .8rem;font-size:.875rem;font-style:normal;font-weight:400;line-height:1.5;display:none;position:absolute;bottom:calc(100% + .5rem);left:50%;box-shadow:0 6px 20px #202a351f}.content .term.below .term-tip{top:calc(100% + .5rem);bottom:auto}.content .term:is(:hover,:focus-within) .term-tip{display:block}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.site-nav[data-astro-cid-5upy6dye]{align-items:center;display:flex}.links[data-astro-cid-5upy6dye]{gap:var(--space-2xs) var(--space-lg);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.links[data-astro-cid-5upy6dye] a[data-astro-cid-5upy6dye],.menu-list[data-astro-cid-5upy6dye] a[data-astro-cid-5upy6dye]{font-family:var(--font-display);color:var(--color-muted);padding-block:var(--space-xs);transition:color var(--dur-short) var(--ease-out);font-size:.875rem;font-weight:600;text-decoration:none;display:inline-block}.links[data-astro-cid-5upy6dye] a[data-astro-cid-5upy6dye]:hover,.menu-list[data-astro-cid-5upy6dye] a[data-astro-cid-5upy6dye]:hover{color:var(--color-accent)}.links[data-astro-cid-5upy6dye] a[data-astro-cid-5upy6dye][aria-current=page]{color:var(--color-ink);text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:.4em;text-decoration-thickness:2px}.links[data-astro-cid-5upy6dye] a[data-astro-cid-5upy6dye]:after,.menu-list[data-astro-cid-5upy6dye] a[data-astro-cid-5upy6dye]:after{display:none}.menu[data-astro-cid-5upy6dye]{display:none;position:relative}.menu[data-astro-cid-5upy6dye] summary[data-astro-cid-5upy6dye]{min-height:44px;padding-inline:var(--space-md);border:1px solid var(--color-rule-strong);border-radius:var(--radius-pill);font-family:var(--font-display);color:var(--color-ink);cursor:pointer;align-items:center;font-size:.875rem;font-weight:600;list-style:none;display:flex}.menu[data-astro-cid-5upy6dye] summary[data-astro-cid-5upy6dye]::-webkit-details-marker{display:none}.menu-list[data-astro-cid-5upy6dye]{z-index:100;right:0;top:calc(100% + var(--space-xs));min-width:12rem;padding:var(--space-xs);background:var(--color-paper);border:1px solid var(--color-rule-strong);border-radius:var(--radius);margin:0;list-style:none;display:grid;position:absolute}.menu-list[data-astro-cid-5upy6dye] a[data-astro-cid-5upy6dye]{padding:var(--space-sm) var(--space-md);color:var(--color-ink);font-size:1rem;display:block}.menu-list[data-astro-cid-5upy6dye] a[data-astro-cid-5upy6dye][aria-current=page]{color:var(--color-accent)}.bulb[data-astro-cid-5upy6dye]{width:44px;height:76px;margin-right:calc(var(--space-xs) * -1);color:var(--color-ink);cursor:grab;touch-action:none;background:0 0;border:0;flex:none;align-self:flex-start;padding:0;position:relative}.bulb[data-astro-cid-5upy6dye]:active{cursor:grabbing}.bulb[data-astro-cid-5upy6dye]:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px;border-radius:var(--radius)}.hang[data-astro-cid-5upy6dye]{transform-origin:50% -40px;width:0;height:100%;position:absolute;top:0;left:50%}.cord[data-astro-cid-5upy6dye]{background:var(--color-rule-strong);width:2px;height:86px;position:absolute;top:-48px;left:-1px}.bulb[data-astro-cid-5upy6dye] svg[data-astro-cid-5upy6dye]{position:absolute;top:36px;left:-12px;overflow:visible;transform:rotate(180deg)}.glass[data-astro-cid-5upy6dye]{fill:var(--color-glow);fill-opacity:.9;stroke:currentColor;stroke-width:1.5px;transition:fill-opacity var(--dur-long) var(--ease-out)}.base[data-astro-cid-5upy6dye]{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round}:root[data-theme=dark] .glass[data-astro-cid-5upy6dye]{fill-opacity:0}@keyframes pull{0%{transform:translateY(0)rotate(0)}22%{transform:translateY(16px)rotate(0)}48%{transform:translateY(-5px)rotate(4deg)}66%{transform:translateY(2px)rotate(-3deg)}82%{transform:translateY(0)rotate(1.5deg)}to{transform:translateY(0)rotate(0)}}@keyframes sway{0%,to{transform:rotate(0)}30%{transform:rotate(5deg)}65%{transform:rotate(-3deg)}}@media (prefers-reduced-motion:no-preference){.bulb[data-astro-cid-5upy6dye]:hover .hang[data-astro-cid-5upy6dye]{animation:sway 1.2s var(--ease-in-out)}.bulb[data-astro-cid-5upy6dye].pulled .hang[data-astro-cid-5upy6dye]{animation:pull .9s var(--ease-out)}}@media (width<=60rem){.links[data-astro-cid-5upy6dye]{display:none}.menu[data-astro-cid-5upy6dye]{display:block}}
