.topbar[data-astro-cid-nazmfhjt]{position:fixed;top:0;right:0;z-index:30;display:flex;flex-direction:column;align-items:flex-end;gap:.3rem;padding:clamp(.7rem,1.7vw,1.1rem) var(--gutter) clamp(1.1rem,2.5vw,1.6rem) clamp(1.5rem,4vw,3rem);text-align:right;color:var(--ink);isolation:isolate}.topbar[data-astro-cid-nazmfhjt]:before{content:"";position:fixed;inset:0 0 auto;height:7.5rem;z-index:-1;background:linear-gradient(to bottom,color-mix(in oklab,var(--pale) 100%,transparent) 0% 36%,color-mix(in oklab,var(--pale) 84%,transparent) 52%,color-mix(in oklab,var(--pale) 54%,transparent),color-mix(in oklab,var(--pale) 24%,transparent),color-mix(in oklab,var(--pale) 0%,transparent));backdrop-filter:blur(18px) saturate(1.04);-webkit-backdrop-filter:blur(18px) saturate(1.04);-webkit-mask-image:linear-gradient(#000 40%,#0000008c 70%,#0000 100%);mask-image:linear-gradient(#000 40%,#0000008c,#0000);opacity:.82;pointer-events:none}@keyframes topbar-veil-light{0%{opacity:.82}to{opacity:1}}@keyframes topbar-veil-dark{0%{opacity:.18}to{opacity:1}}@supports (animation-timeline: scroll()){.topbar[data-astro-cid-nazmfhjt]:before{animation-name:topbar-veil-light;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:scroll(root);animation-range:0 34vh}}@media(prefers-color-scheme:dark){.topbar[data-astro-cid-nazmfhjt]:before{opacity:.18}@supports (animation-timeline: scroll()){.topbar[data-astro-cid-nazmfhjt]:before{animation-name:topbar-veil-dark}}}@media(prefers-reduced-motion:reduce){.topbar[data-astro-cid-nazmfhjt]:before{animation-name:none;opacity:1}}.topbar__name[data-astro-cid-nazmfhjt]{font-size:var(--t-sm);font-weight:700;letter-spacing:normal;text-transform:none;color:var(--ink);padding-bottom:2px;border-bottom:1px solid #0000;transition:color .2s var(--ease),border-color .2s var(--ease)}.topbar__name[data-astro-cid-nazmfhjt]:hover{color:var(--lotus);border-bottom-color:currentColor}.topbar__tabs[data-astro-cid-nazmfhjt]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem clamp(.75rem,1.6vw,1.4rem);margin:0;padding:0;list-style:none;font-size:var(--t-sm);font-weight:700}.topbar__tabs[data-astro-cid-nazmfhjt] a[data-astro-cid-nazmfhjt]{padding-bottom:2px;border-bottom:1px solid #0000;transition:border-color .2s var(--ease),color .2s var(--ease)}.topbar__tabs[data-astro-cid-nazmfhjt] a[data-astro-cid-nazmfhjt]:hover{color:var(--lotus);border-bottom-color:currentColor}@media(width<=34rem){.topbar[data-astro-cid-nazmfhjt]{padding-left:1.25rem}.topbar__tabs[data-astro-cid-nazmfhjt]{font-size:var(--t-xs);letter-spacing:.03em}}.reveal[data-astro-cid-jo6i4kqk]{position:relative;-webkit-mask-image:linear-gradient(#0000 0,#000 7%);mask-image:linear-gradient(#0000 0,#000 7%);aspect-ratio:2447 / 1110;width:100%;min-height:20rem;max-height:82svh;display:grid;align-items:end;overflow:hidden;background-color:#141a15;isolation:isolate}.reveal__photo[data-astro-cid-jo6i4kqk],.reveal__photo[data-astro-cid-jo6i4kqk] img[data-astro-cid-jo6i4kqk]{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.reveal__photo[data-astro-cid-jo6i4kqk] img[data-astro-cid-jo6i4kqk]{object-fit:cover;object-position:center center;filter:blur(2.5px) saturate(1.08);transform:scale(1.02)}.reveal[data-astro-cid-jo6i4kqk]:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,#101511f0,#121814b3 18%,#141a151f 44%,#0000 64%)}.reveal__inner[data-astro-cid-jo6i4kqk]{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:clamp(.75rem,1.8vh,1.2rem);padding-inline:var(--gutter);width:100%;min-width:0;max-width:46rem;padding-bottom:clamp(1.5rem,4vh,2.5rem);text-align:left}.reveal__label[data-astro-cid-jo6i4kqk],.reveal__hint[data-astro-cid-jo6i4kqk]{text-transform:lowercase;letter-spacing:.1em}.reveal__label[data-astro-cid-jo6i4kqk]{color:#ffffffb8}.reveal__links[data-astro-cid-jo6i4kqk]{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:clamp(.85rem,2vw,1.5rem);align-items:center;margin:0;padding:0;list-style:none;max-width:100%}.reveal__links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{display:grid;place-items:center;color:var(--pink);opacity:.88;transition:opacity .18s var(--ease),transform .18s var(--ease)}.reveal__links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{opacity:1;transform:translateY(-2px)}.ico[data-astro-cid-jo6i4kqk]{width:1.3rem;height:1.3rem;display:block}.ico--wide[data-astro-cid-jo6i4kqk]{width:2.9rem;height:auto}.ico[data-astro-cid-jo6i4kqk]:not(.ico--svg){background:currentColor;-webkit-mask:var(--mask) center / contain no-repeat;mask:var(--mask) center / contain no-repeat}.reveal__email[data-astro-cid-jo6i4kqk]{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.3rem;padding:.3rem 0;font:inherit;color:#fff;background:none;border:0;cursor:pointer}.reveal__addr[data-astro-cid-jo6i4kqk]{font-size:var(--t-md);font-weight:400;letter-spacing:.01em;border-bottom:1px solid #ffffff59;padding-bottom:2px}.reveal__email[data-astro-cid-jo6i4kqk]:hover .reveal__addr[data-astro-cid-jo6i4kqk]{border-bottom-color:var(--pink)}.reveal__hint[data-astro-cid-jo6i4kqk]{color:#fff9}.reveal__email[data-astro-cid-jo6i4kqk][data-copied] .reveal__hint[data-astro-cid-jo6i4kqk]{color:var(--pink)}.reveal__addr--plain[data-astro-cid-jo6i4kqk]{color:#fff}@font-face{font-family:Aileron;font-style:normal;font-display:swap;font-weight:300;src:url(/_astro/aileron-latin-300-normal.DwtoSRHA.woff2) format("woff2"),url(/_astro/aileron-latin-300-normal.CCiuj5AD.woff) format("woff")}@font-face{font-family:Aileron;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/aileron-latin-400-normal.BwjnRx10.woff2) format("woff2"),url(/_astro/aileron-latin-400-normal.CZMvlTLN.woff) format("woff")}@font-face{font-family:Aileron;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/aileron-latin-700-normal.DtzFUh3z.woff2) format("woff2"),url(/_astro/aileron-latin-700-normal.adpqQH8h.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/noto-sans-sc-chinese-simplified-400-normal.Ba7eOkfT.woff2) format("woff2"),url(/_astro/noto-sans-sc-chinese-simplified-400-normal.CN8EQoOj.woff) format("woff")}:root{--slate: #16202a;--slate-2: #3a4650;--slate-3: #404c57;--pale: #eef1f2;--pale-2: #e2e7e9;--rule: #d3dade;--lift: #dee3e5;--lotus: #c9718f;--pink: #f2b7cb;--paper: var(--pale);--ink: var(--slate);--font: "Aileron", "Noto Sans SC", ui-sans-serif, system-ui, -apple-system, sans-serif;--t-xl: clamp(1.75rem, 4vw, 2.75rem);--t-lg: clamp(1.25rem, 2.2vw, 1.6rem);--t-md: 1.0625rem;--t-base: 1rem;--t-sm: .875rem;--t-xs: .6875rem;--gutter: clamp(1.25rem, 4vw, 3.5rem);--gap: clamp(1rem, 2vw, 2rem);--measure: 36rem;--ease: cubic-bezier(.2, .6, .2, 1)}@media(prefers-color-scheme:dark){:root{--pale: #10161b;--pale-2: #161d23;--rule: #28323a;--lift: #3f474e;--slate: #e6ecef;--slate-2:#b0bac1;--slate-3:#98a2a9;--lotus: #e79ab3;--pink: #f2b7cb}}*,*:before,*:after{box-sizing:border-box}html{scrollbar-gutter:stable}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--t-base);font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-weight:300;line-height:1.15;letter-spacing:-.015em;text-wrap:balance}p{margin:0 0 1em;text-wrap:pretty}a{color:inherit;text-decoration:none}img,video{max-width:100%;display:block}:focus-visible{outline:2px solid var(--lotus);outline-offset:3px}.meta{font-size:var(--t-xs);font-weight:400;letter-spacing:.03em;text-transform:lowercase;color:var(--slate-2);font-variant-numeric:tabular-nums}.shell{max-width:78rem;margin:0 auto;padding-inline:var(--gutter)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:absolute;left:var(--gutter);top:-100%;z-index:100;padding:.6rem 1rem;background:var(--slate);color:var(--pale);font-size:var(--t-xs);letter-spacing:.03em}.skip:focus{top:.75rem}:lang(zh){line-height:1.8}.backdrop{position:fixed;inset:0;z-index:-2;background:var(--paper);isolation:isolate}.backdrop__lift{position:absolute;inset:0;background:var(--lift);mix-blend-mode:screen;opacity:0}.backdrop__wash{position:absolute;inset:0;background:var(--paper);opacity:0}.backdrop--settled .backdrop__img{filter:blur(42px) brightness(1.3) saturate(1.35);transform:scale(1.12);animation-name:none}.backdrop--settled .backdrop__lift{opacity:1;animation-name:none}.backdrop--settled .backdrop__wash{opacity:.14;animation-name:none}@media(prefers-color-scheme:dark){.backdrop--settled .backdrop__wash{opacity:.72}}.backdrop__img{width:100%;height:100%;object-fit:cover;object-position:center;transform-origin:center;will-change:filter,transform}@keyframes backdrop-defocus{0%{filter:blur(0px) brightness(1) saturate(1);transform:scale(1)}to{filter:blur(42px) brightness(1.3) saturate(1.35);transform:scale(1.12)}}@keyframes backdrop-lift{0%{opacity:0}to{opacity:1}}@media(prefers-color-scheme:dark){.backdrop__lift{mix-blend-mode:multiply}@keyframes backdrop-defocus{0%{filter:blur(0px) brightness(1) saturate(1);transform:scale(1)}to{filter:blur(42px) brightness(.95) saturate(1.3);transform:scale(1.12)}}.backdrop--settled .backdrop__img{filter:blur(42px) brightness(.95) saturate(1.3)}@keyframes backdrop-wash{0%{opacity:0}to{opacity:.72}}@keyframes backdrop-lift{0%{opacity:0}to{opacity:1}}@supports (animation-timeline: scroll()){.backdrop__lift,.backdrop__wash{animation-range:0 26vh}}}@keyframes backdrop-wash{0%{opacity:0}to{opacity:.14}}@supports (animation-timeline: scroll()){.backdrop__img,.backdrop__lift,.backdrop__wash{animation-timing-function:linear;animation-fill-mode:both;animation-timeline:scroll(root);animation-range:0 96vh}.backdrop__img{animation-name:backdrop-defocus}.backdrop__lift,.backdrop__wash{animation-range:0 45vh}.backdrop__lift{animation-name:backdrop-lift}.backdrop__wash{animation-name:backdrop-wash}}@media(prefers-reduced-motion:reduce){.backdrop__img{animation-name:none;filter:blur(42px) brightness(1.3) saturate(1.35);transform:scale(1.12)}.backdrop__lift{animation-name:none;opacity:1}.backdrop__wash{animation-name:none;opacity:.14}}@media(prefers-reduced-motion:reduce)and (prefers-color-scheme:dark){.backdrop__wash{opacity:.72}html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@view-transition{navigation:auto}@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}
