/* Blog article and listing styles. Loaded only on /blog/ pages, alongside site.css. */
.prose{color:#d1d5db;font-size:1.0625rem;line-height:1.8}
.prose>*+*{margin-top:1.25em}
.prose .lead{font-size:1.2rem;color:#e5e7eb;line-height:1.7}
.prose h2{color:#fff;font-size:1.6rem;font-weight:700;line-height:1.3;margin-top:2.2em;scroll-margin-top:7rem}
.prose h3{color:#fff;font-size:1.2rem;font-weight:600;line-height:1.4;margin-top:1.8em}
.prose h2+*,.prose h3+*{margin-top:.75em}
.prose a{color:#c5a880;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(197,168,128,.45)}
.prose a:hover{color:#e6d3ba;text-decoration-color:currentColor}
.prose strong{color:#f3f4f6;font-weight:600}
.prose ul,.prose ol{padding-left:1.4em}
.prose ul{list-style:disc}
.prose ol{list-style:decimal}
.prose li{margin-top:.5em;padding-left:.25em}
.prose li::marker{color:#c5a880}
.prose ul.checklist{list-style:none;padding-left:0}
.prose ul.checklist li{position:relative;padding:.7em .9em .7em 2.6em;background:#111827;border:1px solid #1f2937;border-radius:.75rem}
.prose ul.checklist li::before{content:"";position:absolute;left:.95em;top:.95em;width:1.05em;height:1.05em;border-radius:.3em;background:#c5a880;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat}
.prose .table-wrap{overflow-x:auto;border:1px solid #1f2937;border-radius:1rem;-webkit-overflow-scrolling:touch}
.prose table{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.55;min-width:32rem}
.prose th{background:#111827;color:#fff;font-weight:600;text-align:left;padding:.8em 1em;border-bottom:1px solid #374151}
.prose td{padding:.75em 1em;border-top:1px solid #1f2937;vertical-align:top}
.prose tbody tr:first-child td{border-top:0}
.prose td:first-child{color:#f3f4f6;font-weight:500}

.blog-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;font-size:.85rem;color:#9ca3af}
.blog-meta span+span::before{content:"·";margin-right:1rem;color:#4b5563}
.blog-card-title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.blog-card-excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.blog-faq details{background:#111827;border:1px solid #1f2937;border-radius:1rem;padding:1rem 1.25rem}
.blog-faq details+details{margin-top:.75rem}
.blog-faq summary{cursor:pointer;color:#fff;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.blog-faq summary::-webkit-details-marker{display:none}
.blog-faq summary::after{content:"+";color:#c5a880;font-size:1.25rem;line-height:1;flex-shrink:0}
.blog-faq details[open] summary::after{content:"−"}
.blog-faq details p{margin-top:.75rem;color:#d1d5db;line-height:1.7}

.blog-toc a{display:block;padding:.35rem 0;font-size:.875rem;color:#9ca3af;line-height:1.4}
.blog-toc a:hover{color:#c5a880}

@media (max-width:640px){
  .prose{font-size:1rem}
  .prose .lead{font-size:1.1rem}
  .prose h2{font-size:1.35rem}
  .blog-meta{gap:.25rem 1rem}
  .blog-meta span+span::before{display:none}
}
