:root{color-scheme:dark;--color-bg:#071300;--color-surface:#0d1d04;--color-text:#dfe5d8;--color-heading:#f0f2e9;--color-muted:#829078;--color-subtle:#5f7055;--color-link:#becaa9;--color-active-bg:#eef1e7;--color-active-ink:#1b3208;--color-focus:#c4d2a7;--color-code:#0b1a04;--color-rule:#1a2b10;--font-reading-latin:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia;--font-reading-cjk:"Songti SC", STSong, "Noto Serif CJK SC", "Source Han Serif SC";--font-ui-latin:"Avenir Next", Avenir, "Segoe UI", Helvetica, Arial;--font-ui-cjk:"PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--content-width:680px;--home-width:600px}*,:before,:after{box-sizing:border-box}html{background:var(--color-bg);scroll-behavior:smooth;min-width:320px}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-ui-latin), var(--font-ui-cjk);letter-spacing:0;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}::selection{color:#132405;background:#cad5b5}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}img{max-width:100%;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-nav{z-index:10;flex-direction:column;gap:10px;display:flex;position:fixed;top:min(22vh,190px);left:clamp(28px,4vw,64px)}.site-nav__link{width:48px;height:48px;color:var(--color-muted);border-radius:8px;place-items:center;transition:background-color .16s,color .16s,transform .16s;display:grid}.site-nav__link img{object-fit:contain;opacity:.64;filter:grayscale()brightness(1.75);width:29px;height:29px;transition:filter .16s,opacity .16s}.site-nav__link:hover{background:var(--color-surface);color:var(--color-heading)}.site-nav__link:hover img{opacity:.9;filter:grayscale()brightness(2.2)}.site-nav__link.is-active{background:var(--color-active-bg);box-shadow:0 8px 24px #0000002e}.site-nav__link.is-active img{opacity:1;filter:brightness(0)saturate()invert(16%)sepia(39%)saturate(1339%)hue-rotate(42deg)brightness(90%)}.site-nav__link:focus-visible,.pagination-controls a:focus-visible,.post-list a:focus-visible,.prose a:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}.home-page{width:min(var(--home-width), calc(100% - 48px));margin:0 auto;padding:min(22vh,190px) 0 30vh}.profile-intro h1,.article-header h1{color:var(--color-heading);font-family:var(--font-reading-latin), var(--font-reading-cjk), serif;letter-spacing:0;margin:0;font-weight:700}.profile-intro h1{font-size:30px;line-height:1.2}.profile-intro__copy{color:var(--color-muted);font-family:var(--font-reading-latin), var(--font-reading-cjk), serif;margin-top:20px;font-size:18px;line-height:1.58}.profile-intro__copy p{margin:0 0 20px}.profile-intro__copy p:last-child{margin-bottom:0}.profile-intro__copy a,.prose a{color:var(--color-link)}.posts-section{margin-top:154px}.posts-section__header{justify-content:space-between;align-items:center;gap:24px;min-height:32px;margin-bottom:46px;display:flex}.posts-section__header h2{color:var(--color-muted);font-family:var(--font-ui-latin), var(--font-ui-cjk);letter-spacing:0;margin:0;font-size:16px;font-weight:700;line-height:1.4}.pagination-controls{min-width:0;color:var(--color-subtle);align-items:center;gap:18px;font-size:14px;font-weight:600;line-height:1;display:flex}.pagination-controls__count{white-space:nowrap}.pagination-controls__buttons{gap:5px;display:flex}.pagination-controls__buttons a,.pagination-controls__buttons span{border-radius:6px;place-items:center;width:30px;height:30px;display:grid}.pagination-controls__buttons a{color:var(--color-muted);transition:background-color .15s,color .15s}.pagination-controls__buttons a:hover{background:var(--color-surface);color:var(--color-heading)}.pagination-controls__buttons .is-disabled{opacity:.28}.post-list{gap:28px;margin:0;padding:0;list-style:none;display:grid}.post-list li{min-width:0}.post-list a{text-decoration:none;display:block}.post-list h3{color:var(--color-heading);font-family:var(--font-reading-latin), var(--font-reading-cjk), serif;letter-spacing:0;margin:0;font-size:21px;font-weight:700;line-height:1.28;transition:color .15s}.post-list p{color:var(--color-muted);font-family:var(--font-ui-latin), var(--font-ui-cjk);margin:4px 0 0;font-size:15px;line-height:1.5}.post-list a:hover h3{color:var(--color-link)}.article-page{width:min(var(--content-width), calc(100% - 48px));margin:0 auto;padding:min(22vh,190px) 0 110px}.article-header{margin-bottom:52px}.article-header h1{max-width:18ch;font-size:34px;line-height:1.2}.article-header p{max-width:34ch;color:var(--color-muted);margin:12px 0 0;font-size:20px;font-weight:500;line-height:1.42}.article-header time{color:var(--color-subtle);margin-top:8px;font-size:14px;font-weight:600;display:block}.prose{color:var(--color-text);font-family:var(--font-reading-latin), var(--font-reading-cjk), serif;font-size:19px;line-height:1.74}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.prose p{margin:0 0 1.45em}.prose h2,.prose h3,.prose h4{color:var(--color-heading);font-family:var(--font-reading-latin), var(--font-reading-cjk), serif;letter-spacing:0;font-weight:700}.prose h2{margin:2.6em 0 .78em;font-size:29px;line-height:1.28}.prose h3{margin:2.2em 0 .7em;font-size:24px;line-height:1.32}.prose h4{margin:2em 0 .65em;font-size:20px;line-height:1.4}.prose strong{color:var(--color-heading);font-weight:700}.prose em{font-style:italic}.prose u{text-underline-offset:.16em;text-decoration-thickness:1px}.prose ul,.prose ol{margin:0 0 1.6em;padding-left:1.55em}.prose li{margin:.46em 0;padding-left:.25em}.prose li::marker{color:var(--color-muted)}.prose blockquote{border-left:2px solid var(--color-subtle);color:#b8c3ad;margin:2.2em 0;padding:.2em 0 .2em 1.3em;font-size:1.04em}.prose blockquote p:last-child{margin-bottom:0}.prose :not(pre)>code{border:1px solid var(--color-rule);background:var(--color-code);color:#d4ddc8;font-family:var(--font-mono);border-radius:4px;padding:.12em .38em;font-size:.82em}.prose pre{border:1px solid var(--color-rule);font-family:var(--font-mono);tab-size:2;border-radius:6px;margin:2.2em 0;padding:20px 22px;font-size:14px;line-height:1.65;overflow-x:auto;background:var(--color-code)!important}.prose pre code{min-width:max-content;font-family:inherit;display:block}.prose figure{margin:3em 0}.prose figure img,.prose>p>img{border-radius:4px;width:100%;height:auto}.prose figcaption{color:var(--color-subtle);font-family:var(--font-ui-latin), var(--font-ui-cjk);margin-top:10px;font-size:13px;line-height:1.5}.prose hr{background:var(--color-rule);border:0;height:1px;margin:3.5em 0}.prose table{border-collapse:collapse;width:100%;font-family:var(--font-ui-latin), var(--font-ui-cjk);margin:2.2em 0;font-size:15px;display:block;overflow-x:auto}.prose th,.prose td{border-bottom:1px solid var(--color-rule);text-align:left;padding:10px 14px}.prose th{color:var(--color-heading)}@media (width<=720px){.site-nav{background:var(--color-surface);border-radius:8px;flex-direction:row;gap:4px;width:max-content;margin:28px 24px 0;padding:6px;position:static}.site-nav__link{width:46px;height:46px}.site-nav__link img{width:28px;height:28px}.home-page,.article-page{width:calc(100% - 48px);padding-top:66px}.home-page{padding-bottom:24vh}.profile-intro h1{font-size:32px}.profile-intro__copy{margin-top:26px;font-size:18px;line-height:1.68}.posts-section{margin-top:112px}.posts-section__header{align-items:flex-start;margin-bottom:40px}.pagination-controls{gap:10px;font-size:12px}.post-list{gap:26px}.post-list h3{font-size:20px}.post-list p{margin-top:5px;font-size:14px;line-height:1.55}.article-page{padding-bottom:78px}.article-header{margin-bottom:44px}.article-header h1{max-width:none;font-size:32px}.article-header p{margin-top:10px;font-size:18px;line-height:1.5}.prose{font-size:18px;line-height:1.78}.prose h2{font-size:26px}.prose h3{font-size:22px}.prose pre{margin-left:-12px;margin-right:-12px;padding:18px;font-size:13px}}@media (width<=390px){.site-nav{margin-left:20px}.home-page,.article-page{width:calc(100% - 40px)}.posts-section__header{gap:14px}.pagination-controls__count{text-overflow:ellipsis;max-width:94px;overflow:hidden}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
