*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg,#fff);color:var(--text,#111);-webkit-font-smoothing:antialiased}a{color:var(--accent-ink,#06c);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}.wrap{margin:0 auto;padding:0 16px}.site-header{border-bottom:1px solid var(--border);padding:14px 0;display:flex;gap:18px;align-items:baseline;flex-wrap:wrap}.brand{font-weight:800;font-size:1.25rem;color:var(--text)}.nav{display:flex;gap:14px;font-size:.9rem}.nav a{color:var(--muted)}.sec{margin:26px 0}.sec h2{font-size:1.15rem;margin:0 0 14px;padding-left:10px;border-left:3px solid var(--accent)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:14px;gap:14px}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.card h3{margin:0 0 6px;font-size:1rem}.card p{margin:0;color:var(--muted);font-size:.86rem}.article h1{font-size:1.7rem;line-height:1.25;margin:18px 0 10px}.article .body{font-size:1.02rem}.article .body p{margin:0 0 14px}.site-footer{border-top:1px solid var(--border);margin-top:40px;padding:22px 0 40px}.crumbs,.site-footer{color:var(--muted);font-size:.82rem}.crumbs{margin:14px 0}