.blog-article[data-astro-cid-4sn4zg3r]{padding:48px 0 80px}.article-inner[data-astro-cid-4sn4zg3r]{max-width:720px;margin:0 auto;padding:0 24px}.article-breadcrumb[data-astro-cid-4sn4zg3r]{font-family:var(--font-mono);font-size:11px;color:var(--muted);display:flex;gap:8px;align-items:center;margin-bottom:24px;letter-spacing:.04em}.article-breadcrumb[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r]{color:var(--blue);text-decoration:none}.article-breadcrumb[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r]:hover{text-decoration:underline}.article-title[data-astro-cid-4sn4zg3r]{font-size:clamp(24px,3.5vw,36px);font-weight:700;line-height:1.2;color:var(--primary);margin-bottom:16px}.article-desc[data-astro-cid-4sn4zg3r]{font-size:17px;color:var(--muted);line-height:1.6;margin-bottom:20px;max-width:60ch}.article-meta[data-astro-cid-4sn4zg3r]{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.04em;flex-wrap:wrap;margin-bottom:16px}.meta-type[data-astro-cid-4sn4zg3r]{color:var(--blue);font-weight:500}.meta-sep[data-astro-cid-4sn4zg3r]{opacity:.4}.article-tags[data-astro-cid-4sn4zg3r]{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:40px;padding-bottom:32px;border-bottom:1px solid var(--border-strong)}.tag[data-astro-cid-4sn4zg3r]{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--muted);border:1px solid var(--border);padding:2px 8px}.article-body[data-astro-cid-4sn4zg3r]{font-size:16px;line-height:1.75;color:var(--primary)}.article-body[data-astro-cid-4sn4zg3r] h2{font-size:22px;font-weight:700;margin:48px 0 16px;padding-bottom:8px;border-bottom:1px solid var(--border);color:var(--primary);line-height:1.3}.article-body[data-astro-cid-4sn4zg3r] h3{font-size:18px;font-weight:600;margin:32px 0 12px;color:var(--primary)}.article-body[data-astro-cid-4sn4zg3r] p{margin-bottom:20px;max-width:68ch}.article-body[data-astro-cid-4sn4zg3r] ul,.article-body[data-astro-cid-4sn4zg3r] ol{padding-left:24px;margin-bottom:20px}.article-body[data-astro-cid-4sn4zg3r] li{margin-bottom:8px;max-width:66ch}.article-body[data-astro-cid-4sn4zg3r] code{font-family:var(--font-mono);font-size:13px;background:#0a0a0a0d;padding:2px 6px;border-radius:2px}.article-body[data-astro-cid-4sn4zg3r] pre{background:var(--primary);color:#f0f0f0;padding:20px 24px;overflow-x:auto;margin:24px 0;font-family:var(--font-mono);font-size:13px;line-height:1.6}.article-body[data-astro-cid-4sn4zg3r] pre code{background:none;padding:0;font-size:inherit;color:inherit}.article-body[data-astro-cid-4sn4zg3r] blockquote{border-left:2px solid var(--blue);padding:4px 20px;margin:24px 0;color:var(--muted);font-style:italic}.article-body[data-astro-cid-4sn4zg3r] strong{font-weight:600;color:var(--primary)}.article-body[data-astro-cid-4sn4zg3r] a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}.article-body[data-astro-cid-4sn4zg3r] table{width:100%;border-collapse:collapse;margin:24px 0;font-size:14px}.article-body[data-astro-cid-4sn4zg3r] th{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:8px 12px;text-align:left;background:var(--primary);color:var(--bg)}.article-body[data-astro-cid-4sn4zg3r] td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:top}.article-body[data-astro-cid-4sn4zg3r] tr:last-child td{border-bottom:none}.article-footer[data-astro-cid-4sn4zg3r]{margin-top:64px;padding-top:24px;border-top:1px solid var(--border-strong);display:flex;justify-content:space-between;align-items:center}.back-link[data-astro-cid-4sn4zg3r]{font-family:var(--font-mono);font-size:12px;color:var(--blue);letter-spacing:.04em;text-decoration:none}.back-link[data-astro-cid-4sn4zg3r]:hover{text-decoration:underline}.footer-note[data-astro-cid-4sn4zg3r]{font-family:var(--font-mono);font-size:11px;color:var(--muted);display:flex;gap:8px;align-items:center}.footer-note[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r]{color:var(--muted)}@media(max-width:600px){.article-footer[data-astro-cid-4sn4zg3r]{flex-direction:column;gap:12px;align-items:flex-start}}
