/* The Alstead Log — /log
   Extends site.css. Tokens, fonts, dark/light handling and the header/footer all come from site.css;
   nothing is redefined here. No inline styles anywhere (strict-CSP safe). */

.log-head { padding: var(--s-section) 0 var(--s-6); }
.log-head h1 {
  font-family: var(--f-serif); font-weight: 500; font-size: var(--t-h2);
  letter-spacing: -0.02em; margin: 8px 0 12px; max-width: 32ch;
}
.log-head .lede { color: var(--ink-2); max-width: 64ch; font-size: var(--t-lead); }
.log-head .fine { font-size: var(--t-small); color: var(--ink-2); max-width: 64ch; margin-bottom: 0; }
.log-crumbs { font-size: var(--t-small); color: var(--ink-2); margin-bottom: var(--s-4); }
.log-crumbs a { color: var(--ink-2); }

.log-feed { padding: 0 0 var(--s-7); }
.log-feed ol { list-style: none; margin: 0; padding: 0; }

.log-entry { border-top: 1px solid var(--line); padding: var(--s-6) 0 var(--s-5); }
@media (min-width: 900px) {
  .log-entry { display: grid; grid-template-columns: 9rem 1fr; gap: 0 var(--s-6); }
  .log-entry .entry-meta { grid-column: 1; }
  .log-entry .entry-body { grid-column: 2; }
}
.entry-meta { display: flex; align-items: baseline; gap: 12px; margin-bottom: var(--s-3); }
@media (min-width: 900px) { .entry-meta { display: block; margin-bottom: 0; } }
.entry-no {
  font-family: var(--f-mono); font-size: 1.125rem; font-weight: 500; color: var(--ink);
  letter-spacing: -0.01em; margin: 0;
}
.entry-no a { color: var(--ink); text-decoration: none; }
.entry-no a:hover { text-decoration: underline; text-decoration-thickness: 1px; }
.entry-date { margin: 0; }
.entry-date { font-size: var(--t-small); color: var(--ink-2); display: block; }
@media (min-width: 900px) { .entry-date { margin-top: 4px; } }

.entry-body h2 {
  font-family: var(--f-serif); font-weight: 500; font-size: var(--t-h3);
  letter-spacing: -0.015em; margin: 0 0 var(--s-4); max-width: 44ch;
}
.entry-body p, .entry-body li { max-width: 72ch; }
.entry-body h3 {
  font-size: 0.9375rem; font-weight: 600; margin: var(--s-5) 0 var(--s-2);
}
.entry-body ul { margin: 0 0 var(--s-4); padding-left: 1.15rem; }
.entry-body li { margin-bottom: var(--s-2); }
.entry-body li:last-child { margin-bottom: 0; }
.entry-body .fine { font-size: var(--t-small); color: var(--ink-2); }
.entry-body :last-child { margin-bottom: 0; }

.log-empty { display: none; border-top: 1px solid var(--line); padding: var(--s-7) 0; }
.log-feed:not(:has(.log-entry)) .log-empty { display: block; }
.log-empty p { color: var(--ink-2); max-width: 60ch; margin-bottom: 0; }

.log-foot { border-top: 1px solid var(--line); padding: var(--s-6) 0 var(--s-section); }
.log-foot p { color: var(--ink-2); font-size: var(--t-small); max-width: 72ch; }
.log-foot p:last-child { margin-bottom: 0; }
