.post-container{max-width:760px;margin:0 auto;padding:8rem 2rem 4rem}.post-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--color-border)}.post-meta{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem}.post-category{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary);background:#1d4ed814;padding:.25rem .75rem;border-radius:100px}.post-date{font-size:.8125rem;color:var(--color-text-muted)}.post-header h1{font-size:2.75rem;font-weight:800;line-height:1.15;color:var(--color-text);margin-bottom:1.25rem}.post-excerpt{font-size:1.1875rem;color:var(--color-text-secondary);line-height:1.6;max-width:600px;margin:0 auto}.post-content{font-size:1.0625rem;line-height:1.8;color:var(--color-text)}.post-content .lead{font-size:1.1875rem;color:var(--color-text-secondary);line-height:1.7;margin-bottom:2.5rem}.post-content h2{font-size:1.75rem;font-weight:800;margin:3rem 0 1.25rem;color:var(--color-text);line-height:1.25}.post-content h3{font-size:1.375rem;font-weight:700;margin:2.5rem 0 1rem;color:var(--color-text)}.post-content h4{font-size:1.125rem;font-weight:700;margin:2rem 0 .75rem;color:var(--color-text)}.post-content p{margin-bottom:1.5rem;color:var(--color-text)}.post-content strong{font-weight:700;color:var(--color-text)}.post-content a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.post-content a:hover{color:var(--color-primary-dark)}.post-content .btn,.post-content .btn:hover{text-decoration:none}.post-content .btn-primary,.post-content .btn-primary:hover{color:#fff}.post-content ul,.post-content ol{margin-bottom:1.5rem;padding-left:1.5rem}.post-content li{margin-bottom:.625rem;line-height:1.7}.post-content li strong{color:var(--color-text)}.post-content blockquote{margin:2rem 0;padding:1.5rem 2rem;border-left:4px solid var(--color-primary);background:var(--color-bg-subtle);border-radius:0 var(--radius-md) var(--radius-md) 0;font-style:italic}.post-content blockquote p{margin-bottom:0;color:var(--color-text-secondary);font-size:1.0625rem}.post-content .post-note{margin:0 0 2.5rem;padding:.9rem 1.15rem;background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;line-height:1.6;color:var(--color-text-secondary)}.post-content code{font-family:JetBrains Mono,Fira Code,monospace;font-size:.875em;background:var(--color-bg-muted);padding:.125em .375em;border-radius:4px;color:var(--color-primary-dark)}.post-content pre{margin:2rem 0;padding:1.5rem;border-radius:var(--radius-md);background:var(--color-bg-dark);overflow-x:auto;border:1px solid var(--color-bg-dark-subtle)}.post-content pre code{background:none;padding:0;color:#ffffffe6;font-size:.875rem;line-height:1.6}.post-content figure{margin:2.5rem 0}.post-content figure img{width:100%;border-radius:var(--radius-md);border:1px solid var(--color-border)}.post-content figcaption{text-align:center;color:var(--color-text-muted);font-size:.8125rem;margin-top:.75rem;line-height:1.5}.causal-dag{margin:2.5rem 0;padding:1.75rem 1.25rem 1.25rem;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md)}.causal-dag-svg{display:block;width:100%;max-width:520px;height:auto;margin:0 auto;overflow:visible}.causal-dag-svg .dag-edge{fill:none;stroke:var(--color-primary);stroke-width:2.25}.causal-dag-svg .dag-edge--backdoor{stroke:var(--color-accent);stroke-dasharray:5 4}.causal-dag-svg .dag-edge--muted{stroke:var(--color-text-muted);stroke-width:1.75}.causal-dag-svg .dag-node{fill:var(--color-bg);stroke:var(--color-primary);stroke-width:2}.causal-dag-svg .dag-node--confounder{stroke:var(--color-accent)}.causal-dag-svg .dag-node--treatment{fill:color-mix(in srgb,var(--color-primary) 10%,var(--color-bg))}.causal-dag-svg .dag-node--outcome{fill:color-mix(in srgb,var(--color-primary) 6%,var(--color-bg))}.causal-dag-svg .dag-node--muted{fill:var(--color-bg-muted);stroke:var(--color-text-muted);stroke-dasharray:5 4}.causal-dag-svg .dag-label{fill:var(--color-text);font-family:var(--font-body),system-ui,sans-serif;font-size:13px;font-weight:600;text-anchor:middle;dominant-baseline:middle}.causal-dag-svg .dag-annotation{fill:var(--color-text-muted);font-family:var(--font-body),system-ui,sans-serif;font-size:11px;font-weight:500;text-anchor:middle}.causal-dag-svg marker path{fill:var(--color-primary)}.causal-dag-svg marker.dag-marker--accent path{fill:var(--color-accent)}.causal-dag-svg marker.dag-marker--muted path{fill:var(--color-text-muted)}.causal-dag figcaption{margin-top:1rem;max-width:36rem;margin-left:auto;margin-right:auto}@media (max-width: 768px){.causal-dag{padding:1.25rem .75rem 1rem}.causal-dag-svg .dag-label{font-size:12px}}.post-formula{margin:2rem 0;padding:1.5rem 1.75rem;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:center}.post-formula .formula-body{font-size:1.0625rem;font-weight:700;line-height:1.6;color:var(--color-text)}.post-formula .formula-body em{font-style:normal;color:var(--color-primary)}.post-content .post-formula .formula-note{margin:.75rem 0 0;font-size:.8125rem;line-height:1.5;color:var(--color-text-muted)}.post-table-wrap{margin:2rem 0;overflow-x:auto}.post-content table.post-table{width:100%;min-width:560px;border-collapse:collapse;font-size:.9375rem}.post-content table.post-table th{text-align:left;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);padding:.65rem .75rem .65rem 0;border-bottom:1px solid var(--color-border);vertical-align:bottom}.post-content table.post-table td{padding:.85rem .75rem .85rem 0;border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);line-height:1.6;vertical-align:top}.post-content table.post-table td:first-child{color:var(--color-text);font-weight:600}.post-pill{display:inline-block;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.15rem .5rem;border-radius:100px;white-space:nowrap}.post-pill--yes{background:#10b9811f;color:#047857}.post-pill--partial{background:#f59e0b24;color:#b45309}.post-pill--no{background:#ef44441a;color:#b91c1c}.post-cta{margin:3rem 0;padding:2.5rem;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-align:center}.post-cta h3{font-size:1.375rem;font-weight:800;color:var(--color-text);margin:0 0 .75rem!important}.post-cta p{font-size:1rem;color:var(--color-text-secondary);margin-bottom:1.5rem;max-width:480px;margin-left:auto;margin-right:auto}.post-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--color-border)}.post-tags{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.post-tags>span:first-child{font-size:.8125rem;font-weight:600;color:var(--color-text-muted);margin-right:.25rem}.tag{font-size:.8125rem;font-weight:600;padding:.25rem .75rem;background:var(--color-bg-muted);color:var(--color-text-secondary);border-radius:100px;border:1px solid var(--color-border)}.related-posts{padding:4rem 0;background:var(--color-bg-subtle)}.related-posts h2{font-size:1.5rem;font-weight:800;color:var(--color-text);margin-bottom:2rem}.related-posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.related-post-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2rem;transition:transform .3s,box-shadow .3s,border-color .3s}.related-post-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.related-post-card .post-category{margin-bottom:.75rem;display:inline-block}.related-post-card h3{font-size:1.125rem;font-weight:700;margin-bottom:.5rem;line-height:1.4}.related-post-card h3 a{color:var(--color-text);text-decoration:none;transition:color .2s}.related-post-card h3 a:hover{color:var(--color-primary)}.related-post-card p{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.6}@media (max-width: 768px){.post-container{padding:6rem 1.5rem 3rem}.post-header h1{font-size:2rem}.post-excerpt{font-size:1.0625rem}.post-content h2{font-size:1.5rem}.post-content h3{font-size:1.25rem}.post-cta{padding:2rem 1.5rem}}
