.home-shell{max-width:48rem;margin:0 auto;padding:2.4rem clamp(1.25rem,4vw,2.25rem) 5.5rem}.home-masthead{max-width:40rem;margin:0 auto;text-align:center}.home-portrait-wrap{width:128px;height:128px;margin:0 auto 1.35rem;padding:3px;border:1px solid var(--pf-essay-rule-strong);background-color:var(--pf-essay-bg)}.home-portrait-wrap img{display:block;width:100%;height:100%;object-fit:cover}.home-name{margin:0 0 1.15rem;font-family:var(--pf-essay-font-prose);font-size:1.75rem;font-weight:400;line-height:1.2;letter-spacing:-0.005em;color:var(--pf-essay-fg)}.home-name-sep{margin:0 0.35rem;color:var(--pf-essay-faint);font-weight:400}.home-name-zh{font-family:var(--pf-essay-font-prose-sc);font-weight:400}.home-name-zh rt{font-family:var(--pf-essay-font-prose);font-size:0.44em;letter-spacing:0.03em;color:var(--pf-essay-muted)}.home-bio-copy{text-align:left;font-family:var(--pf-essay-font-prose);font-size:0.96875rem;line-height:1.62;color:var(--pf-essay-fg)}.home-bio-copy p+p{margin-top:0.85rem}.home-bio-copy a{color:inherit;text-decoration:none;border-bottom:1px dotted var(--pf-essay-link-rule);transition:border-color 0.12s ease}.home-bio-copy a:hover{border-bottom-style:solid;border-bottom-color:var(--pf-essay-fg)}.home-bio-copy samp{font-family:var(--pf-essay-font-code);font-size:0.94em}.home-search-wrap{margin:2rem auto 0;max-width:21rem}.pub-search{width:100%;padding:0.5rem 0.85rem;font-family:var(--pf-essay-font-prose);font-size:0.9rem;background-color:var(--pf-essay-bg);color:var(--pf-essay-fg);border:1px solid var(--pf-essay-rule-strong);outline:none}.pub-search::placeholder{color:var(--pf-essay-muted)}.pub-search:focus{border-color:var(--pf-essay-fg);box-shadow:none}.pub-section{margin-top:3rem}.pub-toolbar{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0.5rem 1rem;padding-bottom:0.45rem;border-bottom:1px solid var(--pf-essay-rule);margin-bottom:0.95rem}.pub-heading-group{display:flex;align-items:baseline;gap:0.4rem}.pub-heading-group h2{margin:0;font-family:var(--pf-essay-font-prose);font-size:0.72rem;font-weight:400;letter-spacing:0.09em;text-transform:uppercase;color:var(--pf-essay-muted)}.pub-count{font-family:var(--pf-essay-font-prose);font-size:0.72rem;color:var(--pf-essay-faint)}.pub-mode-switch{display:inline-flex;align-items:baseline;gap:0.4rem}.pub-mode-sep{color:var(--pf-essay-faint);font-size:0.78rem}.pub-mode-btn{padding:0;font-family:var(--pf-essay-font-prose);font-size:0.82rem;font-weight:400;background:transparent;color:var(--pf-essay-muted);border:0;border-bottom:1px solid transparent;cursor:pointer}.pub-mode-btn:hover{color:var(--pf-essay-fg)}.pub-mode-btn.is-active{color:var(--pf-essay-fg);border-bottom-color:var(--pf-essay-fg)}.pub-category{margin-top:1.75rem}.pub-category:first-child{margin-top:0}.pub-category-title{margin-bottom:0.65rem;padding-bottom:0.35rem;border-bottom:1px solid var(--pf-essay-rule);font-family:var(--pf-essay-font-prose);font-size:0.72rem;font-weight:400;letter-spacing:0.09em;text-transform:uppercase;color:var(--pf-essay-muted)}.pub-category-title span{text-transform:none;letter-spacing:0}.pub-list[data-mode="selected"] .pub-category{margin-top:0}.pub-list[data-mode="selected"] .pub-category-title{display:none}.pub-list[data-mode="selected"] .cv-non-selected{display:none}.pub-entry.is-filtered-out,.pub-category.is-empty{display:none!important}.pub-entry{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:0.15rem 1.15rem;padding:0.6rem 0}.pub-year{padding-top:0.14rem;font-family:var(--pf-essay-font-prose);font-size:0.78rem;font-variant-numeric:tabular-nums;color:var(--pf-essay-muted)}.pub-body{min-width:0}.pub-title{display:block;font-family:var(--pf-essay-font-prose);font-size:0.96875rem;font-weight:400;font-style:normal;line-height:1.45;color:var(--pf-essay-fg)}.pub-title a{color:inherit;text-decoration:none;border-bottom:1px dotted var(--pf-essay-link-rule);transition:border-color 0.12s ease}.pub-title a:hover{border-bottom-style:solid;border-bottom-color:var(--pf-essay-fg)}.pub-subline{margin-top:0.16rem;font-family:var(--pf-essay-font-prose);font-size:0.84rem;line-height:1.48;color:var(--pf-essay-muted)}.pub-authors{list-style:none;display:inline;margin:0;padding:0}.pub-authors li{display:inline}.pub-authors li+li::before{content:", "}.pub-authors a{color:inherit;text-decoration:none;border-bottom:1px dotted transparent}.pub-authors a:hover{color:var(--pf-essay-fg);border-bottom-color:var(--pf-essay-link-rule)}.pub-dot{margin:0 0.3rem;color:var(--pf-essay-faint)}.pub-venue{font-style:italic}.pub-venue abbr{text-decoration:none;border-bottom:1px dotted var(--pf-essay-link-rule);cursor:help}.pub-actions{display:inline;margin-left:0.35rem}.pub-action-link{display:inline;padding:0;margin-left:0.45rem;font-family:var(--pf-essay-font-prose);font-size:0.8rem;font-style:normal;color:var(--pf-essay-muted);background:transparent;border:0;border-bottom:1px dotted var(--pf-essay-link-rule);text-decoration:none;cursor:pointer}.pub-action-link:first-child{margin-left:0.15rem}.pub-action-link:hover,.pub-action-link[aria-expanded="true"]{color:var(--pf-essay-fg);border-bottom-style:solid;border-bottom-color:var(--pf-essay-fg)}.pub-venue a,.pub-note a,.pub-abstract a{color:inherit;text-decoration:none;border-bottom:1px dotted var(--pf-essay-link-rule)}.pub-venue a:hover,.pub-note a:hover,.pub-abstract a:hover{color:var(--pf-essay-fg);border-bottom-style:solid;border-bottom-color:var(--pf-essay-fg)}.pub-note{margin-top:0.35rem;padding-left:0.65rem;border-left:1.5px solid var(--pf-vis-ochre);font-family:var(--pf-essay-font-prose);font-size:0.84rem;line-height:1.48;color:var(--pf-essay-muted)}.pub-abstract{display:none;margin-top:0.55rem;padding:0.65rem 0.9rem;background-color:var(--pf-essay-surface);border-left:1.5px solid var(--pf-essay-rule-strong);font-family:var(--pf-essay-font-prose);font-size:0.88rem;line-height:1.58;color:var(--pf-essay-fg)}.pub-abstract.is-open{display:block}.pub-abstract p+p{margin-top:0.5rem}.pub-dedication{margin-top:0.45rem;font-style:italic;color:var(--pf-essay-muted)}.pub-empty-msg{display:none;padding:1.5rem 0;font-family:var(--pf-essay-font-prose);font-size:0.88rem;color:var(--pf-essay-muted)}@media (max-width:640px){.pub-entry{grid-template-columns:2.65rem minmax(0,1fr);gap:0.15rem 0.7rem}}