.prose{max-width:var(--read);overflow-wrap:break-word;hyphens:auto;font-size:1.125rem;line-height:1.75}:where(.prose) :where(p,ul,ol,blockquote,figure,pre,h2,h3,h4){margin-block:0}.prose>*+*{margin-top:1.1em}.prose h2,.prose h3,.prose h4{letter-spacing:-.01em;scroll-margin-top:5rem;font-weight:700;line-height:1.25}.prose h2{border-bottom:2px solid var(--line);margin-top:2.4em;padding-bottom:.35rem;font-size:1.6rem;position:relative}.prose h2:before{content:"";background:var(--accent);vertical-align:.12em;clip-path:polygon(50% 0,62% 38%,100% 38%,69% 61%,81% 100%,50% 76%,19% 100%,31% 61%,0 38%,38% 38%);width:.55em;height:.55em;margin-right:.5em;display:inline-block}.prose h3{margin-top:2em;font-size:1.3rem}.prose h4{margin-top:1.6em;font-size:1.1rem}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:.7em}.prose a{color:var(--accent-2);text-underline-offset:3px;text-decoration-thickness:1.5px}.prose a:hover{color:var(--accent)}.prose strong{font-weight:700}.prose em strong,.prose strong em{background:linear-gradient(transparent 60%, var(--accent-soft) 60%);padding-inline:.1em;font-style:normal}.prose del{color:var(--muted);text-decoration-color:var(--accent);text-decoration-thickness:2px}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:.4em}.prose ul>li::marker{content:"✦  ";color:var(--accent);font-size:.8em}.prose ol>li::marker{font-family:var(--font-pixel);color:var(--accent)}.prose blockquote{border:2px solid var(--line);background:var(--panel);box-shadow:var(--shadow-sm);padding:.9rem 1.2rem;position:relative}.prose blockquote:before{content:"!";background:var(--accent-3);color:#1b1724;border:2px solid var(--line);width:1.6rem;height:1.6rem;font-family:var(--font-pixel);place-items:center;font-size:1rem;display:grid;position:absolute;top:-2px;left:-2px;transform:translate(-50%,-50%)}.prose blockquote>*+*{margin-top:.6em}.prose hr{text-align:center;border:0;margin-block:2.5em}.prose hr:after{content:"✦ ✦ ✦";color:var(--accent);letter-spacing:.6em}.prose :not(pre)>code{font-family:var(--font-mono);background:var(--panel-2);border:1.5px solid color-mix(in srgb, var(--line) 25%, transparent);padding:.05em .35em;font-size:.88em}.prose .code-window{border:2px solid var(--line);box-shadow:var(--shadow-sm);background:var(--panel)}.code-bar{border-bottom:2px solid var(--line);background:var(--panel-2);font-family:var(--font-pixel);justify-content:space-between;align-items:center;padding:.2rem .4rem .2rem .75rem;font-size:1.05rem;font-weight:500;display:flex}.copy-btn{font:inherit;border:1.5px solid var(--line);background:var(--panel);color:var(--fg);cursor:pointer;padding:0 .5rem}.copy-btn:hover{background:var(--accent);color:#fff}.prose pre{font-family:var(--font-mono);tab-size:4;hyphens:none;margin:0;padding:1rem 1.1rem;font-size:.86rem;line-height:1.65;overflow-x:auto}.prose pre code{font-family:inherit}.shiki,.shiki span{color:var(--shiki-light);background-color:#0000!important}:root[data-theme=dark] .shiki,:root[data-theme=dark] .shiki span{color:var(--shiki-dark)}.prose .table-wrap{border:2px solid var(--line);box-shadow:var(--shadow-sm);background:var(--panel);overflow-x:auto}.prose table{border-collapse:collapse;font-variant-numeric:tabular-nums;hyphens:none;width:100%;font-size:.95rem}.prose th,.prose td{border-bottom:1.5px solid color-mix(in srgb, var(--line) 20%, transparent);text-align:left;vertical-align:top;padding:.5rem .8rem}.prose th{background:var(--panel-2);border-bottom:2px solid var(--line);white-space:nowrap;font-weight:700}.prose tbody tr:last-child td{border-bottom:0}.prose tbody tr:hover{background:color-mix(in srgb, var(--accent-soft) 50%, transparent)}.prose figure{text-align:center;margin-block:1.8em}.prose figure img,.prose figure video{border:2px solid var(--line);box-shadow:var(--shadow);background:var(--panel);width:auto;max-height:70vh;margin-inline:auto;display:block}.prose figure video{cursor:pointer;max-width:100%;height:auto}.prose figcaption{font-family:var(--font-pixel);color:var(--muted);margin-top:.85rem;font-size:1.25rem;font-weight:500}.prose figcaption:before{content:"▸ ";color:var(--accent)}.prose .katex{font-size:1.08em}.prose .katex-display{margin:0;padding:.4em .2em;overflow:auto hidden}.prose p:has(>.katex-display){margin-top:.8em}
