:root{--max-width: 720px;--color-text: #1a1a1a;--color-muted: #5c6670;--color-bg: #ffffff;--color-accent: #0e7a3c;--color-brand: #2bd96f;--color-dark: #071410;--color-border: #e6e8eb;--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-serif: Georgia, "Times New Roman", serif}*{box-sizing:border-box}html{font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);line-height:1.65;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0}.container{max-width:var(--max-width);margin:0 auto;padding:0 1.1rem}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{line-height:1.25;font-weight:700}h1{font-size:2rem;margin:0 0 .6rem}h2{font-size:1.4rem;margin:2rem 0 .6rem}img{max-width:100%;height:auto}.site-header{border-bottom:1px solid var(--color-border)}.site-header .container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding-top:.9rem;padding-bottom:.9rem}.site-header{background:var(--color-dark);border-bottom:3px solid var(--color-brand)}.brand{display:inline-flex;align-items:center;gap:.5rem;font-weight:800;font-size:1.2rem;color:#fff}.brand b{color:var(--color-brand)}.brand:hover{text-decoration:none}.site-header .nav a{color:#d5e3dc}.site-header .nav a:hover{color:var(--color-brand)}.nav a{color:var(--color-muted);margin-left:1rem;font-size:.95rem}.article-meta{color:var(--color-muted);font-size:.9rem;margin-bottom:1.5rem}.byline{display:flex;align-items:center;gap:.6rem;margin:1.5rem 0;padding:1rem;border:1px solid var(--color-border);border-radius:8px}.byline img{width:48px;height:48px;border-radius:50%}.prose .featured{border-radius:8px;margin-bottom:1.5rem}.prose :is(p,ul,ol){margin:1rem 0}.post-list{list-style:none;padding:0}.post-list li{padding:1rem 0;border-bottom:1px solid var(--color-border)}.post-list .desc{color:var(--color-muted);margin:.25rem 0 0}.hero{padding:1.5rem 0 .5rem}.hero .tagline{color:var(--color-muted);font-size:1.05rem;max-width:56ch}.section-title{margin-top:2.5rem;padding-bottom:.4rem;border-bottom:1px solid var(--color-border)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;margin-top:1.25rem}.card{border:1px solid var(--color-border);border-radius:10px;overflow:hidden;background:var(--color-bg);transition:box-shadow .15s ease,transform .15s ease}.card:hover{box-shadow:0 4px 14px #00000014;transform:translateY(-2px)}.card>a{display:block;color:inherit;text-decoration:none}.card img{display:block;width:100%;height:auto;aspect-ratio:1200 / 630;object-fit:cover;border-bottom:1px solid var(--color-border)}.card-placeholder{display:flex;align-items:center;justify-content:center;aspect-ratio:1200 / 630;background:color-mix(in srgb,var(--color-accent) 8%,white);color:var(--color-accent);font-weight:700;border-bottom:1px solid var(--color-border)}.card-body{padding:.9rem 1rem 1.1rem}.card-tag{display:inline-block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-accent);margin-bottom:.35rem}.card-title{margin:0 0 .4rem;font-size:1.05rem;line-height:1.35}.card-desc{margin:0;color:var(--color-muted);font-size:.9rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin-top:1.25rem}.topic-card{display:block;border:1px solid var(--color-border);border-radius:10px;padding:1rem 1.1rem;color:inherit;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease}.topic-card:hover{text-decoration:none;border-color:var(--color-accent);box-shadow:0 2px 10px #0000000f}.topic-card h3{margin:0 0 .3rem;font-size:1rem;color:var(--color-accent)}.topic-card p{margin:0;color:var(--color-muted);font-size:.88rem}.site-footer{border-top:1px solid var(--color-border);margin-top:3rem;padding:2rem 0;color:var(--color-muted);font-size:.9rem}.site-footer a{color:var(--color-muted)}.site-footer .links a{margin-right:1rem}.prose table{display:block;overflow-x:auto;width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.95rem}.prose th,.prose td{border:1px solid var(--color-border);padding:.5rem .65rem;text-align:left;vertical-align:top}.prose thead th{background:color-mix(in srgb,var(--color-brand) 14%,white)}.prose img[src$=".svg"]{display:block;margin:1rem auto;border:1px solid var(--color-border);border-radius:8px;background:#fff}.prose blockquote{margin:1.2rem 0;padding:.6rem 1rem;border-left:4px solid var(--color-brand);background:color-mix(in srgb,var(--color-brand) 6%,white)}.draft-banner{margin:1rem 0;padding:.5rem .8rem;border-radius:6px;background:#fff4e5;border:1px solid #f28c28;color:#7a3d00;font-weight:700;font-size:.9rem}
