html{scroll-behavior:smooth}.blog-layout{grid-template-columns:1fr;align-items:start;gap:2.5rem;display:grid}@media (width>=1024px){.blog-layout{grid-template-columns:1fr 320px}}.toc-box{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #db0a84;border-radius:16px;margin-bottom:2.5rem;padding:1.5rem}.toc-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.toc-link{color:#374151;align-items:baseline;gap:.6rem;font-size:.88rem;font-weight:500;line-height:1.5;text-decoration:none;transition:color .2s;display:flex}.toc-link:hover{color:#db0a84}.toc-num{color:#db0a84;background:#db0a8414;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;font-size:.72rem;font-weight:700;display:inline-flex}.toc-sub .toc-link{color:#6b7280;padding-left:1.5rem;font-size:.83rem}.prose-content{color:#374151;background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:2.5rem;font-size:1rem;line-height:1.8}.prose-content h2{color:#0a0a0a;border-bottom:2px solid #f0f0f0;margin:2.75rem 0 1rem;padding-bottom:.6rem;scroll-margin-top:90px;font-size:1.5rem;font-weight:800;line-height:1.25}.prose-content h3{color:#0a0a0a;margin:2rem 0 .75rem;scroll-margin-top:90px;font-size:1.15rem;font-weight:700;line-height:1.3}.prose-content h2 a,.prose-content h3 a,.prose-content h4 a{font-weight:inherit;color:inherit!important;text-decoration:none!important}.prose-content p{margin-bottom:1.25rem}.prose-content ul,.prose-content ol{flex-direction:column;gap:.4rem;margin:1rem 0 1.5rem 1.25rem;display:flex}.prose-content li{line-height:1.7}.prose-content ul li::marker{color:#db0a84}.prose-content strong{color:#0a0a0a;font-weight:700}.prose-content a{color:#db0a84;text-decoration:underline}.prose-content a:hover{color:#9b0060}.prose-content .table-wrap{-webkit-overflow-scrolling:touch;border:1px solid #e5e7eb;border-radius:12px;margin:1.5rem 0;overflow-x:auto}.prose-content table{border-collapse:collapse;width:100%;min-width:400px;font-size:.9rem}.prose-content th{color:#0a0a0a;text-align:left;white-space:nowrap;background:#f8f8f8;border-bottom:1px solid #e5e7eb;padding:10px 14px;font-weight:700}.prose-content td{color:#374151;border-bottom:1px solid #f0f0f0;padding:10px 14px}.prose-content tr:last-child td{border-bottom:none}.prose-content tr:nth-child(2n) td{background:#fafafa}.prose-content blockquote{color:#6b7280;background:#db0a840a;border-left:4px solid #db0a84;border-radius:0 12px 12px 0;margin:1.5rem 0;padding:1rem 1.5rem;font-style:italic}.prose-content code{color:#db0a84;background:#f0f0f0;border-radius:4px;padding:2px 6px;font-size:.88em}.prose-content pre{background:#0a0a0a;border-radius:12px;margin:1.5rem 0;padding:1.5rem;overflow-x:auto}.prose-content pre code{color:#e5e7eb;background:0 0;padding:0}.share-btn{border-radius:100px;align-items:center;gap:7px;padding:8px 16px;font-size:.82rem;font-weight:600;text-decoration:none;transition:opacity .2s,transform .2s;display:inline-flex}.share-btn:hover{opacity:.85;transform:translateY(-1px)}.post-nav{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem;display:grid}@media (width<=640px){.post-nav{grid-template-columns:1fr}}.post-nav-link{background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;gap:4px;padding:1.25rem;text-decoration:none;transition:border-color .2s,box-shadow .2s;display:flex}.post-nav-link:hover{border-color:#db0a844d;box-shadow:0 4px 16px #db0a8412}.post-nav-right{text-align:right}.post-nav-label{color:#db0a84;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:700}.post-nav-title{color:#0a0a0a;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.88rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.sidebar-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:1.75rem}.sidebar-title{text-transform:uppercase;letter-spacing:.08em;color:#0a0a0a;border-bottom:2px solid #f0f0f0;margin-bottom:1.25rem;padding-bottom:.75rem;font-size:.82rem;font-weight:800}.recent-post-link{border-radius:12px;align-items:flex-start;gap:.75rem;padding:.6rem;text-decoration:none;transition:background .2s;display:flex}.recent-post-link:hover{background:#f8f8f8}
