/* devlog.css — the devlog index and individual post pages.

   Loads alongside site.css only (never home.css): the index page reuses
   home.css's .devlog__list / .devlog__date / .devlog__title /
   .devlog__summary classes, so those specific rules are copied here rather
   than shared, keeping the two stylesheets independently loadable. Every
   colour below is a site.css token; nothing new is introduced. */

/* ── shared page shell ────────────────────────────────────────────────── */

.devlog-page { padding-block: clamp(3rem, 7vw, 5rem) clamp(4rem, 10vw, 7rem); }

.devlog-page__head {
  padding-bottom: 1.5rem;
  margin-bottom: clamp(2rem, 5vw, 3rem);
  border-bottom: 1px solid var(--divider);
}
.devlog-page__head h1 {
  font-family: var(--font-display);
  font-size: clamp(2rem, 5vw, 3rem);
}

/* ── index list (copied from home.css's devlog teaser) ───────────────── */

.devlog__list { list-style: none; }
.devlog__list li { border-bottom: 1px solid var(--divider); }
.devlog__list a {
  display: grid;
  grid-template-columns: 9.5rem 1fr;
  gap: 1rem 2rem;
  align-items: baseline;
  padding-block: 1.5rem;
  text-decoration: none;
  color: inherit;
}
.devlog__date {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  color: var(--text-faint);
  font-variant-numeric: tabular-nums;
}
.devlog__title {
  font-family: var(--font-display);
  font-size: 1.375rem;
  font-weight: 520;
  color: var(--text);
  transition: color 180ms ease-out;
}
.devlog__list a:hover .devlog__title { color: var(--rose-200); }
.devlog__summary { color: var(--text-dim); margin-top: 0.35rem; font-size: 1.0625rem; }

/* ── single post ───────────────────────────────────────────────────────── */

.post__inner {
  max-width: var(--measure);
  margin-inline: auto;
}
.post__title {
  font-family: var(--font-display);
  font-size: clamp(2rem, 5vw, 2.75rem);
}
.post__date {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  color: var(--text-faint);
  margin-top: 0.75rem;
  font-variant-numeric: tabular-nums;
}
.post__body { margin-top: clamp(2rem, 5vw, 3rem); }
.post__body > * + * { margin-top: 1.25rem; }

.post__body h2 {
  font-family: var(--font-display);
  font-size: 1.5rem;
  margin-top: 2.5rem;
}
.post__body h3 {
  font-family: var(--font-display);
  font-size: 1.25rem;
  margin-top: 2rem;
}
.post__body p { color: var(--text); }
.post__body strong { color: var(--text); font-weight: 600; }
.post__body em { font-style: italic; }

.post__body ul,
.post__body ol { padding-left: 1.5rem; color: var(--text); }
.post__body li + li { margin-top: 0.5rem; }

.post__body blockquote {
  border-left: 2px solid var(--border);
  padding-left: 1.25rem;
  color: var(--text-dim);
  font-style: italic;
}

.post__body hr {
  border: none;
  border-top: 1px solid var(--divider);
  margin-block: 2rem;
}

.post__back {
  display: block;
  margin-top: clamp(3rem, 7vw, 4.5rem);
  padding-top: clamp(2rem, 5vw, 3rem);
  border-top: 1px solid var(--divider);
}

/* ── mobile collapse ───────────────────────────────────────────────────── */

@media (max-width: 767px) {
  .devlog__list a { grid-template-columns: 1fr; gap: 0.25rem; }
}
