:root{
  --fg:#1f2a24; --muted:#5c6b63; --accent:#2e7d32; --accent-dark:#1b5e20;
  --bg:#ffffff; --soft:#f4f7f4; --line:#e2e8e3; --maxw:740px;
}
*{box-sizing:border-box}
html{font-size:17px}
body{margin:0;color:var(--fg);background:var(--bg);line-height:1.65;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 1.2rem}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}

header.site{background:var(--soft);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.3rem;
  padding-top:.9rem;padding-bottom:.9rem}
header.site .brand{display:flex;align-items:center;gap:.6rem;
  font-weight:700;font-size:1.15rem;color:var(--fg)}
header.site .brand img{height:64px;width:auto;display:block}
header.site .brand .tagline{display:block;font-weight:400;font-size:.78rem;
  color:var(--muted);line-height:1.25}
header.site nav{display:flex;flex-wrap:wrap;gap:.2rem 1rem;font-size:.95rem}
header.site nav a{color:var(--accent-dark)}
form.search{margin-left:auto;display:flex;gap:.4rem}
form.search input{padding:.4rem .7rem;border:1px solid var(--line);border-radius:8px;
  font:inherit;background:#fff}
form.search button{padding:.4rem .8rem;border:1px solid var(--line);border-radius:8px;
  background:#fff;cursor:pointer;font:inherit}

main{padding:2.2rem 0 3rem}
h1{line-height:1.18;font-size:2rem;margin:.1em 0 .55em}
h2{margin-top:1.8em}
article img{max-width:100%;height:auto;border-radius:8px}
blockquote{margin:1.2em 0;padding:.2em 1.1em;border-left:4px solid var(--accent);
  color:var(--muted)}
.langbar{font-size:.9rem;color:var(--muted);margin:0 0 1.6rem}
.langbar a{margin-right:.7rem}

ul.posts{list-style:none;padding:0;margin:0;display:grid;gap:1rem}
ul.posts li{padding:1rem 1.1rem;border:1px solid var(--line);border-radius:10px;
  background:#fff;transition:border-color .15s}
ul.posts li:hover{border-color:var(--accent)}
ul.posts a{font-size:1.15rem;font-weight:600;text-decoration:none}
ul.posts p{margin:.35rem 0 0;color:var(--muted);font-size:.97rem}

.langpick{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}
.langpick a{padding:.55rem 1.1rem;border:1px solid var(--line);border-radius:10px}

footer.site{border-top:1px solid var(--line);background:var(--soft);
  color:var(--muted);font-size:.9rem}
footer.site .wrap{padding-top:1.6rem;padding-bottom:1.6rem}
footer.site a{color:var(--accent-dark)}

@media (max-width:560px){
  html{font-size:16px}
  header.site .wrap{flex-direction:column;align-items:flex-start}
  form.search{margin-left:0;width:100%}
  form.search input{flex:1}
}
