.prose h1{color:#fff;font-weight:800;font-size:2.25rem;line-height:1.2;margin-top:2rem;margin-bottom:1.5rem;border-bottom:2px solid #10b981;padding-bottom:.5rem}.prose h2,.prose h3,.prose h4{color:#fff;font-weight:700;margin-top:2rem;margin-bottom:1rem}.prose h5,.prose h6{color:#e5e7eb;font-weight:600;margin-top:1.5rem;margin-bottom:.75rem}.prose p{color:#d1d5db;line-height:1.8;margin-bottom:1.5rem}.prose strong{color:#fff;font-weight:700}.prose em{color:#e5e7eb;font-style:italic}.prose mark{background-color:#fbbf24;color:#000;padding:.125rem .25rem;border-radius:.25rem}.prose a{color:#10b981;text-decoration:none;border-bottom:1px solid transparent;transition:all .2s ease}.prose a:hover{color:#34d399;border-bottom-color:#34d399}.prose a{color:#10b981;text-decoration:none;border-bottom:1px solid transparent;transition:all .2s ease;position:relative;padding-right:.75rem}.prose a:hover{color:#34d399;border-bottom-color:#34d399;text-shadow:0 0 8px rgba(52,211,153,.4)}.prose a[target=_blank]:after,.prose a.external-link:after{content:"↗";position:absolute;right:0;top:-.125rem;font-size:.75rem;color:#6b7280;transition:all .2s ease;opacity:.7}.prose a[target=_blank]:hover:after,.prose a.external-link:hover:after{color:#34d399;opacity:1;transform:translate(.125rem,-.125rem)}.prose a.new-tab-icon:after{content:"🔗";font-size:.625rem;right:.125rem;top:0}.prose a.arrow-icon:after{content:"→";font-weight:700;font-size:.875rem}.prose a.box-icon:after{content:"⧉";font-size:.75rem}.prose a.modern-external:after{content:"";width:.75rem;height:.75rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310b981' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15,3 21,3 21,9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;display:inline-block;right:0;top:.125rem}.prose a.modern-external:hover:after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2334d399' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15,3 21,3 21,9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E")}.prose a.internal-link{padding-right:0}.prose a.internal-link:after{display:none}.prose a.download-link{color:#f59e0b;padding-right:1rem}.prose a.download-link:after{content:"⬇";color:#f59e0b}.prose a.download-link:hover{color:#fbbf24;border-bottom-color:#fbbf24}.prose a.download-link:hover:after{color:#fbbf24}.prose a[href^="mailto:"]{color:#8b5cf6;padding-right:1rem}.prose a[href^="mailto:"]:after{content:"✉";color:#8b5cf6;font-size:.75rem}.prose a[href^="mailto:"]:hover{color:#a78bfa;border-bottom-color:#a78bfa}.prose a[href^="mailto:"]:hover:after{color:#a78bfa}.prose a[href^="tel:"]{color:#06b6d4;padding-right:1rem}.prose a[href^="tel:"]:after{content:"📞";font-size:.625rem}.prose a[href^="tel:"]:hover{color:#22d3ee;border-bottom-color:#22d3ee}.prose a[target=_blank]{position:relative}.prose a[target=_blank]:hover:before{content:"Opens in new tab";position:absolute;bottom:-2rem;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-size:.625rem;white-space:nowrap;z-index:10;opacity:0;animation:fadeInTooltip .2s ease forwards;border:1px solid #374151;box-shadow:0 4px 6px #0000001a}@keyframes fadeInTooltip{0%{opacity:0;transform:translate(-50%) translateY(-.25rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (max-width: 768px){.prose a{padding-right:.5rem}.prose a:after{font-size:.625rem}.prose a[target=_blank]:hover:before{display:none}}.prose ul,.prose ol{margin:1.5rem 0;list-style:none}.prose ul br,.prose ol br{display:none}.prose ul li,.prose ol li{color:#d1d5db;margin-bottom:.75rem;line-height:1.5;position:relative;padding-left:1rem;transition:all .2s ease}.prose ul li:hover,.prose ol li:hover{color:#fff;transform:translate(.25rem)}.prose ul>li:before{content:"▶";position:absolute;left:0;top:0;color:#10b981;font-size:.75rem;font-weight:700;transform:rotate(0);transition:all .3s ease}.prose ul li:hover:before{color:#34d399;transform:rotate(90deg) scale(1.2)}.prose ul ul>li:before{content:"◆";color:#f59e0b;font-size:.625rem}.prose ul ul ul>li:before{content:"●";color:#06b6d4;font-size:.5rem}.prose ul ul ul ul>li:before{content:"○";color:#8b5cf6;font-size:.5rem}.prose ol{list-style-type:decimal;margin:0;padding-left:1.5rem}.prose ol>li{counter-increment:list-counter;position:relative;padding-left:0}.prose ol li::marker{color:#ff8904;font-weight:700}.prose ol li:hover:before{background:linear-gradient(135deg,#34d399,#6ee7b7);transform:scale(1.1);box-shadow:0 4px 8px #10b98166}.prose ol ol{counter-reset:list-counter-2}.prose ol ol>li{counter-increment:list-counter-2}.prose ol ol>li:before{content:counter(list-counter-2);background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#000;width:1.125rem;height:1.125rem;font-size:.625rem}.prose ol ol ol{counter-reset:list-counter-3}.prose ol ol ol>li{counter-increment:list-counter-3}.prose ol ol ol>li:before{content:counter(list-counter-3);background:linear-gradient(135deg,#06b6d4,#22d3ee);color:#000;width:1rem;height:1rem;font-size:.5rem}.prose ol ol ol ol{counter-reset:list-counter-4}.prose ol ol ol ol>li{counter-increment:list-counter-4}.prose ol ol ol ol>li:before{content:counter(list-counter-4);background:linear-gradient(135deg,#8b5cf6,#a78bfa);color:#fff;width:.875rem;height:.875rem;font-size:.5rem}.prose ul ul,.prose ol ol,.prose ul ol,.prose ol ul{margin:.5rem 0;padding-left:1.5rem}.prose ul.task-list{list-style:none;padding-left:0}.prose ul.task-list li{padding-left:2rem;position:relative}.prose ul.task-list li:before{content:none}.prose input[type=checkbox]{position:absolute;left:0;top:.125rem;width:1rem;height:1rem;accent-color:#10b981;cursor:pointer}.prose input[type=checkbox]:checked+span{color:#9ca3af;text-decoration:line-through}.prose .task-list-item:before{content:"☐";position:absolute;left:0;top:0;color:#6b7280;font-size:1rem;cursor:pointer;transition:all .2s ease}.prose .task-list-item.checked:before{content:"☑";color:#10b981}.prose .task-list-item:hover:before{color:#10b981;transform:scale(1.1)}.prose ul.arrow-list>li:before{content:"→";color:#10b981;font-weight:700;font-size:1rem}.prose ul.star-list>li:before{content:"★";color:#fbbf24;font-size:.875rem}.prose ul.check-list>li:before{content:"✓";color:#10b981;font-weight:700;font-size:.875rem}.prose ul.dot-list>li:before{content:"•";color:#10b981;font-size:1.25rem;font-weight:700}.prose pre{background:linear-gradient(135deg,#2b2b2b,#1e1e1e);border:1px solid #3c3c3c;border-radius:8px;padding:0;margin:2rem 0;overflow:hidden;position:relative;box-shadow:0 8px 32px #0000004d;font-family:JetBrains Mono,Fira Code,Monaco,Cascadia Code,Roboto Mono,monospace}.prose pre:before{content:"";display:block;height:40px;background:linear-gradient(135deg,#3c3c3c,#2b2b2b);border-bottom:1px solid #4a4a4a;position:relative}.prose pre:after{content:"";position:absolute;top:15px;left:15px;width:12px;height:12px;background:#ff5f57;border-radius:50%;box-shadow:20px 0 #ffbd2e,40px 0 #28ca42}.prose pre code{display:block;background:none;padding:20px 24px;border-radius:0;font-size:14px;color:#a9b7c6;line-height:1.5;border:none;overflow-x:auto;font-family:inherit;white-space:pre;-moz-tab-size:4;tab-size:4}.prose pre .copy-btn{position:absolute;top:8px;right:12px;background:#4a4a4acc;border:1px solid #5a5a5a;border-radius:4px;color:#a9b7c6;padding:4px 8px;font-size:11px;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:500;z-index:10}.prose pre .copy-btn:hover{background:#6897bbcc;border-color:#6897bb;color:#fff;transform:translateY(-1px)}.prose pre .copy-btn:active{transform:translateY(0)}.prose pre .copy-btn.copied{background:#629755cc;border-color:#629755;color:#fff}.prose .token.comment,.prose .token.prolog,.prose .token.doctype,.prose .token.cdata{color:gray;font-style:italic}.prose .token.punctuation{color:#a9b7c6}.prose .token.property,.prose .token.tag,.prose .token.boolean,.prose .token.number,.prose .token.constant,.prose .token.symbol{color:#6897bb}.prose .token.selector,.prose .token.attr-name,.prose .token.string,.prose .token.char,.prose .token.builtin,.prose .token.inserted{color:#6a8759}.prose .token.operator,.prose .token.entity,.prose .token.url,.prose .language-css .token.string,.prose .style .token.string,.prose .token.variable{color:#a9b7c6}.prose .token.atrule,.prose .token.attr-value,.prose .token.keyword{color:#cc7832}.prose .token.function,.prose .token.class-name{color:#ffc66d}.prose .token.regex,.prose .token.important{color:#cc7832}.prose .token.important,.prose .token.bold{font-weight:700}.prose .token.italic{font-style:italic}.prose .token.entity{cursor:help}.prose .token.php{color:#cc7832}.prose .token.variable{color:#9876aa}.prose .token.function-name{color:#ffc66d}.prose pre.line-numbers{padding-left:0}.prose pre.line-numbers code{padding-left:50px}.prose pre.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:40px;left:0;width:40px;letter-spacing:-1px;border-right:1px solid #4a4a4a;background:#333;-webkit-user-select:none;user-select:none;counter-reset:linenumber}.prose pre.line-numbers .line-numbers-rows>span{pointer-events:none;display:block;counter-increment:linenumber;color:#6c6c6c;font-size:12px;line-height:1.5;padding:0 8px;text-align:right}.prose pre.line-numbers .line-numbers-rows>span:before{content:counter(linenumber)}.prose pre code::-webkit-scrollbar{height:8px}.prose pre code::-webkit-scrollbar-track{background:#2b2b2b;border-radius:4px}.prose pre code::-webkit-scrollbar-thumb{background:#4a4a4a;border-radius:4px}.prose pre code::-webkit-scrollbar-thumb:hover{background:#5a5a5a}.prose code{background-color:#374151;color:#fbbf24;padding:.25rem .5rem;border-radius:.25rem;font-size:.875rem;font-family:Fira Code,Monaco,Cascadia Code,Roboto Mono,monospace;border:1px solid #4b5563}.prose pre[class*=language-]{background-color:#1e293b;border:1px solid #334155}.prose .token.comment,.prose .token.prolog,.prose .token.doctype,.prose .token.cdata{color:#64748b;font-style:italic}.prose .token.punctuation{color:#94a3b8}.prose .token.property,.prose .token.tag,.prose .token.boolean,.prose .token.number,.prose .token.constant,.prose .token.symbol{color:#f97316}.prose .token.selector,.prose .token.attr-name,.prose .token.string,.prose .token.char,.prose .token.builtin,.prose .token.inserted{color:#10b981}.prose .token.operator,.prose .token.entity,.prose .token.url,.prose .language-css .token.string,.prose .style .token.string,.prose .token.variable{color:#06b6d4}.prose .token.atrule,.prose .token.attr-value,.prose .token.keyword{color:#8b5cf6}.prose .token.function,.prose .token.class-name{color:#f59e0b}.prose table{width:100%;border-collapse:collapse;margin:2rem 0;background-color:#1f2937;border-radius:.5rem;overflow:hidden;border:1px solid #374151}.prose thead{background-color:#374151}.prose th{color:#fff;font-weight:600;padding:1rem;text-align:left;border-bottom:2px solid #4b5563}.prose td{color:#d1d5db;padding:1rem;border-bottom:1px solid #374151}.prose tbody tr:hover{background-color:#2d3748}.prose tbody tr:last-child td{border-bottom:none}.prose blockquote{border-left:4px solid #10b981;background:#1f293780;margin:2rem 0;padding:1.5rem;border-radius:0 .5rem .5rem 0;position:relative}.prose blockquote:before{content:'"';position:absolute;top:-.5rem;left:1rem;font-size:3rem;color:#10b981;font-weight:700;line-height:1}.prose blockquote p{color:#e5e7eb;font-style:italic;font-size:1.25rem;margin-bottom:1rem;margin-left:1.5rem}.prose blockquote cite{color:#10b981;font-weight:500;font-style:normal}.prose hr{border:none;height:2px;background:linear-gradient(90deg,transparent,#10b981,transparent);margin:3rem 0}.prose img{border-radius:.5rem;width:100%;box-shadow:0 10px 25px #0000004d;transition:transform .3s ease}.prose img:hover{transform:scale(1.02)}.prose figcaption{color:#9ca3af;font-size:.875rem;text-align:center;font-style:italic;margin-top:1rem}.prose kbd{background-color:#374151;color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-family:monospace;border:1px solid #4b5563;box-shadow:0 1px 3px #0000004d}.prose sub,.prose sup{font-size:.75rem;line-height:0;position:relative;vertical-align:baseline}.prose sup{top:-.5em}.prose sub{bottom:-.25em}.prose del{color:#ef4444;text-decoration-color:#ef4444}.prose ins{color:#10b981;text-decoration:none;background-color:#10b9811a;padding:.125rem .25rem;border-radius:.25rem}.prose dl{margin:1.5rem 0}.prose dt{color:#fff;font-weight:600;margin-top:1rem;margin-bottom:.5rem}.prose dd{color:#d1d5db;margin-left:2rem;margin-bottom:1rem}.prose details{background-color:#1f2937;border:1px solid #374151;border-radius:.5rem;padding:1rem;margin:1.5rem 0}.prose summary{color:#10b981;font-weight:600;cursor:pointer;margin-bottom:.5rem;padding:.5rem;border-radius:.25rem;transition:background-color .2s ease}.prose summary:hover{background-color:#374151}.prose details[open] summary{margin-bottom:1rem;border-bottom:1px solid #374151;padding-bottom:1rem}.prose .math{color:#fbbf24;font-family:Times New Roman,serif}.prose .footnote{color:#10b981;font-size:.75rem;vertical-align:super}.prose .footnotes{margin-top:3rem;padding-top:2rem;border-top:1px solid #374151}.prose .footnotes ol{font-size:.875rem;color:#9ca3af}.prose .code-copy-btn{position:absolute;top:.5rem;right:.5rem;background-color:#374151;color:#d1d5db;border:1px solid #4b5563;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;cursor:pointer;transition:all .2s ease}.prose .code-copy-btn:hover{background-color:#10b981;color:#fff;border-color:#10b981}@media (max-width: 768px){.prose h1{font-size:1.875rem}.prose pre{padding:1rem;margin:1rem 0}.prose table{font-size:.875rem}.prose th,.prose td{padding:.5rem}}
