.art-root{max-width:1080px;margin:0 auto;padding:48px var(--pad-x) 80px}.art-hero{border-bottom:1px solid var(--c-border);padding-bottom:36px;margin-bottom:48px}.crumb{font-size:13px;color:#666}.crumb a{color:#666}.crumb span{color:#999}.art-h1{font-size:56px;font-weight:700;letter-spacing:-2px;line-height:1.1;margin-top:18px}.art-lede{font-size:20px;color:#444;line-height:1.6;margin-top:24px;max-width:780px}.byline{display:flex;align-items:center;gap:14px;margin-top:32px}.byline-avatar{width:48px;height:48px;border-radius:99px;background:#000;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px}.cat-badge-sm{display:inline-block;padding:3px 9px;border-radius:6px;font-size:11px;font-weight:600;border:1px solid;letter-spacing:.3px}.art-body{display:grid;grid-template-columns:220px 1fr;gap:48px}.toc{position:sticky;top:90px;align-self:start}.toc-link{display:block;font-size:13px;color:#666;padding:7px 0;border-bottom:1px solid #f5f5f5}.toc-cta{margin-top:24px;padding:18px;background:#fef2f2;border-radius:12px;border:1px solid #fecaca}.prose{max-width:720px}.prose p{font-size:16px;line-height:1.85;color:#333;margin-bottom:18px}.prose .lead{font-size:18px;line-height:1.8}.prose h2{font-size:30px;font-weight:700;letter-spacing:-.5px;margin-top:48px;margin-bottom:18px}.prose ul,.prose ol{font-size:16px;line-height:1.85;color:#333;padding-left:24px;margin-bottom:18px}.prose hr{border:none;border-top:1px solid var(--c-border);margin:48px 0}.prose code{background:#f5f5f5;padding:2px 6px;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.prose .callout{border-left:4px solid var(--c-accent);background:var(--c-soft);padding:18px 24px;margin:24px 0;font-size:15px;line-height:1.7}.prose .opt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.prose .opt-card{padding:20px;background:var(--c-soft);border-radius:12px;border:1px solid var(--c-border)}.prose .opt-num{font-size:11px;color:#999;letter-spacing:2px;font-weight:600}.prose .opt-title{font-size:16px;font-weight:700;margin-top:8px}.prose .opt-desc{font-size:13px;color:#666;margin-top:8px;line-height:1.6}.prose .mid-cta{display:flex;align-items:center;gap:24px;padding:32px;background:#000;color:#fff;border-radius:16px;margin:48px 0}.prose .case-box{padding:24px;background:var(--c-soft);border-radius:12px;border:1px solid var(--c-border);margin:24px 0}.prose .case-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}.prose .case-init{width:42px;height:42px;border-radius:99px;background:#1a1a1a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-family:Georgia,serif}.prose .checklist{padding:24px;background:var(--c-soft);border-radius:12px;border:1px solid var(--c-border);margin:24px 0}.prose .check-item{display:flex;align-items:flex-start;gap:14px;padding:10px 0;border-bottom:1px solid var(--c-border);font-size:15px;line-height:1.6}.prose .check-item:last-child{border-bottom:none}.prose .check-num{flex-shrink:0;width:26px;height:26px;border-radius:6px;background:#000;color:var(--c-accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}.author-box{display:flex;gap:18px;padding:24px;background:var(--c-soft);border:1px solid var(--c-border);border-radius:14px;margin-top:48px;max-width:720px;margin-left:268px}.auth-avatar{width:64px;height:64px;border-radius:99px;background:#2d3a4f;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-family:Georgia,serif;font-size:22px;flex-shrink:0}.related{margin-top:64px;padding-top:48px;border-top:1px solid var(--c-border)}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width: 1024px){.art-body{grid-template-columns:1fr}.toc{position:static}.author-box{margin-left:0}.related-grid{grid-template-columns:1fr}}@media (max-width: 768px){.art-h1{font-size:36px;letter-spacing:-1px}.art-lede{font-size:17px}.prose h2{font-size:24px}.prose .opt-grid{grid-template-columns:1fr}.prose .mid-cta{flex-direction:column;padding:24px}}
