:root{--bg:#fdf3fb;--fg:#2c1b38;--muted:#8a6f93;--accent:#d6329a;--card:#ffffff;--border:#f3d4ec;--header-bg:linear-gradient(135deg,#ffe3f6,#e7e0ff);--radius:16px;--font:"Trebuchet MS","Segoe UI",system-ui,sans-serif}
*{box-sizing:border-box}
html{font-size:16px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);line-height:1.65}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
a:focus-visible{box-shadow:0 0 0 3px var(--accent);border-radius:3px}
img,svg{max-width:100%}
.site-header{padding:28px 20px;border-bottom:1px solid var(--border);background:var(--header-bg)}
.brand{display:flex;align-items:center;gap:10px}
.logo{color:var(--accent);flex:0 0 auto}
.brand-name{font-size:1.5rem;font-weight:700;letter-spacing:.3px}
.tagline{margin:.45rem 0 0;color:var(--muted)}
.site-nav{margin-top:14px;display:flex;gap:18px;flex-wrap:wrap}
.site-nav a{font-weight:600}
.wrap{max-width:820px;margin:0 auto;padding:30px 20px 52px}
.page-title{font-size:1.9rem;line-height:1.2;margin:0 0 22px}
.post-list{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.post-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px}
.post-card-title{margin:.25rem 0 .45rem;font-size:1.25rem;line-height:1.3}
.post-date{margin:0;color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.6px}
.post-summary{margin:.45rem 0 .9rem}
.read-more{font-weight:600;font-size:.9rem}
.prose{max-width:66ch}
.prose p{margin:0 0 1.05rem}
.post .page-title{margin-top:.4rem}
.back{margin-top:30px;font-weight:600}
.site-footer{max-width:820px;margin:0 auto;padding:24px 20px 44px;color:var(--muted);font-size:.82rem;border-top:1px solid var(--border)}
@media(min-width:900px){.post-list{grid-template-columns:1fr 1fr}.page-title{font-size:2.25rem}.site-header{padding:40px 20px}}
