.nc-prose-page{max-width:760px;margin:0 auto;padding:88px 56px 120px}.nc-prose-hero{padding-bottom:48px;margin-bottom:56px;border-bottom:1px solid var(--nc-line-soft)}.nc-prose-eyebrow-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:32px}.nc-prose-source{font-size:12px;color:var(--nc-ink-muted);display:flex;gap:8px;align-items:baseline}.nc-prose-source-val{font-family:var(--nc-font-mono);font-size:11px}.nc-prose-title{font-family:var(--nc-font-serif);font-size:56px;line-height:1.05;font-weight:400;letter-spacing:-.02em;margin:0 0 28px}.nc-prose-lede{font-family:var(--nc-font-serif);font-size:19px;line-height:1.7;color:var(--nc-ink-soft);font-style:italic;margin:0;max-width:620px}.nc-prose-meta{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:32px;flex-wrap:wrap}.nc-prose-tags{display:flex;gap:8px;flex-wrap:wrap}.nc-prose-tag{font-size:11px;font-family:var(--nc-font-mono);color:var(--nc-ink-muted);padding:3px 10px;border:1px solid var(--nc-line);border-radius:var(--nc-radius-pill);letter-spacing:.04em}.nc-prose-updated{font-size:12px;color:var(--nc-ink-faint);font-family:var(--nc-font-italic);font-style:italic}.nc-prose-body{font-family:var(--nc-font-serif);font-size:17px;line-height:1.85;color:var(--nc-ink)}.nc-prose-body>h1{display:none}.nc-prose-body h2{font-family:var(--nc-font-serif);font-size:30px;font-weight:500;letter-spacing:-.01em;line-height:1.2;margin:64px 0 20px;padding-bottom:12px;border-bottom:1px solid var(--nc-line-fine)}.nc-prose-body h3{font-family:var(--nc-font-serif);font-size:22px;font-weight:500;letter-spacing:-.005em;margin:40px 0 14px;color:var(--nc-ink)}.nc-prose-body h4{font-family:var(--nc-font-sans);font-size:14px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--nc-ink-muted);margin:28px 0 10px}.nc-prose-body p{margin:0 0 18px}.nc-prose-body strong{font-weight:500;color:var(--nc-rose-deep)}.nc-prose-body em{font-style:italic;font-family:var(--nc-font-italic)}.nc-prose-body ul,.nc-prose-body ol{margin:0 0 22px;padding-left:24px}.nc-prose-body li{margin-bottom:8px}.nc-prose-body li::marker{color:var(--nc-rose-deep)}.nc-prose-body blockquote{border-left:2px solid var(--nc-rose-deep);background:var(--nc-rose-pale);margin:28px 0;padding:18px 24px;font-style:italic;color:var(--nc-ink);border-radius:0 var(--nc-radius) var(--nc-radius) 0}.nc-prose-body blockquote p{margin-bottom:8px}.nc-prose-body blockquote p:last-child{margin-bottom:0}.nc-prose-body hr{border:0;height:1px;background:var(--nc-line);margin:48px 0}.nc-prose-body code{font-family:var(--nc-font-mono);font-size:14px;padding:2px 6px;background:var(--nc-bg-elev);border-radius:var(--nc-radius-sm);color:var(--nc-tea)}.nc-prose-body pre{background:var(--nc-bg-elev);padding:18px 22px;border-radius:var(--nc-radius);overflow-x:auto;margin:24px 0;border:1px solid var(--nc-line-fine)}.nc-prose-body pre code{padding:0;background:transparent}.nc-prose-body img{display:block;max-width:100%;height:auto;margin:36px auto;border-radius:var(--nc-radius)}.nc-prose-body a{color:var(--nc-rose-deep);text-decoration:none;background-image:linear-gradient(to bottom,transparent 92%,var(--nc-rose-soft) 92%,var(--nc-rose-soft) 96%,transparent 96%);transition:background-color .15s ease;padding:0 1px}.nc-prose-body a:hover{background-image:linear-gradient(to bottom,transparent 88%,var(--nc-rose-deep) 88%)}.nc-prose-body a[data-stub=true]{color:var(--nc-ink-faint);background-image:none;text-decoration:none;border-bottom:1px dashed var(--nc-line);padding:0 1px 1px;cursor:help;position:relative}.nc-prose-body a[data-stub=true]:after{content:"· 待补";font-family:var(--nc-font-script);font-size:13px;color:var(--nc-honey);margin-left:4px;font-style:normal}.nc-prose-body a[data-stub=true]:hover{color:var(--nc-ink-muted);border-bottom-color:var(--nc-honey-soft)}.nc-prose-footer{margin-top:96px;padding-top:32px;border-top:1px solid var(--nc-line-soft)}.nc-prose-back{font-family:var(--nc-font-italic);font-style:italic;color:var(--nc-rose-deep);text-decoration:none;font-size:16px}.nc-prose-back:hover{text-decoration:underline;text-decoration-color:var(--nc-rose-soft);text-underline-offset:4px}
