/* ── Green/white theme overrides ── */

/* ── 1. SIDEBAR ─────────────────────────────────────────── */
aside {
  background-color: #edf7f0;
  border-right: 1px solid #c8e6d0;
}
aside,
aside a {
  color: #2d4a3e;
  transition: color 0.2s ease;
}
aside a:hover {
  color: #52b788;
}
aside div {
  padding: 28px 20px;
}
aside div img {
  width: 120px;
  height: 120px;
  object-fit: cover;
}
aside div h1 {
  margin: 18px 0 6px;
  font-size: 1.4em;
}
aside div h1 a {
  color: #2d6a4f;
  font-weight: 700;
  letter-spacing: -0.02em;
}
aside div p {
  color: #4a7c6f;
  font-size: 0.88em;
  margin: 0 0 18px;
}
aside nav ul li a {
  color: #2d4a3e;
  font-size: 1.1em;
  transition: color 0.2s ease;
}
aside nav ul li a:hover {
  color: #52b788;
}

/* ── 2. TYPOGRAPHY ───────────────────────────────────────── */
body {
  font-family: 'Inter', 'Roboto', 'Open Sans', sans-serif;
  font-size: 1.06em;
  line-height: 1.65;
  color: #3a3a3a;
  background-color: #f5f8f5;
}
main article h1,
main article h2,
main article h3,
main article h4 {
  letter-spacing: -0.02em;
  line-height: 1.25;
  font-weight: 600;
}
main article header h2 a {
  font-size: 1.1em;
  font-weight: 700;
  letter-spacing: -0.02em;
}

/* ── 3. SMOOTH TRANSITIONS ───────────────────────────────── */
a {
  color: #2d6a4f;
  transition: color 0.2s ease;
}
a:hover {
  color: #52b788;
}
.btn {
  background-color: #52b788;
  color: #fff;
  transition: background-color 0.2s ease, transform 0.15s ease;
  border-radius: 6px;
}
.btn:hover {
  background-color: #2d6a4f;
  transform: translateY(-1px);
}
.tag-cloud a {
  background-color: #d8f3dc;
  color: #2d6a4f;
  border: 1px solid #b7dfbf;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.tag-cloud a:hover {
  background-color: #52b788;
  color: #fff;
  border-color: #52b788;
}

/* ── 4. ARTICLE CARDS (index listing) ────────────────────── */
main article {
  background: #fff;
  color: #3a3a3a;
  border: 1px solid #d8f0e0;
  border-radius: 10px;
  padding: 28px 32px;
  margin: 0 4% 24px;
  box-shadow: 0 1px 4px rgba(45, 106, 79, 0.07);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
main article:hover {
  box-shadow: 0 4px 16px rgba(45, 106, 79, 0.13);
  transform: translateY(-2px);
}
/* hide the <hr> between articles — cards provide their own separation */
main article hr {
  display: none;
}

/* ── 5. CODE BLOCK POLISH ────────────────────────────────── */
main article pre {
  border-left-color: #52b788;
  background-color: #eef3ef;
  color: #2d3b35;
  border-radius: 0 8px 8px 0;
  padding: 16px 18px;
  font-size: 0.88em;
  line-height: 1.55;
}
main article pre code {
  background-color: transparent;
  color: #2d3b35;
  border: none;
  padding: 0;
}
main article :not(pre) > code {
  background-color: #f0f7f2;
  border-color: #c8e6d0;
  color: #2d4a3e;
  border-radius: 4px;
  padding: 2px 5px;
  font-size: 0.82em;
}
main article blockquote {
  border-left-color: #52b788;
  background-color: #f8fdf9;
  border-radius: 0 8px 8px 0;
  font-style: italic;
  color: #3a6351;
}

/* ── MISC ────────────────────────────────────────────────── */
main nav {
  border-bottom-color: #c8e6d0;
}
main article header p {
  color: #4a7c6f;
  font-size: 0.84em;
}
footer {
  color: #4a7c6f;
  border-top-color: #c8e6d0;
}
section#isso-thread section.auth-section p.post-action input {
  background-color: #52b788;
  color: #fff;
  transition: background-color 0.2s ease;
}
section#isso-thread section.auth-section p.post-action input:hover {
  background-color: #2d6a4f;
}

/* ── NEWSLETTER EMBED ────────────────────────────────────── */
.newsletter-embed {
  display: flex;
  justify-content: center;
  margin: 28px 8%;
}
