:root{--fg:#111;--muted:#666;--bg:#fff;--card:#f7f7f7;--border:#e5e5e5;--link:#0a58ca}*{box-sizing:border-box}html,body{color:var(--fg);background:var(--bg);margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji;line-height:1.5}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:960px;margin:0 auto;padding:24px}.stack>*+*{margin-top:18px}.header{border-bottom:1px solid var(--border);z-index:10;background:#fff;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:14px;max-width:960px;margin:0 auto;padding:14px 24px;display:flex}.brand{letter-spacing:-.02em;font-weight:800}.nav{flex-wrap:wrap;gap:14px;display:flex}.footer{border-top:1px solid var(--border);margin-top:32px}.footer-inner{max-width:960px;color:var(--muted);margin:0 auto;padding:18px 24px;font-size:14px}.hero h1{margin:0;font-size:34px;line-height:1.1}.hero p{color:var(--muted);margin:10px 0 0}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px}.muted{color:var(--muted);font-size:14px}.list{padding-left:18px}.article h1{margin:0 0 10px;font-size:34px;line-height:1.15}.article .lede{color:var(--muted);margin:0 0 14px}.grid{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:900px){.grid{grid-template-columns:2fr 1fr}}.toc{position:sticky;top:86px}.toc ul{margin:0;padding:0;list-style:none}.toc li+li{margin-top:6px}.kbd{border:1px solid var(--border);background:#fff;border-radius:8px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.hr{background:var(--border);border:0;height:1px;margin:18px 0}.badges{flex-wrap:wrap;gap:8px;display:flex}.badge{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:999px;padding:4px 10px;font-size:12px}.cta{border:1px solid var(--border);background:#fff;border-radius:14px;padding:14px}.cta strong{margin-bottom:6px;display:block}.proscons{grid-template-columns:1fr;gap:12px;display:grid}@media (min-width:700px){.proscons{grid-template-columns:1fr 1fr}}.proscons ul{margin:8px 0 0;padding-left:18px}.faq details{border:1px solid var(--border);background:#fff;border-radius:12px;padding:10px 12px}.faq details+details{margin-top:10px}.faq summary{cursor:pointer;font-weight:700}
