@font-face{font-family:'Noto Serif SC';src:local('Noto Serif SC')}:root{--paper:#F1EEE5;--paper-alt:#EDE9DE;--paper-card:#F8F6EF;--ink:#17140F;--ink-soft:#4A423B;--ink-muted:#6E6560;--ink-faint:#B8AFA4;--accent:#96392C;--accent-soft:#B25B4A;--accent-emphasis:#7A3428;--accent-pale:#E8D3C8;--petal:#E3AFA0;--petal-soft:#D99788;--serif-cjk:"Noto Serif SC","Source Han Serif SC","Songti SC",serif;--content-width:760px;--wide-width:980px;--fold-width:1560px}:root[data-theme=dark]{--paper:#1C1916;--paper-alt:#221E1A;--paper-card:#262220;--ink:#F1EEE5;--ink-soft:#D8D2C8;--ink-muted:#A69C8F;--ink-faint:#5C554C;--accent:#C24A3A;--accent-soft:#D97764;--accent-emphasis:#E08A78;--accent-pale:#3D2620;--petal:#B8564A;--petal-soft:#A34638}:root{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}.theme-fade,.theme-fade body,.theme-fade body *{transition:background-color .5s cubic-bezier(.22, 1, .36, 1),color .5s cubic-bezier(.22, 1, .36, 1),border-color .5s cubic-bezier(.22, 1, .36, 1),fill .5s cubic-bezier(.22, 1, .36, 1),stroke .5s cubic-bezier(.22, 1, .36, 1)!important}@media (prefers-reduced-motion:reduce){.theme-fade,.theme-fade body,.theme-fade body *{transition:none!important}}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{scrollbar-width:thin;scrollbar-color:rgba(110,101,96,0.45) transparent}body::-webkit-scrollbar,html::-webkit-scrollbar{width:6px}body::-webkit-scrollbar-track,html::-webkit-scrollbar-track{background:0 0;margin:4px 0}body::-webkit-scrollbar-thumb,html::-webkit-scrollbar-thumb{background-color:rgba(110,101,96,.45);border-radius:999px;border:2px solid transparent;background-clip:padding-box;min-height:24px}body::-webkit-scrollbar-thumb:hover,html::-webkit-scrollbar-thumb:hover{background-color:rgba(150,57,44,.65);border:2px solid transparent;background-clip:padding-box}body::-webkit-scrollbar-corner,html::-webkit-scrollbar-corner{background:0 0}body{margin:0;background:var(--paper);color:var(--ink-soft);font-family:var(--serif-cjk);line-height:1.9;-webkit-font-smoothing:antialiased;overflow-x:hidden}::selection{background:var(--accent-pale);color:var(--accent-emphasis)}a{color:inherit}.wrap{max-width:var(--fold-width);margin:0 auto;padding:0 56px}.wrap-wide{max-width:1180px;margin:0 auto;padding:0 56px}@media (max-width:640px){.wrap,.wrap-wide{padding:0 22px}}.nav{max-width:var(--fold-width);margin:0 auto;padding:26px 56px;display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid rgba(23,20,15,.08);position:relative;z-index:10}.nav-mark{display:flex;align-items:center;gap:12px;text-decoration:none}.nav-logo{height:58px;width:auto;object-fit:contain;display:block}.nav-mark-text{display:flex;flex-direction:column;gap:3px}.nav-mark-cjk{font-size:20px;font-weight:700;letter-spacing:.06em;color:var(--ink)}.nav-mark-lat{font-size:9px;letter-spacing:.38em;color:var(--ink-faint)}.nav-icons{display:flex;align-items:center;gap:6px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:0 0;border:none;cursor:pointer;color:var(--ink-muted);transition:color .4s cubic-bezier(.22, 1, .36, 1),background-color .4s cubic-bezier(.22, 1, .36, 1);border-radius:50%}.icon-btn:hover{color:var(--accent);background:var(--paper-card)}.icon-btn svg{width:18px;height:18px}.lang-switch{font-size:13px;font-weight:700;letter-spacing:.04em;text-decoration:none}html.i18n-pending body{visibility:hidden}.icon-moon{display:none}:root[data-theme=dark] .icon-sun{display:none}:root[data-theme=dark] .icon-moon{display:block}@media (max-width:640px){.nav{padding-left:22px;padding-right:22px}}.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 26px;font-size:14px;letter-spacing:.12em;text-decoration:none;border:1px solid var(--ink);color:var(--ink);transition:all .5s cubic-bezier(.22, 1, .36, 1)}.btn:hover{background:var(--ink);color:var(--paper)}.btn-quiet{border-color:transparent;color:var(--ink-muted)}.btn-quiet:hover{color:var(--accent);background:0 0}.drawn-divider{width:100%;max-width:var(--content-width);margin:0 auto;padding:0 32px}.drawn-divider svg{width:100%;height:40px;display:block;color:var(--ink-soft);overflow:visible}.drawn-divider path{stroke-dasharray:900;stroke-dashoffset:900;transition:stroke-dashoffset 1.6s cubic-bezier(.22, 1, .36, 1)}.drawn-divider.in-view path{stroke-dashoffset:0}.reveal{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.22, 1, .36, 1),transform .9s cubic-bezier(.22, 1, .36, 1)}.reveal.in-view{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}section.block{padding:96px 0}@media (max-width:640px){section.block{padding:64px 0}}.sec-header{display:flex;gap:20px;margin-bottom:52px}.sec-rule{width:2px;background:var(--accent);flex-shrink:0}.sec-stack{display:flex;flex-direction:column;gap:7px}.sec-eyebrow{font-size:13px;letter-spacing:.32em;color:var(--accent)}.sec-title{font-size:28px;font-weight:700;letter-spacing:.16em;color:var(--ink);margin:0}.sec-label{font-size:10.5px;letter-spacing:.34em;color:var(--ink-faint)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;padding-top:36px;border-top:1px solid rgba(23,20,15,.09)}.footer-meta{font-size:12.5px;color:var(--ink-faint);letter-spacing:.06em}.back-to-top{position:fixed;right:28px;bottom:28px;width:44px;height:44px;border-radius:50%;background:var(--paper);border:1px solid rgba(23,20,15,.15);color:var(--ink-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:20;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .4s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1),border-color .4s cubic-bezier(.22,1,.36,1),color .4s cubic-bezier(.22,1,.36,1)}.back-to-top.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.back-to-top:hover{border-color:var(--accent);color:var(--accent)}.back-to-top svg{width:18px;height:18px}@media (max-width:640px){.back-to-top{right:18px;bottom:18px}}.drift-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;overflow:hidden}.drift-petal{position:absolute;opacity:0;animation:petal-drift 16s linear infinite}@keyframes petal-drift{0%{opacity:0;transform:translateY(0) translateX(0) rotate(0)}8%{opacity:.6}50%{transform:translateY(55vh) translateX(36px) rotate(190deg)}92%{opacity:.5}100%{opacity:0;transform:translateY(112vh) translateX(-28px) rotate(360deg)}}.reading-progress{position:fixed;left:0;bottom:0;width:100%;height:3px;z-index:30;pointer-events:none}.reading-progress-bar{height:100%;width:0;background:var(--accent)}