.prose{max-width:var(--container-prose);color:var(--text-secondary);margin-inline:auto;font-size:1.12rem;line-height:1.78}.prose>*+*,.prose .story-section>*+*{margin-top:1.25em}.prose>.story-section+.story-section{margin-top:2em}.prose .story-section>h2+*{margin-top:.7em}.prose--editorial>h2:first-child+p:first-letter,.prose--editorial>p:first-of-type:first-letter,.prose--editorial .story-section:first-child>h2+p:first-letter{float:left;font-family:var(--font-display);color:var(--accent);padding:.04em .14em 0 0;font-size:3.1em;font-weight:600;line-height:.82}.prose h2,.prose h3,.prose h4{color:var(--ink);scroll-margin-top:90px}.prose h2{letter-spacing:var(--tracking-tight);margin-top:2em;font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem)}.prose h2+*{margin-top:.7em}.prose h3{margin-top:1.6em;font-size:1.3rem}.prose strong{color:var(--ink);font-weight:600}.prose a{color:var(--accent);text-decoration:underline;text-decoration-color:rgba(var(--accent-rgb), .4);text-underline-offset:3px;transition:text-decoration-color var(--dur-1) var(--ease-out)}.prose a:hover{text-decoration-color:var(--accent)}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin-top:.5em}.prose li::marker{color:var(--accent)}.prose blockquote{border-left:3px solid var(--accent);color:var(--ink);margin-inline:0;padding:4px 0 4px 24px;font-size:1.18rem;font-style:normal}.prose img{border-radius:var(--r-lg);border:1px solid var(--glass-border);max-width:100%;height:auto;box-shadow:var(--shadow-md);margin:1.8em auto;display:block}.prose .story-pull{margin:clamp(2.6em,6vw,4em) 0}.prose .story-pull blockquote{border:1px solid var(--glass-border);border-left:3px solid var(--accent);border-radius:var(--r-lg);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(140%);box-shadow:var(--shadow-md);font-family:var(--font-display);letter-spacing:var(--tracking-tight);text-wrap:balance;color:var(--ink);margin:0;padding:clamp(1.6rem,3.4vw,2.4rem) clamp(1.5rem,3vw,2.2rem) clamp(1.6rem,3.4vw,2.4rem) clamp(2.4rem,5vw,3.4rem);font-size:clamp(1.35rem,1.05rem + 1.5vw,2rem);font-style:normal;font-weight:600;line-height:1.22;position:relative}.prose .story-pull blockquote:before{content:"“";color:var(--accent);opacity:.22;pointer-events:none;font-size:3em;line-height:1;position:absolute;top:-.08em;left:clamp(.5rem,1.6vw,.9rem)}.prose figure{margin:2em 0}.prose figure img{margin-bottom:.6em}.prose figcaption{text-align:center;color:var(--text-tertiary);font-size:.88rem;line-height:1.5}.prose .email-example{border:1px solid var(--glass-border);border-left:3px solid var(--accent);border-radius:var(--r-md);background:var(--glass-bg);margin:1.9em 0;padding:clamp(1.1rem,2.6vw,1.6rem) clamp(1.2rem,2.8vw,1.7rem);font-size:.98rem;line-height:1.6}.prose .email-example>*+*{margin-top:.75em}.prose .photo-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:1.8em 0;display:grid}.prose .photo-row img{object-fit:cover;height:100%;margin:0}.prose hr{background:var(--glass-border);border:none;height:1px;margin-block:2.5em}.prose code:not(pre code){font-family:var(--font-mono);background:var(--glass-bg-strong);border:1px solid var(--glass-border);color:var(--ink);overflow-wrap:break-word;word-break:break-word;border-radius:6px;padding:.15em .4em;font-size:.86em}.prose pre{border-radius:var(--r-md);border:1px solid var(--glass-border);margin-block:1.5em;padding:18px 20px;font-size:.88rem;line-height:1.6;overflow-x:auto;background:#0a0e16!important}[data-theme=light] .prose pre{background:#0e1320!important}.prose pre code{font-family:var(--font-mono)}.prose table{border-collapse:collapse;-webkit-overflow-scrolling:touch;border:1px solid var(--glass-border);border-radius:var(--r-md);background:var(--bg-elevated);width:100%;margin-block:1.8em;font-size:.94rem;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--glass-border);vertical-align:top;padding:11px 16px}.prose tbody tr:last-child td{border-bottom:none}.prose thead th{color:var(--ink);font-family:var(--font-display);white-space:nowrap;background:var(--glass-bg-strong);border-bottom:1px solid var(--glass-border-strong);font-weight:600}.prose tbody tr:nth-child(2n) td{background:var(--glass-bg)}.prose tbody tr:hover td{background:rgba(var(--accent-rgb), .05)}.prose .mermaid{text-align:center;margin-block:1.8em}.prose .mermaid svg{background:0 0;max-width:100%;height:auto;margin-inline:auto;display:block}.prose .mermaid .nodeLabel,.prose .mermaid .edgeLabel,.prose .mermaid .cluster-label,.prose .mermaid .label,.prose .mermaid text{color:var(--ink);fill:var(--ink)}.prose .mermaid .edgeLabel,.prose .mermaid .edgeLabel p{background:var(--bg);color:var(--ink)}.mm-stage .mermaid text,.mm-stage text{fill:var(--ink)}.prose .mermaid.mm-zoomable{cursor:zoom-in;border-radius:var(--r-md);transition:box-shadow var(--dur-2) var(--ease-out);position:relative}.prose .mermaid.mm-zoomable:hover,.prose .mermaid.mm-zoomable:focus-visible{box-shadow:0 0 0 1px var(--glass-border-strong);outline:none}.prose .mermaid .mm-hint{border-radius:var(--r-sm);width:30px;height:30px;color:var(--text-secondary);background:var(--glass-bg-strong);border:1px solid var(--glass-border);opacity:0;transition:opacity var(--dur-2) var(--ease-out), color var(--dur-1) var(--ease-out);pointer-events:none;place-items:center;display:grid;position:absolute;top:10px;right:10px}.prose .mermaid.mm-zoomable:hover .mm-hint,.prose .mermaid.mm-zoomable:focus-visible .mm-hint{opacity:1}.mm-overlay{z-index:300;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(8px);justify-content:center;align-items:center;padding:clamp(16px,4vw,48px);display:none;position:fixed;inset:0}.mm-overlay.open{display:flex}.mm-stage{border-radius:var(--r-lg);background:var(--bg-elevated,var(--glass-bg-strong));border:1px solid var(--glass-border-strong);max-width:100%;max-height:100%;box-shadow:var(--shadow-lg,var(--shadow-md));padding:clamp(16px,3vw,32px);overflow:auto}.mm-stage svg{height:auto;display:block}.mm-close{z-index:301;width:42px;height:42px;color:var(--ink);background:var(--glass-bg-strong);border:1px solid var(--glass-border-strong);cursor:pointer;transition:color var(--dur-1) var(--ease-out), border-color var(--dur-1) var(--ease-out);border-radius:50%;place-items:center;font-size:1rem;display:grid;position:fixed;top:clamp(14px,3vw,28px);right:clamp(14px,3vw,28px)}.mm-close:hover{color:var(--accent);border-color:var(--accent)}
