.prose{font-size:1.125rem;line-height:1.75;max-width:70ch}.dark .prose,.prose{--tw-prose-body:hsl(var(--foreground));--tw-prose-headings:hsl(var(--foreground));--tw-prose-lead:hsl(var(--muted-foreground));--tw-prose-links:hsl(var(--primary));--tw-prose-bold:hsl(var(--foreground));--tw-prose-counters:hsl(var(--muted-foreground));--tw-prose-bullets:hsl(var(--muted-foreground));--tw-prose-hr:hsl(var(--border));--tw-prose-quotes:hsl(var(--foreground));--tw-prose-quote-borders:hsl(var(--primary));--tw-prose-captions:hsl(var(--muted-foreground));--tw-prose-code:hsl(var(--foreground));--tw-prose-pre-code:hsl(var(--foreground));--tw-prose-pre-bg:hsl(var(--muted));--tw-prose-th-borders:hsl(var(--border));--tw-prose-td-borders:hsl(var(--border))}.prose h1{font-size:2.5rem;margin-top:0;margin-bottom:1.5rem;line-height:1.2;font-weight:800;letter-spacing:-.025em}.prose h2{font-size:1.875rem;margin-top:2.5rem;margin-bottom:1rem;line-height:1.3;font-weight:700;letter-spacing:-.015em}.prose h3{font-size:1.5rem;margin-top:2rem;margin-bottom:.75rem;line-height:1.4;font-weight:600}.prose h4{font-size:1.25rem;margin-top:1.75rem;margin-bottom:.5rem;line-height:1.5;font-weight:600}.prose p{line-height:1.8}.prose ol,.prose p,.prose ul{margin-top:1.25rem;margin-bottom:1.25rem}.prose ol,.prose ul{padding-left:1.625rem}.prose li{margin-top:.5rem;margin-bottom:.5rem;padding-left:.375rem}.prose blockquote{font-style:italic;border-left-width:.25rem;border-left-color:hsl(var(--primary));padding-left:1rem;margin-left:0;margin-right:0}.prose pre{border-radius:.5rem;padding:1.25rem;overflow-x:auto;margin:1.5rem 0}.prose code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose table{width:100%;table-layout:auto;text-align:left;margin-top:2rem;margin-bottom:2rem;border-collapse:collapse}.prose thead{border-bottom-width:1px;border-bottom-color:hsl(var(--border))}.prose thead th{font-weight:600;padding:.75rem 1rem}.prose tbody tr{border-bottom-width:1px;border-bottom-color:hsl(var(--border))}.prose tbody tr:last-child{border-bottom-width:0}.prose tbody td{padding:.75rem 1rem}.toc a{display:block;text-decoration:none;transition:color .2s;border-left:2px solid transparent;padding:.375rem 0 .375rem .5rem;margin-left:-.5rem}.toc a.active,.toc a:hover{color:hsl(var(--primary))}.toc a.active{border-left-color:hsl(var(--primary))}@media (max-width:768px){.prose{font-size:1rem}.prose h1{font-size:2rem}.prose h2{font-size:1.5rem}.prose h3{font-size:1.25rem}.prose h4{font-size:1.125rem}}