body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:#0c1210;color:#fff;font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
main{flex:1;padding:76px 0}
h1{font-size:clamp(36px,6vw,64px);line-height:1;letter-spacing:-.05em;margin:16px 0 14px}
.lead{color:var(--muted);font-size:18px;max-width:600px;margin:0}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:40px 0 28px;padding:0;list-style:none}
.filters button{font:inherit;cursor:pointer;padding:8px 14px;border-radius:20px;font-size:13px;font-weight:700;background:transparent;border:1px solid #35423d;color:#d7eee2;transition:border-color .15s,background .15s,color .15s}
.filters button:hover{border-color:var(--mint)}
.filters button[aria-pressed="true"]{background:var(--mint);border-color:var(--mint);color:#10231d}
.filters .count{opacity:.6;font-weight:600;margin-left:4px}
.status{color:var(--muted);font-size:13px;margin:0 0 16px}
.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;list-style:none;margin:0;padding:0}
.post{position:relative;display:flex;flex-direction:column;background:#14231d;border:1px solid #2a3f35;border-radius:14px;padding:24px;transition:border-color .15s,transform .15s}
.post:hover{border-color:var(--mint);transform:translateY(-2px)}
.post .meta{color:var(--muted);font-size:12px;margin-bottom:10px}
.post h2{font-size:22px;letter-spacing:-.025em;line-height:1.2;margin:0 0 10px}
.post h2 a:after{content:"";position:absolute;inset:0;border-radius:14px}
.post p{color:var(--muted);font-size:15px;margin:0 0 18px;flex:1}
.post .tags{display:flex;flex-wrap:wrap;gap:6px;position:relative;z-index:1}
.post .tags button{font:inherit;cursor:pointer;padding:4px 9px;border-radius:20px;font-size:11px;font-weight:700;background:#1b2e26;border:1px solid #2f4a3e;color:#d7eee2}
.post .tags button:hover{border-color:var(--mint);color:var(--mint)}
.post .tags button.active{border-color:var(--mint);color:var(--mint)}
.empty{padding:40px 28px;border:1px dashed #35423d;border-radius:12px;color:var(--muted);text-align:center;font-size:14px}
.empty button{font:inherit;cursor:pointer;background:none;border:0;color:var(--mint);font-weight:700;padding:0}
footer{padding:38px 0;text-align:center;background:#f0f2ef;color:#53645b;font-size:11px;letter-spacing:.12em}
@media(max-width:720px){main{padding:52px 0}.posts{grid-template-columns:1fr}}
