:root{--xuan:#140c1d;--xuan-2:#1b1127;--xuan-3:#251834;--line:#3b2a4e;--line-soft:#2c1f3b;--wei:#b98fd4;--wei-deep:#7d4f9e;--jin:#c8a45c;--jin-bright:#e9d6a6;--jin-deep:#8c6c36;--zhu:#c4432f;--zhu-deep:#9c3222;--yue:#ede5d8;--yue-2:#c3b4ca;--yue-3:#9484a0;--zhi:#ece3d0;--zhi-2:#e0d3b8;--zhi-line:#cbbb9b;--mo:#241a2c;--mo-2:#5b4d64;--mo-3:#7d6f83;--font-serif:"Noto Serif SC Variable", "Noto Serif SC", "Source Han Serif SC", "Noto Serif CJK SC", "Songti SC", "STSong", "SimSun", serif;--font-brush:"Ma Shan Zheng", "Kaiti SC", "STKaiti", "KaiTi", "Noto Serif SC Variable", serif;--font-num:"Cormorant Garamond", "Noto Serif SC Variable", "Songti SC", serif;--fs-display:clamp(4.2rem, 17.5vw, 12.5rem);--fs-h1:clamp(2.3rem, 1.4rem + 4vw, 4.4rem);--fs-h2:clamp(1.75rem, 1.1rem + 2.8vw, 3.1rem);--fs-h3:clamp(1.2rem, 1.05rem + .7vw, 1.6rem);--fs-body:clamp(1rem, .96rem + .18vw, 1.0625rem);--fs-small:.875rem;--fs-tiny:.78rem;--gutter:clamp(1.25rem, 5vw, 4.5rem);--wrap:78rem;--section:clamp(5rem, 11vw, 10rem);--header-h:4.25rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-io:cubic-bezier(.65, 0, .35, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 1rem);background:var(--xuan);scrollbar-color:var(--line) var(--xuan);scrollbar-width:thin}body{min-height:100vh;background:var(--xuan);min-height:100dvh;color:var(--yue);font-family:var(--font-serif);font-size:var(--fs-body);letter-spacing:.02em;font-feature-settings:"palt" 0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;line-height:1.95;overflow-x:clip}body:before{content:"";z-index:1;pointer-events:none;opacity:.11;mix-blend-mode:soft-light;background:url(/img/grain.svg);position:fixed;top:0;bottom:0;left:0;right:0}::selection{background:var(--wei-deep);color:#fff8ea}.paper ::selection{background:var(--zhu);color:var(--zhi)}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:var(--xuan)}::-webkit-scrollbar-thumb{background:var(--line);border:2px solid var(--xuan);border-radius:9px}::-webkit-scrollbar-thumb:hover{background:var(--jin-deep)}img,svg,video,canvas{max-width:100%;display:block}img{height:auto}h1,h2,h3,h4,p,figure,blockquote,dl,dd,ol,ul{margin:0}ol,ul{padding:0;list-style:none}h1,h2,h3{letter-spacing:.04em;text-wrap:balance;font-weight:900;line-height:1.22}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);font-weight:600;line-height:1.45}p{text-wrap:pretty}a{color:inherit;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:.32em;text-decoration-thickness:1px}a:hover{-webkit-text-decoration-color:var(--jin);text-decoration-color:var(--jin)}button,input,select,textarea{font:inherit;letter-spacing:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--jin-bright);outline-offset:3px;border-radius:2px}.paper :focus-visible{outline-color:var(--zhu)}[hidden]{display:none!important}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.num{font-family:var(--font-num);font-variant-numeric:lining-nums tabular-nums;letter-spacing:.01em;font-weight:600}.brush{font-family:var(--font-brush);letter-spacing:.02em;font-weight:400}.wrap{width:min(var(--wrap), 100% - var(--gutter) * 2);margin-inline-start:auto;margin-inline-end:auto}.section{padding-block:var(--section);position:relative}main{z-index:2;position:relative}.lede{color:var(--yue-2);max-width:34em;font-size:clamp(1.05rem,1rem + .45vw,1.28rem);line-height:2}.muted{color:var(--yue-3)}.small{font-size:var(--fs-small);line-height:1.85}.vertical{writing-mode:vertical-rl;text-orientation:upright;letter-spacing:.32em;line-height:2.1}.paper{background-color:var(--zhi);color:var(--mo);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-image:url(/img/paper-640.webp);background-size:420px}.paper .lede{color:var(--mo-2)}.paper .muted{color:var(--mo-3)}.paper:before,.paper:after{content:"";pointer-events:none;background:url(/img/edge.svg) 0 0/480px 14px repeat-x;height:14px;position:absolute;left:0;right:0}.paper:before{top:-13px}.paper:after{bottom:-13px;transform:scaleY(-1)}.btn{--bg:var(--jin);--fg:#1c1206;background:var(--bg);min-height:3.1rem;color:var(--fg);letter-spacing:.18em;text-indent:.18em;white-space:nowrap;isolation:isolate;transition:transform .2s var(--ease-out), background-color .3s var(--ease-out), box-shadow .3s var(--ease-out);-webkit-tap-highlight-color:transparent;border:0;border-radius:2px;justify-content:center;align-items:center;gap:.6em;padding:.55rem 1.9rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.btn:before{content:"";border:1px solid color-mix(in srgb, var(--fg) 38%, transparent);pointer-events:none;transition:inset .35s var(--ease-out);border-radius:1px;position:absolute;top:4px;bottom:4px;left:4px;right:4px}.btn:hover{background:var(--jin-bright);box-shadow:0 10px 30px -12px color-mix(in srgb, var(--jin) 70%, transparent)}.btn:hover:before{top:2px;bottom:2px;left:2px;right:2px}.btn:active{transform:translateY(1px)scale(.99)}.btn[disabled],.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;box-shadow:none}.btn--ghost{--bg:transparent;--fg:var(--jin-bright);box-shadow:inset 0 0 0 1px var(--jin-deep)}.btn--ghost:before{border-color:#0000}.btn--ghost:hover{background:color-mix(in srgb, var(--jin) 14%, transparent);box-shadow:inset 0 0 0 1px var(--jin)}.btn--zhu{--bg:var(--zhu);--fg:#fff3e4}.btn--zhu:hover{box-shadow:0 10px 30px -12px color-mix(in srgb, var(--zhu) 80%, transparent);background:#d4533d}.paper .btn--ghost{--fg:var(--mo);box-shadow:inset 0 0 0 1px var(--mo-2)}.paper .btn--ghost:hover{background:color-mix(in srgb, var(--mo) 8%, transparent);box-shadow:inset 0 0 0 1px var(--mo)}.btn--small{min-height:2.5rem;font-size:var(--fs-small);letter-spacing:.12em;text-indent:.12em;padding:.3rem 1.1rem}.link{color:var(--jin-bright);transition:background-size .45s var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-block-start:.3em;padding-block-end:.3em;text-decoration:none;display:inline-block;position:relative}.link:hover{background-position:100% 100%;background-size:0 1px}.paper .link{color:var(--zhu-deep)}.seal{aspect-ratio:1;background:var(--zhu);color:#f8ead8;width:2.5em;font-family:var(--font-brush);letter-spacing:0;text-align:center;filter:url(#seal-rough);writing-mode:vertical-rl;-webkit-user-select:none;user-select:none;border-radius:3px;place-items:center;padding:.18em;font-size:1rem;line-height:1.02;display:inline-grid}.seal--lg{font-size:clamp(1.5rem,3.2vw,2.4rem)}.skip{z-index:100;background:var(--jin);color:#1c1206;padding:.5rem 1rem;text-decoration:none;position:fixed;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip:focus{transform:none}.site-header{z-index:50;height:var(--header-h);padding-inline:var(--gutter);transition:background-color .4s var(--ease-out), transform .5s var(--ease-out), border-color .4s;border-bottom:1px solid #0000;align-items:center;gap:1.5rem;display:flex;position:fixed;top:0;bottom:auto;left:0;right:0}.site-header.is-solid{background:color-mix(in srgb, var(--xuan) 88%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);border-bottom-color:var(--line-soft)}.site-header.is-hidden{transform:translateY(-100%)}.brand{align-items:center;gap:.65rem;margin-right:auto;text-decoration:none;display:inline-flex}.brand__name{font-family:var(--font-brush);letter-spacing:.08em;color:var(--yue);padding-top:.1em;font-size:1.7rem;line-height:1}.brand .seal{font-size:.72rem}.site-nav{align-items:center;gap:clamp(1rem,2.4vw,2.3rem);display:flex}.site-nav a{color:var(--yue-2);letter-spacing:.2em;text-indent:.2em;padding:.6rem .1rem;text-decoration:none;transition:color .3s;display:block;position:relative}.site-nav a small{display:none}.site-nav a:after{content:"";background:var(--jin);width:5px;height:5px;transition:transform .35s var(--ease-out);border-radius:50%;position:absolute;bottom:.25rem;left:50%;transform:translate(-50%)scale(0)}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--yue)}.site-nav a:hover:after,.site-nav a[aria-current=page]:after{transform:translate(-50%)scale(1)}.menu-btn{z-index:60;background:0 0;border:0;width:2.9rem;height:2.9rem;margin-right:-.6rem;display:none;position:relative}.menu-btn i{background:var(--yue);height:1px;transition:transform .45s var(--ease-out), top .45s var(--ease-out), opacity .3s;position:absolute;left:.7rem;right:.7rem}.menu-btn i:first-of-type{top:1.05rem}.menu-btn i:nth-of-type(2){top:1.45rem;right:1.2rem}.menu-btn i:nth-of-type(3){top:1.85rem}.menu-btn[aria-expanded=true] i:first-of-type{top:1.45rem;transform:rotate(45deg)}.menu-btn[aria-expanded=true] i:nth-of-type(2){opacity:0}.menu-btn[aria-expanded=true] i:nth-of-type(3){top:1.45rem;transform:rotate(-45deg)}@media (max-width:60rem){.menu-btn{display:block}.site-header .wx-open{display:none}.site-nav{z-index:55;padding:calc(var(--header-h) + 1rem) var(--gutter) 2rem;background:radial-gradient(120% 70% at 85% 0%, color-mix(in srgb, var(--wei-deep) 30%, transparent), transparent 70%), var(--xuan);visibility:hidden;opacity:0;transition:opacity .4s var(--ease-out), visibility 0s .4s;overscroll-behavior:contain;flex-direction:column;justify-content:center;align-items:stretch;gap:0;position:fixed;top:0;bottom:0;left:0;right:0;overflow-y:auto}.site-nav.is-open{visibility:visible;opacity:1;transition:opacity .4s var(--ease-out), visibility 0s}.site-nav a{letter-spacing:.3em;text-indent:0;color:var(--yue);border-bottom:1px solid var(--line-soft);opacity:0;transition:transform .6s var(--ease-out), opacity .5s var(--ease-out);justify-content:space-between;align-items:baseline;padding:.95rem 0;font-size:1.9rem;font-weight:900;display:flex;transform:translateY(1.2rem)}.site-nav.is-open a{opacity:1;transition-delay:calc(var(--i,0) * 55ms + 80ms);transform:none}.site-nav a small{font-size:var(--fs-small);letter-spacing:.12em;color:var(--yue-3);font-weight:400;display:inline}.site-nav a:after{display:none}.site-nav a[aria-current=page]{color:var(--jin-bright)}.site-nav .wx-open{align-self:flex-start;margin-top:2rem;display:inline-flex}}@media (min-width:60.01rem){.site-nav .wx-open{display:none}}.site-footer{z-index:2;border-top:1px solid var(--line-soft);background:linear-gradient(to bottom, var(--xuan), #0f0816);padding:clamp(3.5rem,8vw,6rem) 0 2rem;position:relative}.footer-grid{grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,.7fr)) minmax(0,1.2fr);gap:3rem 2rem;display:grid}.footer-brand .brand__name{font-size:2.6rem}.footer-brand p{max-width:22em;color:var(--yue-3);font-size:var(--fs-small);margin-top:1rem}.footer-col h2{font-size:var(--fs-small);letter-spacing:.3em;color:var(--yue-3);margin-bottom:.9rem;font-weight:600}.footer-col li+li{margin-top:.15rem}.footer-col a{color:var(--yue-2);transition:color .25s, transform .35s var(--ease-out);padding-block-start:.35rem;padding-block-end:.35rem;text-decoration:none;display:inline-block}.footer-col a:hover{color:var(--jin-bright);transform:translate(.3em)}.footer-wx .wx-id{color:var(--jin-bright);margin:.2rem 0 .9rem;font-size:1.9rem;line-height:1.2;display:block}.footer-legal{border-top:1px solid var(--line-soft);color:var(--yue-3);font-size:var(--fs-tiny);gap:.8rem;margin-top:clamp(2.5rem,6vw,4.5rem);padding-top:1.6rem;line-height:1.9;display:grid}.footer-legal p{max-width:70em}@media (max-width:60rem){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand,.footer-wx{grid-column:1/-1}}.wx-dialog{border:1px solid var(--jin-deep);background:var(--xuan-2);width:min(30rem,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--yue);border-radius:3px;padding:0;overflow:auto;box-shadow:0 40px 120px -20px #000}.wx-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#08040cb8}.wx-dialog[open]{animation:dialog-in .5s var(--ease-out)}.wx-dialog[open]::backdrop{animation:.4s ease-out fade-in}@keyframes dialog-in{0%{opacity:0;transform:translateY(1.5rem)scale(.97)}}@keyframes fade-in{0%{opacity:0}}.wx-dialog__body{padding:clamp(1.6rem,5vw,2.6rem);position:relative}.wx-dialog__body:before{content:"";border:1px solid var(--line);pointer-events:none;position:absolute;top:7px;bottom:7px;left:7px;right:7px}.wx-dialog h2{font-size:1.5rem}.wx-dialog .wx-id{color:var(--jin-bright);-webkit-user-select:all;user-select:all;overflow-wrap:anywhere;margin:1.2rem 0 .2rem;font-size:clamp(2.2rem,9vw,3rem);line-height:1.1;display:block}.wx-dialog__steps{counter-reset:s;color:var(--yue-2);font-size:var(--fs-small);margin:1.4rem 0}.wx-dialog__steps li{counter-increment:s;grid-template-columns:1.6rem 1fr;padding-block-start:.25rem;padding-block-end:.25rem;display:grid}.wx-dialog__steps li:before{content:counter(s, cjk-ideographic);color:var(--jin)}.wx-dialog__actions{flex-wrap:wrap;gap:.8rem;display:flex}.wx-dialog__warn{border-top:1px solid var(--line);font-size:var(--fs-tiny);color:var(--yue-3);margin-top:1.4rem;padding-top:1rem;line-height:1.85}.wx-dialog__warn strong{color:var(--zhu);font-weight:600}.wx-dialog__close{z-index:1;width:2.75rem;height:2.75rem;color:var(--yue-3);transition:color .2s, transform .4s var(--ease-out);background:0 0;border:0;font-size:1.5rem;line-height:1;position:absolute;top:.7rem;right:.7rem}.wx-dialog__close:hover{color:var(--yue);transform:rotate(90deg)}.copied-tip{min-height:1.6em;font-size:var(--fs-small);color:var(--jin-bright);margin-top:.6rem}.host-warn{z-index:200;padding:.6rem var(--gutter);background:var(--zhu);color:#fff3e4;font-size:var(--fs-small);text-align:center;position:fixed;top:0;bottom:auto;left:0;right:0}.disclaimer{border:1px solid var(--line);background:color-mix(in srgb, var(--xuan-2) 70%, transparent);color:var(--yue-2);font-size:var(--fs-small);border-radius:2px;grid-template-columns:auto 1fr;align-items:start;gap:1rem 1.2rem;padding:1.3rem 1.4rem;line-height:1.9;display:grid;position:relative}.disclaimer strong{color:var(--yue);font-weight:600}.paper .disclaimer{border-color:var(--zhi-line);background:color-mix(in srgb, var(--zhi-2) 55%, transparent);color:var(--mo-2)}.paper .disclaimer strong{color:var(--mo)}.js [data-reveal]{visibility:hidden}.js.no-motion [data-reveal],.js.reduce [data-reveal]{visibility:visible!important;opacity:1!important;clip-path:none!important;filter:none!important;transform:none!important}@view-transition{navigation:auto}::view-transition-old(root){animation:.28s ease-in both vt-out}::view-transition-new(root){animation:.5s var(--ease-out) both vt-in}@keyframes vt-out{to{opacity:0;filter:blur(6px)}}@keyframes vt-in{0%{opacity:0;filter:blur(8px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.12s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}}@media print{:root{--xuan:#fff;--xuan-2:#fff;--xuan-3:#f5f1ea;--line:#b9b0a2;--line-soft:#d9d2c6;--yue:#15101a;--yue-2:#3a3340;--yue-3:#6b6272;--jin:#8c6c36;--jin-bright:#6f5222;--jin-deep:#8c6c36;--wei:#6a3f8a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-reveal]{visibility:visible!important;opacity:1!important;clip-path:none!important;filter:none!important;transform:none!important}.site-header,.site-footer,.wx-dialog,body:before,.no-print{display:none!important}body{color:#111;background:#fff}}
