.prose{color:#374151;line-height:1.75;font-size:1.125rem;max-width:none}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{color:#111827;font-weight:700;letter-spacing:-.025em;scroll-margin-top:100px}.prose h1{font-size:2.5rem;line-height:1.1;margin-top:0;margin-bottom:2rem;border-bottom:3px solid var(--color-primary-950);padding-bottom:1rem}.prose h2{font-size:2rem;line-height:1.2;margin-top:3rem;margin-bottom:1.5rem;color:#1f2937;border-left:4px solid var(--color-primary-950);padding-left:1rem;position:relative}.prose h2:before{content:"";position:absolute;left:-4px;top:0;bottom:0;width:4px;background:linear-gradient(135deg,var(--color-primary-950),var(--color-primary-800));border-radius:2px}.prose h3{font-size:1.625rem;line-height:1.3;margin-top:2.5rem;margin-bottom:1.25rem;color:#1f2937;position:relative;padding-left:1.5rem}.prose h3:before{content:"▶";position:absolute;left:0;color:var(--color-primary-950);font-size:.875rem;top:.25rem}.prose h4{font-size:1.375rem;line-height:1.4;margin-top:2rem;margin-bottom:1rem;color:#374151;font-weight:600}.prose h5{font-size:1.125rem;line-height:1.5;margin-top:1.75rem;margin-bottom:.75rem;color:#374151;font-weight:600}.prose h6{font-size:1rem;line-height:1.5;margin-top:1.5rem;margin-bottom:.5rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.prose p{margin-bottom:1.75rem;text-align:justify;hyphens:auto}.prose p:first-of-type{font-size:1.25rem;font-weight:400;color:#1f2937;line-height:1.6}.prose a{color:var(--color-primary-950);text-decoration:none;font-weight:500;border-bottom:2px solid transparent;transition:all .3s ease;position:relative}.prose a:hover{color:#1d4ed8;border-bottom-color:var(--color-primary-950)}.prose a:visited{color:#7c3aed}.prose blockquote{border-left:4px solid var(--color-primary-950);background:linear-gradient(135deg,#eff6ff,#dbeafe);padding:1.5rem 2rem;margin:2.5rem 0;font-style:italic;position:relative;border-radius:0 .5rem .5rem 0;box-shadow:0 4px 6px -1px #0000001a}.prose blockquote:before{content:'"';font-size:4rem;color:var(--color-primary-950);position:absolute;top:-.5rem;left:1rem;font-family:serif;opacity:.3}.prose blockquote p{margin:0;font-size:1.125rem;color:#1f2937}.prose ul,.prose ol{margin-bottom:2rem;padding-left:2rem}.prose ul{list-style:none}.prose ul>li{position:relative;margin-bottom:.75rem;padding-left:1rem}.prose ul>li:before{content:"•";color:var(--color-primary-950);font-weight:700;position:absolute;left:0;font-size:1.25rem}.prose ol>li{margin-bottom:.75rem;padding-left:.5rem}.prose ol{counter-reset:item}.prose ol>li{counter-increment:item;position:relative}.prose ol>li::marker{color:var(--color-primary-950);font-weight:600}.prose strong{font-weight:700;color:#111827}.prose em{font-style:italic;color:#374151}.prose mark{background-color:#fef3c7;color:#92400e;padding:.125rem .25rem;border-radius:.25rem}.prose code{background-color:#f3f4f6;padding:.25rem .5rem;border-radius:.375rem;font-size:.875rem;font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,SF Mono,Consolas,Liberation Mono,Menlo,monospace;color:#be123c;border:1px solid #e5e7eb;font-weight:500}.prose pre{background-color:#1f2937;color:#f9fafb;padding:1.5rem;border-radius:.75rem;overflow-x:auto;margin:2.5rem 0;border:1px solid #374151;box-shadow:0 4px 6px -1px #0000001a}.prose pre code{background-color:transparent;padding:0;color:inherit;border:none;font-size:.875rem}.prose img{border-radius:.75rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;margin:2.5rem auto;display:block;max-width:100%;height:auto;transition:transform .3s ease}.prose img:hover{transform:scale(1.02)}.prose figure{margin:2.5rem 0}.prose figcaption{text-align:center;color:#6b7280;font-size:.875rem;margin-top:1rem;font-style:italic}.prose hr{border:none;height:1px;background:linear-gradient(90deg,transparent,#e5e7eb,transparent);margin:3rem 0;position:relative}.prose hr:before{content:"❋";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background-color:#f9fafb;color:#6b7280;padding:.5rem;font-size:1.25rem}.prose table{border-collapse:collapse;width:100%;margin:2.5rem 0;background-color:#fff;border-radius:.75rem;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;font-size:.9375rem}.prose thead{background:linear-gradient(135deg,var(--color-primary-950),var(--color-primary-900))}.prose th{padding:1rem 1.25rem;text-align:left;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;border:none}.prose td{padding:.875rem 1.25rem;border-bottom:1px solid #f3f4f6;color:#374151;vertical-align:top}.prose tbody tr{transition:background-color .2s ease}.prose tbody tr:hover{background-color:#f8fafc}.prose tbody tr:nth-child(2n){background-color:#f9fafb}.prose tbody tr:nth-child(2n):hover{background-color:#f1f5f9}.prose table th:first-child,.prose table td:first-child{padding-left:1.5rem}.prose table th:last-child,.prose table td:last-child{padding-right:1.5rem}.prose .info-box{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-left:4px solid var(--color-primary-950);padding:1.5rem;margin:2rem 0;border-radius:0 .5rem .5rem 0;position:relative}.prose .warning-box{background:linear-gradient(135deg,#fef3c7,#fde68a);border-left:4px solid #f59e0b;padding:1.5rem;margin:2rem 0;border-radius:0 .5rem .5rem 0}.prose .success-box{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-left:4px solid #10b981;padding:1.5rem;margin:2rem 0;border-radius:0 .5rem .5rem 0}.prose .error-box{background:linear-gradient(135deg,#fee2e2,#fecaca);border-left:4px solid #ef4444;padding:1.5rem;margin:2rem 0;border-radius:0 .5rem .5rem 0}.prose [id]{scroll-margin-top:100px}.prose span[id]{position:relative}.prose span[id]:before{content:"";position:absolute;top:-100px;left:0;height:100px;width:1px}@media (max-width: 768px){.prose{font-size:1rem}.prose h1{font-size:2rem}.prose h2{font-size:1.625rem}.prose h3{font-size:1.375rem}.prose table{font-size:.875rem}.prose th,.prose td{padding:.75rem 1rem}.prose ul,.prose ol{padding-left:1.5rem}}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
