.theme-toggle[data-astro-cid-x3pjskd3]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;transition:background-color var(--transition-fast);color:var(--color-text-muted)}.theme-toggle[data-astro-cid-x3pjskd3]:hover{background-color:var(--bg-surface-border);color:var(--color-text)}.icon-sun[data-astro-cid-x3pjskd3]{display:none}.icon-moon[data-astro-cid-x3pjskd3],[data-astro-cid-x3pjskd3][data-theme=dark] .icon-sun[data-astro-cid-x3pjskd3]{display:block}[data-astro-cid-x3pjskd3][data-theme=dark] .icon-moon[data-astro-cid-x3pjskd3]{display:none}.floating-nav[data-astro-cid-avqau6kg]{position:fixed;left:1rem;top:50%;transform:translateY(-50%);z-index:100;display:flex;flex-direction:column;align-items:flex-start}.fnav-items[data-astro-cid-avqau6kg]{display:flex;flex-direction:column;gap:.25rem;background:var(--bg-surface);border:1px solid var(--bg-surface-border);border-radius:var(--radius-lg);padding:.5rem;box-shadow:0 4px 20px #0000000f;opacity:.45;transition:opacity .3s ease,box-shadow .3s ease}.fnav-items[data-astro-cid-avqau6kg]:hover{opacity:1;box-shadow:0 8px 32px #0000001f}.fnav-item[data-astro-cid-avqau6kg]{display:flex;align-items:center;gap:0;padding:.55rem;border-radius:var(--radius-md);color:var(--color-text-muted);transition:all .2s ease;overflow:hidden;white-space:nowrap;max-width:40px}.fnav-item[data-astro-cid-avqau6kg] .fnav-label[data-astro-cid-avqau6kg]{font-family:DM Sans,sans-serif;font-size:.82rem;font-weight:500;opacity:0;max-width:0;overflow:hidden;transition:opacity .2s ease,max-width .2s ease,margin .2s ease;margin-left:0}.fnav-item[data-astro-cid-avqau6kg]:hover{background:var(--bg-surface-border);color:var(--color-text);max-width:200px}.fnav-item[data-astro-cid-avqau6kg]:hover .fnav-label[data-astro-cid-avqau6kg]{opacity:1;max-width:120px;margin-left:.5rem}.fnav-item[data-astro-cid-avqau6kg]:hover .fnav-icon[data-astro-cid-avqau6kg]{transform:scale(1.15)}.fnav-item[data-astro-cid-avqau6kg].active{color:var(--color-primary);background:var(--color-highlight-glow)}.fnav-icon[data-astro-cid-avqau6kg]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;transition:transform .2s ease}.fnav-divider[data-astro-cid-avqau6kg]{height:1px;background:var(--bg-surface-border);margin:.25rem .3rem}.fnav-theme-wrap[data-astro-cid-avqau6kg]{padding:.15rem}.fnav-theme-wrap[data-astro-cid-avqau6kg] .theme-toggle{width:34px;height:34px}@media(max-width:768px){.floating-nav[data-astro-cid-avqau6kg]{left:50%;top:auto;bottom:1rem;transform:translate(-50%)}.fnav-items[data-astro-cid-avqau6kg]{flex-direction:row;opacity:.7;padding:.4rem;gap:.15rem}.fnav-item[data-astro-cid-avqau6kg]{max-width:40px}.fnav-item[data-astro-cid-avqau6kg] .fnav-label[data-astro-cid-avqau6kg]{display:none}.fnav-item[data-astro-cid-avqau6kg]:hover{max-width:40px}.fnav-divider[data-astro-cid-avqau6kg]{width:1px;height:auto;margin:.15rem}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--bg-primary: #F5F2EB;--bg-surface: #FFFFFF;--bg-surface-border: #E8E4DA;--color-primary: #2D5F2D;--color-secondary: #7BA05B;--color-accent: #A67C52;--color-text: #2C2C2C;--color-text-muted: #6B6B5E;--color-highlight-glow: rgba(123, 160, 91, .3);--max-width: 1200px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .4s ease-out}[data-theme=dark]{--bg-primary: #1A1F16;--bg-surface: #242B1E;--bg-surface-border: #3A4232;--color-primary: #8FBF6A;--color-secondary: #B4D89A;--color-accent: #C9A87C;--color-text: #E8E4DA;--color-text-muted: #9A9A8A;--color-highlight-glow: rgba(143, 191, 106, .25)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:"Source Sans 3",sans-serif;font-size:16px;line-height:1.65;color:var(--color-text);background-color:var(--bg-primary);min-height:100vh;transition:background-color var(--transition-normal),color var(--transition-normal);cursor:url(/cursors/leaf.svg) 4 4,default}body *{cursor:inherit}a,button,[role=button],input[type=submit],summary,label,select,[tabindex],.pub-card,.pub-entry,.photo-cell,.branch-node,.branch-card,.timeline-card,.timeline-dot,.fnav-item,.link-pill,.back-btn,.expand-all-btn{cursor:url(/cursors/leaf-pointer.svg) 4 4,pointer!important}h1,h2,h3,h4,h5,h6{font-family:DM Sans,sans-serif;font-weight:600;line-height:1.3;color:var(--color-text)}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-secondary)}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}code,.mono{font-family:JetBrains Mono,monospace}::selection{background:var(--color-secondary);color:var(--bg-primary)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.page-content{padding-top:3rem;padding-bottom:4rem;min-height:100vh;padding-left:4.5rem}@media(max-width:768px){.page-content{padding-left:0;padding-bottom:5rem}}.link-pill{display:inline-flex;align-items:center;gap:.3em;font-size:.8rem;font-weight:500;padding:.3em .75em;border-radius:999px;border:1px solid var(--bg-surface-border);color:var(--color-text-muted);transition:all var(--transition-fast)}.link-pill:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-highlight-glow)}.skip-to-content{position:fixed;top:-100%;left:1rem;z-index:9999;padding:.75em 1.5em;background:var(--color-primary);color:var(--bg-primary);border-radius:var(--radius-md);font-weight:600;font-size:.9rem;transition:top .2s ease}.skip-to-content:focus{top:1rem}@keyframes float-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.float-bob{animation:float-bob 4s ease-in-out infinite}@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.stagger-in{opacity:0;animation:fade-in-up .4s ease-out forwards}.stagger-in:nth-child(1),.stagger-delay-1{animation-delay:60ms}.stagger-in:nth-child(2),.stagger-delay-2{animation-delay:.12s}.stagger-in:nth-child(3),.stagger-delay-3{animation-delay:.18s}.stagger-in:nth-child(4),.stagger-delay-4{animation-delay:.24s}.stagger-in:nth-child(5),.stagger-delay-5{animation-delay:.3s}.stagger-in:nth-child(6),.stagger-delay-6{animation-delay:.36s}.stagger-in:nth-child(7),.stagger-delay-7{animation-delay:.42s}.stagger-in:nth-child(8),.stagger-delay-8{animation-delay:.48s}.stagger-in:nth-child(9),.stagger-delay-9{animation-delay:.54s}.stagger-in:nth-child(10),.stagger-delay-10{animation-delay:.6s}@keyframes slow-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}::view-transition-old(root),::view-transition-new(root){animation-duration:80ms;animation-timing-function:linear}
