.article-breadcrumb{padding:calc(60px + var(--spacing-sm)) 0 0;font-size:.85rem;color:var(--color-text-mid)}.article-breadcrumb a{color:inherit;transition:color .2s}.article-breadcrumb a:hover{color:var(--color-main)}.article-breadcrumb .sep{margin:0 8px;opacity:.4}.article-header{padding:var(--spacing-md) 0 var(--spacing-sm);border-bottom:2px solid rgba(0,0,0,.06);margin-bottom:var(--spacing-md)}.article-header h1{font-size:2rem;line-height:1.5;margin-bottom:var(--spacing-sm)}.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:.85rem;color:var(--color-text-mid)}.article-meta time{font-family:JetBrains Mono,monospace;font-weight:700}.article-body{max-width:780px;margin:0 auto;padding-bottom:var(--spacing-lg)}.article-body h2{font-size:1.5rem;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm);padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.06)}.article-body h2:after{content:none}.article-body h3{font-size:1.2rem;margin-top:var(--spacing-md);margin-bottom:12px}.article-body h3:after{content:none}.article-body p{font-size:1rem;line-height:1.9;margin-bottom:var(--spacing-sm)}.article-body ul,.article-body ol{margin-bottom:var(--spacing-sm);padding-left:1.5em}.article-body li{font-size:1rem;line-height:1.8;margin-bottom:6px}.article-body blockquote{margin:var(--spacing-md) 0;padding:var(--spacing-sm) var(--spacing-md);border-left:4px solid var(--color-main);background-color:#00000005;font-style:italic;color:var(--color-text-mid)}.article-body blockquote p{margin-bottom:0}.article-body pre{margin:var(--spacing-md) 0;padding:var(--spacing-sm);background-color:#1e1e2e;color:#cdd6f4;border-radius:6px;overflow-x:auto;font-family:JetBrains Mono,monospace;font-size:.88rem;line-height:1.6}.article-body code{font-family:JetBrains Mono,monospace;font-size:.88em}.article-body p code,.article-body li code{padding:2px 6px;background-color:#0000000d;border-radius:3px;font-size:.85em}.article-body img{max-width:100%;height:auto;margin:var(--spacing-md) 0;border-radius:4px}.article-body figure{margin:var(--spacing-md) 0;text-align:center}.article-body figcaption{font-size:.85rem;color:var(--color-text-mid);margin-top:8px}.article-body table{width:100%;border-collapse:collapse;margin:var(--spacing-md) 0;font-size:.92rem}.article-body th,.article-body td{padding:10px 14px;text-align:left;border-bottom:1px solid rgba(0,0,0,.08)}.article-body th{font-weight:700;font-size:.85rem;letter-spacing:.5px;text-transform:uppercase;color:var(--color-text-mid)}.article-nav{display:flex;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-md) 0;border-top:1px solid rgba(0,0,0,.06);margin-top:var(--spacing-md)}.article-nav a{font-size:.9rem;color:var(--color-main);transition:color .2s}.article-nav a:hover{color:var(--color-accent-gold)}body.malware-theme .article-breadcrumb{color:#8888a8}body.malware-theme .article-breadcrumb a:hover{color:#d4aa20}body.malware-theme .article-header{border-bottom-color:#1a3aad26}body.malware-theme .article-meta{color:#8888a8}body.malware-theme .article-body h2{color:#d0d0e0;border-bottom-color:#1a3aad26}body.malware-theme .article-body h3{color:#c0c0d0}body.malware-theme .article-body p,body.malware-theme .article-body li{color:#b8b8d0}body.malware-theme .article-body blockquote{border-left-color:#d4aa20;background-color:#1a3aad0d;color:#a0a0c0}body.malware-theme .article-body pre{background-color:#060810;border:1px solid rgba(26,58,173,.15)}body.malware-theme .article-body p code,body.malware-theme .article-body li code{background-color:#1a3aad26;color:#b0b0d8}body.malware-theme .article-body th{color:#8888a8}body.malware-theme .article-body th,body.malware-theme .article-body td{border-bottom-color:#1a3aad1a}body.malware-theme .article-nav{border-top-color:#1a3aad26}body.malware-theme .article-nav a{color:#4a8fee}body.malware-theme .article-nav a:hover{color:#d4aa20}@media(max-width:768px){.article-header h1{font-size:1.5rem}.article-body{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.article-nav{flex-direction:column}}.article-header h1{color:#1a3a7a}body.malware-theme .article-header h1{color:#e0e0ec}
