.prose{max-width:none;font-size:var(--step-prose);line-height:1.7}.prose>*+*{margin-top:1.35em}.prose h2{font-size:var(--step-3);margin-top:1.75em;margin-bottom:.6em;font-weight:600}.prose h2.prose-heading-ruler{overflow:visible}.prose .prose-heading-ruler__mark{--ruler-baseline:.11em;--ruler-run:.4em;--ruler-gap:.189em;--ruler-tick-drop:.12em;--ruler-tick-rise:.92em;--ruler-fade:.45em;position:relative}.prose .prose-heading-ruler__tail{width:var(--ruler-run);pointer-events:none;display:inline-block}.prose .prose-heading-ruler__tick{width:var(--ruler-gap);pointer-events:none;display:inline-block;position:relative}.prose .prose-heading-ruler__mark:after{content:"";left:0;right:0;bottom:var(--ruler-baseline);background:var(--text);opacity:.42;pointer-events:none;height:1px;mask-image:linear-gradient(to right, transparent 0, #000 var(--ruler-fade), #000 calc(100% - var(--ruler-fade)), transparent 100%);position:absolute;mask-size:100% 100%;mask-repeat:no-repeat}.prose .prose-heading-ruler__tick:after{content:"";right:0;bottom:calc(var(--ruler-baseline) - var(--ruler-tick-drop) - 2 * var(--ruler-run));width:1px;height:calc(var(--ruler-tick-rise) + var(--ruler-tick-drop) + 2 * var(--ruler-run));background:var(--text);opacity:.42;pointer-events:none;mask-image:linear-gradient(to bottom, transparent 0, #000 var(--ruler-fade), #000 calc(100% - var(--ruler-fade)), transparent 100%);position:absolute;mask-size:100% 100%;mask-repeat:no-repeat}.prose h3{font-size:var(--step-2);margin-top:1.5em;margin-bottom:.5em;font-weight:600}.prose h2+p,.prose h3+p{margin-top:0}.prose .accent-text{color:var(--accent)}.prose a{color:var(--accent);text-decoration-color:var(--accent)}.prose a:hover{text-decoration-thickness:2px}.prose strong{font-weight:650}.prose ul,.prose ol{margin-left:0;padding-left:1.4rem}.prose li+li{margin-top:.45em}.prose li::marker{color:var(--text-muted)}.prose blockquote{border-left:2px solid var(--accent);color:var(--text-muted);margin:1.8em 0;padding:.2em 0 .2em 1.25rem;font-style:italic}.prose blockquote p:last-child{margin-bottom:0}.prose .callout{border:var(--border-thin);border-left:3px solid var(--text-muted);background:var(--bg-subtle);margin:2em 0;padding:0 1.3rem}.prose .callout>summary{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;margin:0 -1.3rem;padding:1.05rem 1.3rem;font-size:.92em;font-style:normal;font-weight:600;list-style:none}.prose .callout>summary::-webkit-details-marker{display:none}.prose .callout>summary:before{content:"▸";width:1em;margin-right:.4em;transition:transform .15s;display:inline-block}.prose .callout[open]>summary{border-bottom:var(--border-thin)}.prose .callout[open]>summary:before{transform:rotate(90deg)}.prose .callout>summary+*{margin-top:1.15rem}.prose .callout>:last-child{margin-bottom:1.25rem}.prose code{font-family:var(--font-mono);background:var(--bg-subtle);border:var(--border-thin);padding:.15em .4em;font-size:.84em}.prose pre{background:var(--bg-subtle);border:var(--border-thin);margin:1.8em 0;padding:1.1rem 1.25rem;line-height:1.55;overflow-x:auto}.prose pre code{background:0 0;border:0;padding:0;font-size:.85em}.prose hr{margin:3em 0}.prose img{border:var(--border-thin);display:block}.prose figure{margin:2em 0}.prose figure img{margin-inline:auto}.prose figcaption{color:var(--text-muted);text-align:center;margin-top:.6em;font-size:.85rem}.prose table{border-collapse:collapse;border:var(--border-thin);width:100%;font-size:.92em;line-height:1.55}.prose th,.prose td{border:var(--border-thin);text-align:left;vertical-align:top;padding:.65rem .85rem}.prose thead th{background:var(--bg-subtle);font-weight:600}.prose tbody tr:nth-child(2n){background:var(--bg-subtle)}@media print{.prose code{background:0 0;border:0;padding:0}.prose pre{white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;overflow-x:visible}.prose pre,.prose figure,.prose blockquote,.prose table{break-inside:avoid}.prose h2,.prose h3,.prose .callout>summary{break-after:avoid}.prose .callout::details-content{content-visibility:visible}.prose .callout>summary{border-bottom:var(--border-thin)}.prose .callout>summary:before{transform:rotate(90deg)}}
