@import"https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,300;0,6..72,400;0,6..72,500;1,6..72,400&family=Noto+Serif+TC:wght@300;400;500;600&family=LXGW+WenKai+TC:wght@300;400&display=swap";:root{--color-paper: #fafaf7;--color-wash: #dce3de;--color-structure: #7c9a92;--color-ink: #2f3538;--color-cinnabar: #b4452f;--color-surface: #ffffff;--color-text-primary: var(--color-ink);--color-text-secondary: #6e7674;--color-text-muted: #8a8478;--color-text-body-secondary: #45494a;--color-border: #e3e1da;--color-border-strong: #dcd7cb;--color-bg: var(--color-paper);--color-bg-alt: var(--color-wash);--color-white: var(--color-surface);--color-black: var(--color-ink);--color-teal: var(--color-structure);--color-accent: var(--color-structure);--color-dark-gray: var(--color-ink);--color-medium-gray: #666666;--color-light-gray: var(--color-border);--color-extra-light-gray: var(--color-wash);--color-gray-wood: var(--color-text-secondary);--color-powdered-sugar: var(--color-wash);--color-cocoa: #d2c3b9;--font-heading-en: "Newsreader", "Noto Serif TC", serif;--font-body-en: "Newsreader", "Noto Serif TC", serif;--font-heading-zh: "LXGW WenKai TC", "Noto Serif TC", serif;--font-body-zh: "Noto Serif TC", serif;--font-brand: var(--font-heading-en);--font-heading: var(--font-heading-en);--font-body: var(--font-body-en);--font-mono: "JetBrains Mono", "Courier New", monospace;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem;--shadow-sm: 0 2px 8px rgba(47, 53, 56, .05);--shadow-md: 0 4px 16px rgba(47, 53, 56, .08);--shadow-lg: 0 10px 40px rgba(47, 53, 56, .1)}:root:lang(zh),:root:lang(zh-TW),:root:lang(zh-HK),[lang=zh],[lang=zh-TW],[lang=zh-HK]{--font-heading: var(--font-heading-zh);--font-body: var(--font-body-zh);--font-brand: var(--font-heading-zh)}:root:lang(en),[lang=en]{--font-heading: var(--font-heading-en);--font-body: var(--font-body-en);--font-brand: var(--font-heading-en);letter-spacing:0}:root:lang(en) body,[lang=en] body{line-height:1.75;letter-spacing:-.01em}:root:lang(en) h1,:root:lang(en) h2,:root:lang(en) h3,[lang=en] h1,[lang=en] h2,[lang=en] h3{font-weight:300;letter-spacing:-.02em}:root:lang(zh) body,:root:lang(zh-TW) body,:root:lang(zh-HK) body,[lang=zh] body,[lang=zh-TW] body,[lang=zh-HK] body{font-weight:300;line-height:1.95;letter-spacing:.02em}:root:lang(zh) h1,:root:lang(zh) h2,:root:lang(zh) h3,:root:lang(zh-TW) h1,:root:lang(zh-TW) h2,:root:lang(zh-TW) h3,:root:lang(zh-HK) h1,:root:lang(zh-HK) h2,:root:lang(zh-HK) h3,[lang=zh] h1,[lang=zh] h2,[lang=zh] h3,[lang=zh-TW] h1,[lang=zh-TW] h2,[lang=zh-TW] h3,[lang=zh-HK] h1,[lang=zh-HK] h2,[lang=zh-HK] h3{font-family:var(--font-heading-zh);font-weight:400}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.75;color:var(--color-text-primary);background:var(--color-bg);letter-spacing:0;margin:0;padding:0;text-align:left;word-wrap:break-word;overflow-wrap:break-word}main{width:720px;max-width:calc(100% - 2em);margin:0 auto;padding:4rem 2rem}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:400;line-height:1.3;color:var(--color-ink);margin:0 0 1rem;letter-spacing:.01em}h1{font-size:2rem;font-weight:300}h2{font-size:1.75rem;font-weight:400}h3{font-size:1.4rem;font-weight:400}h4{font-size:1.15rem}h5{font-size:1.05rem}h6{font-size:1rem}.brand-title,h1.brand{font-family:var(--font-heading);font-size:3.5rem;font-weight:400;text-transform:none;letter-spacing:.02em;line-height:1.2}p{margin-bottom:1.5rem;color:var(--color-text-primary)}.prose p{margin-bottom:2rem}a{color:var(--color-ink);text-decoration:none;border-bottom:1px solid var(--color-structure);transition:color .2s ease,border-bottom-color .2s ease}a:hover{color:var(--color-ink);border-bottom-color:var(--color-ink)}strong,b{font-weight:600;color:var(--color-ink)}em,i{font-style:italic;color:var(--color-text-primary)}ul,ol{margin-bottom:1.5rem;padding-left:1.5rem}li{margin-bottom:.5rem;line-height:1.8}nav ul{list-style:none;padding:0;margin:0}img{max-width:100%;height:auto;display:block;border-radius:0}code{font-family:var(--font-mono);background:var(--color-bg-alt);padding:.2em .4em;border-radius:3px;font-size:.9em;color:var(--color-text-primary)}pre{background:var(--color-bg-alt);padding:1.5rem;border-radius:5px;overflow-x:auto;margin-bottom:1.5rem}pre>code{all:unset;font-family:var(--font-mono)}blockquote{border-left:3px solid var(--color-structure);padding:0 0 0 1.5rem;margin:2rem 0;font-style:italic;color:var(--color-text-secondary);background:transparent;position:relative}blockquote:before{content:'"';font-size:4rem;font-family:var(--font-heading);color:#2f35380f;position:absolute;left:-.3em;top:-.5em;line-height:1}hr{border:none;height:2px;background:linear-gradient(to right,transparent,rgba(124,154,146,.65) 20%,rgba(124,154,146,.4) 50%,rgba(124,154,146,.65) 80%,transparent);margin:var(--spacing-lg) 0}.ink-divider{height:2px;background:linear-gradient(to right,transparent,rgba(124,154,146,.65) 20%,rgba(124,154,146,.4) 50%,rgba(124,154,146,.65) 80%,transparent);margin:3rem 0}table{width:100%;border-collapse:collapse;margin-bottom:2rem}th,td{padding:.75rem;text-align:left;border-bottom:1px solid var(--color-border)}th{font-weight:600;color:var(--color-ink)}input,textarea{font-family:var(--font-body);font-size:16px;padding:.5rem;border:1px solid var(--color-border);border-radius:0;background:var(--color-surface);color:var(--color-ink)}textarea{width:100%;min-height:150px}button{font-family:var(--font-body);font-size:16px;padding:.75rem 1.5rem;background:var(--color-cinnabar);color:var(--color-paper);border:none;cursor:pointer;transition:opacity .2s ease}button:hover{opacity:.88}.container{max-width:720px;margin:0 auto;padding:0 2rem}.section-divider{border-top:1px solid var(--color-border);margin:var(--spacing-lg) 0}.text-center{text-align:center}.text-secondary{color:var(--color-text-secondary)}.no-decoration{border-bottom:none}.sr-only{border:0;padding:0;margin:0;position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}@media(max-width:720px){body{font-size:16px}main{padding:2rem 1rem}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.brand-title,h1.brand{font-size:2.5rem}}@media print{body{background:#fff;color:#000}a{border-bottom:none;text-decoration:underline}}footer[data-astro-cid-sz7xmlte]{padding:4rem 2rem;background:var(--color-paper);border-top:1px solid var(--color-border);margin-top:6rem}.footer-content[data-astro-cid-sz7xmlte]{max-width:720px;margin:0 auto;text-align:center}footer[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{margin:.5rem 0;color:var(--color-text-secondary);font-size:.9rem}.tagline[data-astro-cid-sz7xmlte]{font-family:var(--font-heading-en);font-size:1rem;color:var(--color-text-muted)}@media(max-width:720px){footer[data-astro-cid-sz7xmlte]{padding:3rem 1rem}}a[data-astro-cid-eimmu3lg]{display:inline-block;text-decoration:none}a[data-astro-cid-eimmu3lg].active{font-weight:500;text-decoration:none}.language-switcher[data-astro-cid-a2mxz4y6]{display:flex;align-items:center}.lang-button[data-astro-cid-a2mxz4y6]{display:flex;align-items:center;gap:.4rem;padding:.2rem .5rem;background:transparent;border:1px solid var(--color-border);border-radius:0;cursor:pointer;font-family:var(--font-body);font-size:.85rem;color:var(--color-text-secondary);transition:border-color .2s ease,background .2s ease,color .2s ease}.lang-button[data-astro-cid-a2mxz4y6]:hover{border-color:var(--color-structure);background:var(--color-wash);color:var(--color-ink);opacity:1}.lang-zh[data-astro-cid-a2mxz4y6],.lang-en[data-astro-cid-a2mxz4y6]{transition:all .2s ease}.lang-separator[data-astro-cid-a2mxz4y6]{opacity:.3;font-weight:300}@media(max-width:720px){.lang-button[data-astro-cid-a2mxz4y6]{font-size:.85rem;padding:.2rem .6rem}}header[data-astro-cid-3ef6ksr2]{margin:0;padding:0 2rem;background:var(--color-paper);border-bottom:1px solid var(--color-border)}h2[data-astro-cid-3ef6ksr2]{margin:0;font-size:1rem;font-weight:400;text-transform:none;letter-spacing:.02em}h2[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].brand-link{font-family:var(--font-heading-en);font-size:1.2rem;font-weight:400;text-decoration:none;border-bottom:none;color:var(--color-ink)}h2[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].brand-link:hover{opacity:.75}nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:flex-end;gap:1.25rem;max-width:960px;margin:0 auto;padding:1.5rem 0}.internal-links[data-astro-cid-3ef6ksr2]{display:flex;flex-wrap:wrap;gap:1.25rem;margin-left:auto}nav[data-astro-cid-3ef6ksr2] a{padding:0;color:var(--color-text-secondary);border-bottom:none;text-decoration:none;font-family:var(--font-body);font-size:.9rem;font-weight:400;letter-spacing:.02em;transition:color .2s ease}nav[data-astro-cid-3ef6ksr2] a:hover{color:var(--color-ink)}nav[data-astro-cid-3ef6ksr2] a.active{color:var(--color-cinnabar)}@media(max-width:720px){header[data-astro-cid-3ef6ksr2]{padding:0 1rem}nav[data-astro-cid-3ef6ksr2]{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem 0}.internal-links[data-astro-cid-3ef6ksr2]{gap:1rem 1.5rem;width:100%}h2[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].brand-link{font-size:1.1rem}}
