/*!
 * Project: Heti
 * URL: https://github.com/sivan/heti
 * Author: Sivan [sun.sivan@gmail.com]
 */@font-face{font-family:Heti Hei;src:"Heti Hei SC","Heti Hei TC","Heti Hei JP","Heti Hei KR"}@font-face{font-family:Heti Hei SC;src:local("PingFang SC Regular"),local("Heiti SC Regular"),local("Microsoft YaHei"),local("Source Han Sans CN Regular"),local("Noto Sans CJK SC Regular"),local("WenQuanYi Micro Hei"),local("Droid Sans Fallback")}@font-face{font-family:Heti Hei TC;src:local("PingFang TC Regular"),local("Heiti TC Regular"),local("Microsoft Jhenghei"),local("Source Han Sans HK Regular"),local("Source Han Sans TW Regular"),local("Noto Sans CJK TC Regular"),local("WenQuanYi Micro Hei"),local("Droid Sans Fallback")}@font-face{font-family:Heti Hei JP;src:local("Hiragino Sans GB W3"),local("Source Han Sans JP Regular"),local("Noto Sans CJK JP Regular"),local("Droid Sans Fallback")}@font-face{font-family:Heti Hei KR;src:local("Source Han Sans KR Regular"),local("Noto Sans CJK KR Regular"),local("Droid Sans Fallback")}@font-face{font-family:Heti Hei;font-weight:200;src:"Heti Hei SC Light","Heti Hei TC Light","Heti Hei JP Light","Heti Hei KR Light"}@font-face{font-family:Heti Hei SC Light;font-weight:200;src:local("PingFang SC Light"),local("Heiti SC Light"),"Heti Hei SC Light Fallback",local("Source Han Sans CN Light"),local("Noto Sans CJK SC Light")}@font-face{font-family:Heti Hei TC Light;font-weight:200;src:local("PingFang TC Light"),local("Heiti TC Light"),local("Microsoft Jhenghei Light"),local("Source Han Sans HK Light"),local("Source Han Sans TW Light"),local("Noto Sans CJK TC Light")}@font-face{font-family:Heti Hei JP Light;font-weight:200;src:local("Source Han Sans JP Light"),local("Noto Sans CJK JP Light")}@font-face{font-family:Heti Hei KR Light;font-weight:200;src:local("Source Han Sans KR Light"),local("Noto Sans CJK KR Light")}@font-face{font-family:Heti Hei SC Light Fallback;font-weight:200;src:local("Microsoft YaHei"),local("Droid Sans Fallback")}@font-face{font-family:Heti Hei;font-weight:600;src:"Heti Hei SC Bold","Heti Hei TC Bold","Heti Hei JP Bold","Heti Hei KR Bold"}@font-face{font-family:Heti Hei SC Bold;font-weight:600;src:local("PingFang SC Medium"),local("Heiti SC Medium"),"Heti Hei SC Bold Fallback",local("Source Han Sans CN Bold"),local("Noto Sans CJK SC Bold")}@font-face{font-family:Heti Hei TC Bold;font-weight:600;src:local("PingFang TC Medium"),local("Heiti TC Medium"),local("Microsoft Jhenghei Bold"),local("Source Han Sans HK Bold"),local("Source Han Sans TW Bold"),local("Noto Sans CJK TC Bold")}@font-face{font-family:Heti Hei JP Bold;font-weight:600;src:local("Hiragino Sans GB W6"),local("Source Han Sans JP Bold"),local("Noto Sans CJK JP Bold")}@font-face{font-family:Heti Hei KR Bold;font-weight:600;src:local("Source Han Sans KR Bold"),local("Noto Sans CJK KR Bold")}@font-face{font-family:Heti Hei SC Bold Fallback;font-weight:600;src:local("Microsoft YaHei"),local("Droid Sans Fallback")}@font-face{font-family:Heti Hei Black;font-weight:800;src:"Heti Hei SC Black","Heti Hei TC Black","Heti Hei JP Black","Heti Hei KR Black"}@font-face{font-family:Heti Hei SC Black;font-weight:800;src:local("Lantinghei SC Heavy"),local("PingFang SC Semibold"),local("Heiti SC Medium"),"Heti Hei SC Black Fallback",local("Source Han Sans CN Heavy"),local("Noto Sans CJK SC Heavy")}@font-face{font-family:Heti Hei TC Black;font-weight:800;src:local("Lantinghei TC Heavy"),local("PingFang TC Semibold"),local("Heiti TC Medium"),local("Microsoft Jhenghei Bold"),local("Source Han Sans HK Heavy"),local("Source Han Sans TW Heavy"),local("Noto Sans CJK TC Heavy")}@font-face{font-family:Heti Hei JP Black;font-weight:800;src:local("Hiragino Sans GB W6"),local("Source Han Sans JP Heavy"),local("Noto Sans CJK JP Heavy")}@font-face{font-family:Heti Hei KR Black;font-weight:800;src:local("Source Han Sans KR Heavy"),local("Noto Sans CJK KR Heavy")}@font-face{font-family:Heti Hei SC Black Fallback;font-weight:800;src:local("Microsoft YaHei"),local("Droid Sans Fallback")}@font-face{font-family:Heti Song;src:local("Songti SC Regular"),local("Songti TC Regular"),local("SimSun")}@font-face{font-family:Heti Song;font-weight:200;src:local("Songti SC Light"),local("Songti TC Light"),"Heti Song Light Fallback"}@font-face{font-family:Heti Song Light Fallback;font-weight:200;src:local("SimSun")}@font-face{font-family:Heti Song;font-weight:600;src:local("Songti SC Bold"),local("Songti TC Bold"),"Heti Song Bold Fallback"}@font-face{font-family:Heti Song Bold Fallback;font-weight:600;src:local("SimSun")}@font-face{font-family:Heti Song Black;font-weight:800;src:local("Songti SC Black"),local("SimSun")}@font-face{font-family:Heti Kai;src:local("Kaiti SC Regular"),local("Kaiti TC Regular"),local("STKaiti"),local("Kaiti"),local("BiauKai")}@font-face{font-family:Heti Kai;font-weight:600;src:local("Kaiti SC Bold"),local("Kaiti TC Bold")}@font-face{font-family:Heti Kai Bold Fallback;font-weight:600;src:local("STKaiti"),local("Kaiti") local("BiauKai")}@font-face{font-family:Heti Kai Black;font-weight:800;src:local("Kaiti SC Black"),local("Kaiti TC Black"),local("STKaiti"),local("Kaiti")}.heti{max-width:42em;font-size:16px;font-weight:400;-webkit-font-smoothing:subpixel-antialiased;line-height:1.5;overflow-wrap:break-word;word-wrap:break-word;hyphens:auto;letter-spacing:.02em}.heti:before,.heti:after{content:"";display:table}.heti:after{clear:both}.heti>*:first-child,.heti section>*:first-child,.heti td>*:first-child{margin-block-start:0!important}.heti>*:last-child,.heti section>*:last-child,.heti td>*:last-child{margin-block-end:0!important}.heti blockquote{margin-block-start:12px;margin-block-end:24px;margin-inline-start:32px;margin-inline-end:32px;padding-block-start:12px;padding-block-end:12px;padding-inline-start:16px;padding-inline-end:16px;background-color:#0000000e}@media(prefers-color-scheme:dark){.heti blockquote{background-color:#ffffff0e}}.heti figure{display:block;text-align:center}.heti figure>img{display:block;margin-inline-start:auto;margin-inline-end:auto}.heti hr{inline-size:30%;block-size:1px;margin-block-start:48px;margin-block-end:47px;margin-inline-start:auto;margin-inline-end:auto;border:0;background-color:#ccc}@media(prefers-color-scheme:dark){.heti hr{background-color:#404040}}.heti p{margin-block-start:12px;margin-block-end:24px;text-align:justify}.heti p:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti p:not(:lang(zh)){text-align:start}.heti pre{margin-block-start:12px;margin-block-end:12px;margin-inline-start:0;margin-inline-end:0;padding-block-start:12px;padding-block-end:12px;padding-inline-start:16px;padding-inline-end:16px;overflow:auto;font-family:SFMono-Regular,consolas,Liberation Mono,menlo,courier,monospace,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;white-space:pre;word-wrap:normal;border-radius:4px;background-color:#0000000e}@media(prefers-color-scheme:dark){.heti pre{background-color:#ffffff0e}}.heti pre code{margin:0;padding:0;border:0;border-radius:0;background-color:#0000;color:inherit}.heti:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti:not(:lang(zh)){letter-spacing:0}.heti a,.heti abbr,.heti code,.heti heti-spacing,.heti [lang=en-US]{letter-spacing:normal}.heti h1,.heti h2,.heti h3,.heti h4,.heti h5,.heti h6{position:relative;margin:0;margin-block-start:24px;margin-block-end:12px;font-weight:600}.heti h1{margin-block-end:24px;font-size:32px;line-height:48px}.heti h2{font-size:24px;line-height:36px}.heti h3{font-size:20px;line-height:36px}.heti h4{font-size:18px;line-height:24px}.heti h5{font-size:16px;line-height:24px}.heti h6{font-size:14px;line-height:24px}.heti h1,.heti h2,.heti h3{letter-spacing:.05em}.heti h1:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti h1:not(:lang(zh)),.heti h2:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti h2:not(:lang(zh)),.heti h3:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti h3:not(:lang(zh)){letter-spacing:0}.heti h1+h2,.heti h2+h3,.heti h3+h4,.heti h4+h5,.heti h5+h6{margin-block-start:12px}.heti ul,.heti ol,.heti dl{margin-block-start:12px;margin-block-end:24px}.heti ul,.heti ol{padding-inline-start:32px}.heti ul ul,.heti ul ol,.heti ol ul,.heti ol ol{margin-block-start:0;margin-block-end:0}.heti ul{list-style-type:disc}.heti ol{list-style-type:decimal}.heti ul ul,.heti ol ul{list-style-type:circle}.heti ul ul ul,.heti ul ol ul,.heti ol ul ul,.heti ol ol ul{list-style-type:square}.heti li{list-style-type:unset}.heti table{box-sizing:border-box;table-layout:fixed;margin-block-start:12px;margin-block-end:24px;margin-inline-start:auto;margin-inline-end:auto;border-collapse:collapse;border-width:1px;border-style:solid;border-color:#ccc;word-break:break-word}@media(prefers-color-scheme:dark){.heti table{border-color:#404040}}.heti th,.heti td{padding-block-start:6px;padding-block-end:6px;padding-inline-start:8px;padding-inline-end:8px;border-width:1px;border-style:solid;border-color:#ccc}@media(prefers-color-scheme:dark){.heti th,.heti td{border-color:#404040}}.heti caption{caption-side:bottom;margin-block-start:2px;margin-block-end:-4px;font-size:14px;line-height:24px}.heti a{text-decoration:none}.heti a:hover{padding-block-end:1px;border-block-end:1px solid currentColor;text-decoration:none}.heti abbr[title]{padding-block-end:1px;border-block-end:1px dotted;text-decoration:none;cursor:help}.heti b,.heti strong{font-weight:600}.heti code{margin-inline-start:.25em;margin-inline-end:.25em;font-family:SFMono-Regular,consolas,Liberation Mono,menlo,courier,monospace,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:.875em}.heti dfn{font-weight:600}.heti dfn:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti dfn:not(:lang(zh)){font-weight:400}.heti em{font-weight:600}.heti figcaption{display:inline-block;vertical-align:top;font-size:14px;text-align:start}.heti i{font-style:italic}.heti ins,.heti u{padding-block-end:1px;border-block-end:1px solid;text-decoration:none}.heti mark{padding-block-start:2px;padding-block-end:2px;padding-inline-start:1px;padding-inline-end:1px;margin-inline-start:1px;margin-inline-end:1px;background-color:#fff700e0;color:inherit}@media(prefers-color-scheme:dark){.heti mark{background-color:#4d4a00e0}}.heti q{quotes:"「" "」" "『" "』"}.heti q:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti q:not(:lang(zh)){quotes:initial;quotes:auto}.heti rt{font-size:.875em;font-weight:400}.heti small{font-size:.875em}.heti strong{font-weight:600}.heti sub,.heti sup{position:relative;margin-inline-start:.25em;margin-inline-end:.25em;font-size:.75em;font-family:Helvetica Neue,helvetica,arial,Heti Hei,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-style:normal;line-height:1;vertical-align:baseline}.heti sub{bottom:-.25em}.heti sup{top:-.5em}.heti sup:target,.heti sup a:target{background-color:#dbedff}@media(prefers-color-scheme:dark){.heti sup:target,.heti sup a:target{background-color:#3a6188}}.heti summary{padding-inline-start:1em;outline:0;cursor:pointer}.heti summary::-webkit-details-marker{width:.6em;margin-inline-end:.4em}.heti u[title]{cursor:help;border-block-end-width:3px;border-block-end-style:double;border-block-end-color:#0000008a}@media(prefers-color-scheme:dark){.heti u[title]{border-block-end-color:#ffffff8a}}.heti address,.heti cite,.heti dfn,.heti dt,.heti em{font-style:normal}.heti address:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti address:not(:lang(zh)),.heti cite:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti cite:not(:lang(zh)),.heti dfn:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti dfn:not(:lang(zh)),.heti dt:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti dt:not(:lang(zh)),.heti em:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti em:not(:lang(zh)){font-style:italic}.heti abbr[title],.heti del,.heti ins,.heti s,.heti u{margin-inline-start:1px;margin-inline-end:1px}.heti,.heti--sans{font-family:Helvetica Neue,helvetica,arial,Heti Hei,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}.heti--serif,.heti--classic{font-family:Times New Roman,times,Heti Song,serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}.heti--classic h1,.heti--classic h2,.heti--classic h3,.heti--classic h4,.heti--classic h5,.heti--classic h6{font-family:Times New Roman,times,Heti Kai Black,serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-weight:800}.heti--classic blockquote,.heti--classic cite,.heti--classic q{font-family:Times New Roman,times,Heti Kai,serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}.heti--classic figcaption,.heti--classic caption,.heti--classic th{font-family:Helvetica Neue,helvetica,arial,Heti Hei,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}.heti--hei{font-family:Helvetica Neue,helvetica,arial,Heti Hei,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}.heti--song{font-family:Times New Roman,times,Heti Song,serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}.heti--kai{font-family:Times New Roman,times,Heti Kai,serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}.heti--columns-1,.heti--columns-2,.heti--columns-3,.heti--columns-4,.heti--columns-16em,.heti--columns-20em,.heti--columns-24em,.heti--columns-28em,.heti--columns-32em,.heti--columns-36em,.heti--columns-40em,.heti--columns-44em,.heti--columns-48em,.heti comma{max-width:none;column-gap:2em}.heti--columns-1 p,.heti--columns-2 p,.heti--columns-3 p,.heti--columns-4 p,.heti--columns-16em p,.heti--columns-20em p,.heti--columns-24em p,.heti--columns-28em p,.heti--columns-32em p,.heti--columns-36em p,.heti--columns-40em p,.heti--columns-44em p,.heti--columns-48em p,.heti comma p{margin-block-start:6px;margin-block-end:12px;text-indent:2em}.heti--columns-1{column-count:1}.heti--columns-2{column-count:2}.heti--columns-3{column-count:3}.heti--columns-4{column-count:4}.heti--columns-16em{column-width:16em}.heti--columns-20em{column-width:20em}.heti--columns-24em{column-width:24em}.heti--columns-28em{column-width:28em}.heti--columns-32em{column-width:32em}.heti--columns-36em{column-width:36em}.heti--columns-40em{column-width:40em}.heti--columns-44em{column-width:44em}.heti--columns-48em{column-width:48em}.heti--vertical{max-width:none;max-height:42em;writing-mode:vertical-rl;letter-spacing:.125em}.heti--vertical h1,.heti--vertical h2,.heti--vertical h3,.heti--vertical h4,.heti--vertical h5,.heti--vertical h6{text-align:start}.heti--vertical q{quotes:"「" "」" "『" "』"}.heti--ancient,.heti--poetry{font-family:Times New Roman,times,Heti Song,serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}.heti--ancient h1,.heti--ancient h2,.heti--ancient h3,.heti--ancient h4,.heti--ancient h5,.heti--ancient h6,.heti--poetry h1,.heti--poetry h2,.heti--poetry h3,.heti--poetry h4,.heti--poetry h5,.heti--poetry h6{font-family:Times New Roman,times,Heti Kai Black,serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-weight:800;text-align:center}.heti--ancient h1 .heti-meta,.heti--ancient h2 .heti-meta,.heti--ancient h3 .heti-meta,.heti--ancient h4 .heti-meta,.heti--ancient h5 .heti-meta,.heti--ancient h6 .heti-meta,.heti--poetry h1 .heti-meta,.heti--poetry h2 .heti-meta,.heti--poetry h3 .heti-meta,.heti--poetry h4 .heti-meta,.heti--poetry h5 .heti-meta,.heti--poetry h6 .heti-meta{font-weight:400}@media screen and (min-width:640px){.heti--ancient h1 .heti-meta,.heti--ancient h2 .heti-meta,.heti--ancient h3 .heti-meta,.heti--ancient h4 .heti-meta,.heti--ancient h5 .heti-meta,.heti--ancient h6 .heti-meta,.heti--poetry h1 .heti-meta,.heti--poetry h2 .heti-meta,.heti--poetry h3 .heti-meta,.heti--poetry h4 .heti-meta,.heti--poetry h5 .heti-meta,.heti--poetry h6 .heti-meta{position:absolute;line-height:inherit;text-indent:0;display:inline;margin-block-start:4px;margin-inline-start:8px}}.heti--ancient .heti-meta,.heti--poetry .heti-meta{line-height:24px;text-align:center;text-indent:0}.heti--ancient p{text-indent:2em}.heti--poetry p{text-align:center;text-indent:0}.heti--annotation p{margin-block-start:0;margin-block-end:0;line-height:2.25;text-indent:2em}.heti--annotation em{-webkit-text-emphasis:filled circle;-webkit-text-emphasis-position:under;text-emphasis:filled circle;text-emphasis-position:under right;font-weight:400}.heti--annotation em:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti--annotation em:not(:lang(zh)){-webkit-text-emphasis:none;text-emphasis:none}.heti--annotation .heti-meta{margin-block-start:12px;margin-block-end:24px}.heti .heti-meta{display:block;text-indent:0}.heti .heti-verse{text-align:center;text-indent:0}.heti .heti-large{font-size:18px;line-height:24px}.heti .heti-x-large{font-size:20px;line-height:30px;letter-spacing:.05em}.heti .heti-small{font-size:14px;line-height:24px}.heti .heti-x-small{font-size:12px;line-height:18px}.heti .heti-list-latin{list-style-type:upper-latin}.heti .heti-list-latin ol{list-style-type:lower-roman}.heti .heti-list-latin ol ol{list-style-type:lower-latin}.heti .heti-list-han{list-style-type:cjk-ideographic}.heti .heti-list-han ol{list-style-type:decimal}.heti .heti-list-han ol ol{list-style-type:decimal-leading-zero}.heti .heti-fn{margin-block-start:59px;border-block-start:1px solid;border-block-start-color:#ccc;font-size:14px;font-family:Helvetica Neue,helvetica,arial,Heti Hei,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;line-height:24px}@media(prefers-color-scheme:dark){.heti .heti-fn{border-block-start-color:#404040}}.heti .heti-fn ol{margin-block-start:12px;margin-block-end:0}.heti .heti-fn li:target{background-color:#dbedff}@media(prefers-color-scheme:dark){.heti .heti-fn li:target{background-color:#3a6188}}.heti .heti-hang{position:absolute;line-height:inherit;text-indent:0}.heti .heti-em{-webkit-text-emphasis:filled circle;-webkit-text-emphasis-position:under;text-emphasis:filled circle;text-emphasis-position:under right}.heti .heti-em:not(:lang(zh)):not(:lang(ja)):not(:lang(ko)),.heti .heti-em:not(:lang(zh)){-webkit-text-emphasis:none;text-emphasis:none}.heti .heti-ruby--inline{display:inline-flex;flex-direction:column-reverse;height:1.5em;vertical-align:top}.heti .heti-ruby--inline rt{display:inline;margin-bottom:-.25em;line-height:1;text-align:center}.heti heti-spacing{display:inline}.heti heti-spacing+sup,.heti heti-spacing+sub{margin-inline-start:0}.heti .heti-spacing-start{margin-inline-end:.25em}.heti .heti-spacing-end{margin-inline-start:.25em}.heti heti-adjacent{display:inline;text-spacing-trim:space-all;unicode-bidi:isolate}.heti .heti-adjacent-half{margin-inline-end:-.5em}.heti .heti-adjacent-quarter{margin-inline-end:-.25em}:root{color-scheme:light;--bg: #f7f2e8;--bg-soft: #fffaf0;--surface: rgba(255, 252, 245, .82);--surface-solid: #fffaf2;--text: #1f2723;--muted: #6f776f;--soft: #e7dcc9;--line: rgba(77, 67, 50, .16);--primary: #126b5a;--primary-strong: #0d4f43;--accent: #bd6f20;--code-bg: #efe5d2;--shadow: 0 24px 70px rgba(60, 42, 20, .12);--radius-lg: 28px;--radius-md: 18px;--radius-sm: 12px;--font-sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-serif: ui-serif, "Songti SC", "STSong", "Noto Serif CJK SC", Georgia, serif;--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html,body,a,button{-webkit-tap-highlight-color:transparent}html{scroll-behavior:auto}::view-transition-old(root){animation:page-out .18s cubic-bezier(.4,0,.2,1) both}::view-transition-new(root){animation:page-in .26s cubic-bezier(.2,0,0,1) both}@keyframes page-out{0%{opacity:1;transform:translateY(0);filter:blur(0)}to{opacity:0;transform:translateY(-6px);filter:blur(2px)}}@keyframes page-in{0%{opacity:0;transform:translateY(10px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation-duration:1ms}}body{margin:0;min-height:100vh;color:var(--text);background:radial-gradient(circle at top left,rgba(18,107,90,.14),transparent 34rem),radial-gradient(circle at 88% 12%,rgba(189,111,32,.14),transparent 28rem),linear-gradient(180deg,var(--bg) 0%,#fbf7ef 56%,#f3eadc 100%);font-family:var(--font-sans);line-height:1.72;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body:before{position:fixed;inset:0;z-index:-1;pointer-events:none;content:"";background-image:linear-gradient(rgba(31,39,35,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(31,39,35,.03) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 72%)}::selection{color:#fff;background:var(--primary)}a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.2em}a:hover{color:var(--primary)}img{max-width:100%;height:auto}.site-shell{width:min(1120px,calc(100% - 32px));margin:0 auto}.site-header{position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(77,67,50,.11);backdrop-filter:blur(18px);background:#f7f2e8c2}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:14px;color:var(--primary);background:var(--surface-solid);box-shadow:0 10px 24px #126b5a14;font-family:var(--font-serif);font-size:24px;font-weight:700}.brand-text{display:grid;line-height:1.1}.brand-title{font-size:16px;font-weight:800;letter-spacing:.04em}.brand-subtitle{color:var(--muted);font-size:12px}.nav-links{display:flex;align-items:center;gap:8px}.nav-links a{padding:8px 12px;border-radius:999px;color:var(--muted);font-size:14px;text-decoration:none;transition:color .18s ease,background .18s ease}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--primary-strong);background:#126b5a17}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) 320px;gap:28px;align-items:stretch;padding:72px 0 38px}.hero-card,.profile-card,.post-card,.article-shell,.panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.hero-card{padding:clamp(28px,5vw,54px);overflow:hidden;position:relative}.hero-card:after{position:absolute;right:-78px;bottom:-100px;width:260px;height:260px;border:1px solid rgba(18,107,90,.22);border-radius:999px;content:""}.kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;color:var(--accent);font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.kicker:before{width:34px;height:1px;background:currentColor;content:""}.hero h1{max-width:760px;margin:0;font-family:var(--font-serif);font-size:clamp(40px,8vw,86px);line-height:.98;letter-spacing:-.08em;text-wrap:balance}.hero p{max-width:650px;margin:24px 0 0;color:var(--muted);font-size:clamp(17px,2vw,20px);text-wrap:pretty}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:1px solid var(--line);border-radius:999px;background:var(--surface-solid);color:var(--text);font-weight:700;text-decoration:none;transition:transform .18s ease,border-color .18s ease,background .18s ease}.button:hover{transform:translateY(-2px);border-color:#126b5a52;color:var(--primary-strong)}.button:active{transform:translateY(0);background:#126b5a1a}.button.primary{border-color:var(--primary);background:var(--primary);color:#fff}.button.primary:hover{color:#fff;background:var(--primary-strong)}.button.primary:active{background:#0a4339}.profile-card{display:flex;flex-direction:column;justify-content:space-between;padding:24px}.avatar{width:74px;height:74px;border-radius:24px;border:1px solid var(--line);object-fit:cover}.profile-card h2{margin:18px 0 8px;font-size:22px;line-height:1.2}.profile-card p{margin:0;color:var(--muted);font-size:14px}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:24px}.stat{padding:14px;border:1px solid var(--line);border-radius:16px;background:#fffaf2b8}.stat strong{display:block;color:var(--primary);font-size:24px;line-height:1}.stat span{color:var(--muted);font-size:12px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:36px 0 18px}.section-head h2{margin:0;font-family:var(--font-serif);font-size:clamp(28px,4vw,42px);letter-spacing:-.04em}.section-head p{margin:0;color:var(--muted)}.post-grid{display:grid;gap:18px;padding-bottom:72px}.post-card{display:grid;grid-template-columns:144px minmax(0,1fr);gap:26px;padding:24px;text-decoration:none;transition:transform .18s ease,border-color .18s ease,background .18s ease}.post-card:hover{transform:translateY(-3px);border-color:#126b5a57;color:var(--text);background:#fffcf5f0}.post-card:active{transform:translateY(0);background:#126b5a0f}.post-date{display:grid;align-content:start;gap:8px;color:var(--muted);font-size:13px}.post-date strong{color:var(--primary);font-family:var(--font-serif);font-size:40px;line-height:.9}.post-card h3{margin:0;font-size:clamp(21px,3vw,30px);line-height:1.22;letter-spacing:-.04em;text-wrap:balance}.post-card p{margin:12px 0 0;color:var(--muted);text-wrap:pretty}.meta-row,.tag-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.meta-row{margin-top:16px;color:var(--muted);font-size:13px}.tag{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid rgba(18,107,90,.16);border-radius:999px;color:var(--primary-strong);background:#126b5a12;font-size:13px;font-weight:700;text-decoration:none}.tag:hover{border-color:#126b5a52;color:var(--primary-strong);background:#126b5a1f}.tag:active{background:#126b5a29}.page-title{padding:64px 0 20px}.page-title h1{margin:0;font-family:var(--font-serif);font-size:clamp(42px,7vw,76px);line-height:1;letter-spacing:-.07em}.page-title p{max-width:680px;margin:16px 0 0;color:var(--muted);font-size:18px}.article-shell{max-width:860px;margin:48px auto 80px;padding:clamp(26px,5vw,64px)}.article-header{margin-bottom:36px;padding-bottom:28px;border-bottom:1px solid var(--line)}.article-header h1{margin:12px 0 18px;font-family:var(--font-serif);font-size:clamp(34px,6vw,64px);line-height:1.05;letter-spacing:-.06em;text-wrap:balance}.article-meta{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:14px}.prose{font-size:18px}.heti.prose{max-width:none;color:var(--text);line-height:1.9;letter-spacing:.01em}.heti.prose h1,.heti.prose h2,.heti.prose h3,.heti.prose h4,.heti.prose h5,.heti.prose h6{font-family:var(--font-serif);font-weight:800}.heti.prose blockquote{font-family:var(--font-sans)}.heti.prose code,.heti.prose pre{font-family:var(--font-mono)}.prose>*:first-child{margin-top:0}.prose h2,.prose h3,.prose h4{margin:2em 0 .7em;line-height:1.25;letter-spacing:-.03em;text-wrap:balance}.prose h2{font-size:1.75em}.prose h3{font-size:1.35em}.prose p,.prose li,.prose blockquote{text-wrap:pretty}.prose a{color:var(--primary-strong);font-weight:700}.prose blockquote{margin:1.6em 0;padding:20px 24px;border:1px solid var(--line);border-radius:var(--radius-md);color:#46524b;background:#126b5a0f}.prose code{padding:.14em .36em;border-radius:7px;background:var(--code-bg);font-family:var(--font-mono);font-size:.88em}.prose pre{overflow:auto;padding:20px;border:1px solid var(--line);border-radius:var(--radius-md);background:#221f1a;color:#f9f2df}.prose pre code{padding:0;background:transparent;color:inherit}.prose table{display:block;overflow-x:auto;border-collapse:collapse}.prose th,.prose td{padding:10px 12px;border:1px solid var(--line)}.prose hr{margin:2.4em 0;border:0;border-top:1px solid var(--line)}.panel{padding:24px}.archive-list{display:grid;gap:12px;margin-bottom:80px}.archive-item{display:grid;grid-template-columns:116px minmax(0,1fr);gap:20px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line)}.archive-item a{font-size:20px;font-weight:800;text-decoration:none}.archive-item time{color:var(--muted);font-size:14px}.tag-cloud{display:flex;flex-wrap:wrap;gap:12px;padding-bottom:80px}.site-footer{padding:34px 0 52px;color:var(--muted);font-size:14px}.site-footer .site-shell{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:24px}@media(max-width:820px){.site-shell{width:min(100% - 24px,1120px)}.site-header{position:static}.nav{align-items:center;flex-direction:row;flex-wrap:wrap;gap:14px;padding:14px 0}.brand{flex:1 1 100%}.brand-mark{width:38px;height:38px;border-radius:13px;font-size:22px}.brand-title{font-size:15px}.brand-subtitle{font-size:11px}.nav-links{display:grid;width:100%;grid-template-columns:repeat(4,1fr);gap:6px;padding:4px;border:1px solid var(--line);border-radius:999px;background:#fffaf2b8;overflow:hidden}.nav-links a{min-height:36px;padding:7px 6px;text-align:center;font-size:14px}.hero{grid-template-columns:1fr;padding-top:38px}.post-card{grid-template-columns:1fr;gap:16px}.post-date{display:flex;align-items:baseline}.post-date strong{font-size:26px}.article-shell{margin-top:24px}.prose{font-size:16px}.archive-item{grid-template-columns:1fr;gap:4px}.site-footer .site-shell{flex-direction:column}}.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}
