@import "https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;600;700;900&family=Outfit:wght@500;700;800;900&display=swap";:root{--paper:#ffffff;--ink:#222222;--muted:#4b5563;--accent:#d23669;--line:#e5e7eb}*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 noto serif sc,serif}a{color:inherit}.page-shell{width:min(100%,672px);margin:0 auto;padding:48px 20px 80px}.site-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:56px}.wordmark{display:inline-block;color:var(--ink);font:900 24px/32px outfit,sans-serif;text-decoration:none;transform:scale(1);transform-origin:center;transition:transform .2s ease-in-out;will-change:transform}.wordmark span{color:var(--accent)}.wordmark--accent,.article-home{color:var(--accent)}.wordmark:hover{transform:scale(1.02)}.wordmark:active{transform:scale(1)}.author-block{display:flex;align-items:center;gap:10px}.byline{color:var(--ink);font-size:20px;font-style:italic;line-height:1}.github-avatar-link{display:block;width:40px;height:40px;border-radius:50%;transform:scale(1);transition:transform .2s ease-in-out;will-change:transform}.github-avatar-link:hover{transform:scale(1.05)}.github-avatar-link:active{transform:scale(1)}.github-avatar-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.github-avatar{display:block;width:40px;height:40px;border-radius:50%;object-fit:cover}.post-link{display:block;padding:16px 0;color:var(--ink);text-decoration:none;transform:scale(1);transform-origin:center;transition:transform .2s ease-in-out;will-change:transform}.post-link:hover{transform:scale(1.005)}.post-link:active{transform:scale(1)}.post-link:focus-visible,.wordmark:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:2px}.post-card{margin:0;padding:0}.post-card h2{margin:0 0 8px;color:var(--accent);font:900 28px/28px outfit,noto serif sc,sans-serif;letter-spacing:-.02em}.post-card time{display:block;color:var(--muted);font-size:13px;line-height:1.5}.post-card p{margin:4px 0 0;color:var(--ink);font-size:16px;line-height:1.5}.article{width:100%}.article-header{margin:0;padding:0}.article-header h1{margin:0;color:var(--ink);font:900 clamp(36px,7vw,40px)/44px outfit,noto serif sc,sans-serif;letter-spacing:-.035em}.article-meta{margin-top:8px;color:var(--muted);font-size:13px;line-height:1.5}.source-note{margin:20px 0 0;color:var(--muted);font-size:13px;line-height:1.7}.source-note a,.prose a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:4px}.prose{margin-top:48px;color:var(--ink);font-size:17px;line-height:1.9}.prose p{margin:0 0 1.45em}.prose strong{font-weight:700}.prose h2{margin:2.5em 0 .8em;padding-top:1.4em;border-top:1px solid var(--line);color:var(--ink);font:900 30px/1.25 outfit,noto serif sc,sans-serif;letter-spacing:-.025em}.prose blockquote{margin:2em 0;padding-left:20px;border-left:3px solid var(--accent);color:var(--muted);font-size:18px}.article-home{margin-top:56px}@media(max-width:600px){.page-shell{padding-top:32px;padding-bottom:56px}.site-header{margin-bottom:42px}.post-card h2{font-size:26px;line-height:28px}.article-header h1{font-size:36px;line-height:40px}.prose{margin-top:40px;font-size:16px}.prose h2{font-size:28px}}@media(prefers-color-scheme:dark){:root{--paper:#171717;--ink:#f3f4f6;--muted:#d1d5db;--accent:#ffa7c4;--line:#3f3f46}html{color-scheme:dark}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}