.theme-toggle[data-astro-cid-x3pjskd3]{position:relative;width:18px;height:18px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;top:2px}.sun-icon[data-astro-cid-x3pjskd3],.moon-icon[data-astro-cid-x3pjskd3]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:opacity var(--transition-fast),transform var(--transition-fast),filter var(--transition-fast);color:var(--color-text)}.theme-toggle[data-astro-cid-x3pjskd3]:hover .sun-icon[data-astro-cid-x3pjskd3],.theme-toggle[data-astro-cid-x3pjskd3]:hover .moon-icon[data-astro-cid-x3pjskd3]{filter:drop-shadow(0 0 10px rgba(255,217,15,.8))}:root .moon-icon[data-astro-cid-x3pjskd3],[data-theme=dark] .moon-icon[data-astro-cid-x3pjskd3]{opacity:1;transform:translate(-50%,-50%) rotate(0) scale(1)}:root .sun-icon[data-astro-cid-x3pjskd3],[data-theme=dark] .sun-icon[data-astro-cid-x3pjskd3]{opacity:0;transform:translate(-50%,-50%) rotate(180deg) scale(.5)}[data-theme=light] .sun-icon[data-astro-cid-x3pjskd3]{opacity:1;transform:translate(-50%,-50%) rotate(0) scale(1)}[data-theme=light] .moon-icon[data-astro-cid-x3pjskd3]{opacity:0;transform:translate(-50%,-50%) rotate(180deg) scale(.5)}.header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:100;padding:.875rem 0;margin-top:calc(-1 * var(--container-padding));transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s ease}.header[data-astro-cid-3ef6ksr2].hide-initially{transform:translateY(-100%);opacity:0}.header[data-astro-cid-3ef6ksr2].visible{transform:translateY(0);opacity:1}.header-inner[data-astro-cid-3ef6ksr2]{display:flex;justify-content:space-between;align-items:center;min-height:3rem;border-bottom:1px solid var(--color-border);transition:border-color var(--transition-medium)}.header-right[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:2rem}.header[data-astro-cid-3ef6ksr2].scrolled .header-inner[data-astro-cid-3ef6ksr2]{border-bottom-color:transparent}.logo[data-astro-cid-3ef6ksr2]{font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:.05em;text-decoration:none;color:var(--color-accent);transition:all var(--transition-fast)}.logo[data-astro-cid-3ef6ksr2]:hover{opacity:.85}.nav[data-astro-cid-3ef6ksr2]{display:flex;gap:2rem}.nav-link[data-astro-cid-3ef6ksr2]{position:relative;font-weight:500;font-size:.9375rem;letter-spacing:-.01em;color:var(--color-text);opacity:.7;transition:opacity var(--transition-fast),color var(--transition-fast);text-decoration:none}.nav-link[data-astro-cid-3ef6ksr2]:hover{opacity:1;color:var(--color-accent)}.nav-link[data-astro-cid-3ef6ksr2].active{opacity:1;color:var(--color-text)}@media(max-width:640px){.header-inner[data-astro-cid-3ef6ksr2],.header-right[data-astro-cid-3ef6ksr2]{gap:1rem}.nav[data-astro-cid-3ef6ksr2]{gap:1rem;font-size:.9rem}.logo[data-astro-cid-3ef6ksr2]{font-size:1.25rem}}.reading-progress[data-astro-cid-mu6cnre2]{position:fixed;top:0;left:0;width:100%;height:4px;background:transparent;z-index:9999;opacity:0;transition:opacity var(--transition-fast)}.reading-progress[data-astro-cid-mu6cnre2].visible{opacity:1}.reading-progress-bar[data-astro-cid-mu6cnre2]{position:relative;height:100%;background:#ffffffe6;width:0%;transition:width .1s ease-out}.reading-progress-bar[data-astro-cid-mu6cnre2]:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.6) 50%,transparent 100%);animation:shimmer 2s infinite}.footer[data-astro-cid-sz7xmlte]{padding:2rem 0 3rem;margin-top:0}.footer-inner[data-astro-cid-sz7xmlte]{position:relative;display:flex;flex-direction:column;align-items:center;gap:1.5rem;border-top:1px solid var(--color-border);padding-top:2rem}.footer-inner[data-astro-cid-sz7xmlte]:before{content:"";position:absolute;top:-1px;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-accent) 0%,var(--color-accent-hover) 50%,var(--color-accent) 100%);opacity:.8}.footer-text[data-astro-cid-sz7xmlte]{font-size:.875rem;font-family:var(--font-mono);color:var(--color-text);opacity:.6;text-align:center;letter-spacing:0;margin:0}.footer-text[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--color-accent);text-decoration:none;transition:opacity var(--transition-fast);opacity:1}.footer-text[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{opacity:.8}.heart-container[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;vertical-align:middle;margin:0 .2em}.heart-icon[data-astro-cid-sz7xmlte]{display:block;animation:glisten 1.5s ease-in-out infinite;transform-origin:center}@keyframes glisten{0%,to{transform:scale(1);filter:drop-shadow(0 0 0px rgba(231,76,60,0))}50%{transform:scale(1.15);filter:drop-shadow(0 0 8px rgba(231,76,60,.6))}}.footer-copyright[data-astro-cid-sz7xmlte]{font-size:.875rem;font-family:var(--font-mono);color:var(--color-text);opacity:.5;text-align:center;letter-spacing:0;margin-top:-.5rem}@media(prefers-reduced-motion:reduce){.heart-icon[data-astro-cid-sz7xmlte]{animation:none!important}}.scroll-to-top[data-astro-cid-73562bqz]{position:fixed;bottom:2rem;right:2rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:50%;color:var(--color-text);cursor:pointer;opacity:0;transform:translateY(20px);transition:all var(--transition-medium);z-index:99;box-shadow:0 4px 12px #0000004d,0 0 0 1px #ffffff1a inset}.scroll-to-top[data-astro-cid-73562bqz].visible{opacity:1;transform:translateY(0)}.scroll-to-top[data-astro-cid-73562bqz]:hover{background:var(--color-accent);color:var(--color-bg);border-color:var(--color-accent);box-shadow:0 6px 16px #0006,0 0 0 1px #fff3 inset}.scroll-to-top[data-astro-cid-73562bqz]:active{transform:scale(.95)}@media(max-width:640px){.scroll-to-top[data-astro-cid-73562bqz]{bottom:max(1.5rem,env(safe-area-inset-bottom,1.5rem));right:1.5rem;width:44px;height:44px}}@media(prefers-reduced-motion:reduce){.scroll-to-top[data-astro-cid-73562bqz]{transition:opacity var(--transition-fast)}}.shortcuts-modal[data-astro-cid-wppxbhjz]{border:none;background:transparent;padding:0;max-width:100%}.shortcuts-modal[data-astro-cid-wppxbhjz]::backdrop{background:#000000b3;backdrop-filter:blur(4px)}.shortcuts-content[data-astro-cid-wppxbhjz]{background:var(--color-bg);border:1px solid var(--color-border);border-radius:16px;padding:2rem;width:90vw;max-width:480px}.shortcuts-header[data-astro-cid-wppxbhjz]{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.shortcuts-header[data-astro-cid-wppxbhjz] h2[data-astro-cid-wppxbhjz]{font-size:1.5rem;font-weight:600;margin:0}.shortcuts-close[data-astro-cid-wppxbhjz]{background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;padding:.25rem;display:flex;align-items:center;transition:color var(--transition-fast)}.shortcuts-close[data-astro-cid-wppxbhjz]:hover{color:var(--color-text)}.shortcuts-list[data-astro-cid-wppxbhjz]{display:flex;flex-direction:column;gap:1.5rem}.shortcut-item[data-astro-cid-wppxbhjz]{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0}.shortcut-desc[data-astro-cid-wppxbhjz]{color:var(--color-text);font-size:1rem}.shortcut-keys[data-astro-cid-wppxbhjz]{display:flex;gap:.25rem}kbd[data-astro-cid-wppxbhjz]{padding:.25rem .5rem;background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:6px;font-family:var(--font-mono);font-size:.875rem;color:var(--color-text-muted)}.shortcuts-note[data-astro-cid-wppxbhjz]{text-align:center;margin-top:2rem;margin-bottom:0;color:var(--color-text-muted);font-size:.875rem}.shortcuts-note[data-astro-cid-wppxbhjz] kbd[data-astro-cid-wppxbhjz]{padding:.125rem .375rem;font-size:.75rem}@media(prefers-reduced-motion:reduce){.shortcuts-close[data-astro-cid-wppxbhjz]{transition:none}}.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{--color-bg: #360033;--color-bg-rgb: 54, 0, 51;--color-card-bg: rgba(255, 255, 255, .05);--color-text: #FFFFFF;--color-text-muted: rgba(255, 255, 255, .7);--color-border: rgba(255, 255, 255, .15);--color-border-strong: rgba(255, 255, 255, .3);--color-accent: #FFFFFF;--color-accent-hover: rgba(255, 255, 255, .9);--color-accent-muted: rgba(255, 255, 255, .2);--space-unit: 1rem;--max-width: 800px;--container-padding: 1.5rem;--page-max-width: 1200px;--font-display: "Cal Sans", sans-serif;--font-sans: "Cal Sans", sans-serif;--font-mono: "Cal Sans", sans-serif;--font-code: "Fira Code", monospace;--font-system: var(--font-sans);--transition-fast: .15s ease;--transition-medium: .3s ease;--transition-bouncy: .3s cubic-bezier(.68, -.55, .265, 1.55)}[data-theme=light]{--color-bg: #f5f5f7;--color-bg-rgb: 245, 245, 247;--color-card-bg: rgba(0, 0, 0, .03);--color-text: #1a1a1a;--color-text-muted: rgba(26, 26, 26, .7);--color-border: rgba(0, 0, 0, .1);--color-border-strong: rgba(0, 0, 0, .2);--color-accent: #1a1a1a;--color-accent-hover: rgba(26, 26, 26, .8);--color-accent-muted: rgba(26, 26, 26, .1)}[data-mode=eink]{--color-bg: #FFFFFF;--color-bg-rgb: 255, 255, 255;--color-card-bg: #FFFFFF;--color-text: #000000;--color-text-muted: #333333;--color-border: #000000;--color-border-strong: #000000;--color-accent: #000000;--color-accent-hover: #000000;--color-accent-muted: #EEEEEE;background:#fff!important;background-image:none!important}body{background:#00124e;background-image:linear-gradient(135deg,#00124e,#002c50,#004671,#006064,#007748,#008e5e,#00a273);background-attachment:scroll;min-height:100%;color:var(--color-text);letter-spacing:.05em;transition:color var(--transition-medium),background var(--transition-medium)}@media(hover:hover){body{background-attachment:fixed}}[data-theme=light] body{background:#f5f5f7;background-image:linear-gradient(135deg,#f5f5f7,#e8e8f0,#d1d5db)}[data-mode=eink] body{background:#fff!important;background-image:none!important}@keyframes couchGag{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stagger-animation>*{animation:couchGag .6s cubic-bezier(.68,-.55,.265,1.55) both}.stagger-animation>*:nth-child(1){animation-delay:0ms}.stagger-animation>*:nth-child(2){animation-delay:.1s}.stagger-animation>*:nth-child(3){animation-delay:.2s}.stagger-animation>*:nth-child(4){animation-delay:.3s}.stagger-animation>*:nth-child(5){animation-delay:.4s}.stagger-animation>*:nth-child(6){animation-delay:.5s}.stagger-animation>*:nth-child(7){animation-delay:.6s}.stagger-animation>*:nth-child(8){animation-delay:.7s}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.05)}}.pulse-icon{animation:pulse 2s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-20px) rotate(5deg)}66%{transform:translateY(10px) rotate(-5deg)}}.floating-shape{animation:float 8s ease-in-out infinite}@keyframes dohShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.doh-shake{animation:dohShake .5s ease-in-out}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.gradient-text{color:var(--color-text)}.scale-hover{transition:transform var(--transition-fast)}.scale-hover:hover{transform:scale(1.05)}.subtle-lift{transition:transform var(--transition-medium),box-shadow var(--transition-medium)}.subtle-lift:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000014}[data-theme=dark] .subtle-lift:hover{box-shadow:0 8px 24px #0000004d}@keyframes fadeInStagger{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.post-item{animation:fadeInStagger .6s cubic-bezier(.4,0,.2,1) both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto!important}.stagger-animation>*{animation:none!important}.floating-shape,.pulse-icon,.post-item{animation:none!important}.custom-cursor{display:none!important}.hero{min-height:auto;padding:2rem 0}.scale-hover:hover{transform:none!important}.subtle-lift:hover{transform:none!important;box-shadow:none!important}}@media(prefers-contrast:high){:root{--color-text: #FFFFFF;--color-bg: #000000;--color-accent: #FFFF00;--color-accent-hover: #FFFF66;--color-border: #FFFFFF;--color-card-bg: #0a0a0a}a,button,.nav-link,.button,.post-link{border:2px solid currentColor}:focus-visible{outline:4px solid var(--color-accent);outline-offset:2px}button:focus-visible,a:focus-visible{outline:4px solid var(--color-accent);outline-offset:2px;box-shadow:0 0 0 8px #ffffff4d}h1,h2,h3,h4,h5,h6{color:#fff}a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}code,pre{border:2px solid var(--color-border)}input,textarea,select{border:2px solid var(--color-text)}input:focus,textarea:focus,select:focus{outline:3px solid var(--color-accent);outline-offset:2px}}@media(forced-colors:active){:focus-visible{outline:3px solid CanvasText;outline-offset:2px}a,button{outline:2px solid CanvasText}.custom-cursor{display:none}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:#00124e;min-height:100%;overscroll-behavior:none}body{font-family:var(--font-system);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:var(--container-padding);letter-spacing:.05em}.page-wrapper{max-width:var(--page-max-width);margin:0 auto;background:var(--color-card-bg);border-radius:0;box-shadow:none;overflow:hidden;transition:background var(--transition-medium);min-height:100vh;display:flex;flex-direction:column}main{flex:1}h1,h2,h3{color:var(--color-accent)}h1{font-family:var(--font-display);font-size:clamp(2.25rem,5vw,3.5rem);font-weight:600;letter-spacing:.05em;line-height:1.15;margin-bottom:1.25rem}h2{font-family:var(--font-display);font-size:clamp(1.5rem,4vw,2rem);font-weight:600;letter-spacing:.05em;line-height:1.35;margin-bottom:1rem}h3{font-family:var(--font-display);font-size:clamp(1.125rem,3vw,1.5rem);font-weight:600;letter-spacing:.05em;line-height:1.45;margin-bottom:.75rem}p{margin-bottom:1.25rem;max-width:75ch}.container{max-width:var(--max-width);margin:0 auto;padding:0 2.5rem}@media(min-width:1024px){.container{padding:0 3rem}}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast),opacity var(--transition-fast)}a:hover{color:var(--color-accent-hover);opacity:.9}:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px;border-radius:4px;z-index:10001;position:relative}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px;box-shadow:0 0 0 6px #ffffff1a}[data-theme=dark] :focus-visible{outline-color:#fff;box-shadow:0 0 0 6px #fff3}body.using-keyboard .custom-cursor,body:not(.using-mouse) .custom-cursor{opacity:0!important}code{font-family:var(--font-code);font-size:.8em}pre{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:8px;padding:1rem;overflow-x:auto;margin:1.5rem 0}pre code{display:block;padding:0;background:none;border:none;font-size:.85em}::selection{background:var(--color-accent);color:var(--color-bg)}img{max-width:100%;height:auto;display:block}ul,ol{margin-bottom:1rem;padding-left:1.5rem}li{margin-bottom:.5rem}button{font-family:var(--font-system);cursor:pointer;border:none;background:none}main{min-height:calc(100vh - 200px)}[data-theme=dark]{background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence baseFrequency='0.9' /%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.015' /%3E%3C/svg%3E")}[data-theme=dark] h1,[data-theme=dark] h2,[data-theme=dark] h3{font-weight:600}[data-theme=dark] body{font-weight:400}.custom-cursor{width:8px;height:8px;border:2px solid var(--color-accent);border-radius:50%;position:fixed;pointer-events:none;z-index:9999;opacity:0;transition:opacity .3s;mix-blend-mode:difference}body:hover .custom-cursor{opacity:.6}@media(pointer:coarse){.custom-cursor{display:none}}.prose a,a:not(.button):not(.nav-link):not(.logo):not(.post-link){position:relative;text-decoration:none;color:var(--color-accent)}.prose a:after,a:not(.button):not(.nav-link):not(.logo):not(.post-link):after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:var(--color-accent);opacity:.3;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.prose a:hover:after,a:not(.button):not(.nav-link):not(.logo):not(.post-link):hover:after{opacity:1}section{padding:5rem 0 0}.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2.5rem}.button{padding:.875rem 2rem;border-radius:12px;font-weight:500;font-family:var(--font-display);transition:all var(--transition-bouncy);text-decoration:none;display:inline-block}.button-primary{background:var(--color-accent);color:#fff;border:2px solid var(--color-accent-hover)}.button-primary:hover{background:var(--color-accent-hover);transform:translateY(-2px)}.button-secondary{border:1px solid var(--color-border);background:transparent;color:var(--color-text)}.button-secondary:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-muted)}@media(max-width:640px){body{padding:0}.page-wrapper{border-radius:0}.container{padding:0 1.5rem}h1{letter-spacing:.05em}p{max-width:100%}}@media(max-width:480px){body{padding:0}.page-wrapper{border-radius:0}.container{padding:0 1.25rem}}@keyframes fade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}html{view-transition-name:none}::view-transition-old(root),::view-transition-new(root){animation-duration:.4s}::view-transition-old(root){animation-name:fade-out}::view-transition-new(root){animation-name:fade-in}@keyframes fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
