.prose{font-family:var(--serif-cn);font-size:1.06rem;font-weight:400;color:var(--ink);line-height:2}.prose>*+*{margin-top:1.4em}.prose>*+h2,.prose>*+h3,.prose>*+h4{margin-top:1.9em}.prose p{font-family:var(--serif-cn);font-weight:400}.prose>p:first-of-type:first-letter{font-family:var(--serif-cn);font-weight:600;float:left;font-size:3.4em;line-height:.76;padding:.04em .14em 0 0;color:var(--accent)}.prose h2,.prose h3,.prose h4{display:flex;align-items:center;gap:12px;font-family:var(--serif-cn);font-weight:600;line-height:1.4;color:var(--ink);letter-spacing:.02em;scroll-margin-top:40px}.prose h2:before,.prose h3:before,.prose h4:before{content:"";width:8px;height:8px;flex:none;background:var(--accent);transform:rotate(45deg)}.prose h2{font-size:1.35rem}.prose h3{font-size:1.2rem}.prose h4{font-size:1.08rem}.prose .heading-anchor{display:none}.prose strong{font-weight:600}.prose em{font-style:italic;font-family:var(--serif-en);color:var(--ink)}.prose a{color:var(--accent);border-bottom:1px solid var(--accent-soft);padding-bottom:1px;transition:background .2s}.prose a:hover{background:#2d4a3e14}.prose code{font-family:var(--mono);font-size:.86em;background:var(--bg-soft);padding:2px 7px;border-radius:2px;color:var(--accent);font-weight:500}.prose pre{background:var(--bg-soft)!important;padding:26px 32px 24px;border-radius:3px;overflow-x:auto;font-size:.88rem;line-height:1.7;border-left:2px solid var(--accent);position:relative;margin:1.9em 0}.prose pre:before{content:attr(data-language);position:absolute;top:10px;right:16px;font-family:var(--mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);font-weight:500}.prose pre code{background:none;color:inherit;padding:0;font-size:inherit;font-weight:400;border-radius:0}.prose blockquote{position:relative;margin:1.9em 0;padding:.3em 0 .3em 30px;border-left:3px solid var(--accent)}.prose blockquote:before{content:"“";position:absolute;left:2px;top:-.18em;font-family:var(--serif-en);font-style:italic;font-weight:300;font-size:3.4rem;line-height:1;color:var(--gold);opacity:.55}.prose blockquote p{font-family:var(--serif-cn);font-weight:600;font-size:clamp(1.2rem,2.4vw,1.5rem);line-height:1.6;color:var(--accent);letter-spacing:.02em}.prose blockquote>*+*{margin-top:.5em}.prose blockquote cite{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-mute);font-style:normal;margin-top:14px}.prose blockquote cite:before{content:"— "}.prose .jm-note{float:right;width:44%;margin:6px 0 16px 26px;padding-top:12px;border-top:1px solid var(--accent)}.prose .jm-note .k{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin-bottom:7px}.prose .jm-note .t{font-family:var(--serif-cn);font-size:.86rem;line-height:1.7;color:var(--ink-soft)}.prose ul,.prose ol{padding-left:0;list-style:none;margin:1.2em 0}.prose ul li,.prose ol li{padding-left:32px;position:relative;margin-bottom:.6em;line-height:1.9;font-family:var(--serif-cn)}.prose ul li:before{content:"—";position:absolute;left:0;color:var(--accent);font-weight:500}.prose ol{counter-reset:ol-count}.prose ol li{counter-increment:ol-count}.prose ol li:before{content:counter(ol-count,decimal-leading-zero);position:absolute;left:0;top:2px;font-family:var(--mono);font-size:.8em;color:var(--accent);font-weight:500;letter-spacing:.05em}.prose li>ul,.prose li>ol{margin:.6em 0 0}.prose img{margin:2em auto;border-radius:3px}.prose hr{position:relative;height:1px;width:64%;background:var(--rule);border:none;margin:3em auto;overflow:visible;clear:both}.prose hr:before{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;background:var(--bg);border:1.4px solid var(--gold);transform:translate(-50%,-50%) rotate(45deg)}.prose table{width:100%;border-collapse:collapse;margin:1.8em 0;font-size:.95rem}.prose thead th{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-weight:500;text-align:left;border-bottom:1px solid var(--accent);padding:10px 14px}.prose tbody td{border-bottom:1px solid var(--rule);padding:12px 14px;vertical-align:top}@media(max-width:768px){.prose{font-size:1rem;line-height:1.85}.prose h2,.prose h3,.prose h4{gap:10px}.prose h2{font-size:1.2rem}.prose h3{font-size:1.1rem}.prose h4{font-size:1.02rem}.prose pre{padding:22px 20px 20px;font-size:.82rem;border-radius:2px}.prose blockquote{padding-left:20px}.prose blockquote p{font-size:1.2rem}.prose .jm-note{float:none;width:auto;margin:18px 0;padding-top:0;border-top:none;border-left:2px solid var(--accent);padding-left:16px}}
